pax_global_header00006660000000000000000000000064143005551220014507gustar00rootroot0000000000000052 comment=9df86f2341616ef1888ae59919feaa6d4fad693d dxvk-0~git20220822.9df86f2/000077500000000000000000000000001430055512200147775ustar00rootroot00000000000000dxvk-0~git20220822.9df86f2/COPYING.MinGW-w64.txt000066400000000000000000000134211430055512200202470ustar00rootroot00000000000000MinGW-w64 licensing ******************* The copyright and license notices have been divided in two files: The notices in COPYING.MinGW-w64.txt (this file) apply only to MinGW-w64 itself. These don't apply to the binaries built with MinGW-w64 unless you specifically tell MinGW-w64 to link against these parts, for example, by enabling profiling code. In addition to the notices in this file, also the notices in COPYING.MinGW-w64-runtime.txt apply to MinGW-w64. Some (possibly all) notices in that file may apply also to the binaries built with this version of MinGW-w64. The idea is that if you create binary packages of your software with MinGW-w64, you can simply copy COPYING.MinGW-w64-runtime.txt into your package to fulfill the license requirements of the MinGW runtime. If you think that not all notices apply to your package and want to remove some of them, note that, for example, the gdtoa files always get linked in if you use any printf-like function. So usually it is easiest and safest to just keep all the notices. ==================== GCC and GNU binutils ==================== Copyright (C) Free Software Foundation License: GNU GPLv3+ (see the file COPYING.GPLv3) ============== Profiling code ============== Copyright 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. License: GNU GPLv2+ (see the file COPYING.GPLv2) * * * * * * * Copyright (c) 1982, 1983, 1986, 1992, 1993 The Regents of the University of California. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 4. Neither the name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================= DirectX and DDK headers ======================= DirectX and DDK headers are under GNU LGPLv2.1+ (see the file COPYING.LGPLv2.1) and copyrighted by various people. Using these headers doesn't make LGPLv2.1 apply to your code, because these headers files contain only data structure definitions, short macros, and short inline functions. Here is the relevant part from LGPLv2.1 section 5 paragraph 4: If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. ==================== libmangle and gendef ==================== Copyright (c) 2009 mingw-w64 project Contributing authors: Kai Tietz, Jonathan Yong Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ==== PSEH ==== Copyright (c) 2004-2008 KJK::Hyperion Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. dxvk-0~git20220822.9df86f2/README.md000066400000000000000000000025231430055512200162600ustar00rootroot00000000000000# MinGW DirectX Headers These headers are taken directly from MinGW-w64 found at:
https://www.mingw-w64.org/
https://sourceforge.net/p/mingw-w64/mingw-w64/ci/master/tree/mingw-w64-headers/ ## License The license for these headers is LGPL v2.1.
However that does not mean that your project is bound by LGPL v2.1 for using these headers:
``` DirectX and DDK headers are under GNU LGPLv2.1+ (see the file COPYING.LGPLv2.1) and copyrighted by various people. Using these headers doesn't make LGPLv2.1 apply to your code, because these headers files contain only data structure definitions, short macros, and short inline functions. Here is the relevant part from LGPLv2.1 section 5 paragraph 4: If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. ``` See `COPYING.MinGW-w64.txt` for the full license text. It is also worth noting that in the original repository, the license makes reference to a `COPYING.LGPLv2.1`, however no such file exists in the repository, nor in the Wine repository. The license text for LGPL v2.1 can be found here: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html dxvk-0~git20220822.9df86f2/_mingw_unicode.h000066400000000000000000000022721430055512200201410ustar00rootroot00000000000000/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #if !defined(_INC_CRT_UNICODE_MACROS) /* _INC_CRT_UNICODE_MACROS defined based on UNICODE flag */ #if defined(UNICODE) # define _INC_CRT_UNICODE_MACROS 1 # define __MINGW_NAME_AW(func) func##W # define __MINGW_NAME_AW_EXT(func,ext) func##W##ext # define __MINGW_NAME_UAW(func) func##_W # define __MINGW_NAME_UAW_EXT(func,ext) func##_W_##ext # define __MINGW_STRING_AW(str) L##str /* same as TEXT() from winnt.h */ # define __MINGW_PROCNAMEEXT_AW "W" #else # define _INC_CRT_UNICODE_MACROS 2 # define __MINGW_NAME_AW(func) func##A # define __MINGW_NAME_AW_EXT(func,ext) func##A##ext # define __MINGW_NAME_UAW(func) func##_A # define __MINGW_NAME_UAW_EXT(func,ext) func##_A_##ext # define __MINGW_STRING_AW(str) str /* same as TEXT() from winnt.h */ # define __MINGW_PROCNAMEEXT_AW "A" #endif #define __MINGW_TYPEDEF_AW(type) \ typedef __MINGW_NAME_AW(type) type; #define __MINGW_TYPEDEF_UAW(type) \ typedef __MINGW_NAME_UAW(type) type; #endif /* !defined(_INC_CRT_UNICODE_MACROS) */ dxvk-0~git20220822.9df86f2/d3d.h000066400000000000000000002747171430055512200156440ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) the Wine project * * 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 */ #ifndef __WINE_D3D_H #define __WINE_D3D_H #include #define COM_NO_WINDOWS_H #include #include /* must precede d3dcaps.h */ #include /***************************************************************************** * Predeclare the interfaces */ DEFINE_GUID(IID_IDirect3D, 0x3BBA0080,0x2421,0x11CF,0xA3,0x1A,0x00,0xAA,0x00,0xB9,0x33,0x56); DEFINE_GUID(IID_IDirect3D2, 0x6aae1ec1,0x662a,0x11d0,0x88,0x9d,0x00,0xaa,0x00,0xbb,0xb7,0x6a); DEFINE_GUID(IID_IDirect3D3, 0xbb223240,0xe72b,0x11d0,0xa9,0xb4,0x00,0xaa,0x00,0xc0,0x99,0x3e); DEFINE_GUID(IID_IDirect3D7, 0xf5049e77,0x4861,0x11d2,0xa4,0x07,0x00,0xa0,0xc9,0x06,0x29,0xa8); DEFINE_GUID(IID_IDirect3DRampDevice, 0xF2086B20,0x259F,0x11CF,0xA3,0x1A,0x00,0xAA,0x00,0xB9,0x33,0x56); DEFINE_GUID(IID_IDirect3DRGBDevice, 0xA4665C60,0x2673,0x11CF,0xA3,0x1A,0x00,0xAA,0x00,0xB9,0x33,0x56); DEFINE_GUID(IID_IDirect3DHALDevice, 0x84E63dE0,0x46AA,0x11CF,0x81,0x6F,0x00,0x00,0xC0,0x20,0x15,0x6E); DEFINE_GUID(IID_IDirect3DMMXDevice, 0x881949a1,0xd6f3,0x11d0,0x89,0xab,0x00,0xa0,0xc9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DRefDevice, 0x50936643,0x13e9,0x11d1,0x89,0xaa,0x00,0xa0,0xc9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DTnLHalDevice, 0xf5049e78,0x4861,0x11d2,0xa4,0x07,0x00,0xa0,0xc9,0x06,0x29,0xa8); DEFINE_GUID(IID_IDirect3DNullDevice, 0x8767df22,0xbacc,0x11d1,0x89,0x69,0x00,0xa0,0xc9,0x06,0x29,0xa8); DEFINE_GUID(IID_IDirect3DDevice, 0x64108800,0x957d,0x11D0,0x89,0xAB,0x00,0xA0,0xC9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DDevice2, 0x93281501,0x8CF8,0x11D0,0x89,0xAB,0x00,0xA0,0xC9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DDevice3, 0xb0ab3b60,0x33d7,0x11d1,0xa9,0x81,0x00,0xc0,0x4f,0xd7,0xb1,0x74); DEFINE_GUID(IID_IDirect3DDevice7, 0xf5049e79,0x4861,0x11d2,0xa4,0x07,0x00,0xa0,0xc9,0x06,0x29,0xa8); DEFINE_GUID(IID_IDirect3DTexture, 0x2CDCD9E0,0x25A0,0x11CF,0xA3,0x1A,0x00,0xAA,0x00,0xB9,0x33,0x56); DEFINE_GUID(IID_IDirect3DTexture2, 0x93281502,0x8CF8,0x11D0,0x89,0xAB,0x00,0xA0,0xC9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DLight, 0x4417C142,0x33AD,0x11CF,0x81,0x6F,0x00,0x00,0xC0,0x20,0x15,0x6E); DEFINE_GUID(IID_IDirect3DMaterial, 0x4417C144,0x33AD,0x11CF,0x81,0x6F,0x00,0x00,0xC0,0x20,0x15,0x6E); DEFINE_GUID(IID_IDirect3DMaterial2, 0x93281503,0x8CF8,0x11D0,0x89,0xAB,0x00,0xA0,0xC9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DMaterial3, 0xca9c46f4,0xd3c5,0x11d1,0xb7,0x5a,0x00,0x60,0x08,0x52,0xb3,0x12); DEFINE_GUID(IID_IDirect3DExecuteBuffer, 0x4417C145,0x33AD,0x11CF,0x81,0x6F,0x00,0x00,0xC0,0x20,0x15,0x6E); DEFINE_GUID(IID_IDirect3DViewport, 0x4417C146,0x33AD,0x11CF,0x81,0x6F,0x00,0x00,0xC0,0x20,0x15,0x6E); DEFINE_GUID(IID_IDirect3DViewport2, 0x93281500,0x8CF8,0x11D0,0x89,0xAB,0x00,0xA0,0xC9,0x05,0x41,0x29); DEFINE_GUID(IID_IDirect3DViewport3, 0xb0ab3b61,0x33d7,0x11d1,0xa9,0x81,0x00,0xc0,0x4f,0xd7,0xb1,0x74); DEFINE_GUID(IID_IDirect3DVertexBuffer, 0x7a503555,0x4a83,0x11d1,0xa5,0xdb,0x00,0xa0,0xc9,0x03,0x67,0xf8); DEFINE_GUID(IID_IDirect3DVertexBuffer7, 0xf5049e7d,0x4861,0x11d2,0xa4,0x07,0x00,0xa0,0xc9,0x06,0x29,0xa8); typedef struct IDirect3D *LPDIRECT3D; typedef struct IDirect3D2 *LPDIRECT3D2; typedef struct IDirect3D3 *LPDIRECT3D3; typedef struct IDirect3D7 *LPDIRECT3D7; typedef struct IDirect3DLight *LPDIRECT3DLIGHT; typedef struct IDirect3DDevice *LPDIRECT3DDEVICE; typedef struct IDirect3DDevice2 *LPDIRECT3DDEVICE2; typedef struct IDirect3DDevice3 *LPDIRECT3DDEVICE3; typedef struct IDirect3DDevice7 *LPDIRECT3DDEVICE7; typedef struct IDirect3DViewport *LPDIRECT3DVIEWPORT; typedef struct IDirect3DViewport2 *LPDIRECT3DVIEWPORT2; typedef struct IDirect3DViewport3 *LPDIRECT3DVIEWPORT3; typedef struct IDirect3DMaterial *LPDIRECT3DMATERIAL; typedef struct IDirect3DMaterial2 *LPDIRECT3DMATERIAL2; typedef struct IDirect3DMaterial3 *LPDIRECT3DMATERIAL3; typedef struct IDirect3DTexture *LPDIRECT3DTEXTURE; typedef struct IDirect3DTexture2 *LPDIRECT3DTEXTURE2; typedef struct IDirect3DExecuteBuffer *LPDIRECT3DEXECUTEBUFFER; typedef struct IDirect3DVertexBuffer *LPDIRECT3DVERTEXBUFFER; typedef struct IDirect3DVertexBuffer7 *LPDIRECT3DVERTEXBUFFER7; /* ******************************************************************** Error Codes ******************************************************************** */ #define D3D_OK DD_OK #define D3DERR_BADMAJORVERSION MAKE_DDHRESULT(700) #define D3DERR_BADMINORVERSION MAKE_DDHRESULT(701) #define D3DERR_INVALID_DEVICE MAKE_DDHRESULT(705) #define D3DERR_INITFAILED MAKE_DDHRESULT(706) #define D3DERR_DEVICEAGGREGATED MAKE_DDHRESULT(707) #define D3DERR_EXECUTE_CREATE_FAILED MAKE_DDHRESULT(710) #define D3DERR_EXECUTE_DESTROY_FAILED MAKE_DDHRESULT(711) #define D3DERR_EXECUTE_LOCK_FAILED MAKE_DDHRESULT(712) #define D3DERR_EXECUTE_UNLOCK_FAILED MAKE_DDHRESULT(713) #define D3DERR_EXECUTE_LOCKED MAKE_DDHRESULT(714) #define D3DERR_EXECUTE_NOT_LOCKED MAKE_DDHRESULT(715) #define D3DERR_EXECUTE_FAILED MAKE_DDHRESULT(716) #define D3DERR_EXECUTE_CLIPPED_FAILED MAKE_DDHRESULT(717) #define D3DERR_TEXTURE_NO_SUPPORT MAKE_DDHRESULT(720) #define D3DERR_TEXTURE_CREATE_FAILED MAKE_DDHRESULT(721) #define D3DERR_TEXTURE_DESTROY_FAILED MAKE_DDHRESULT(722) #define D3DERR_TEXTURE_LOCK_FAILED MAKE_DDHRESULT(723) #define D3DERR_TEXTURE_UNLOCK_FAILED MAKE_DDHRESULT(724) #define D3DERR_TEXTURE_LOAD_FAILED MAKE_DDHRESULT(725) #define D3DERR_TEXTURE_SWAP_FAILED MAKE_DDHRESULT(726) #define D3DERR_TEXTURE_LOCKED MAKE_DDHRESULT(727) #define D3DERR_TEXTURE_NOT_LOCKED MAKE_DDHRESULT(728) #define D3DERR_TEXTURE_GETSURF_FAILED MAKE_DDHRESULT(729) #define D3DERR_MATRIX_CREATE_FAILED MAKE_DDHRESULT(730) #define D3DERR_MATRIX_DESTROY_FAILED MAKE_DDHRESULT(731) #define D3DERR_MATRIX_SETDATA_FAILED MAKE_DDHRESULT(732) #define D3DERR_MATRIX_GETDATA_FAILED MAKE_DDHRESULT(733) #define D3DERR_SETVIEWPORTDATA_FAILED MAKE_DDHRESULT(734) #define D3DERR_INVALIDCURRENTVIEWPORT MAKE_DDHRESULT(735) #define D3DERR_INVALIDPRIMITIVETYPE MAKE_DDHRESULT(736) #define D3DERR_INVALIDVERTEXTYPE MAKE_DDHRESULT(737) #define D3DERR_TEXTURE_BADSIZE MAKE_DDHRESULT(738) #define D3DERR_INVALIDRAMPTEXTURE MAKE_DDHRESULT(739) #define D3DERR_MATERIAL_CREATE_FAILED MAKE_DDHRESULT(740) #define D3DERR_MATERIAL_DESTROY_FAILED MAKE_DDHRESULT(741) #define D3DERR_MATERIAL_SETDATA_FAILED MAKE_DDHRESULT(742) #define D3DERR_MATERIAL_GETDATA_FAILED MAKE_DDHRESULT(743) #define D3DERR_INVALIDPALETTE MAKE_DDHRESULT(744) #define D3DERR_ZBUFF_NEEDS_SYSTEMMEMORY MAKE_DDHRESULT(745) #define D3DERR_ZBUFF_NEEDS_VIDEOMEMORY MAKE_DDHRESULT(746) #define D3DERR_SURFACENOTINVIDMEM MAKE_DDHRESULT(747) #define D3DERR_LIGHT_SET_FAILED MAKE_DDHRESULT(750) #define D3DERR_LIGHTHASVIEWPORT MAKE_DDHRESULT(751) #define D3DERR_LIGHTNOTINTHISVIEWPORT MAKE_DDHRESULT(752) #define D3DERR_SCENE_IN_SCENE MAKE_DDHRESULT(760) #define D3DERR_SCENE_NOT_IN_SCENE MAKE_DDHRESULT(761) #define D3DERR_SCENE_BEGIN_FAILED MAKE_DDHRESULT(762) #define D3DERR_SCENE_END_FAILED MAKE_DDHRESULT(763) #define D3DERR_INBEGIN MAKE_DDHRESULT(770) #define D3DERR_NOTINBEGIN MAKE_DDHRESULT(771) #define D3DERR_NOVIEWPORTS MAKE_DDHRESULT(772) #define D3DERR_VIEWPORTDATANOTSET MAKE_DDHRESULT(773) #define D3DERR_VIEWPORTHASNODEVICE MAKE_DDHRESULT(774) #define D3DERR_NOCURRENTVIEWPORT MAKE_DDHRESULT(775) #define D3DERR_INVALIDVERTEXFORMAT MAKE_DDHRESULT(2048) #define D3DERR_COLORKEYATTACHED MAKE_DDHRESULT(2050) #define D3DERR_VERTEXBUFFEROPTIMIZED MAKE_DDHRESULT(2060) #define D3DERR_VBUF_CREATE_FAILED MAKE_DDHRESULT(2061) #define D3DERR_VERTEXBUFFERLOCKED MAKE_DDHRESULT(2062) #define D3DERR_VERTEXBUFFERUNLOCKFAILED MAKE_DDHRESULT(2063) #define D3DERR_ZBUFFER_NOTPRESENT MAKE_DDHRESULT(2070) #define D3DERR_STENCILBUFFER_NOTPRESENT MAKE_DDHRESULT(2071) #define D3DERR_WRONGTEXTUREFORMAT MAKE_DDHRESULT(2072) #define D3DERR_UNSUPPORTEDCOLOROPERATION MAKE_DDHRESULT(2073) #define D3DERR_UNSUPPORTEDCOLORARG MAKE_DDHRESULT(2074) #define D3DERR_UNSUPPORTEDALPHAOPERATION MAKE_DDHRESULT(2075) #define D3DERR_UNSUPPORTEDALPHAARG MAKE_DDHRESULT(2076) #define D3DERR_TOOMANYOPERATIONS MAKE_DDHRESULT(2077) #define D3DERR_CONFLICTINGTEXTUREFILTER MAKE_DDHRESULT(2078) #define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_DDHRESULT(2079) #define D3DERR_CONFLICTINGRENDERSTATE MAKE_DDHRESULT(2081) #define D3DERR_UNSUPPORTEDTEXTUREFILTER MAKE_DDHRESULT(2082) #define D3DERR_TOOMANYPRIMITIVES MAKE_DDHRESULT(2083) #define D3DERR_INVALIDMATRIX MAKE_DDHRESULT(2084) #define D3DERR_TOOMANYVERTICES MAKE_DDHRESULT(2085) #define D3DERR_CONFLICTINGTEXTUREPALETTE MAKE_DDHRESULT(2086) #define D3DERR_INVALIDSTATEBLOCK MAKE_DDHRESULT(2100) #define D3DERR_INBEGINSTATEBLOCK MAKE_DDHRESULT(2101) #define D3DERR_NOTINBEGINSTATEBLOCK MAKE_DDHRESULT(2102) /* ******************************************************************** Enums ******************************************************************** */ #define D3DNEXT_NEXT __MSABI_LONG(0x01) #define D3DNEXT_HEAD __MSABI_LONG(0x02) #define D3DNEXT_TAIL __MSABI_LONG(0x04) #define D3DDP_WAIT __MSABI_LONG(0x00000001) #define D3DDP_OUTOFORDER __MSABI_LONG(0x00000002) #define D3DDP_DONOTCLIP __MSABI_LONG(0x00000004) #define D3DDP_DONOTUPDATEEXTENTS __MSABI_LONG(0x00000008) #define D3DDP_DONOTLIGHT __MSABI_LONG(0x00000010) /* ******************************************************************** Types and structures ******************************************************************** */ typedef DWORD D3DVIEWPORTHANDLE, *LPD3DVIEWPORTHANDLE; /***************************************************************************** * IDirect3D interface */ #undef INTERFACE #define INTERFACE IDirect3D DECLARE_INTERFACE_(IDirect3D,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D methods ***/ STDMETHOD(Initialize)(THIS_ REFIID riid) PURE; STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK cb, void *ctx) PURE; STDMETHOD(CreateLight)(THIS_ struct IDirect3DLight **light, IUnknown *outer) PURE; STDMETHOD(CreateMaterial)(THIS_ struct IDirect3DMaterial **material, IUnknown *outer) PURE; STDMETHOD(CreateViewport)(THIS_ struct IDirect3DViewport **viewport, IUnknown *outer) PURE; STDMETHOD(FindDevice)(THIS_ D3DFINDDEVICESEARCH *search, D3DFINDDEVICERESULT *result) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D methods ***/ #define IDirect3D_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3D_EnumDevices(p,a,b) (p)->lpVtbl->EnumDevices(p,a,b) #define IDirect3D_CreateLight(p,a,b) (p)->lpVtbl->CreateLight(p,a,b) #define IDirect3D_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3D_CreateViewport(p,a,b) (p)->lpVtbl->CreateViewport(p,a,b) #define IDirect3D_FindDevice(p,a,b) (p)->lpVtbl->FindDevice(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3D_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D_AddRef(p) (p)->AddRef() #define IDirect3D_Release(p) (p)->Release() /*** IDirect3D methods ***/ #define IDirect3D_Initialize(p,a) (p)->Initialize(a) #define IDirect3D_EnumDevices(p,a,b) (p)->EnumDevices(a,b) #define IDirect3D_CreateLight(p,a,b) (p)->CreateLight(a,b) #define IDirect3D_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3D_CreateViewport(p,a,b) (p)->CreateViewport(a,b) #define IDirect3D_FindDevice(p,a,b) (p)->FindDevice(a,b) #endif /***************************************************************************** * IDirect3D2 interface */ #define INTERFACE IDirect3D2 DECLARE_INTERFACE_(IDirect3D2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D2 methods ***/ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK cb, void *ctx) PURE; STDMETHOD(CreateLight)(THIS_ struct IDirect3DLight **light, IUnknown *outer) PURE; STDMETHOD(CreateMaterial)(THIS_ struct IDirect3DMaterial2 **material, IUnknown *outer) PURE; STDMETHOD(CreateViewport)(THIS_ struct IDirect3DViewport2 **viewport, IUnknown *outer) PURE; STDMETHOD(FindDevice)(THIS_ D3DFINDDEVICESEARCH *search, D3DFINDDEVICERESULT *result) PURE; STDMETHOD(CreateDevice)(THIS_ REFCLSID rclsid, IDirectDrawSurface *surface, struct IDirect3DDevice2 **device) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D2 methods ***/ #define IDirect3D2_EnumDevices(p,a,b) (p)->lpVtbl->EnumDevices(p,a,b) #define IDirect3D2_CreateLight(p,a,b) (p)->lpVtbl->CreateLight(p,a,b) #define IDirect3D2_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3D2_CreateViewport(p,a,b) (p)->lpVtbl->CreateViewport(p,a,b) #define IDirect3D2_FindDevice(p,a,b) (p)->lpVtbl->FindDevice(p,a,b) #define IDirect3D2_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3D2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D2_AddRef(p) (p)->AddRef() #define IDirect3D2_Release(p) (p)->Release() /*** IDirect3D2 methods ***/ #define IDirect3D2_EnumDevices(p,a,b) (p)->EnumDevices(a,b) #define IDirect3D2_CreateLight(p,a,b) (p)->CreateLight(a,b) #define IDirect3D2_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3D2_CreateViewport(p,a,b) (p)->CreateViewport(a,b) #define IDirect3D2_FindDevice(p,a,b) (p)->FindDevice(a,b) #define IDirect3D2_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c) #endif /***************************************************************************** * IDirect3D3 interface */ #define INTERFACE IDirect3D3 DECLARE_INTERFACE_(IDirect3D3,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D3 methods ***/ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK cb, void *ctx) PURE; STDMETHOD(CreateLight)(THIS_ struct IDirect3DLight **light, IUnknown *outer) PURE; STDMETHOD(CreateMaterial)(THIS_ struct IDirect3DMaterial3 **material, IUnknown *outer) PURE; STDMETHOD(CreateViewport)(THIS_ struct IDirect3DViewport3 **viewport, IUnknown *outer) PURE; STDMETHOD(FindDevice)(THIS_ D3DFINDDEVICESEARCH *search, D3DFINDDEVICERESULT *result) PURE; STDMETHOD(CreateDevice)(THIS_ REFCLSID rclsid, IDirectDrawSurface4 *surface, struct IDirect3DDevice3 **device, IUnknown *outer) PURE; STDMETHOD(CreateVertexBuffer)(THIS_ D3DVERTEXBUFFERDESC *desc, struct IDirect3DVertexBuffer **buffer, DWORD flags, IUnknown *outer) PURE; STDMETHOD(EnumZBufferFormats)(THIS_ REFCLSID device_iid, LPD3DENUMPIXELFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(EvictManagedTextures)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D3 methods ***/ #define IDirect3D3_EnumDevices(p,a,b) (p)->lpVtbl->EnumDevices(p,a,b) #define IDirect3D3_CreateLight(p,a,b) (p)->lpVtbl->CreateLight(p,a,b) #define IDirect3D3_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3D3_CreateViewport(p,a,b) (p)->lpVtbl->CreateViewport(p,a,b) #define IDirect3D3_FindDevice(p,a,b) (p)->lpVtbl->FindDevice(p,a,b) #define IDirect3D3_CreateDevice(p,a,b,c,d) (p)->lpVtbl->CreateDevice(p,a,b,c,d) #define IDirect3D3_CreateVertexBuffer(p,a,b,c,d) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d) #define IDirect3D3_EnumZBufferFormats(p,a,b,c) (p)->lpVtbl->EnumZBufferFormats(p,a,b,c) #define IDirect3D3_EvictManagedTextures(p) (p)->lpVtbl->EvictManagedTextures(p) #else /*** IUnknown methods ***/ #define IDirect3D3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D3_AddRef(p) (p)->AddRef() #define IDirect3D3_Release(p) (p)->Release() /*** IDirect3D3 methods ***/ #define IDirect3D3_EnumDevices(p,a,b) (p)->EnumDevices(a,b) #define IDirect3D3_CreateLight(p,a,b) (p)->CreateLight(a,b) #define IDirect3D3_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3D3_CreateViewport(p,a,b) (p)->CreateViewport(a,b) #define IDirect3D3_FindDevice(p,a,b) (p)->FindDevice(a,b) #define IDirect3D3_CreateDevice(p,a,b,c,d) (p)->CreateDevice(a,b,c,d) #define IDirect3D3_CreateVertexBuffer(p,a,b,c,d) (p)->CreateVertexBuffer(a,b,c,d) #define IDirect3D3_EnumZBufferFormats(p,a,b,c) (p)->EnumZBufferFormats(a,b,c) #define IDirect3D3_EvictManagedTextures(p) (p)->EvictManagedTextures() #endif /***************************************************************************** * IDirect3D7 interface */ #define INTERFACE IDirect3D7 DECLARE_INTERFACE_(IDirect3D7,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D7 methods ***/ STDMETHOD(EnumDevices)(THIS_ LPD3DENUMDEVICESCALLBACK7 cb, void *ctx) PURE; STDMETHOD(CreateDevice)(THIS_ REFCLSID rclsid, IDirectDrawSurface7 *surface, struct IDirect3DDevice7 **device) PURE; STDMETHOD(CreateVertexBuffer)(THIS_ D3DVERTEXBUFFERDESC *desc, struct IDirect3DVertexBuffer7 **buffer, DWORD flags) PURE; STDMETHOD(EnumZBufferFormats)(THIS_ REFCLSID device_iid, LPD3DENUMPIXELFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(EvictManagedTextures)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D7_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D7_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D7_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D3 methods ***/ #define IDirect3D7_EnumDevices(p,a,b) (p)->lpVtbl->EnumDevices(p,a,b) #define IDirect3D7_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c) #define IDirect3D7_CreateVertexBuffer(p,a,b,c) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c) #define IDirect3D7_EnumZBufferFormats(p,a,b,c) (p)->lpVtbl->EnumZBufferFormats(p,a,b,c) #define IDirect3D7_EvictManagedTextures(p) (p)->lpVtbl->EvictManagedTextures(p) #else /*** IUnknown methods ***/ #define IDirect3D7_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D7_AddRef(p) (p)->AddRef() #define IDirect3D7_Release(p) (p)->Release() /*** IDirect3D3 methods ***/ #define IDirect3D7_EnumDevices(p,a,b) (p)->EnumDevices(a,b) #define IDirect3D7_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c) #define IDirect3D7_CreateVertexBuffer(p,a,b,c) (p)->CreateVertexBuffer(a,b,c) #define IDirect3D7_EnumZBufferFormats(p,a,b,c) (p)->EnumZBufferFormats(a,b,c) #define IDirect3D7_EvictManagedTextures(p) (p)->EvictManagedTextures() #endif /***************************************************************************** * IDirect3DLight interface */ #define INTERFACE IDirect3DLight DECLARE_INTERFACE_(IDirect3DLight,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DLight methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d) PURE; STDMETHOD(SetLight)(THIS_ D3DLIGHT *data) PURE; STDMETHOD(GetLight)(THIS_ D3DLIGHT *data) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DLight_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DLight_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DLight_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DLight methods ***/ #define IDirect3DLight_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3DLight_SetLight(p,a) (p)->lpVtbl->SetLight(p,a) #define IDirect3DLight_GetLight(p,a) (p)->lpVtbl->GetLight(p,a) #else /*** IUnknown methods ***/ #define IDirect3DLight_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DLight_AddRef(p) (p)->AddRef() #define IDirect3DLight_Release(p) (p)->Release() /*** IDirect3DLight methods ***/ #define IDirect3DLight_Initialize(p,a) (p)->Initialize(a) #define IDirect3DLight_SetLight(p,a) (p)->SetLight(a) #define IDirect3DLight_GetLight(p,a) (p)->GetLight(a) #endif /***************************************************************************** * IDirect3DMaterial interface */ #define INTERFACE IDirect3DMaterial DECLARE_INTERFACE_(IDirect3DMaterial,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DMaterial methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d) PURE; STDMETHOD(SetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetHandle)(THIS_ struct IDirect3DDevice *device, D3DMATERIALHANDLE *handle) PURE; STDMETHOD(Reserve)(THIS) PURE; STDMETHOD(Unreserve)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DMaterial_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DMaterial_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DMaterial_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DMaterial methods ***/ #define IDirect3DMaterial_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3DMaterial_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DMaterial_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DMaterial_GetHandle(p,a,b) (p)->lpVtbl->GetHandle(p,a,b) #define IDirect3DMaterial_Reserve(p) (p)->lpVtbl->Reserve(p) #define IDirect3DMaterial_Unreserve(p) (p)->lpVtbl->Unreserve(p) #else /*** IUnknown methods ***/ #define IDirect3DMaterial_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DMaterial_AddRef(p) (p)->AddRef() #define IDirect3DMaterial_Release(p) (p)->Release() /*** IDirect3DMaterial methods ***/ #define IDirect3DMaterial_Initialize(p,a) (p)->Initialize(a) #define IDirect3DMaterial_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DMaterial_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DMaterial_GetHandle(p,a,b) (p)->GetHandle(a,b) #define IDirect3DMaterial_Reserve(p) (p)->Reserve() #define IDirect3DMaterial_Unreserve(p) (p)->Unreserve() #endif /***************************************************************************** * IDirect3DMaterial2 interface */ #define INTERFACE IDirect3DMaterial2 DECLARE_INTERFACE_(IDirect3DMaterial2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DMaterial2 methods ***/ STDMETHOD(SetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetHandle)(THIS_ struct IDirect3DDevice2 *device, D3DMATERIALHANDLE *handle) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DMaterial2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DMaterial2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DMaterial2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DMaterial2 methods ***/ #define IDirect3DMaterial2_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DMaterial2_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DMaterial2_GetHandle(p,a,b) (p)->lpVtbl->GetHandle(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DMaterial2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DMaterial2_AddRef(p) (p)->AddRef() #define IDirect3DMaterial2_Release(p) (p)->Release() /*** IDirect3DMaterial2 methods ***/ #define IDirect3DMaterial2_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DMaterial2_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DMaterial2_GetHandle(p,a,b) (p)->GetHandle(a,b) #endif /***************************************************************************** * IDirect3DMaterial3 interface */ #define INTERFACE IDirect3DMaterial3 DECLARE_INTERFACE_(IDirect3DMaterial3,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DMaterial3 methods ***/ STDMETHOD(SetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL *data) PURE; STDMETHOD(GetHandle)(THIS_ struct IDirect3DDevice3 *device, D3DMATERIALHANDLE *handle) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DMaterial3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DMaterial3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DMaterial3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DMaterial3 methods ***/ #define IDirect3DMaterial3_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DMaterial3_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DMaterial3_GetHandle(p,a,b) (p)->lpVtbl->GetHandle(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DMaterial3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DMaterial3_AddRef(p) (p)->AddRef() #define IDirect3DMaterial3_Release(p) (p)->Release() /*** IDirect3DMaterial3 methods ***/ #define IDirect3DMaterial3_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DMaterial3_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DMaterial3_GetHandle(p,a,b) (p)->GetHandle(a,b) #endif /***************************************************************************** * IDirect3DTexture interface */ #define INTERFACE IDirect3DTexture DECLARE_INTERFACE_(IDirect3DTexture,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DTexture methods ***/ STDMETHOD(Initialize)(THIS_ struct IDirect3DDevice *device, IDirectDrawSurface *surface) PURE; STDMETHOD(GetHandle)(THIS_ struct IDirect3DDevice *device, D3DTEXTUREHANDLE *handle) PURE; STDMETHOD(PaletteChanged)(THIS_ DWORD dwStart, DWORD dwCount) PURE; STDMETHOD(Load)(THIS_ IDirect3DTexture *texture) PURE; STDMETHOD(Unload)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DTexture_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DTexture_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DTexture_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DTexture methods ***/ #define IDirect3DTexture_Initialize(p,a,b) (p)->lpVtbl->Initialize(p,a,b) #define IDirect3DTexture_GetHandle(p,a,b) (p)->lpVtbl->GetHandle(p,a,b) #define IDirect3DTexture_PaletteChanged(p,a,b) (p)->lpVtbl->PaletteChanged(p,a,b) #define IDirect3DTexture_Load(p,a) (p)->lpVtbl->Load(p,a) #define IDirect3DTexture_Unload(p) (p)->lpVtbl->Unload(p) #else /*** IUnknown methods ***/ #define IDirect3DTexture_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DTexture_AddRef(p) (p)->AddRef() #define IDirect3DTexture_Release(p) (p)->Release() /*** IDirect3DTexture methods ***/ #define IDirect3DTexture_Initialize(p,a,b) (p)->Initialize(a,b) #define IDirect3DTexture_GetHandle(p,a,b) (p)->GetHandle(a,b) #define IDirect3DTexture_PaletteChanged(p,a,b) (p)->PaletteChanged(a,b) #define IDirect3DTexture_Load(p,a) (p)->Load(a) #define IDirect3DTexture_Unload(p) (p)->Unload() #endif /***************************************************************************** * IDirect3DTexture2 interface */ #define INTERFACE IDirect3DTexture2 DECLARE_INTERFACE_(IDirect3DTexture2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DTexture2 methods ***/ STDMETHOD(GetHandle)(THIS_ struct IDirect3DDevice2 *device, D3DTEXTUREHANDLE *handle) PURE; STDMETHOD(PaletteChanged)(THIS_ DWORD dwStart, DWORD dwCount) PURE; STDMETHOD(Load)(THIS_ IDirect3DTexture2 *texture) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DTexture2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DTexture2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DTexture2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DTexture2 methods ***/ #define IDirect3DTexture2_GetHandle(p,a,b) (p)->lpVtbl->GetHandle(p,a,b) #define IDirect3DTexture2_PaletteChanged(p,a,b) (p)->lpVtbl->PaletteChanged(p,a,b) #define IDirect3DTexture2_Load(p,a) (p)->lpVtbl->Load(p,a) #else /*** IUnknown methods ***/ #define IDirect3DTexture2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DTexture2_AddRef(p) (p)->AddRef() #define IDirect3DTexture2_Release(p) (p)->Release() /*** IDirect3DTexture2 methods ***/ #define IDirect3DTexture2_GetHandle(p,a,b) (p)->GetHandle(a,b) #define IDirect3DTexture2_PaletteChanged(p,a,b) (p)->PaletteChanged(a,b) #define IDirect3DTexture2_Load(p,a) (p)->Load(a) #endif /***************************************************************************** * IDirect3DViewport interface */ #define INTERFACE IDirect3DViewport DECLARE_INTERFACE_(IDirect3DViewport,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DViewport methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(SetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(TransformVertices)(THIS_ DWORD vertex_count, D3DTRANSFORMDATA *data, DWORD flags, DWORD *offscreen) PURE; STDMETHOD(LightElements)(THIS_ DWORD element_count, D3DLIGHTDATA *data) PURE; STDMETHOD(SetBackground)(THIS_ D3DMATERIALHANDLE hMat) PURE; STDMETHOD(GetBackground)(THIS_ D3DMATERIALHANDLE *material, WINBOOL *valid) PURE; STDMETHOD(SetBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(GetBackgroundDepth)(THIS_ IDirectDrawSurface **surface, WINBOOL *valid) PURE; STDMETHOD(Clear)(THIS_ DWORD count, D3DRECT *rects, DWORD flags) PURE; STDMETHOD(AddLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(DeleteLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(NextLight)(THIS_ IDirect3DLight *ref, IDirect3DLight **light, DWORD flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DViewport_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DViewport_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DViewport_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DViewport methods ***/ #define IDirect3DViewport_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3DViewport_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DViewport_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DViewport_TransformVertices(p,a,b,c,d) (p)->lpVtbl->TransformVertices(p,a,b,c,d) #define IDirect3DViewport_LightElements(p,a,b) (p)->lpVtbl->LightElements(p,a,b) #define IDirect3DViewport_SetBackground(p,a) (p)->lpVtbl->SetBackground(p,a) #define IDirect3DViewport_GetBackground(p,a,b) (p)->lpVtbl->GetBackground(p,a,b) #define IDirect3DViewport_SetBackgroundDepth(p,a) (p)->lpVtbl->SetBackgroundDepth(p,a) #define IDirect3DViewport_GetBackgroundDepth(p,a,b) (p)->lpVtbl->GetBackgroundDepth(p,a,b) #define IDirect3DViewport_Clear(p,a,b,c) (p)->lpVtbl->Clear(p,a,b,c) #define IDirect3DViewport_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DViewport_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DViewport_NextLight(p,a,b,c) (p)->lpVtbl->NextLight(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DViewport_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DViewport_AddRef(p) (p)->AddRef() #define IDirect3DViewport_Release(p) (p)->Release() /*** IDirect3DViewport methods ***/ #define IDirect3DViewport_Initialize(p,a) (p)->Initialize(a) #define IDirect3DViewport_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DViewport_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DViewport_TransformVertices(p,a,b,c,d) (p)->TransformVertices(a,b,c,d) #define IDirect3DViewport_LightElements(p,a,b) (p)->LightElements(a,b) #define IDirect3DViewport_SetBackground(p,a) (p)->SetBackground(a) #define IDirect3DViewport_GetBackground(p,a,b) (p)->GetBackground(a,b) #define IDirect3DViewport_SetBackgroundDepth(p,a) (p)->SetBackgroundDepth(a) #define IDirect3DViewport_GetBackgroundDepth(p,a,b) (p)->GetBackgroundDepth(a,b) #define IDirect3DViewport_Clear(p,a,b,c) (p)->Clear(a,b,c) #define IDirect3DViewport_AddLight(p,a) (p)->AddLight(a) #define IDirect3DViewport_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DViewport_NextLight(p,a,b,c) (p)->NextLight(a,b,c) #endif /***************************************************************************** * IDirect3DViewport2 interface */ #define INTERFACE IDirect3DViewport2 DECLARE_INTERFACE_(IDirect3DViewport2,IDirect3DViewport) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DViewport methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(SetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(TransformVertices)(THIS_ DWORD vertex_count, D3DTRANSFORMDATA *data, DWORD flags, DWORD *offscreen) PURE; STDMETHOD(LightElements)(THIS_ DWORD element_count, D3DLIGHTDATA *data) PURE; STDMETHOD(SetBackground)(THIS_ D3DMATERIALHANDLE hMat) PURE; STDMETHOD(GetBackground)(THIS_ D3DMATERIALHANDLE *material, WINBOOL *valid) PURE; STDMETHOD(SetBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(GetBackgroundDepth)(THIS_ IDirectDrawSurface **surface, WINBOOL *valid) PURE; STDMETHOD(Clear)(THIS_ DWORD count, D3DRECT *rects, DWORD flags) PURE; STDMETHOD(AddLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(DeleteLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(NextLight)(THIS_ IDirect3DLight *ref, IDirect3DLight **light, DWORD flags) PURE; /*** IDirect3DViewport2 methods ***/ STDMETHOD(GetViewport2)(THIS_ D3DVIEWPORT2 *data) PURE; STDMETHOD(SetViewport2)(THIS_ D3DVIEWPORT2 *data) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DViewport2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DViewport2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DViewport2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3Viewport methods ***/ #define IDirect3DViewport2_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3DViewport2_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DViewport2_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DViewport2_TransformVertices(p,a,b,c,d) (p)->lpVtbl->TransformVertices(p,a,b,c,d) #define IDirect3DViewport2_LightElements(p,a,b) (p)->lpVtbl->LightElements(p,a,b) #define IDirect3DViewport2_SetBackground(p,a) (p)->lpVtbl->SetBackground(p,a) #define IDirect3DViewport2_GetBackground(p,a,b) (p)->lpVtbl->GetBackground(p,a,b) #define IDirect3DViewport2_SetBackgroundDepth(p,a) (p)->lpVtbl->SetBackgroundDepth(p,a) #define IDirect3DViewport2_GetBackgroundDepth(p,a,b) (p)->lpVtbl->GetBackgroundDepth(p,a,b) #define IDirect3DViewport2_Clear(p,a,b,c) (p)->lpVtbl->Clear(p,a,b,c) #define IDirect3DViewport2_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DViewport2_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DViewport2_NextLight(p,a,b,c) (p)->lpVtbl->NextLight(p,a,b,c) /*** IDirect3DViewport2 methods ***/ #define IDirect3DViewport2_GetViewport2(p,a) (p)->lpVtbl->GetViewport2(p,a) #define IDirect3DViewport2_SetViewport2(p,a) (p)->lpVtbl->SetViewport2(p,a) #else /*** IUnknown methods ***/ #define IDirect3DViewport2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DViewport2_AddRef(p) (p)->AddRef() #define IDirect3DViewport2_Release(p) (p)->Release() /*** IDirect3Viewport methods ***/ #define IDirect3DViewport2_Initialize(p,a) (p)->Initialize(a) #define IDirect3DViewport2_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DViewport2_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DViewport2_TransformVertices(p,a,b,c,d) (p)->TransformVertices(a,b,c,d) #define IDirect3DViewport2_LightElements(p,a,b) (p)->LightElements(a,b) #define IDirect3DViewport2_SetBackground(p,a) (p)->SetBackground(a) #define IDirect3DViewport2_GetBackground(p,a,b) (p)->GetBackground(a,b) #define IDirect3DViewport2_SetBackgroundDepth(p,a) (p)->SetBackgroundDepth(a) #define IDirect3DViewport2_GetBackgroundDepth(p,a,b) (p)->GetBackgroundDepth(a,b) #define IDirect3DViewport2_Clear(p,a,b,c) (p)->Clear(a,b,c) #define IDirect3DViewport2_AddLight(p,a) (p)->AddLight(a) #define IDirect3DViewport2_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DViewport2_NextLight(p,a,b,c) (p)->NextLight(a,b,c) /*** IDirect3DViewport2 methods ***/ #define IDirect3DViewport2_GetViewport2(p,a) (p)->GetViewport2(a) #define IDirect3DViewport2_SetViewport2(p,a) (p)->SetViewport2(a) #endif /***************************************************************************** * IDirect3DViewport3 interface */ #define INTERFACE IDirect3DViewport3 DECLARE_INTERFACE_(IDirect3DViewport3,IDirect3DViewport2) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DViewport methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(SetViewport)(THIS_ D3DVIEWPORT *data) PURE; STDMETHOD(TransformVertices)(THIS_ DWORD vertex_count, D3DTRANSFORMDATA *data, DWORD flags, DWORD *offscreen) PURE; STDMETHOD(LightElements)(THIS_ DWORD element_count, D3DLIGHTDATA *data) PURE; STDMETHOD(SetBackground)(THIS_ D3DMATERIALHANDLE hMat) PURE; STDMETHOD(GetBackground)(THIS_ D3DMATERIALHANDLE *material, WINBOOL *valid) PURE; STDMETHOD(SetBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(GetBackgroundDepth)(THIS_ IDirectDrawSurface **surface, WINBOOL *valid) PURE; STDMETHOD(Clear)(THIS_ DWORD count, D3DRECT *rects, DWORD flags) PURE; STDMETHOD(AddLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(DeleteLight)(THIS_ IDirect3DLight *light) PURE; STDMETHOD(NextLight)(THIS_ IDirect3DLight *ref, IDirect3DLight **light, DWORD flags) PURE; /*** IDirect3DViewport2 methods ***/ STDMETHOD(GetViewport2)(THIS_ D3DVIEWPORT2 *data) PURE; STDMETHOD(SetViewport2)(THIS_ D3DVIEWPORT2 *data) PURE; /*** IDirect3DViewport3 methods ***/ STDMETHOD(SetBackgroundDepth2)(THIS_ IDirectDrawSurface4 *surface) PURE; STDMETHOD(GetBackgroundDepth2)(THIS_ IDirectDrawSurface4 **surface, WINBOOL *valid) PURE; STDMETHOD(Clear2)(THIS_ DWORD count, D3DRECT *rects, DWORD flags, DWORD color, D3DVALUE z, DWORD stencil) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DViewport3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DViewport3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DViewport3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3Viewport methods ***/ #define IDirect3DViewport3_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDirect3DViewport3_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DViewport3_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DViewport3_TransformVertices(p,a,b,c,d) (p)->lpVtbl->TransformVertices(p,a,b,c,d) #define IDirect3DViewport3_LightElements(p,a,b) (p)->lpVtbl->LightElements(p,a,b) #define IDirect3DViewport3_SetBackground(p,a) (p)->lpVtbl->SetBackground(p,a) #define IDirect3DViewport3_GetBackground(p,a,b) (p)->lpVtbl->GetBackground(p,a,b) #define IDirect3DViewport3_SetBackgroundDepth(p,a) (p)->lpVtbl->SetBackgroundDepth(p,a) #define IDirect3DViewport3_GetBackgroundDepth(p,a,b) (p)->lpVtbl->GetBackgroundDepth(p,a,b) #define IDirect3DViewport3_Clear(p,a,b,c) (p)->lpVtbl->Clear(p,a,b,c) #define IDirect3DViewport3_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DViewport3_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DViewport3_NextLight(p,a,b,c) (p)->lpVtbl->NextLight(p,a,b,c) /*** IDirect3DViewport2 methods ***/ #define IDirect3DViewport3_GetViewport2(p,a) (p)->lpVtbl->GetViewport2(p,a) #define IDirect3DViewport3_SetViewport2(p,a) (p)->lpVtbl->SetViewport2(p,a) /*** IDirect3DViewport3 methods ***/ #define IDirect3DViewport3_SetBackgroundDepth2(p,a) (p)->lpVtbl->SetBackgroundDepth2(p,a) #define IDirect3DViewport3_GetBackgroundDepth2(p,a,b) (p)->lpVtbl->GetBackgroundDepth2(p,a,b) #define IDirect3DViewport3_Clear2(p,a,b,c,d,e,f) (p)->lpVtbl->Clear2(p,a,b,c,d,e,f) #else /*** IUnknown methods ***/ #define IDirect3DViewport3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DViewport3_AddRef(p) (p)->AddRef() #define IDirect3DViewport3_Release(p) (p)->Release() /*** IDirect3Viewport methods ***/ #define IDirect3DViewport3_Initialize(p,a) (p)->Initialize(a) #define IDirect3DViewport3_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DViewport3_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DViewport3_TransformVertices(p,a,b,c,d) (p)->TransformVertices(a,b,c,d) #define IDirect3DViewport3_LightElements(p,a,b) (p)->LightElements(a,b) #define IDirect3DViewport3_SetBackground(p,a) (p)->SetBackground(a) #define IDirect3DViewport3_GetBackground(p,a,b) (p)->GetBackground(a,b) #define IDirect3DViewport3_SetBackgroundDepth(p,a) (p)->SetBackgroundDepth(a) #define IDirect3DViewport3_GetBackgroundDepth(p,a,b) (p)->GetBackgroundDepth(a,b) #define IDirect3DViewport3_Clear(p,a,b,c) (p)->Clear(a,b,c) #define IDirect3DViewport3_AddLight(p,a) (p)->AddLight(a) #define IDirect3DViewport3_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DViewport3_NextLight(p,a,b,c) (p)->NextLight(a,b,c) /*** IDirect3DViewport2 methods ***/ #define IDirect3DViewport3_GetViewport2(p,a) (p)->GetViewport2(a) #define IDirect3DViewport3_SetViewport2(p,a) (p)->SetViewport2(a) /*** IDirect3DViewport3 methods ***/ #define IDirect3DViewport3_SetBackgroundDepth2(p,a) (p)->SetBackgroundDepth2(a) #define IDirect3DViewport3_GetBackgroundDepth2(p,a,b) (p)->GetBackgroundDepth2(a,b) #define IDirect3DViewport3_Clear2(p,a,b,c,d,e,f) (p)->Clear2(a,b,c,d,e,f) #endif /***************************************************************************** * IDirect3DExecuteBuffer interface */ #define INTERFACE IDirect3DExecuteBuffer DECLARE_INTERFACE_(IDirect3DExecuteBuffer,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DExecuteBuffer methods ***/ STDMETHOD(Initialize)(THIS_ struct IDirect3DDevice *device, D3DEXECUTEBUFFERDESC *desc) PURE; STDMETHOD(Lock)(THIS_ D3DEXECUTEBUFFERDESC *desc) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(SetExecuteData)(THIS_ D3DEXECUTEDATA *data) PURE; STDMETHOD(GetExecuteData)(THIS_ D3DEXECUTEDATA *data) PURE; STDMETHOD(Validate)(THIS_ DWORD *offset, LPD3DVALIDATECALLBACK cb, void *ctx, DWORD reserved) PURE; STDMETHOD(Optimize)(THIS_ DWORD dwDummy) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DExecuteBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DExecuteBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DExecuteBuffer_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DExecuteBuffer methods ***/ #define IDirect3DExecuteBuffer_Initialize(p,a,b) (p)->lpVtbl->Initialize(p,a,b) #define IDirect3DExecuteBuffer_Lock(p,a) (p)->lpVtbl->Lock(p,a) #define IDirect3DExecuteBuffer_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DExecuteBuffer_SetExecuteData(p,a) (p)->lpVtbl->SetExecuteData(p,a) #define IDirect3DExecuteBuffer_GetExecuteData(p,a) (p)->lpVtbl->GetExecuteData(p,a) #define IDirect3DExecuteBuffer_Validate(p,a,b,c,d) (p)->lpVtbl->Validate(p,a,b,c,d) #define IDirect3DExecuteBuffer_Optimize(p,a) (p)->lpVtbl->Optimize(p,a) #else /*** IUnknown methods ***/ #define IDirect3DExecuteBuffer_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DExecuteBuffer_AddRef(p) (p)->AddRef() #define IDirect3DExecuteBuffer_Release(p) (p)->Release() /*** IDirect3DExecuteBuffer methods ***/ #define IDirect3DExecuteBuffer_Initialize(p,a,b) (p)->Initialize(a,b) #define IDirect3DExecuteBuffer_Lock(p,a) (p)->Lock(a) #define IDirect3DExecuteBuffer_Unlock(p) (p)->Unlock() #define IDirect3DExecuteBuffer_SetExecuteData(p,a) (p)->SetExecuteData(a) #define IDirect3DExecuteBuffer_GetExecuteData(p,a) (p)->GetExecuteData(a) #define IDirect3DExecuteBuffer_Validate(p,a,b,c,d) (p)->Validate(a,b,c,d) #define IDirect3DExecuteBuffer_Optimize(p,a) (p)->Optimize(a) #endif /***************************************************************************** * IDirect3DDevice interface */ #define INTERFACE IDirect3DDevice DECLARE_INTERFACE_(IDirect3DDevice,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice methods ***/ STDMETHOD(Initialize)(THIS_ IDirect3D *d3d, GUID *guid, D3DDEVICEDESC *desc) PURE; STDMETHOD(GetCaps)(THIS_ D3DDEVICEDESC *hal_desc, D3DDEVICEDESC *hel_desc) PURE; STDMETHOD(SwapTextureHandles)(THIS_ IDirect3DTexture *tex1, IDirect3DTexture *tex2) PURE; STDMETHOD(CreateExecuteBuffer)(THIS_ D3DEXECUTEBUFFERDESC *desc, IDirect3DExecuteBuffer **buffer, IUnknown *outer) PURE; STDMETHOD(GetStats)(THIS_ D3DSTATS *stats) PURE; STDMETHOD(Execute)(THIS_ IDirect3DExecuteBuffer *buffer, IDirect3DViewport *viewport, DWORD flags) PURE; STDMETHOD(AddViewport)(THIS_ IDirect3DViewport *viewport) PURE; STDMETHOD(DeleteViewport)(THIS_ IDirect3DViewport *viewport) PURE; STDMETHOD(NextViewport)(THIS_ IDirect3DViewport *ref, IDirect3DViewport **viewport, DWORD flags) PURE; STDMETHOD(Pick)(THIS_ IDirect3DExecuteBuffer *buffer, IDirect3DViewport *viewport, DWORD flags, D3DRECT *rect) PURE; STDMETHOD(GetPickRecords)(THIS_ DWORD *count, D3DPICKRECORD *records) PURE; STDMETHOD(EnumTextureFormats)(THIS_ LPD3DENUMTEXTUREFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(CreateMatrix)(THIS_ D3DMATRIXHANDLE *matrix) PURE; STDMETHOD(SetMatrix)(THIS_ D3DMATRIXHANDLE handle, D3DMATRIX *matrix) PURE; STDMETHOD(GetMatrix)(THIS_ D3DMATRIXHANDLE handle, D3DMATRIX *matrix) PURE; STDMETHOD(DeleteMatrix)(THIS_ D3DMATRIXHANDLE D3DMatHandle) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D **d3d) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice methods ***/ #define IDirect3DDevice_Initialize(p,a,b,c) (p)->lpVtbl->Initialize(p,a,b,c) #define IDirect3DDevice_GetCaps(p,a,b) (p)->lpVtbl->GetCaps(p,a,b) #define IDirect3DDevice_SwapTextureHandles(p,a,b) (p)->lpVtbl->SwapTextureHandles(p,a,b) #define IDirect3DDevice_CreateExecuteBuffer(p,a,b,c) (p)->lpVtbl->CreateExecuteBuffer(p,a,b,c) #define IDirect3DDevice_GetStats(p,a) (p)->lpVtbl->GetStats(p,a) #define IDirect3DDevice_Execute(p,a,b,c) (p)->lpVtbl->Execute(p,a,b,c) #define IDirect3DDevice_AddViewport(p,a) (p)->lpVtbl->AddViewport(p,a) #define IDirect3DDevice_DeleteViewport(p,a) (p)->lpVtbl->DeleteViewport(p,a) #define IDirect3DDevice_NextViewport(p,a,b,c) (p)->lpVtbl->NextViewport(p,a,b,c) #define IDirect3DDevice_Pick(p,a,b,c,d) (p)->lpVtbl->Pick(p,a,b,c,d) #define IDirect3DDevice_GetPickRecords(p,a,b) (p)->lpVtbl->GetPickRecords(p,a,b) #define IDirect3DDevice_EnumTextureFormats(p,a,b) (p)->lpVtbl->EnumTextureFormats(p,a,b) #define IDirect3DDevice_CreateMatrix(p,a) (p)->lpVtbl->CreateMatrix(p,a) #define IDirect3DDevice_SetMatrix(p,a,b) (p)->lpVtbl->SetMatrix(p,a,b) #define IDirect3DDevice_GetMatrix(p,a,b) (p)->lpVtbl->GetMatrix(p,a,b) #define IDirect3DDevice_DeleteMatrix(p,a) (p)->lpVtbl->DeleteMatrix(p,a) #define IDirect3DDevice_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #else /*** IUnknown methods ***/ #define IDirect3DDevice_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice_AddRef(p) (p)->AddRef() #define IDirect3DDevice_Release(p) (p)->Release() /*** IDirect3DDevice methods ***/ #define IDirect3DDevice_Initialize(p,a,b,c) (p)->Initialize(a,b,c) #define IDirect3DDevice_GetCaps(p,a,b) (p)->GetCaps(a,b) #define IDirect3DDevice_SwapTextureHandles(p,a,b) (p)->SwapTextureHandles(a,b) #define IDirect3DDevice_CreateExecuteBuffer(p,a,b,c) (p)->CreateExecuteBuffer(a,b,c) #define IDirect3DDevice_GetStats(p,a) (p)->GetStats(a) #define IDirect3DDevice_Execute(p,a,b,c) (p)->Execute(a,b,c) #define IDirect3DDevice_AddViewport(p,a) (p)->AddViewport(a) #define IDirect3DDevice_DeleteViewport(p,a) (p)->DeleteViewport(a) #define IDirect3DDevice_NextViewport(p,a,b,c) (p)->NextViewport(a,b,c) #define IDirect3DDevice_Pick(p,a,b,c,d) (p)->Pick(a,b,c,d) #define IDirect3DDevice_GetPickRecords(p,a,b) (p)->GetPickRecords(a,b) #define IDirect3DDevice_EnumTextureFormats(p,a,b) (p)->EnumTextureFormats(a,b) #define IDirect3DDevice_CreateMatrix(p,a) (p)->CreateMatrix(a) #define IDirect3DDevice_SetMatrix(p,a,b) (p)->SetMatrix(a,b) #define IDirect3DDevice_GetMatrix(p,a,b) (p)->GetMatrix(a,b) #define IDirect3DDevice_DeleteMatrix(p,a) (p)->DeleteMatrix(a) #define IDirect3DDevice_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice_EndScene(p) (p)->EndScene() #define IDirect3DDevice_GetDirect3D(p,a) (p)->GetDirect3D(a) #endif /***************************************************************************** * IDirect3DDevice2 interface */ #define INTERFACE IDirect3DDevice2 DECLARE_INTERFACE_(IDirect3DDevice2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice2 methods ***/ STDMETHOD(GetCaps)(THIS_ D3DDEVICEDESC *hal_desc, D3DDEVICEDESC *hel_desc) PURE; STDMETHOD(SwapTextureHandles)(THIS_ IDirect3DTexture2 *tex1, IDirect3DTexture2 *tex2) PURE; STDMETHOD(GetStats)(THIS_ D3DSTATS *stats) PURE; STDMETHOD(AddViewport)(THIS_ IDirect3DViewport2 *viewport) PURE; STDMETHOD(DeleteViewport)(THIS_ IDirect3DViewport2 *viewport) PURE; STDMETHOD(NextViewport)(THIS_ IDirect3DViewport2 *ref, IDirect3DViewport2 **viewport, DWORD flags) PURE; STDMETHOD(EnumTextureFormats)(THIS_ LPD3DENUMTEXTUREFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D2 **d3d) PURE; /*** DrawPrimitive API ***/ STDMETHOD(SetCurrentViewport)(THIS_ IDirect3DViewport2 *viewport) PURE; STDMETHOD(GetCurrentViewport)(THIS_ IDirect3DViewport2 **viewport) PURE; STDMETHOD(SetRenderTarget)(THIS_ IDirectDrawSurface *surface, DWORD flags) PURE; STDMETHOD(GetRenderTarget)(THIS_ IDirectDrawSurface **surface) PURE; STDMETHOD(Begin)(THIS_ D3DPRIMITIVETYPE d3dpt,D3DVERTEXTYPE dwVertexTypeDesc,DWORD dwFlags) PURE; STDMETHOD(BeginIndexed)(THIS_ D3DPRIMITIVETYPE primitive_type, D3DVERTEXTYPE vertex_type, void *vertices, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(Vertex)(THIS_ void *vertex) PURE; STDMETHOD(Index)(THIS_ WORD wVertexIndex) PURE; STDMETHOD(End)(THIS_ DWORD dwFlags) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, LPDWORD lpdwRenderState) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, DWORD dwRenderState) PURE; STDMETHOD(GetLightState)(THIS_ D3DLIGHTSTATETYPE dwLightStateType, LPDWORD lpdwLightState) PURE; STDMETHOD(SetLightState)(THIS_ D3DLIGHTSTATETYPE dwLightStateType, DWORD dwLightState) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, D3DVERTEXTYPE vertex_type, void *vertices, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, D3DVERTEXTYPE vertex_type, void *vertices, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(SetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice2 methods ***/ #define IDirect3DDevice2_GetCaps(p,a,b) (p)->lpVtbl->GetCaps(p,a,b) #define IDirect3DDevice2_SwapTextureHandles(p,a,b) (p)->lpVtbl->SwapTextureHandles(p,a,b) #define IDirect3DDevice2_GetStats(p,a) (p)->lpVtbl->GetStats(p,a) #define IDirect3DDevice2_AddViewport(p,a) (p)->lpVtbl->AddViewport(p,a) #define IDirect3DDevice2_DeleteViewport(p,a) (p)->lpVtbl->DeleteViewport(p,a) #define IDirect3DDevice2_NextViewport(p,a,b,c) (p)->lpVtbl->NextViewport(p,a,b,c) #define IDirect3DDevice2_EnumTextureFormats(p,a,b) (p)->lpVtbl->EnumTextureFormats(p,a,b) #define IDirect3DDevice2_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice2_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice2_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice2_SetCurrentViewport(p,a) (p)->lpVtbl->SetCurrentViewport(p,a) #define IDirect3DDevice2_GetCurrentViewport(p,a) (p)->lpVtbl->GetCurrentViewport(p,a) #define IDirect3DDevice2_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice2_GetRenderTarget(p,a) (p)->lpVtbl->GetRenderTarget(p,a) #define IDirect3DDevice2_Begin(p,a,b,c) (p)->lpVtbl->Begin(p,a,b,c) #define IDirect3DDevice2_BeginIndexed(p,a,b,c,d,e) (p)->lpVtbl->BeginIndexed(p,a,b,c,d,e) #define IDirect3DDevice2_Vertex(p,a) (p)->lpVtbl->Vertex(p,a) #define IDirect3DDevice2_Index(p,a) (p)->lpVtbl->Index(p,a) #define IDirect3DDevice2_End(p,a) (p)->lpVtbl->End(p,a) #define IDirect3DDevice2_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice2_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice2_GetLightState(p,a,b) (p)->lpVtbl->GetLightState(p,a,b) #define IDirect3DDevice2_SetLightState(p,a,b) (p)->lpVtbl->SetLightState(p,a,b) #define IDirect3DDevice2_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice2_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice2_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice2_DrawPrimitive(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitive(p,a,b,c,d,e) #define IDirect3DDevice2_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f,g) #define IDirect3DDevice2_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice2_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #else /*** IUnknown methods ***/ #define IDirect3DDevice2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice2_AddRef(p) (p)->AddRef() #define IDirect3DDevice2_Release(p) (p)->Release() /*** IDirect3DDevice2 methods ***/ #define IDirect3DDevice2_GetCaps(p,a,b) (p)->GetCaps(a,b) #define IDirect3DDevice2_SwapTextureHandles(p,a,b) (p)->SwapTextureHandles(a,b) #define IDirect3DDevice2_GetStats(p,a) (p)->GetStats(a) #define IDirect3DDevice2_AddViewport(p,a) (p)->AddViewport(a) #define IDirect3DDevice2_DeleteViewport(p,a) (p)->DeleteViewport(a) #define IDirect3DDevice2_NextViewport(p,a,b,c) (p)->NextViewport(a,b,c) #define IDirect3DDevice2_EnumTextureFormats(p,a,b) (p)->EnumTextureFormats(a,b) #define IDirect3DDevice2_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice2_EndScene(p) (p)->EndScene() #define IDirect3DDevice2_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice2_SetCurrentViewport(p,a) (p)->SetCurrentViewport(a) #define IDirect3DDevice2_GetCurrentViewport(p,a) (p)->GetCurrentViewport(a) #define IDirect3DDevice2_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice2_GetRenderTarget(p,a) (p)->GetRenderTarget(a) #define IDirect3DDevice2_Begin(p,a,b,c) (p)->Begin(a,b,c) #define IDirect3DDevice2_BeginIndexed(p,a,b,c,d,e) (p)->BeginIndexed(a,b,c,d,e) #define IDirect3DDevice2_Vertex(p,a) (p)->Vertex(a) #define IDirect3DDevice2_Index(p,a) (p)->Index(a) #define IDirect3DDevice2_End(p,a) (p)->End(a) #define IDirect3DDevice2_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice2_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice2_GetLightState(p,a,b) (p)->GetLightState(a,b) #define IDirect3DDevice2_SetLightState(p,a,b) (p)->SetLightState(a,b) #define IDirect3DDevice2_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice2_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice2_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice2_DrawPrimitive(p,a,b,c,d,e) (p)->DrawPrimitive(a,b,c,d,e) #define IDirect3DDevice2_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitive(a,b,c,d,e,f,g) #define IDirect3DDevice2_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice2_GetClipStatus(p,a) (p)->GetClipStatus(a) #endif /***************************************************************************** * IDirect3DDevice3 interface */ #define INTERFACE IDirect3DDevice3 DECLARE_INTERFACE_(IDirect3DDevice3,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice3 methods ***/ STDMETHOD(GetCaps)(THIS_ D3DDEVICEDESC *hal_desc, D3DDEVICEDESC *hel_desc) PURE; STDMETHOD(GetStats)(THIS_ D3DSTATS *stats) PURE; STDMETHOD(AddViewport)(THIS_ IDirect3DViewport3 *viewport) PURE; STDMETHOD(DeleteViewport)(THIS_ IDirect3DViewport3 *viewport) PURE; STDMETHOD(NextViewport)(THIS_ IDirect3DViewport3 *ref, IDirect3DViewport3 **viewport, DWORD flags) PURE; STDMETHOD(EnumTextureFormats)(THIS_ LPD3DENUMPIXELFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D3 **d3d) PURE; /*** DrawPrimitive API ***/ STDMETHOD(SetCurrentViewport)(THIS_ IDirect3DViewport3 *viewport) PURE; STDMETHOD(GetCurrentViewport)(THIS_ IDirect3DViewport3 **viewport) PURE; STDMETHOD(SetRenderTarget)(THIS_ IDirectDrawSurface4 *surface, DWORD flags) PURE; STDMETHOD(GetRenderTarget)(THIS_ IDirectDrawSurface4 **surface) PURE; STDMETHOD(Begin)(THIS_ D3DPRIMITIVETYPE d3dptPrimitiveType,DWORD dwVertexTypeDesc, DWORD dwFlags) PURE; STDMETHOD(BeginIndexed)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, void *vertices, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(Vertex)(THIS_ void *vertex) PURE; STDMETHOD(Index)(THIS_ WORD wVertexIndex) PURE; STDMETHOD(End)(THIS_ DWORD dwFlags) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, LPDWORD lpdwRenderState) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, DWORD dwRenderState) PURE; STDMETHOD(GetLightState)(THIS_ D3DLIGHTSTATETYPE dwLightStateType, LPDWORD lpdwLightState) PURE; STDMETHOD(SetLightState)(THIS_ D3DLIGHTSTATETYPE dwLightStateType, DWORD dwLightState) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD vertex_type, void *vertices, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, void *vertices, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(SetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; STDMETHOD(DrawPrimitiveStrided)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, D3DDRAWPRIMITIVESTRIDEDDATA *strided_data, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitiveStrided)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, D3DDRAWPRIMITIVESTRIDEDDATA *strided_data, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(DrawPrimitiveVB)(THIS_ D3DPRIMITIVETYPE primitive_type, struct IDirect3DVertexBuffer *vb, DWORD start_vertex, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitiveVB)(THIS_ D3DPRIMITIVETYPE primitive_type, struct IDirect3DVertexBuffer *vb, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(ComputeSphereVisibility)(THIS_ D3DVECTOR *centers, D3DVALUE *radii, DWORD sphere_count, DWORD flags, DWORD *ret) PURE; STDMETHOD(GetTexture)(THIS_ DWORD stage, IDirect3DTexture2 **texture) PURE; STDMETHOD(SetTexture)(THIS_ DWORD stage, IDirect3DTexture2 *texture) PURE; STDMETHOD(GetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,LPDWORD lpdwState) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,DWORD dwState) PURE; STDMETHOD(ValidateDevice)(THIS_ LPDWORD lpdwPasses) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice3 methods ***/ #define IDirect3DDevice3_GetCaps(p,a,b) (p)->lpVtbl->GetCaps(p,a,b) #define IDirect3DDevice3_GetStats(p,a) (p)->lpVtbl->GetStats(p,a) #define IDirect3DDevice3_AddViewport(p,a) (p)->lpVtbl->AddViewport(p,a) #define IDirect3DDevice3_DeleteViewport(p,a) (p)->lpVtbl->DeleteViewport(p,a) #define IDirect3DDevice3_NextViewport(p,a,b,c) (p)->lpVtbl->NextViewport(p,a,b,c) #define IDirect3DDevice3_EnumTextureFormats(p,a,b) (p)->lpVtbl->EnumTextureFormats(p,a,b) #define IDirect3DDevice3_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice3_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice3_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice3_SetCurrentViewport(p,a) (p)->lpVtbl->SetCurrentViewport(p,a) #define IDirect3DDevice3_GetCurrentViewport(p,a) (p)->lpVtbl->GetCurrentViewport(p,a) #define IDirect3DDevice3_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice3_GetRenderTarget(p,a) (p)->lpVtbl->GetRenderTarget(p,a) #define IDirect3DDevice3_Begin(p,a,b,c) (p)->lpVtbl->Begin(p,a,b,c) #define IDirect3DDevice3_BeginIndexed(p,a,b,c,d,e) (p)->lpVtbl->BeginIndexed(p,a,b,c,d,e) #define IDirect3DDevice3_Vertex(p,a) (p)->lpVtbl->Vertex(p,a) #define IDirect3DDevice3_Index(p,a) (p)->lpVtbl->Index(p,a) #define IDirect3DDevice3_End(p,a) (p)->lpVtbl->End(p,a) #define IDirect3DDevice3_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice3_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice3_GetLightState(p,a,b) (p)->lpVtbl->GetLightState(p,a,b) #define IDirect3DDevice3_SetLightState(p,a,b) (p)->lpVtbl->SetLightState(p,a,b) #define IDirect3DDevice3_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice3_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice3_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice3_DrawPrimitive(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitive(p,a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f,g) #define IDirect3DDevice3_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice3_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #define IDirect3DDevice3_DrawPrimitiveStrided(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitiveStrided(p,a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) #define IDirect3DDevice3_DrawPrimitiveVB(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitiveVB(p,a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitiveVB(p,a,b,c,d,e) (p)->lpVtbl->DrawIndexedPrimitiveVB(p,a,b,c,d,e) #define IDirect3DDevice3_ComputeSphereVisibility(p,a,b,c,d,e) (p)->lpVtbl->ComputeSphereVisibility(p,a,b,c,d,e) #define IDirect3DDevice3_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) #define IDirect3DDevice3_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) #define IDirect3DDevice3_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) #define IDirect3DDevice3_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) #define IDirect3DDevice3_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) #else /*** IUnknown methods ***/ #define IDirect3DDevice3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice3_AddRef(p) (p)->AddRef() #define IDirect3DDevice3_Release(p) (p)->Release() /*** IDirect3DDevice3 methods ***/ #define IDirect3DDevice3_GetCaps(p,a,b) (p)->GetCaps(a,b) #define IDirect3DDevice3_GetStats(p,a) (p)->GetStats(a) #define IDirect3DDevice3_AddViewport(p,a) (p)->AddViewport(a) #define IDirect3DDevice3_DeleteViewport(p,a) (p)->DeleteViewport(a) #define IDirect3DDevice3_NextViewport(p,a,b,c) (p)->NextViewport(a,b,c) #define IDirect3DDevice3_EnumTextureFormats(p,a,b) (p)->EnumTextureFormats(a,b) #define IDirect3DDevice3_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice3_EndScene(p) (p)->EndScene() #define IDirect3DDevice3_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice3_SetCurrentViewport(p,a) (p)->SetCurrentViewport(a) #define IDirect3DDevice3_GetCurrentViewport(p,a) (p)->GetCurrentViewport(a) #define IDirect3DDevice3_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice3_GetRenderTarget(p,a) (p)->GetRenderTarget(a) #define IDirect3DDevice3_Begin(p,a,b,c) (p)->Begin(a,b,c) #define IDirect3DDevice3_BeginIndexed(p,a,b,c,d,e) (p)->BeginIndexed(a,b,c,d,e) #define IDirect3DDevice3_Vertex(p,a) (p)->Vertex(a) #define IDirect3DDevice3_Index(p,a) (p)->Index(a) #define IDirect3DDevice3_End(p,a) (p)->End(a) #define IDirect3DDevice3_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice3_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice3_GetLightState(p,a,b) (p)->GetLightState(a,b) #define IDirect3DDevice3_SetLightState(p,a,b) (p)->SetLightState(a,b) #define IDirect3DDevice3_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice3_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice3_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice3_DrawPrimitive(p,a,b,c,d,e) (p)->DrawPrimitive(a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitive(a,b,c,d,e,f,g) #define IDirect3DDevice3_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice3_GetClipStatus(p,a) (p)->GetClipStatus(a) #define IDirect3DDevice3_DrawPrimitiveStrided(p,a,b,c,d,e) (p)->DrawPrimitiveStrided(a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitiveStrided(a,b,c,d,e,f,g) #define IDirect3DDevice3_DrawPrimitiveVB(p,a,b,c,d,e) (p)->DrawPrimitiveVB(a,b,c,d,e) #define IDirect3DDevice3_DrawIndexedPrimitiveVB(p,a,b,c,d,e) (p)->DrawIndexedPrimitiveVB(a,b,c,d,e) #define IDirect3DDevice3_ComputeSphereVisibility(p,a,b,c,d,e) (p)->ComputeSphereVisibility(a,b,c,d,e) #define IDirect3DDevice3_GetTexture(p,a,b) (p)->GetTexture(a,b) #define IDirect3DDevice3_SetTexture(p,a,b) (p)->SetTexture(a,b) #define IDirect3DDevice3_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) #define IDirect3DDevice3_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) #define IDirect3DDevice3_ValidateDevice(p,a) (p)->ValidateDevice(a) #endif /***************************************************************************** * IDirect3DDevice7 interface */ #define INTERFACE IDirect3DDevice7 DECLARE_INTERFACE_(IDirect3DDevice7,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice7 methods ***/ STDMETHOD(GetCaps)(THIS_ D3DDEVICEDESC7 *desc) PURE; STDMETHOD(EnumTextureFormats)(THIS_ LPD3DENUMPIXELFORMATSCALLBACK cb, void *ctx) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D7 **d3d) PURE; STDMETHOD(SetRenderTarget)(THIS_ IDirectDrawSurface7 *surface, DWORD flags) PURE; STDMETHOD(GetRenderTarget)(THIS_ IDirectDrawSurface7 **surface) PURE; STDMETHOD(Clear)(THIS_ DWORD count, D3DRECT *rects, DWORD flags, D3DCOLOR color, D3DVALUE z, DWORD stencil) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(SetViewport)(THIS_ D3DVIEWPORT7 *data) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, D3DMATRIX *matrix) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT7 *data) PURE; STDMETHOD(SetMaterial)(THIS_ D3DMATERIAL7 *data) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL7 *data) PURE; STDMETHOD(SetLight)(THIS_ DWORD idx, D3DLIGHT7 *data) PURE; STDMETHOD(GetLight)(THIS_ DWORD idx, D3DLIGHT7 *data) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, DWORD dwRenderState) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE dwRenderStateType, LPDWORD lpdwRenderState) PURE; STDMETHOD(BeginStateBlock)(THIS) PURE; STDMETHOD(EndStateBlock)(THIS_ LPDWORD lpdwBlockHandle) PURE; STDMETHOD(PreLoad)(THIS_ IDirectDrawSurface7 *surface) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, void *vertices, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, void *vertices, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(SetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS *clip_status) PURE; STDMETHOD(DrawPrimitiveStrided)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, D3DDRAWPRIMITIVESTRIDEDDATA *strided_data, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitiveStrided)(THIS_ D3DPRIMITIVETYPE primitive_type, DWORD fvf, D3DDRAWPRIMITIVESTRIDEDDATA *strided_data, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(DrawPrimitiveVB)(THIS_ D3DPRIMITIVETYPE primitive_type, struct IDirect3DVertexBuffer7 *vb, DWORD start_vertex, DWORD vertex_count, DWORD flags) PURE; STDMETHOD(DrawIndexedPrimitiveVB)(THIS_ D3DPRIMITIVETYPE primitive_type, struct IDirect3DVertexBuffer7 *vb, DWORD start_vertex, DWORD vertex_count, WORD *indices, DWORD index_count, DWORD flags) PURE; STDMETHOD(ComputeSphereVisibility)(THIS_ D3DVECTOR *centers, D3DVALUE *radii, DWORD sphere_count, DWORD flags, DWORD *ret) PURE; STDMETHOD(GetTexture)(THIS_ DWORD stage, IDirectDrawSurface7 **surface) PURE; STDMETHOD(SetTexture)(THIS_ DWORD stage, IDirectDrawSurface7 *surface) PURE; STDMETHOD(GetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,LPDWORD lpdwState) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD dwStage,D3DTEXTURESTAGESTATETYPE d3dTexStageStateType,DWORD dwState) PURE; STDMETHOD(ValidateDevice)(THIS_ LPDWORD lpdwPasses) PURE; STDMETHOD(ApplyStateBlock)(THIS_ DWORD dwBlockHandle) PURE; STDMETHOD(CaptureStateBlock)(THIS_ DWORD dwBlockHandle) PURE; STDMETHOD(DeleteStateBlock)(THIS_ DWORD dwBlockHandle) PURE; STDMETHOD(CreateStateBlock)(THIS_ D3DSTATEBLOCKTYPE d3dsbType,LPDWORD lpdwBlockHandle) PURE; STDMETHOD(Load)(THIS_ IDirectDrawSurface7 *dst_surface, POINT *dst_point, IDirectDrawSurface7 *src_surface, RECT *src_rect, DWORD flags) PURE; STDMETHOD(LightEnable)(THIS_ DWORD dwLightIndex,WINBOOL bEnable) PURE; STDMETHOD(GetLightEnable)(THIS_ DWORD dwLightIndex,WINBOOL *pbEnable) PURE; STDMETHOD(SetClipPlane)(THIS_ DWORD dwIndex,D3DVALUE *pPlaneEquation) PURE; STDMETHOD(GetClipPlane)(THIS_ DWORD dwIndex,D3DVALUE *pPlaneEquation) PURE; STDMETHOD(GetInfo)(THIS_ DWORD info_id, void *info, DWORD info_size) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice7_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice7_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice7_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice7 methods ***/ #define IDirect3DDevice7_GetCaps(p,a) (p)->lpVtbl->GetCaps(p,a) #define IDirect3DDevice7_EnumTextureFormats(p,a,b) (p)->lpVtbl->EnumTextureFormats(p,a,b) #define IDirect3DDevice7_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice7_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice7_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice7_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice7_GetRenderTarget(p,a) (p)->lpVtbl->GetRenderTarget(p,a) #define IDirect3DDevice7_Clear(p,a,b,c,d,e,f) (p)->lpVtbl->Clear(p,a,b,c,d,e,f) #define IDirect3DDevice7_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice7_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice7_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DDevice7_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice7_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DDevice7_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DDevice7_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DDevice7_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) #define IDirect3DDevice7_GetLight(p,a,b) (p)->lpVtbl->GetLight(p,a,b) #define IDirect3DDevice7_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice7_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice7_BeginStateBlock(p) (p)->lpVtbl->BeginStateBlock(p) #define IDirect3DDevice7_EndStateBlock(p,a) (p)->lpVtbl->EndStateBlock(p,a) #define IDirect3DDevice7_PreLoad(p,a) (p)->lpVtbl->PreLoad(p,a) #define IDirect3DDevice7_DrawPrimitive(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitive(p,a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f,g) #define IDirect3DDevice7_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice7_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #define IDirect3DDevice7_DrawPrimitiveStrided(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitiveStrided(p,a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) #define IDirect3DDevice7_DrawPrimitiveVB(p,a,b,c,d,e) (p)->lpVtbl->DrawPrimitiveVB(p,a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitiveVB(p,a,b,c,d,e,f,g) (p)->lpVtbl->DrawIndexedPrimitiveVB(p,a,b,c,d,e,f,g) #define IDirect3DDevice7_ComputeSphereVisibility(p,a,b,c,d,e) (p)->lpVtbl->ComputeSphereVisibility(p,a,b,c,d,e) #define IDirect3DDevice7_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) #define IDirect3DDevice7_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) #define IDirect3DDevice7_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) #define IDirect3DDevice7_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) #define IDirect3DDevice7_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) #define IDirect3DDevice7_ApplyStateBlock(p,a) (p)->lpVtbl->ApplyStateBlock(p,a) #define IDirect3DDevice7_CaptureStateBlock(p,a) (p)->lpVtbl->CaptureStateBlock(p,a) #define IDirect3DDevice7_DeleteStateBlock(p,a) (p)->lpVtbl->DeleteStateBlock(p,a) #define IDirect3DDevice7_CreateStateBlock(p,a,b) (p)->lpVtbl->CreateStateBlock(p,a,b) #define IDirect3DDevice7_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DDevice7_LightEnable(p,a,b) (p)->lpVtbl->LightEnable(p,a,b) #define IDirect3DDevice7_GetLightEnable(p,a,b) (p)->lpVtbl->GetLightEnable(p,a,b) #define IDirect3DDevice7_SetClipPlane(p,a,b) (p)->lpVtbl->SetClipPlane(p,a,b) #define IDirect3DDevice7_GetClipPlane(p,a,b) (p)->lpVtbl->GetClipPlane(p,a,b) #define IDirect3DDevice7_GetInfo(p,a,b,c) (p)->lpVtbl->GetInfo(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DDevice7_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice7_AddRef(p) (p)->AddRef() #define IDirect3DDevice7_Release(p) (p)->Release() /*** IDirect3DDevice7 methods ***/ #define IDirect3DDevice7_GetCaps(p,a) (p)->GetCaps(a) #define IDirect3DDevice7_EnumTextureFormats(p,a,b) (p)->EnumTextureFormats(a,b) #define IDirect3DDevice7_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice7_EndScene(p) (p)->EndScene() #define IDirect3DDevice7_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice7_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice7_GetRenderTarget(p,a) (p)->GetRenderTarget(a) #define IDirect3DDevice7_Clear(p,a,b,c,d,e,f) (p)->Clear(a,b,c,d,e,f) #define IDirect3DDevice7_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice7_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice7_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DDevice7_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice7_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DDevice7_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DDevice7_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DDevice7_SetLight(p,a,b) (p)->SetLight(a,b) #define IDirect3DDevice7_GetLight(p,a,b) (p)->GetLight(a,b) #define IDirect3DDevice7_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice7_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice7_BeginStateBlock(p) (p)->BeginStateBlock() #define IDirect3DDevice7_EndStateBlock(p,a) (p)->EndStateBlock(a) #define IDirect3DDevice7_PreLoad(p,a) (p)->PreLoad(a) #define IDirect3DDevice7_DrawPrimitive(p,a,b,c,d,e) (p)->DrawPrimitive(a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitive(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitive(a,b,c,d,e,f,g) #define IDirect3DDevice7_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice7_GetClipStatus(p,a) (p)->GetClipStatus(a) #define IDirect3DDevice7_DrawPrimitiveStrided(p,a,b,c,d,e) (p)->DrawPrimitiveStrided(a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitiveStrided(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitiveStrided(a,b,c,d,e,f,g) #define IDirect3DDevice7_DrawPrimitiveVB(p,a,b,c,d,e) (p)->DrawPrimitiveVB(a,b,c,d,e) #define IDirect3DDevice7_DrawIndexedPrimitiveVB(p,a,b,c,d,e,f,g) (p)->DrawIndexedPrimitiveVB(a,b,c,d,e,f,g) #define IDirect3DDevice7_ComputeSphereVisibility(p,a,b,c,d,e) (p)->ComputeSphereVisibility(a,b,c,d,e) #define IDirect3DDevice7_GetTexture(p,a,b) (p)->GetTexture(a,b) #define IDirect3DDevice7_SetTexture(p,a,b) (p)->SetTexture(a,b) #define IDirect3DDevice7_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) #define IDirect3DDevice7_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) #define IDirect3DDevice7_ValidateDevice(p,a) (p)->ValidateDevice(a) #define IDirect3DDevice7_ApplyStateBlock(p,a) (p)->ApplyStateBlock(a) #define IDirect3DDevice7_CaptureStateBlock(p,a) (p)->CaptureStateBlock(a) #define IDirect3DDevice7_DeleteStateBlock(p,a) (p)->DeleteStateBlock(a) #define IDirect3DDevice7_CreateStateBlock(p,a,b) (p)->CreateStateBlock(a,b) #define IDirect3DDevice7_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DDevice7_LightEnable(p,a,b) (p)->LightEnable(a,b) #define IDirect3DDevice7_GetLightEnable(p,a,b) (p)->GetLightEnable(a,b) #define IDirect3DDevice7_SetClipPlane(p,a,b) (p)->SetClipPlane(a,b) #define IDirect3DDevice7_GetClipPlane(p,a,b) (p)->GetClipPlane(a,b) #define IDirect3DDevice7_GetInfo(p,a,b,c) (p)->GetInfo(a,b,c) #endif /***************************************************************************** * IDirect3DVertexBuffer interface */ #define INTERFACE IDirect3DVertexBuffer DECLARE_INTERFACE_(IDirect3DVertexBuffer,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVertexBuffer methods ***/ STDMETHOD(Lock)(THIS_ DWORD flags, void **data, DWORD *data_size) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(ProcessVertices)(THIS_ DWORD vertex_op, DWORD dst_idx, DWORD count, IDirect3DVertexBuffer *src_buffer, DWORD src_idx, IDirect3DDevice3 *device, DWORD flags) PURE; STDMETHOD(GetVertexBufferDesc)(THIS_ D3DVERTEXBUFFERDESC *desc) PURE; STDMETHOD(Optimize)(THIS_ IDirect3DDevice3 *device, DWORD flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexBuffer_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexBuffer methods ***/ #define IDirect3DVertexBuffer_Lock(p,a,b,c) (p)->lpVtbl->Lock(p,a,b,c) #define IDirect3DVertexBuffer_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DVertexBuffer_ProcessVertices(p,a,b,c,d,e,f,g) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e,f,g) #define IDirect3DVertexBuffer_GetVertexBufferDesc(p,a) (p)->lpVtbl->GetVertexBufferDesc(p,a) #define IDirect3DVertexBuffer_Optimize(p,a,b) (p)->lpVtbl->Optimize(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DVertexBuffer_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexBuffer_AddRef(p) (p)->AddRef() #define IDirect3DVertexBuffer_Release(p) (p)->Release() /*** IDirect3DVertexBuffer methods ***/ #define IDirect3DVertexBuffer_Lock(p,a,b,c) (p)->Lock(a,b,c) #define IDirect3DVertexBuffer_Unlock(p) (p)->Unlock() #define IDirect3DVertexBuffer_ProcessVertices(p,a,b,c,d,e,f,g) (p)->ProcessVertices(a,b,c,d,e,f,g) #define IDirect3DVertexBuffer_GetVertexBufferDesc(p,a) (p)->GetVertexBufferDesc(a) #define IDirect3DVertexBuffer_Optimize(p,a,b) (p)->Optimize(a,b) #endif /***************************************************************************** * IDirect3DVertexBuffer7 interface */ #define INTERFACE IDirect3DVertexBuffer7 DECLARE_INTERFACE_(IDirect3DVertexBuffer7,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVertexBuffer7 methods ***/ STDMETHOD(Lock)(THIS_ DWORD flags, void **data, DWORD *data_size) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(ProcessVertices)(THIS_ DWORD vertex_op, DWORD dst_idx, DWORD count, IDirect3DVertexBuffer7 *src_buffer, DWORD src_idx, IDirect3DDevice7 *device, DWORD flags) PURE; STDMETHOD(GetVertexBufferDesc)(THIS_ D3DVERTEXBUFFERDESC *desc) PURE; STDMETHOD(Optimize)(THIS_ IDirect3DDevice7 *device, DWORD flags) PURE; STDMETHOD(ProcessVerticesStrided)(THIS_ DWORD vertex_op, DWORD dst_idx, DWORD count, D3DDRAWPRIMITIVESTRIDEDDATA *data, DWORD fvf, IDirect3DDevice7 *device, DWORD flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexBuffer7_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexBuffer7_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexBuffer7_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexBuffer7 methods ***/ #define IDirect3DVertexBuffer7_Lock(p,a,b,c) (p)->lpVtbl->Lock(p,a,b,c) #define IDirect3DVertexBuffer7_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DVertexBuffer7_ProcessVertices(p,a,b,c,d,e,f,g) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e,f,g) #define IDirect3DVertexBuffer7_GetVertexBufferDesc(p,a) (p)->lpVtbl->GetVertexBufferDesc(p,a) #define IDirect3DVertexBuffer7_Optimize(p,a,b) (p)->lpVtbl->Optimize(p,a,b) #define IDirect3DVertexBuffer7_ProcessVerticesStrided(p,a,b,c,d,e,f,g) (p)->lpVtbl->ProcessVerticesStrided(p,a,b,c,d,e,f,g) #else /*** IUnknown methods ***/ #define IDirect3DVertexBuffer7_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexBuffer7_AddRef(p) (p)->AddRef() #define IDirect3DVertexBuffer7_Release(p) (p)->Release() /*** IDirect3DVertexBuffer7 methods ***/ #define IDirect3DVertexBuffer7_Lock(p,a,b,c) (p)->Lock(a,b,c) #define IDirect3DVertexBuffer7_Unlock(p) (p)->Unlock() #define IDirect3DVertexBuffer7_ProcessVertices(p,a,b,c,d,e,f,g) (p)->ProcessVertices(a,b,c,d,e,f,g) #define IDirect3DVertexBuffer7_GetVertexBufferDesc(p,a) (p)->GetVertexBufferDesc(a) #define IDirect3DVertexBuffer7_Optimize(p,a,b) (p)->Optimize(a,b) #define IDirect3DVertexBuffer7_ProcessVerticesStrided(p,a,b,c,d,e,f,g) (p)->ProcessVerticesStrided(a,b,c,d,e,f,g) #endif #endif /* __WINE_D3D_H */ dxvk-0~git20220822.9df86f2/d3d10.h000066400000000000000000006615551430055512200160050ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d10.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d10_h__ #define __d3d10_h__ /* Forward declarations */ #ifndef __ID3D10DeviceChild_FWD_DEFINED__ #define __ID3D10DeviceChild_FWD_DEFINED__ typedef interface ID3D10DeviceChild ID3D10DeviceChild; #ifdef __cplusplus interface ID3D10DeviceChild; #endif /* __cplusplus */ #endif #ifndef __ID3D10Resource_FWD_DEFINED__ #define __ID3D10Resource_FWD_DEFINED__ typedef interface ID3D10Resource ID3D10Resource; #ifdef __cplusplus interface ID3D10Resource; #endif /* __cplusplus */ #endif #ifndef __ID3D10Buffer_FWD_DEFINED__ #define __ID3D10Buffer_FWD_DEFINED__ typedef interface ID3D10Buffer ID3D10Buffer; #ifdef __cplusplus interface ID3D10Buffer; #endif /* __cplusplus */ #endif #ifndef __ID3D10Texture1D_FWD_DEFINED__ #define __ID3D10Texture1D_FWD_DEFINED__ typedef interface ID3D10Texture1D ID3D10Texture1D; #ifdef __cplusplus interface ID3D10Texture1D; #endif /* __cplusplus */ #endif #ifndef __ID3D10Texture2D_FWD_DEFINED__ #define __ID3D10Texture2D_FWD_DEFINED__ typedef interface ID3D10Texture2D ID3D10Texture2D; #ifdef __cplusplus interface ID3D10Texture2D; #endif /* __cplusplus */ #endif #ifndef __ID3D10Texture3D_FWD_DEFINED__ #define __ID3D10Texture3D_FWD_DEFINED__ typedef interface ID3D10Texture3D ID3D10Texture3D; #ifdef __cplusplus interface ID3D10Texture3D; #endif /* __cplusplus */ #endif #ifndef __ID3D10View_FWD_DEFINED__ #define __ID3D10View_FWD_DEFINED__ typedef interface ID3D10View ID3D10View; #ifdef __cplusplus interface ID3D10View; #endif /* __cplusplus */ #endif #ifndef __ID3D10DepthStencilView_FWD_DEFINED__ #define __ID3D10DepthStencilView_FWD_DEFINED__ typedef interface ID3D10DepthStencilView ID3D10DepthStencilView; #ifdef __cplusplus interface ID3D10DepthStencilView; #endif /* __cplusplus */ #endif #ifndef __ID3D10RenderTargetView_FWD_DEFINED__ #define __ID3D10RenderTargetView_FWD_DEFINED__ typedef interface ID3D10RenderTargetView ID3D10RenderTargetView; #ifdef __cplusplus interface ID3D10RenderTargetView; #endif /* __cplusplus */ #endif #ifndef __ID3D10ShaderResourceView_FWD_DEFINED__ #define __ID3D10ShaderResourceView_FWD_DEFINED__ typedef interface ID3D10ShaderResourceView ID3D10ShaderResourceView; #ifdef __cplusplus interface ID3D10ShaderResourceView; #endif /* __cplusplus */ #endif #ifndef __ID3D10BlendState_FWD_DEFINED__ #define __ID3D10BlendState_FWD_DEFINED__ typedef interface ID3D10BlendState ID3D10BlendState; #ifdef __cplusplus interface ID3D10BlendState; #endif /* __cplusplus */ #endif #ifndef __ID3D10DepthStencilState_FWD_DEFINED__ #define __ID3D10DepthStencilState_FWD_DEFINED__ typedef interface ID3D10DepthStencilState ID3D10DepthStencilState; #ifdef __cplusplus interface ID3D10DepthStencilState; #endif /* __cplusplus */ #endif #ifndef __ID3D10GeometryShader_FWD_DEFINED__ #define __ID3D10GeometryShader_FWD_DEFINED__ typedef interface ID3D10GeometryShader ID3D10GeometryShader; #ifdef __cplusplus interface ID3D10GeometryShader; #endif /* __cplusplus */ #endif #ifndef __ID3D10InputLayout_FWD_DEFINED__ #define __ID3D10InputLayout_FWD_DEFINED__ typedef interface ID3D10InputLayout ID3D10InputLayout; #ifdef __cplusplus interface ID3D10InputLayout; #endif /* __cplusplus */ #endif #ifndef __ID3D10PixelShader_FWD_DEFINED__ #define __ID3D10PixelShader_FWD_DEFINED__ typedef interface ID3D10PixelShader ID3D10PixelShader; #ifdef __cplusplus interface ID3D10PixelShader; #endif /* __cplusplus */ #endif #ifndef __ID3D10RasterizerState_FWD_DEFINED__ #define __ID3D10RasterizerState_FWD_DEFINED__ typedef interface ID3D10RasterizerState ID3D10RasterizerState; #ifdef __cplusplus interface ID3D10RasterizerState; #endif /* __cplusplus */ #endif #ifndef __ID3D10SamplerState_FWD_DEFINED__ #define __ID3D10SamplerState_FWD_DEFINED__ typedef interface ID3D10SamplerState ID3D10SamplerState; #ifdef __cplusplus interface ID3D10SamplerState; #endif /* __cplusplus */ #endif #ifndef __ID3D10VertexShader_FWD_DEFINED__ #define __ID3D10VertexShader_FWD_DEFINED__ typedef interface ID3D10VertexShader ID3D10VertexShader; #ifdef __cplusplus interface ID3D10VertexShader; #endif /* __cplusplus */ #endif #ifndef __ID3D10Asynchronous_FWD_DEFINED__ #define __ID3D10Asynchronous_FWD_DEFINED__ typedef interface ID3D10Asynchronous ID3D10Asynchronous; #ifdef __cplusplus interface ID3D10Asynchronous; #endif /* __cplusplus */ #endif #ifndef __ID3D10Counter_FWD_DEFINED__ #define __ID3D10Counter_FWD_DEFINED__ typedef interface ID3D10Counter ID3D10Counter; #ifdef __cplusplus interface ID3D10Counter; #endif /* __cplusplus */ #endif #ifndef __ID3D10Query_FWD_DEFINED__ #define __ID3D10Query_FWD_DEFINED__ typedef interface ID3D10Query ID3D10Query; #ifdef __cplusplus interface ID3D10Query; #endif /* __cplusplus */ #endif #ifndef __ID3D10Predicate_FWD_DEFINED__ #define __ID3D10Predicate_FWD_DEFINED__ typedef interface ID3D10Predicate ID3D10Predicate; #ifdef __cplusplus interface ID3D10Predicate; #endif /* __cplusplus */ #endif #ifndef __ID3D10Device_FWD_DEFINED__ #define __ID3D10Device_FWD_DEFINED__ typedef interface ID3D10Device ID3D10Device; #ifdef __cplusplus interface ID3D10Device; #endif /* __cplusplus */ #endif #ifndef __ID3D10Multithread_FWD_DEFINED__ #define __ID3D10Multithread_FWD_DEFINED__ typedef interface ID3D10Multithread ID3D10Multithread; #ifdef __cplusplus interface ID3D10Multithread; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #ifdef __cplusplus extern "C" { #endif #ifndef _D3D10_CONSTANTS #define _D3D10_CONSTANTS #define D3D10_DEFAULT_BLEND_FACTOR_ALPHA (1.00000000000000) #define D3D10_DEFAULT_BLEND_FACTOR_BLUE (1.00000000000000) #define D3D10_DEFAULT_BLEND_FACTOR_GREEN (1.00000000000000) #define D3D10_DEFAULT_BLEND_FACTOR_RED (1.00000000000000) #define D3D10_DEFAULT_BORDER_COLOR_COMPONENT (0.00000000000000) #define D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS (0.00000000000000) #define D3D10_DEFAULT_DEPTH_BIAS_CLAMP (0.00000000000000) #define D3D10_DEFAULT_MAX_ANISOTROPY (16.0000000000000) #define D3D10_DEFAULT_MIP_LOD_BIAS (0.00000000000000) #define D3D10_DEFAULT_VIEWPORT_MAX_DEPTH (0.00000000000000) #define D3D10_DEFAULT_VIEWPORT_MIN_DEPTH (0.00000000000000) #define D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP (0.600000000000000) #define D3D10_FLOAT32_MAX (3.40282346600000e+38) #define D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP (0.600000000000000) #define D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR (2.40000000000000) #define D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR (1.00000000000000) #define D3D10_FLOAT_TO_SRGB_OFFSET (0.0550000000000000) #define D3D10_FLOAT_TO_SRGB_SCALE_1 (12.9200000000000) #define D3D10_FLOAT_TO_SRGB_SCALE_2 (1.05500000000000) #define D3D10_FLOAT_TO_SRGB_THRESHOLD (0.00313080000000000) #define D3D10_FTOI_INSTRUCTION_MAX_INPUT (2147483647.99900) #define D3D10_FTOI_INSTRUCTION_MIN_INPUT (-2147483648.99900) #define D3D10_FTOU_INSTRUCTION_MAX_INPUT (4294967295.99900) #define D3D10_FTOU_INSTRUCTION_MIN_INPUT (0.00000000000000) #define D3D10_LINEAR_GAMMA (1.00000000000000) #define D3D10_MAX_BORDER_COLOR_COMPONENT (1.00000000000000) #define D3D10_MAX_DEPTH (1.00000000000000) #define D3D10_MAX_POSITION_VALUE (3.40282346600000e+34) #define D3D10_MIN_BORDER_COLOR_COMPONENT (0.00000000000000) #define D3D10_MIN_DEPTH (0.00000000000000) #define D3D10_MIP_LOD_BIAS_MAX (15.9900000000000) #define D3D10_MIP_LOD_BIAS_MIN (-16.0000000000000) #define D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.500000000000000) #define D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH (1.40000000000000) #define D3D10_SRGB_GAMMA (2.20000000000000) #define D3D10_SRGB_TO_FLOAT_DENOMINATOR_1 (12.9200000000000) #define D3D10_SRGB_TO_FLOAT_DENOMINATOR_2 (1.05500000000000) #define D3D10_SRGB_TO_FLOAT_EXPONENT (2.40000000000000) #define D3D10_SRGB_TO_FLOAT_OFFSET (0.0550000000000000) #define D3D10_SRGB_TO_FLOAT_THRESHOLD (0.0404500000000000) #define D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP (0.500000000000000) #define D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.00000000000000) #define D3D_SPEC_VERSION (1.05000500000000) #define D3D10_16BIT_INDEX_STRIP_CUT_VALUE (0xffff) #define D3D10_32BIT_INDEX_STRIP_CUT_VALUE (0xffffffff) #define D3D10_8BIT_INDEX_STRIP_CUT_VALUE (0xff) #define D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT (9) #define D3D10_CLIP_OR_CULL_DISTANCE_COUNT (8) #define D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT (2) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT (14) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS (4) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT (32) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT (15) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS (4) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT (15) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1) #define D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS (1) #define D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT (64) #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS (4) #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT (1) #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1) #define D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS (1) #define D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT (32) #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS (1) #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT (128) #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST (1) #define D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS (1) #define D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT (128) #define D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS (1) #define D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT (16) #define D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST (1) #define D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS (1) #define D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT (16) #define D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT (32) #define D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS (4) #define D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_COMMONSHADER_TEMP_REGISTER_COUNT (4096) #define D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST (3) #define D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS (3) #define D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX (10) #define D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN (-10) #define D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE (-8) #define D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE (7) #define D3D10_DEFAULT_DEPTH_BIAS (0) #define D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX (0) #define D3D10_DEFAULT_SAMPLE_MASK (0xffffffff) #define D3D10_DEFAULT_SCISSOR_ENDX (0) #define D3D10_DEFAULT_SCISSOR_ENDY (0) #define D3D10_DEFAULT_SCISSOR_STARTX (0) #define D3D10_DEFAULT_SCISSOR_STARTY (0) #define D3D10_DEFAULT_STENCIL_READ_MASK (0xff) #define D3D10_DEFAULT_STENCIL_REFERENCE (0) #define D3D10_DEFAULT_STENCIL_WRITE_MASK (0xff) #define D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX (0) #define D3D10_DEFAULT_VIEWPORT_HEIGHT (0) #define D3D10_DEFAULT_VIEWPORT_TOPLEFTX (0) #define D3D10_DEFAULT_VIEWPORT_TOPLEFTY (0) #define D3D10_DEFAULT_VIEWPORT_WIDTH (0) #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS (1) #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT (1) #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST (2) #define D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS (1) #define D3D10_GS_INPUT_REGISTER_COMPONENTS (4) #define D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_GS_INPUT_REGISTER_COUNT (16) #define D3D10_GS_INPUT_REGISTER_READS_PER_INST (2) #define D3D10_GS_INPUT_REGISTER_READ_PORTS (1) #define D3D10_GS_INPUT_REGISTER_VERTICES (6) #define D3D10_GS_OUTPUT_ELEMENTS (32) #define D3D10_GS_OUTPUT_REGISTER_COMPONENTS (4) #define D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_GS_OUTPUT_REGISTER_COUNT (32) #define D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES (0) #define D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY (0) #define D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES (0) #define D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT (1) #define D3D10_IA_INSTANCE_ID_BIT_COUNT (32) #define D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT (32) #define D3D10_IA_PRIMITIVE_ID_BIT_COUNT (32) #define D3D10_IA_VERTEX_ID_BIT_COUNT (32) #define D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (16) #define D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS (64) #define D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT (16) #define D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT (0xffffffff) #define D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER (0xffffffff) #define D3D10_MAX_MAXANISOTROPY (16) #define D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT (32) #define D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP (17) #define D3D10_MIN_MAXANISOTROPY (0) #define D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT (6) #define D3D10_MIP_LOD_RANGE_BIT_COUNT (8) #define D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT (0) #define D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT (13) #define D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT (15) #define D3D10_PS_FRONTFACING_DEFAULT_VALUE (0xffffffff) #define D3D10_PS_FRONTFACING_FALSE_VALUE (0) #define D3D10_PS_FRONTFACING_TRUE_VALUE (0xffffffff) #define D3D10_PS_INPUT_REGISTER_COMPONENTS (4) #define D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_PS_INPUT_REGISTER_COUNT (32) #define D3D10_PS_INPUT_REGISTER_READS_PER_INST (2) #define D3D10_PS_INPUT_REGISTER_READ_PORTS (1) #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS (1) #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT (1) #define D3D10_PS_OUTPUT_REGISTER_COMPONENTS (4) #define D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_PS_OUTPUT_REGISTER_COUNT (8) #define D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT (4096) #define D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP (27) #define D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT (4096) #define D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (32) #define D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP (32) #define D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION (8192) #define D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT (1024) #define D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D10_REQ_MAXANISOTROPY (16) #define D3D10_REQ_MIP_LEVELS (14) #define D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES (2048) #define D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT (4096) #define D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH (8192) #define D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES (128) #define D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP (20) #define D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT (4096) #define D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (512) #define D3D10_REQ_TEXTURE1D_U_DIMENSION (8192) #define D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (512) #define D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION (8192) #define D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) #define D3D10_REQ_TEXTURECUBE_DIMENSION (8192) #define D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL (0) #define D3D10_SHADER_MAJOR_VERSION (4) #define D3D10_SHADER_MINOR_VERSION (0) #define D3D10_SHIFT_INSTRUCTION_PAD_VALUE (0) #define D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT (5) #define D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT (8) #define D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048) #define D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES (256) #define D3D10_SO_BUFFER_SLOT_COUNT (4) #define D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP (0xffffffff) #define D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER (1) #define D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT (64) #define D3D10_STANDARD_COMPONENT_BIT_COUNT (32) #define D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED (64) #define D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE (4) #define D3D10_STANDARD_PIXEL_COMPONENT_COUNT (128) #define D3D10_STANDARD_PIXEL_ELEMENT_COUNT (32) #define D3D10_STANDARD_VECTOR_SIZE (4) #define D3D10_STANDARD_VERTEX_ELEMENT_COUNT (16) #define D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT (64) #define D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT (8) #define D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT (6) #define D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT (18) #define D3D10_UNBOUND_MEMORY_ACCESS_RESULT (0) #define D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX (15) #define D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16) #define D3D10_VIEWPORT_BOUNDS_MAX (16383) #define D3D10_VIEWPORT_BOUNDS_MIN (-16384) #define D3D10_VS_INPUT_REGISTER_COMPONENTS (4) #define D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_VS_INPUT_REGISTER_COUNT (16) #define D3D10_VS_INPUT_REGISTER_READS_PER_INST (2) #define D3D10_VS_INPUT_REGISTER_READ_PORTS (1) #define D3D10_VS_OUTPUT_REGISTER_COMPONENTS (4) #define D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_VS_OUTPUT_REGISTER_COUNT (16) #define D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT (10) #define D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (25) #define D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP (25) #define D3D_MAJOR_VERSION (10) #define D3D_MINOR_VERSION (0) #define D3D_SPEC_DATE_DAY (8) #define D3D_SPEC_DATE_MONTH (8) #define D3D_SPEC_DATE_YEAR (2006) #endif #define D3D10_APPEND_ALIGNED_ELEMENT (0xffffffff) #define _FACD3D10 (0x879) #define _FACD3D10DEBUG (_FACD3D10 + 1) #define D3D10_FILTER_TYPE_MASK (0x3) #define D3D10_SDK_VERSION (29) #define MAKE_D3D10_HRESULT(code) MAKE_HRESULT( 1, _FACD3D10, code) #define MAKE_D3D10_STATUS(code) MAKE_HRESULT( 0, _FACD3D10, code) #define D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS MAKE_D3D10_HRESULT(1) #define D3D10_ERROR_FILE_NOT_FOUND MAKE_D3D10_HRESULT(2) typedef enum D3D10_BLEND { D3D10_BLEND_ZERO = 1, D3D10_BLEND_ONE = 2, D3D10_BLEND_SRC_COLOR = 3, D3D10_BLEND_INV_SRC_COLOR = 4, D3D10_BLEND_SRC_ALPHA = 5, D3D10_BLEND_INV_SRC_ALPHA = 6, D3D10_BLEND_DEST_ALPHA = 7, D3D10_BLEND_INV_DEST_ALPHA = 8, D3D10_BLEND_DEST_COLOR = 9, D3D10_BLEND_INV_DEST_COLOR = 10, D3D10_BLEND_SRC_ALPHA_SAT = 11, D3D10_BLEND_BLEND_FACTOR = 14, D3D10_BLEND_INV_BLEND_FACTOR = 15, D3D10_BLEND_SRC1_COLOR = 16, D3D10_BLEND_INV_SRC1_COLOR = 17, D3D10_BLEND_SRC1_ALPHA = 18, D3D10_BLEND_INV_SRC1_ALPHA = 19 } D3D10_BLEND; typedef enum D3D10_BLEND_OP { D3D10_BLEND_OP_ADD = 1, D3D10_BLEND_OP_SUBTRACT = 2, D3D10_BLEND_OP_REV_SUBTRACT = 3, D3D10_BLEND_OP_MIN = 4, D3D10_BLEND_OP_MAX = 5 } D3D10_BLEND_OP; typedef struct D3D10_BLEND_DESC { WINBOOL AlphaToCoverageEnable; WINBOOL BlendEnable[8]; D3D10_BLEND SrcBlend; D3D10_BLEND DestBlend; D3D10_BLEND_OP BlendOp; D3D10_BLEND SrcBlendAlpha; D3D10_BLEND DestBlendAlpha; D3D10_BLEND_OP BlendOpAlpha; UINT8 RenderTargetWriteMask[8]; } D3D10_BLEND_DESC; typedef enum D3D10_DEPTH_WRITE_MASK { D3D10_DEPTH_WRITE_MASK_ZERO = 0, D3D10_DEPTH_WRITE_MASK_ALL = 1 } D3D10_DEPTH_WRITE_MASK; typedef enum D3D10_COMPARISON_FUNC { D3D10_COMPARISON_NEVER = 1, D3D10_COMPARISON_LESS = 2, D3D10_COMPARISON_EQUAL = 3, D3D10_COMPARISON_LESS_EQUAL = 4, D3D10_COMPARISON_GREATER = 5, D3D10_COMPARISON_NOT_EQUAL = 6, D3D10_COMPARISON_GREATER_EQUAL = 7, D3D10_COMPARISON_ALWAYS = 8 } D3D10_COMPARISON_FUNC; typedef enum D3D10_STENCIL_OP { D3D10_STENCIL_OP_KEEP = 1, D3D10_STENCIL_OP_ZERO = 2, D3D10_STENCIL_OP_REPLACE = 3, D3D10_STENCIL_OP_INCR_SAT = 4, D3D10_STENCIL_OP_DECR_SAT = 5, D3D10_STENCIL_OP_INVERT = 6, D3D10_STENCIL_OP_INCR = 7, D3D10_STENCIL_OP_DECR = 8 } D3D10_STENCIL_OP; typedef struct D3D10_DEPTH_STENCILOP_DESC { D3D10_STENCIL_OP StencilFailOp; D3D10_STENCIL_OP StencilDepthFailOp; D3D10_STENCIL_OP StencilPassOp; D3D10_COMPARISON_FUNC StencilFunc; } D3D10_DEPTH_STENCILOP_DESC; typedef struct D3D10_DEPTH_STENCIL_DESC { WINBOOL DepthEnable; D3D10_DEPTH_WRITE_MASK DepthWriteMask; D3D10_COMPARISON_FUNC DepthFunc; WINBOOL StencilEnable; UINT8 StencilReadMask; UINT8 StencilWriteMask; D3D10_DEPTH_STENCILOP_DESC FrontFace; D3D10_DEPTH_STENCILOP_DESC BackFace; } D3D10_DEPTH_STENCIL_DESC; typedef enum D3D10_FILL_MODE { D3D10_FILL_WIREFRAME = 2, D3D10_FILL_SOLID = 3 } D3D10_FILL_MODE; typedef enum D3D10_CULL_MODE { D3D10_CULL_NONE = 1, D3D10_CULL_FRONT = 2, D3D10_CULL_BACK = 3 } D3D10_CULL_MODE; typedef struct D3D10_RASTERIZER_DESC { D3D10_FILL_MODE FillMode; D3D10_CULL_MODE CullMode; WINBOOL FrontCounterClockwise; INT DepthBias; FLOAT DepthBiasClamp; FLOAT SlopeScaledDepthBias; WINBOOL DepthClipEnable; WINBOOL ScissorEnable; WINBOOL MultisampleEnable; WINBOOL AntialiasedLineEnable; } D3D10_RASTERIZER_DESC; typedef enum D3D10_FILTER { D3D10_FILTER_MIN_MAG_MIP_POINT = 0, D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1, D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4, D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5, D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15, D3D10_FILTER_ANISOTROPIC = 0x55, D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80, D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81, D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84, D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85, D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90, D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91, D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94, D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95, D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5, D3D10_FILTER_TEXT_1BIT = 0x80000000 } D3D10_FILTER; typedef enum D3D10_TEXTURE_ADDRESS_MODE { D3D10_TEXTURE_ADDRESS_WRAP = 1, D3D10_TEXTURE_ADDRESS_MIRROR = 2, D3D10_TEXTURE_ADDRESS_CLAMP = 3, D3D10_TEXTURE_ADDRESS_BORDER = 4, D3D10_TEXTURE_ADDRESS_MIRROR_ONCE = 5 } D3D10_TEXTURE_ADDRESS_MODE; typedef struct D3D10_SAMPLER_DESC { D3D10_FILTER Filter; D3D10_TEXTURE_ADDRESS_MODE AddressU; D3D10_TEXTURE_ADDRESS_MODE AddressV; D3D10_TEXTURE_ADDRESS_MODE AddressW; FLOAT MipLODBias; UINT MaxAnisotropy; D3D10_COMPARISON_FUNC ComparisonFunc; FLOAT BorderColor[4]; FLOAT MinLOD; FLOAT MaxLOD; } D3D10_SAMPLER_DESC; typedef enum D3D10_COUNTER { D3D10_COUNTER_GPU_IDLE = 0, D3D10_COUNTER_VERTEX_PROCESSING = 1, D3D10_COUNTER_GEOMETRY_PROCESSING = 2, D3D10_COUNTER_PIXEL_PROCESSING = 3, D3D10_COUNTER_OTHER_GPU_PROCESSING = 4, D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION = 5, D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION = 6, D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION = 7, D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION = 8, D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION = 9, D3D10_COUNTER_VS_MEMORY_LIMITED = 10, D3D10_COUNTER_VS_COMPUTATION_LIMITED = 11, D3D10_COUNTER_GS_MEMORY_LIMITED = 12, D3D10_COUNTER_GS_COMPUTATION_LIMITED = 13, D3D10_COUNTER_PS_MEMORY_LIMITED = 14, D3D10_COUNTER_PS_COMPUTATION_LIMITED = 15, D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE = 16, D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE = 17, D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000 } D3D10_COUNTER; typedef struct D3D10_COUNTER_DESC { D3D10_COUNTER Counter; UINT MiscFlags; } D3D10_COUNTER_DESC; typedef enum D3D10_COUNTER_TYPE { D3D10_COUNTER_TYPE_FLOAT32 = 0, D3D10_COUNTER_TYPE_UINT16 = 1, D3D10_COUNTER_TYPE_UINT32 = 2, D3D10_COUNTER_TYPE_UINT64 = 3 } D3D10_COUNTER_TYPE; typedef struct D3D10_COUNTER_INFO { D3D10_COUNTER LastDeviceDependentCounter; UINT NumSimultaneousCounters; UINT8 NumDetectableParallelUnits; } D3D10_COUNTER_INFO; typedef enum D3D10_RESOURCE_DIMENSION { D3D10_RESOURCE_DIMENSION_UNKNOWN = 0, D3D10_RESOURCE_DIMENSION_BUFFER = 1, D3D10_RESOURCE_DIMENSION_TEXTURE1D = 2, D3D10_RESOURCE_DIMENSION_TEXTURE2D = 3, D3D10_RESOURCE_DIMENSION_TEXTURE3D = 4 } D3D10_RESOURCE_DIMENSION; typedef enum D3D10_USAGE { D3D10_USAGE_DEFAULT = 0, D3D10_USAGE_IMMUTABLE = 1, D3D10_USAGE_DYNAMIC = 2, D3D10_USAGE_STAGING = 3 } D3D10_USAGE; typedef enum D3D10_BIND_FLAG { D3D10_BIND_VERTEX_BUFFER = 0x1, D3D10_BIND_INDEX_BUFFER = 0x2, D3D10_BIND_CONSTANT_BUFFER = 0x4, D3D10_BIND_SHADER_RESOURCE = 0x8, D3D10_BIND_STREAM_OUTPUT = 0x10, D3D10_BIND_RENDER_TARGET = 0x20, D3D10_BIND_DEPTH_STENCIL = 0x40 } D3D10_BIND_FLAG; typedef struct D3D10_BUFFER_DESC { UINT ByteWidth; D3D10_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D10_BUFFER_DESC; #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus) struct CD3D10_BUFFER_DESC : public D3D10_BUFFER_DESC { CD3D10_BUFFER_DESC() {} explicit CD3D10_BUFFER_DESC(const D3D10_BUFFER_DESC &o) : D3D10_BUFFER_DESC(o) {} explicit CD3D10_BUFFER_DESC(UINT byteWidth, UINT bindFlags, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0 ) { ByteWidth = byteWidth; Usage = usage; BindFlags = bindFlags; CPUAccessFlags = cpuaccessFlags; MiscFlags = miscFlags; } ~CD3D10_BUFFER_DESC() {} operator const D3D10_BUFFER_DESC&() const { return *this; } }; #endif typedef enum D3D10_MAP { D3D10_MAP_READ = 1, D3D10_MAP_WRITE = 2, D3D10_MAP_READ_WRITE = 3, D3D10_MAP_WRITE_DISCARD = 4, D3D10_MAP_WRITE_NO_OVERWRITE = 5 } D3D10_MAP; typedef struct D3D10_TEXTURE1D_DESC { UINT Width; UINT MipLevels; UINT ArraySize; DXGI_FORMAT Format; D3D10_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D10_TEXTURE1D_DESC; #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus) struct CD3D10_TEXTURE1D_DESC : public D3D10_TEXTURE1D_DESC { CD3D10_TEXTURE1D_DESC() {} explicit CD3D10_TEXTURE1D_DESC(const D3D10_TEXTURE1D_DESC &o) : D3D10_TEXTURE1D_DESC(o) {} explicit CD3D10_TEXTURE1D_DESC(DXGI_FORMAT format, UINT width, UINT arraySize = 1, UINT mipLevels = 0, UINT bindFlags = D3D10_BIND_SHADER_RESOURCE, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0) { Width = width; MipLevels = mipLevels; ArraySize = arraySize; Format = format; Usage = usage; BindFlags = bindFlags; CPUAccessFlags = cpuaccessFlags; MiscFlags = miscFlags; } ~CD3D10_TEXTURE1D_DESC() {} operator const D3D10_TEXTURE1D_DESC&() const { return *this; } }; #endif typedef struct D3D10_TEXTURE2D_DESC { UINT Width; UINT Height; UINT MipLevels; UINT ArraySize; DXGI_FORMAT Format; DXGI_SAMPLE_DESC SampleDesc; D3D10_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D10_TEXTURE2D_DESC; #if !defined(D3D10_NO_HELPERS) && defined(__cplusplus) struct CD3D10_TEXTURE2D_DESC : public D3D10_TEXTURE2D_DESC { CD3D10_TEXTURE2D_DESC() {} explicit CD3D10_TEXTURE2D_DESC(const D3D10_TEXTURE2D_DESC &o) : D3D10_TEXTURE2D_DESC(o) {} explicit CD3D10_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height, UINT arraySize = 1, UINT mipLevels = 0, UINT bindFlags = D3D10_BIND_SHADER_RESOURCE, D3D10_USAGE usage = D3D10_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT sampleCount = 1, UINT sampleQuality = 0, UINT miscFlags = 0) { Width = width; Height = height; MipLevels = mipLevels; ArraySize = arraySize; Format = format; SampleDesc.Count = sampleCount; SampleDesc.Quality = sampleQuality; Usage = usage; BindFlags = bindFlags; CPUAccessFlags = cpuaccessFlags; MiscFlags = miscFlags; } ~CD3D10_TEXTURE2D_DESC() {} operator const D3D10_TEXTURE2D_DESC&() const { return *this; } }; #endif typedef struct D3D10_TEXTURE3D_DESC { UINT Width; UINT Height; UINT Depth; UINT MipLevels; DXGI_FORMAT Format; D3D10_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D10_TEXTURE3D_DESC; typedef enum D3D10_DSV_DIMENSION { D3D10_DSV_DIMENSION_UNKNOWN = 0, D3D10_DSV_DIMENSION_TEXTURE1D = 1, D3D10_DSV_DIMENSION_TEXTURE1DARRAY = 2, D3D10_DSV_DIMENSION_TEXTURE2D = 3, D3D10_DSV_DIMENSION_TEXTURE2DARRAY = 4, D3D10_DSV_DIMENSION_TEXTURE2DMS = 5, D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY = 6 } D3D10_DSV_DIMENSION; typedef struct D3D10_TEX1D_DSV { UINT MipSlice; } D3D10_TEX1D_DSV; typedef struct D3D10_TEX1D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX1D_ARRAY_DSV; typedef struct D3D10_TEX2D_DSV { UINT MipSlice; } D3D10_TEX2D_DSV; typedef struct D3D10_TEX2D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2D_ARRAY_DSV; typedef struct D3D10_TEX2DMS_DSV { UINT UnusedField_NothingToDefine; } D3D10_TEX2DMS_DSV; typedef struct D3D10_TEX2DMS_ARRAY_DSV { UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2DMS_ARRAY_DSV; typedef struct D3D10_DEPTH_STENCIL_VIEW_DESC { DXGI_FORMAT Format; D3D10_DSV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D10_TEX1D_DSV Texture1D; D3D10_TEX1D_ARRAY_DSV Texture1DArray; D3D10_TEX2D_DSV Texture2D; D3D10_TEX2D_ARRAY_DSV Texture2DArray; D3D10_TEX2DMS_DSV Texture2DMS; D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray; } __C89_NAMELESSUNIONNAME; } D3D10_DEPTH_STENCIL_VIEW_DESC; typedef enum D3D10_RTV_DIMENSION { D3D10_RTV_DIMENSION_UNKNOWN = 0, D3D10_RTV_DIMENSION_BUFFER = 1, D3D10_RTV_DIMENSION_TEXTURE1D = 2, D3D10_RTV_DIMENSION_TEXTURE1DARRAY = 3, D3D10_RTV_DIMENSION_TEXTURE2D = 4, D3D10_RTV_DIMENSION_TEXTURE2DARRAY = 5, D3D10_RTV_DIMENSION_TEXTURE2DMS = 6, D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D10_RTV_DIMENSION_TEXTURE3D = 8 } D3D10_RTV_DIMENSION; typedef struct D3D10_BUFFER_RTV { __C89_NAMELESS union { UINT FirstElement; UINT ElementOffset; } __C89_NAMELESSUNIONNAME1; __C89_NAMELESS union { UINT NumElements; UINT ElementWidth; } __C89_NAMELESSUNIONNAME2; } D3D10_BUFFER_RTV; typedef struct D3D10_TEX1D_RTV { UINT MipSlice; } D3D10_TEX1D_RTV; typedef struct D3D10_TEX1D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX1D_ARRAY_RTV; typedef struct D3D10_TEX2D_RTV { UINT MipSlice; } D3D10_TEX2D_RTV; typedef struct D3D10_TEX2D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2D_ARRAY_RTV; typedef struct D3D10_TEX2DMS_RTV { UINT UnusedField_NothingToDefine; } D3D10_TEX2DMS_RTV; typedef struct D3D10_TEX2DMS_ARRAY_RTV { UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2DMS_ARRAY_RTV; typedef struct D3D10_TEX3D_RTV { UINT MipSlice; UINT FirstWSlice; UINT WSize; } D3D10_TEX3D_RTV; typedef struct D3D10_RENDER_TARGET_VIEW_DESC { DXGI_FORMAT Format; D3D10_RTV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D10_BUFFER_RTV Buffer; D3D10_TEX1D_RTV Texture1D; D3D10_TEX1D_ARRAY_RTV Texture1DArray; D3D10_TEX2D_RTV Texture2D; D3D10_TEX2D_ARRAY_RTV Texture2DArray; D3D10_TEX2DMS_RTV Texture2DMS; D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray; D3D10_TEX3D_RTV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D10_RENDER_TARGET_VIEW_DESC; typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION; typedef struct D3D10_BUFFER_SRV { __C89_NAMELESS union { UINT FirstElement; UINT ElementOffset; } __C89_NAMELESSUNIONNAME1; __C89_NAMELESS union { UINT NumElements; UINT ElementWidth; } __C89_NAMELESSUNIONNAME2; } D3D10_BUFFER_SRV; typedef struct D3D10_TEX1D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D10_TEX1D_SRV; typedef struct D3D10_TEX1D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX1D_ARRAY_SRV; typedef struct D3D10_TEX2D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D10_TEX2D_SRV; typedef struct D3D10_TEX2D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2D_ARRAY_SRV; typedef struct D3D10_TEX2DMS_SRV { UINT UnusedField_NothingToDefine; } D3D10_TEX2DMS_SRV; typedef struct D3D10_TEX2DMS_ARRAY_SRV { UINT FirstArraySlice; UINT ArraySize; } D3D10_TEX2DMS_ARRAY_SRV; typedef struct D3D10_TEX3D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D10_TEX3D_SRV; typedef struct D3D10_TEXCUBE_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D10_TEXCUBE_SRV; typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC { DXGI_FORMAT Format; D3D10_SRV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D10_BUFFER_SRV Buffer; D3D10_TEX1D_SRV Texture1D; D3D10_TEX1D_ARRAY_SRV Texture1DArray; D3D10_TEX2D_SRV Texture2D; D3D10_TEX2D_ARRAY_SRV Texture2DArray; D3D10_TEX2DMS_SRV Texture2DMS; D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray; D3D10_TEX3D_SRV Texture3D; D3D10_TEXCUBE_SRV TextureCube; } __C89_NAMELESSUNIONNAME; } D3D10_SHADER_RESOURCE_VIEW_DESC; typedef struct D3D10_BOX { UINT left; UINT top; UINT front; UINT right; UINT bottom; UINT back; } D3D10_BOX; typedef struct D3D10_SUBRESOURCE_DATA { const void *pSysMem; UINT SysMemPitch; UINT SysMemSlicePitch; } D3D10_SUBRESOURCE_DATA; typedef struct D3D10_SO_DECLARATION_ENTRY { const char *SemanticName; UINT SemanticIndex; BYTE StartComponent; BYTE ComponentCount; BYTE OutputSlot; } D3D10_SO_DECLARATION_ENTRY; typedef enum D3D10_INPUT_CLASSIFICATION { D3D10_INPUT_PER_VERTEX_DATA = 0, D3D10_INPUT_PER_INSTANCE_DATA = 1 } D3D10_INPUT_CLASSIFICATION; typedef struct D3D10_INPUT_ELEMENT_DESC { const char *SemanticName; UINT SemanticIndex; DXGI_FORMAT Format; UINT InputSlot; UINT AlignedByteOffset; D3D10_INPUT_CLASSIFICATION InputSlotClass; UINT InstanceDataStepRate; } D3D10_INPUT_ELEMENT_DESC; typedef enum D3D10_QUERY { D3D10_QUERY_EVENT = 0, D3D10_QUERY_OCCLUSION = 1, D3D10_QUERY_TIMESTAMP = 2, D3D10_QUERY_TIMESTAMP_DISJOINT = 3, D3D10_QUERY_PIPELINE_STATISTICS = 4, D3D10_QUERY_OCCLUSION_PREDICATE = 5, D3D10_QUERY_SO_STATISTICS = 6, D3D10_QUERY_SO_OVERFLOW_PREDICATE = 7 } D3D10_QUERY; typedef struct D3D10_QUERY_DESC { D3D10_QUERY Query; UINT MiscFlags; } D3D10_QUERY_DESC; typedef D3D_PRIMITIVE_TOPOLOGY D3D10_PRIMITIVE_TOPOLOGY; typedef D3D_PRIMITIVE D3D10_PRIMITIVE; typedef RECT D3D10_RECT; typedef struct D3D10_VIEWPORT { INT TopLeftX; INT TopLeftY; UINT Width; UINT Height; FLOAT MinDepth; FLOAT MaxDepth; } D3D10_VIEWPORT; typedef struct D3D10_MAPPED_TEXTURE2D { void *pData; UINT RowPitch; } D3D10_MAPPED_TEXTURE2D; typedef struct D3D10_MAPPED_TEXTURE3D { void *pData; UINT RowPitch; UINT DepthPitch; } D3D10_MAPPED_TEXTURE3D; typedef enum D3D10_CPU_ACCESS_FLAG { D3D10_CPU_ACCESS_WRITE = 0x10000, D3D10_CPU_ACCESS_READ = 0x20000 } D3D10_CPU_ACCESS_FLAG; typedef enum D3D10_RESOURCE_MISC_FLAG { D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x1, D3D10_RESOURCE_MISC_SHARED = 0x2, D3D10_RESOURCE_MISC_TEXTURECUBE = 0x4, D3D10_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x10, D3D10_RESOURCE_MISC_GDI_COMPATIBLE = 0x20 } D3D10_RESOURCE_MISC_FLAG; typedef enum D3D10_MAP_FLAG { D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000 } D3D10_MAP_FLAG; typedef enum D3D10_RAISE_FLAG { D3D10_RAISE_FLAG_DRIVER_INTERNAL_ERROR = 0x1 } D3D10_RAISE_FLAG; typedef enum D3D10_CLEAR_FLAG { D3D10_CLEAR_DEPTH = 0x1, D3D10_CLEAR_STENCIL = 0x2 } D3D10_CLEAR_FLAG; typedef enum D3D10_COLOR_WRITE_ENABLE { D3D10_COLOR_WRITE_ENABLE_RED = 0x1, D3D10_COLOR_WRITE_ENABLE_GREEN = 0x2, D3D10_COLOR_WRITE_ENABLE_BLUE = 0x4, D3D10_COLOR_WRITE_ENABLE_ALPHA = 0x8, D3D10_COLOR_WRITE_ENABLE_ALL = ((D3D10_COLOR_WRITE_ENABLE_RED | D3D10_COLOR_WRITE_ENABLE_GREEN) | D3D10_COLOR_WRITE_ENABLE_BLUE) | D3D10_COLOR_WRITE_ENABLE_ALPHA } D3D10_COLOR_WRITE_ENABLE; typedef enum D3D10_FORMAT_SUPPORT { D3D10_FORMAT_SUPPORT_BUFFER = 0x1, D3D10_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x2, D3D10_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x4, D3D10_FORMAT_SUPPORT_SO_BUFFER = 0x8, D3D10_FORMAT_SUPPORT_TEXTURE1D = 0x10, D3D10_FORMAT_SUPPORT_TEXTURE2D = 0x20, D3D10_FORMAT_SUPPORT_TEXTURE3D = 0x40, D3D10_FORMAT_SUPPORT_TEXTURECUBE = 0x80, D3D10_FORMAT_SUPPORT_SHADER_LOAD = 0x100, D3D10_FORMAT_SUPPORT_SHADER_SAMPLE = 0x200, D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x400, D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x800, D3D10_FORMAT_SUPPORT_MIP = 0x1000, D3D10_FORMAT_SUPPORT_MIP_AUTOGEN = 0x2000, D3D10_FORMAT_SUPPORT_RENDER_TARGET = 0x4000, D3D10_FORMAT_SUPPORT_BLENDABLE = 0x8000, D3D10_FORMAT_SUPPORT_DEPTH_STENCIL = 0x10000, D3D10_FORMAT_SUPPORT_CPU_LOCKABLE = 0x20000, D3D10_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x40000, D3D10_FORMAT_SUPPORT_DISPLAY = 0x80000, D3D10_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x100000, D3D10_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x200000, D3D10_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x400000, D3D10_FORMAT_SUPPORT_SHADER_GATHER = 0x800000, D3D10_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x1000000 } D3D10_FORMAT_SUPPORT; typedef enum D3D10_TEXTURECUBE_FACE { D3D10_TEXTURECUBE_FACE_POSITIVE_X = 0, D3D10_TEXTURECUBE_FACE_NEGATIVE_X = 1, D3D10_TEXTURECUBE_FACE_POSITIVE_Y = 2, D3D10_TEXTURECUBE_FACE_NEGATIVE_Y = 3, D3D10_TEXTURECUBE_FACE_POSITIVE_Z = 4, D3D10_TEXTURECUBE_FACE_NEGATIVE_Z = 5 } D3D10_TEXTURECUBE_FACE; typedef enum D3D10_ASYNC_GETDATA_FLAG { D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1 } D3D10_ASYNC_GETDATA_FLAG; typedef enum D3D10_FILTER_TYPE { D3D10_FILTER_TYPE_POINT = 0, D3D10_FILTER_TYPE_LINEAR = 1 } D3D10_FILTER_TYPE; typedef enum D3D10_QUERY_MISC_FLAG { D3D10_QUERY_MISC_PREDICATEHINT = 0x1 } D3D10_QUERY_MISC_FLAG; typedef struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT { UINT64 Frequency; WINBOOL Disjoint; } D3D10_QUERY_DATA_TIMESTAMP_DISJOINT; typedef struct D3D10_QUERY_DATA_PIPELINE_STATISTICS { UINT64 IAVertices; UINT64 IAPrimitives; UINT64 VSInvocations; UINT64 GSInvocations; UINT64 GSPrimitives; UINT64 CInvocations; UINT64 CPrimitives; UINT64 PSInvocations; } D3D10_QUERY_DATA_PIPELINE_STATISTICS; typedef struct D3D10_QUERY_DATA_SO_STATISTICS { UINT64 NumPrimitivesWritten; UINT64 PrimitivesStorageNeeded; } D3D10_QUERY_DATA_SO_STATISTICS; typedef enum D3D10_CREATE_DEVICE_FLAG { D3D10_CREATE_DEVICE_SINGLETHREADED = 0x1, D3D10_CREATE_DEVICE_DEBUG = 0x2, D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x4, D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8, D3D10_CREATE_DEVICE_ALLOW_NULL_FROM_MAP = 0x10, D3D10_CREATE_DEVICE_BGRA_SUPPORT = 0x20, D3D10_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80, D3D10_CREATE_DEVICE_STRICT_VALIDATION = 0x200, D3D10_CREATE_DEVICE_DEBUGGABLE = 0x400 } D3D10_CREATE_DEVICE_FLAG; #ifndef __ID3D10Device_FWD_DEFINED__ #define __ID3D10Device_FWD_DEFINED__ typedef interface ID3D10Device ID3D10Device; #ifdef __cplusplus interface ID3D10Device; #endif /* __cplusplus */ #endif /***************************************************************************** * ID3D10DeviceChild interface */ #ifndef __ID3D10DeviceChild_INTERFACE_DEFINED__ #define __ID3D10DeviceChild_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10DeviceChild, 0x9b7e4c00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c00-342c-4106-a19f-4f2704f689f0") ID3D10DeviceChild : public IUnknown { virtual void STDMETHODCALLTYPE GetDevice( ID3D10Device **ppDevice) = 0; virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *pDataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pData) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10DeviceChild, 0x9b7e4c00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10DeviceChildVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10DeviceChild *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10DeviceChild *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10DeviceChild *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10DeviceChild *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10DeviceChild *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10DeviceChild *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10DeviceChild *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D10DeviceChildVtbl; interface ID3D10DeviceChild { CONST_VTBL ID3D10DeviceChildVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10DeviceChild_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10DeviceChild_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10DeviceChild_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10DeviceChild_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10DeviceChild_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10DeviceChild_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10DeviceChild_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10DeviceChild_QueryInterface(ID3D10DeviceChild* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10DeviceChild_AddRef(ID3D10DeviceChild* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10DeviceChild_Release(ID3D10DeviceChild* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10DeviceChild_GetDevice(ID3D10DeviceChild* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10DeviceChild_GetPrivateData(ID3D10DeviceChild* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10DeviceChild_SetPrivateData(ID3D10DeviceChild* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10DeviceChild_SetPrivateDataInterface(ID3D10DeviceChild* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D10DeviceChild_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Resource interface */ #ifndef __ID3D10Resource_INTERFACE_DEFINED__ #define __ID3D10Resource_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Resource, 0x9b7e4c01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c01-342c-4106-a19f-4f2704f689f0") ID3D10Resource : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetType( D3D10_RESOURCE_DIMENSION *rType) = 0; virtual void STDMETHODCALLTYPE SetEvictionPriority( UINT EvictionPriority) = 0; virtual UINT STDMETHODCALLTYPE GetEvictionPriority( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Resource, 0x9b7e4c01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10ResourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Resource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Resource *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Resource *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Resource *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Resource *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Resource *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Resource *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D10Resource *This, D3D10_RESOURCE_DIMENSION *rType); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D10Resource *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D10Resource *This); END_INTERFACE } ID3D10ResourceVtbl; interface ID3D10Resource { CONST_VTBL ID3D10ResourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Resource_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Resource_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Resource_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Resource_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Resource_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Resource_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Resource methods ***/ #define ID3D10Resource_GetType(This,rType) (This)->lpVtbl->GetType(This,rType) #define ID3D10Resource_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D10Resource_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Resource_QueryInterface(ID3D10Resource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Resource_AddRef(ID3D10Resource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Resource_Release(ID3D10Resource* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Resource_GetDevice(ID3D10Resource* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Resource_GetPrivateData(ID3D10Resource* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Resource_SetPrivateData(ID3D10Resource* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Resource_SetPrivateDataInterface(ID3D10Resource* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Resource methods ***/ static FORCEINLINE void ID3D10Resource_GetType(ID3D10Resource* This,D3D10_RESOURCE_DIMENSION *rType) { This->lpVtbl->GetType(This,rType); } static FORCEINLINE void ID3D10Resource_SetEvictionPriority(ID3D10Resource* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D10Resource_GetEvictionPriority(ID3D10Resource* This) { return This->lpVtbl->GetEvictionPriority(This); } #endif #endif #endif #endif /* __ID3D10Resource_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Buffer interface */ #ifndef __ID3D10Buffer_INTERFACE_DEFINED__ #define __ID3D10Buffer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Buffer, 0x9b7e4c02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c02-342c-4106-a19f-4f2704f689f0") ID3D10Buffer : public ID3D10Resource { virtual HRESULT STDMETHODCALLTYPE Map( D3D10_MAP MapType, UINT MapFlags, void **ppData) = 0; virtual void STDMETHODCALLTYPE Unmap( ) = 0; virtual void STDMETHODCALLTYPE GetDesc( D3D10_BUFFER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Buffer, 0x9b7e4c02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10BufferVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Buffer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Buffer *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Buffer *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Buffer *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Buffer *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Buffer *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Buffer *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D10Buffer *This, D3D10_RESOURCE_DIMENSION *rType); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D10Buffer *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D10Buffer *This); /*** ID3D10Buffer methods ***/ HRESULT (STDMETHODCALLTYPE *Map)( ID3D10Buffer *This, D3D10_MAP MapType, UINT MapFlags, void **ppData); void (STDMETHODCALLTYPE *Unmap)( ID3D10Buffer *This); void (STDMETHODCALLTYPE *GetDesc)( ID3D10Buffer *This, D3D10_BUFFER_DESC *pDesc); END_INTERFACE } ID3D10BufferVtbl; interface ID3D10Buffer { CONST_VTBL ID3D10BufferVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Buffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Buffer_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Buffer_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Buffer_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Buffer_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Buffer_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Buffer_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Resource methods ***/ #define ID3D10Buffer_GetType(This,rType) (This)->lpVtbl->GetType(This,rType) #define ID3D10Buffer_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D10Buffer_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D10Buffer methods ***/ #define ID3D10Buffer_Map(This,MapType,MapFlags,ppData) (This)->lpVtbl->Map(This,MapType,MapFlags,ppData) #define ID3D10Buffer_Unmap(This) (This)->lpVtbl->Unmap(This) #define ID3D10Buffer_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Buffer_QueryInterface(ID3D10Buffer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Buffer_AddRef(ID3D10Buffer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Buffer_Release(ID3D10Buffer* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Buffer_GetDevice(ID3D10Buffer* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Buffer_GetPrivateData(ID3D10Buffer* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Buffer_SetPrivateData(ID3D10Buffer* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Buffer_SetPrivateDataInterface(ID3D10Buffer* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Resource methods ***/ static FORCEINLINE void ID3D10Buffer_GetType(ID3D10Buffer* This,D3D10_RESOURCE_DIMENSION *rType) { This->lpVtbl->GetType(This,rType); } static FORCEINLINE void ID3D10Buffer_SetEvictionPriority(ID3D10Buffer* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D10Buffer_GetEvictionPriority(ID3D10Buffer* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D10Buffer methods ***/ static FORCEINLINE HRESULT ID3D10Buffer_Map(ID3D10Buffer* This,D3D10_MAP MapType,UINT MapFlags,void **ppData) { return This->lpVtbl->Map(This,MapType,MapFlags,ppData); } static FORCEINLINE void ID3D10Buffer_Unmap(ID3D10Buffer* This) { This->lpVtbl->Unmap(This); } static FORCEINLINE void ID3D10Buffer_GetDesc(ID3D10Buffer* This,D3D10_BUFFER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Buffer_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Texture1D interface */ #ifndef __ID3D10Texture1D_INTERFACE_DEFINED__ #define __ID3D10Texture1D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Texture1D, 0x9b7e4c03, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c03-342c-4106-a19f-4f2704f689f0") ID3D10Texture1D : public ID3D10Resource { virtual HRESULT STDMETHODCALLTYPE Map( UINT Subresource, D3D10_MAP MapType, UINT MapFlags, void **ppData) = 0; virtual void STDMETHODCALLTYPE Unmap( UINT Subresource) = 0; virtual void STDMETHODCALLTYPE GetDesc( D3D10_TEXTURE1D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Texture1D, 0x9b7e4c03, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10Texture1DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Texture1D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Texture1D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Texture1D *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Texture1D *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Texture1D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Texture1D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Texture1D *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D10Texture1D *This, D3D10_RESOURCE_DIMENSION *rType); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D10Texture1D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D10Texture1D *This); /*** ID3D10Texture1D methods ***/ HRESULT (STDMETHODCALLTYPE *Map)( ID3D10Texture1D *This, UINT Subresource, D3D10_MAP MapType, UINT MapFlags, void **ppData); void (STDMETHODCALLTYPE *Unmap)( ID3D10Texture1D *This, UINT Subresource); void (STDMETHODCALLTYPE *GetDesc)( ID3D10Texture1D *This, D3D10_TEXTURE1D_DESC *pDesc); END_INTERFACE } ID3D10Texture1DVtbl; interface ID3D10Texture1D { CONST_VTBL ID3D10Texture1DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Texture1D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Texture1D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Texture1D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Texture1D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Texture1D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Texture1D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Texture1D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Resource methods ***/ #define ID3D10Texture1D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType) #define ID3D10Texture1D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D10Texture1D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D10Texture1D methods ***/ #define ID3D10Texture1D_Map(This,Subresource,MapType,MapFlags,ppData) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,ppData) #define ID3D10Texture1D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource) #define ID3D10Texture1D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Texture1D_QueryInterface(ID3D10Texture1D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Texture1D_AddRef(ID3D10Texture1D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Texture1D_Release(ID3D10Texture1D* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Texture1D_GetDevice(ID3D10Texture1D* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Texture1D_GetPrivateData(ID3D10Texture1D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture1D_SetPrivateData(ID3D10Texture1D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture1D_SetPrivateDataInterface(ID3D10Texture1D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Resource methods ***/ static FORCEINLINE void ID3D10Texture1D_GetType(ID3D10Texture1D* This,D3D10_RESOURCE_DIMENSION *rType) { This->lpVtbl->GetType(This,rType); } static FORCEINLINE void ID3D10Texture1D_SetEvictionPriority(ID3D10Texture1D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D10Texture1D_GetEvictionPriority(ID3D10Texture1D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D10Texture1D methods ***/ static FORCEINLINE HRESULT ID3D10Texture1D_Map(ID3D10Texture1D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,void **ppData) { return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,ppData); } static FORCEINLINE void ID3D10Texture1D_Unmap(ID3D10Texture1D* This,UINT Subresource) { This->lpVtbl->Unmap(This,Subresource); } static FORCEINLINE void ID3D10Texture1D_GetDesc(ID3D10Texture1D* This,D3D10_TEXTURE1D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Texture1D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Texture2D interface */ #ifndef __ID3D10Texture2D_INTERFACE_DEFINED__ #define __ID3D10Texture2D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Texture2D, 0x9b7e4c04, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c04-342c-4106-a19f-4f2704f689f0") ID3D10Texture2D : public ID3D10Resource { virtual HRESULT STDMETHODCALLTYPE Map( UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE2D *pMappedTex2D) = 0; virtual void STDMETHODCALLTYPE Unmap( UINT Subresource) = 0; virtual void STDMETHODCALLTYPE GetDesc( D3D10_TEXTURE2D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Texture2D, 0x9b7e4c04, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10Texture2DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Texture2D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Texture2D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Texture2D *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Texture2D *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Texture2D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Texture2D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Texture2D *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D10Texture2D *This, D3D10_RESOURCE_DIMENSION *rType); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D10Texture2D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D10Texture2D *This); /*** ID3D10Texture2D methods ***/ HRESULT (STDMETHODCALLTYPE *Map)( ID3D10Texture2D *This, UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE2D *pMappedTex2D); void (STDMETHODCALLTYPE *Unmap)( ID3D10Texture2D *This, UINT Subresource); void (STDMETHODCALLTYPE *GetDesc)( ID3D10Texture2D *This, D3D10_TEXTURE2D_DESC *pDesc); END_INTERFACE } ID3D10Texture2DVtbl; interface ID3D10Texture2D { CONST_VTBL ID3D10Texture2DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Texture2D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Texture2D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Texture2D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Texture2D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Texture2D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Texture2D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Texture2D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Resource methods ***/ #define ID3D10Texture2D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType) #define ID3D10Texture2D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D10Texture2D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D10Texture2D methods ***/ #define ID3D10Texture2D_Map(This,Subresource,MapType,MapFlags,pMappedTex2D) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex2D) #define ID3D10Texture2D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource) #define ID3D10Texture2D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Texture2D_QueryInterface(ID3D10Texture2D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Texture2D_AddRef(ID3D10Texture2D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Texture2D_Release(ID3D10Texture2D* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Texture2D_GetDevice(ID3D10Texture2D* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Texture2D_GetPrivateData(ID3D10Texture2D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture2D_SetPrivateData(ID3D10Texture2D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture2D_SetPrivateDataInterface(ID3D10Texture2D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Resource methods ***/ static FORCEINLINE void ID3D10Texture2D_GetType(ID3D10Texture2D* This,D3D10_RESOURCE_DIMENSION *rType) { This->lpVtbl->GetType(This,rType); } static FORCEINLINE void ID3D10Texture2D_SetEvictionPriority(ID3D10Texture2D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D10Texture2D_GetEvictionPriority(ID3D10Texture2D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D10Texture2D methods ***/ static FORCEINLINE HRESULT ID3D10Texture2D_Map(ID3D10Texture2D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,D3D10_MAPPED_TEXTURE2D *pMappedTex2D) { return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex2D); } static FORCEINLINE void ID3D10Texture2D_Unmap(ID3D10Texture2D* This,UINT Subresource) { This->lpVtbl->Unmap(This,Subresource); } static FORCEINLINE void ID3D10Texture2D_GetDesc(ID3D10Texture2D* This,D3D10_TEXTURE2D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Texture2D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Texture3D interface */ #ifndef __ID3D10Texture3D_INTERFACE_DEFINED__ #define __ID3D10Texture3D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Texture3D, 0x9b7e4c05, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c05-342c-4106-a19f-4f2704f689f0") ID3D10Texture3D : public ID3D10Resource { virtual HRESULT STDMETHODCALLTYPE Map( UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE3D *pMappedTex3D) = 0; virtual void STDMETHODCALLTYPE Unmap( UINT Subresource) = 0; virtual void STDMETHODCALLTYPE GetDesc( D3D10_TEXTURE3D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Texture3D, 0x9b7e4c05, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10Texture3DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Texture3D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Texture3D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Texture3D *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Texture3D *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Texture3D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Texture3D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Texture3D *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D10Texture3D *This, D3D10_RESOURCE_DIMENSION *rType); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D10Texture3D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D10Texture3D *This); /*** ID3D10Texture3D methods ***/ HRESULT (STDMETHODCALLTYPE *Map)( ID3D10Texture3D *This, UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE3D *pMappedTex3D); void (STDMETHODCALLTYPE *Unmap)( ID3D10Texture3D *This, UINT Subresource); void (STDMETHODCALLTYPE *GetDesc)( ID3D10Texture3D *This, D3D10_TEXTURE3D_DESC *pDesc); END_INTERFACE } ID3D10Texture3DVtbl; interface ID3D10Texture3D { CONST_VTBL ID3D10Texture3DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Texture3D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Texture3D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Texture3D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Texture3D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Texture3D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Texture3D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Texture3D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Resource methods ***/ #define ID3D10Texture3D_GetType(This,rType) (This)->lpVtbl->GetType(This,rType) #define ID3D10Texture3D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D10Texture3D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D10Texture3D methods ***/ #define ID3D10Texture3D_Map(This,Subresource,MapType,MapFlags,pMappedTex3D) (This)->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex3D) #define ID3D10Texture3D_Unmap(This,Subresource) (This)->lpVtbl->Unmap(This,Subresource) #define ID3D10Texture3D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Texture3D_QueryInterface(ID3D10Texture3D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Texture3D_AddRef(ID3D10Texture3D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Texture3D_Release(ID3D10Texture3D* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Texture3D_GetDevice(ID3D10Texture3D* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Texture3D_GetPrivateData(ID3D10Texture3D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture3D_SetPrivateData(ID3D10Texture3D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Texture3D_SetPrivateDataInterface(ID3D10Texture3D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Resource methods ***/ static FORCEINLINE void ID3D10Texture3D_GetType(ID3D10Texture3D* This,D3D10_RESOURCE_DIMENSION *rType) { This->lpVtbl->GetType(This,rType); } static FORCEINLINE void ID3D10Texture3D_SetEvictionPriority(ID3D10Texture3D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D10Texture3D_GetEvictionPriority(ID3D10Texture3D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D10Texture3D methods ***/ static FORCEINLINE HRESULT ID3D10Texture3D_Map(ID3D10Texture3D* This,UINT Subresource,D3D10_MAP MapType,UINT MapFlags,D3D10_MAPPED_TEXTURE3D *pMappedTex3D) { return This->lpVtbl->Map(This,Subresource,MapType,MapFlags,pMappedTex3D); } static FORCEINLINE void ID3D10Texture3D_Unmap(ID3D10Texture3D* This,UINT Subresource) { This->lpVtbl->Unmap(This,Subresource); } static FORCEINLINE void ID3D10Texture3D_GetDesc(ID3D10Texture3D* This,D3D10_TEXTURE3D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Texture3D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10View interface */ #ifndef __ID3D10View_INTERFACE_DEFINED__ #define __ID3D10View_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10View, 0xc902b03f, 0x60a7, 0x49ba, 0x99,0x36, 0x2a,0x3a,0xb3,0x7a,0x7e,0x33); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c902b03f-60a7-49ba-9936-2a3ab37a7e33") ID3D10View : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetResource( ID3D10Resource **ppResource) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10View, 0xc902b03f, 0x60a7, 0x49ba, 0x99,0x36, 0x2a,0x3a,0xb3,0x7a,0x7e,0x33) #endif #else typedef struct ID3D10ViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10View *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10View *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10View *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10View *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10View *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10View *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10View *This, REFGUID guid, const IUnknown *pData); /*** ID3D10View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D10View *This, ID3D10Resource **ppResource); END_INTERFACE } ID3D10ViewVtbl; interface ID3D10View { CONST_VTBL ID3D10ViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10View_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10View_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10View_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10View_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10View_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10View_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10View_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10View methods ***/ #define ID3D10View_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10View_QueryInterface(ID3D10View* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10View_AddRef(ID3D10View* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10View_Release(ID3D10View* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10View_GetDevice(ID3D10View* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10View_GetPrivateData(ID3D10View* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10View_SetPrivateData(ID3D10View* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10View_SetPrivateDataInterface(ID3D10View* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10View methods ***/ static FORCEINLINE void ID3D10View_GetResource(ID3D10View* This,ID3D10Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } #endif #endif #endif #endif /* __ID3D10View_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10DepthStencilView interface */ #ifndef __ID3D10DepthStencilView_INTERFACE_DEFINED__ #define __ID3D10DepthStencilView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10DepthStencilView, 0x9b7e4c09, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c09-342c-4106-a19f-4f2704f689f0") ID3D10DepthStencilView : public ID3D10View { virtual void STDMETHODCALLTYPE GetDesc( D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10DepthStencilView, 0x9b7e4c09, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10DepthStencilViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10DepthStencilView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10DepthStencilView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10DepthStencilView *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10DepthStencilView *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10DepthStencilView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10DepthStencilView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10DepthStencilView *This, REFGUID guid, const IUnknown *pData); /*** ID3D10View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D10DepthStencilView *This, ID3D10Resource **ppResource); /*** ID3D10DepthStencilView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10DepthStencilView *This, D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc); END_INTERFACE } ID3D10DepthStencilViewVtbl; interface ID3D10DepthStencilView { CONST_VTBL ID3D10DepthStencilViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10DepthStencilView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10DepthStencilView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10DepthStencilView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10DepthStencilView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10DepthStencilView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10DepthStencilView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10DepthStencilView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10View methods ***/ #define ID3D10DepthStencilView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D10DepthStencilView methods ***/ #define ID3D10DepthStencilView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10DepthStencilView_QueryInterface(ID3D10DepthStencilView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10DepthStencilView_AddRef(ID3D10DepthStencilView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10DepthStencilView_Release(ID3D10DepthStencilView* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10DepthStencilView_GetDevice(ID3D10DepthStencilView* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10DepthStencilView_GetPrivateData(ID3D10DepthStencilView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10DepthStencilView_SetPrivateData(ID3D10DepthStencilView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10DepthStencilView_SetPrivateDataInterface(ID3D10DepthStencilView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10View methods ***/ static FORCEINLINE void ID3D10DepthStencilView_GetResource(ID3D10DepthStencilView* This,ID3D10Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D10DepthStencilView methods ***/ static FORCEINLINE void ID3D10DepthStencilView_GetDesc(ID3D10DepthStencilView* This,D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10DepthStencilView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10RenderTargetView interface */ #ifndef __ID3D10RenderTargetView_INTERFACE_DEFINED__ #define __ID3D10RenderTargetView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10RenderTargetView, 0x9b7e4c08, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c08-342c-4106-a19f-4f2704f689f0") ID3D10RenderTargetView : public ID3D10View { virtual void STDMETHODCALLTYPE GetDesc( D3D10_RENDER_TARGET_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10RenderTargetView, 0x9b7e4c08, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10RenderTargetViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10RenderTargetView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10RenderTargetView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10RenderTargetView *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10RenderTargetView *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10RenderTargetView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10RenderTargetView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10RenderTargetView *This, REFGUID guid, const IUnknown *pData); /*** ID3D10View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D10RenderTargetView *This, ID3D10Resource **ppResource); /*** ID3D10RenderTargetView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10RenderTargetView *This, D3D10_RENDER_TARGET_VIEW_DESC *pDesc); END_INTERFACE } ID3D10RenderTargetViewVtbl; interface ID3D10RenderTargetView { CONST_VTBL ID3D10RenderTargetViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10RenderTargetView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10RenderTargetView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10RenderTargetView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10RenderTargetView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10RenderTargetView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10RenderTargetView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10RenderTargetView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10View methods ***/ #define ID3D10RenderTargetView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D10RenderTargetView methods ***/ #define ID3D10RenderTargetView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10RenderTargetView_QueryInterface(ID3D10RenderTargetView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10RenderTargetView_AddRef(ID3D10RenderTargetView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10RenderTargetView_Release(ID3D10RenderTargetView* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10RenderTargetView_GetDevice(ID3D10RenderTargetView* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10RenderTargetView_GetPrivateData(ID3D10RenderTargetView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10RenderTargetView_SetPrivateData(ID3D10RenderTargetView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10RenderTargetView_SetPrivateDataInterface(ID3D10RenderTargetView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10View methods ***/ static FORCEINLINE void ID3D10RenderTargetView_GetResource(ID3D10RenderTargetView* This,ID3D10Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D10RenderTargetView methods ***/ static FORCEINLINE void ID3D10RenderTargetView_GetDesc(ID3D10RenderTargetView* This,D3D10_RENDER_TARGET_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10RenderTargetView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10ShaderResourceView interface */ #ifndef __ID3D10ShaderResourceView_INTERFACE_DEFINED__ #define __ID3D10ShaderResourceView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10ShaderResourceView, 0x9b7e4c07, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c07-342c-4106-a19f-4f2704f689f0") ID3D10ShaderResourceView : public ID3D10View { virtual void STDMETHODCALLTYPE GetDesc( D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10ShaderResourceView, 0x9b7e4c07, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10ShaderResourceViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10ShaderResourceView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10ShaderResourceView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10ShaderResourceView *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10ShaderResourceView *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10ShaderResourceView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10ShaderResourceView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10ShaderResourceView *This, REFGUID guid, const IUnknown *pData); /*** ID3D10View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D10ShaderResourceView *This, ID3D10Resource **ppResource); /*** ID3D10ShaderResourceView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10ShaderResourceView *This, D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc); END_INTERFACE } ID3D10ShaderResourceViewVtbl; interface ID3D10ShaderResourceView { CONST_VTBL ID3D10ShaderResourceViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10ShaderResourceView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10ShaderResourceView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10ShaderResourceView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10ShaderResourceView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10ShaderResourceView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10ShaderResourceView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10ShaderResourceView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10View methods ***/ #define ID3D10ShaderResourceView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D10ShaderResourceView methods ***/ #define ID3D10ShaderResourceView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10ShaderResourceView_QueryInterface(ID3D10ShaderResourceView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10ShaderResourceView_AddRef(ID3D10ShaderResourceView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10ShaderResourceView_Release(ID3D10ShaderResourceView* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10ShaderResourceView_GetDevice(ID3D10ShaderResourceView* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10ShaderResourceView_GetPrivateData(ID3D10ShaderResourceView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10ShaderResourceView_SetPrivateData(ID3D10ShaderResourceView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10ShaderResourceView_SetPrivateDataInterface(ID3D10ShaderResourceView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10View methods ***/ static FORCEINLINE void ID3D10ShaderResourceView_GetResource(ID3D10ShaderResourceView* This,ID3D10Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D10ShaderResourceView methods ***/ static FORCEINLINE void ID3D10ShaderResourceView_GetDesc(ID3D10ShaderResourceView* This,D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10ShaderResourceView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10BlendState interface */ #ifndef __ID3D10BlendState_INTERFACE_DEFINED__ #define __ID3D10BlendState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10BlendState, 0xedad8d19, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("edad8d19-8a35-4d6d-8566-2ea276cde161") ID3D10BlendState : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D10_BLEND_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10BlendState, 0xedad8d19, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61) #endif #else typedef struct ID3D10BlendStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10BlendState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10BlendState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10BlendState *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10BlendState *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10BlendState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10BlendState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10BlendState *This, REFGUID guid, const IUnknown *pData); /*** ID3D10BlendState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10BlendState *This, D3D10_BLEND_DESC *pDesc); END_INTERFACE } ID3D10BlendStateVtbl; interface ID3D10BlendState { CONST_VTBL ID3D10BlendStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10BlendState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10BlendState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10BlendState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10BlendState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10BlendState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10BlendState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10BlendState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10BlendState methods ***/ #define ID3D10BlendState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10BlendState_QueryInterface(ID3D10BlendState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10BlendState_AddRef(ID3D10BlendState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10BlendState_Release(ID3D10BlendState* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10BlendState_GetDevice(ID3D10BlendState* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10BlendState_GetPrivateData(ID3D10BlendState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10BlendState_SetPrivateData(ID3D10BlendState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10BlendState_SetPrivateDataInterface(ID3D10BlendState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10BlendState methods ***/ static FORCEINLINE void ID3D10BlendState_GetDesc(ID3D10BlendState* This,D3D10_BLEND_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10BlendState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10DepthStencilState interface */ #ifndef __ID3D10DepthStencilState_INTERFACE_DEFINED__ #define __ID3D10DepthStencilState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10DepthStencilState, 0x2b4b1cc8, 0xa4ad, 0x41f8, 0x83,0x22, 0xca,0x86,0xfc,0x3e,0xc6,0x75); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2b4b1cc8-a4ad-41f8-8322-ca86fc3ec675") ID3D10DepthStencilState : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D10_DEPTH_STENCIL_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10DepthStencilState, 0x2b4b1cc8, 0xa4ad, 0x41f8, 0x83,0x22, 0xca,0x86,0xfc,0x3e,0xc6,0x75) #endif #else typedef struct ID3D10DepthStencilStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10DepthStencilState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10DepthStencilState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10DepthStencilState *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10DepthStencilState *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10DepthStencilState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10DepthStencilState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10DepthStencilState *This, REFGUID guid, const IUnknown *pData); /*** ID3D10DepthStencilState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10DepthStencilState *This, D3D10_DEPTH_STENCIL_DESC *pDesc); END_INTERFACE } ID3D10DepthStencilStateVtbl; interface ID3D10DepthStencilState { CONST_VTBL ID3D10DepthStencilStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10DepthStencilState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10DepthStencilState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10DepthStencilState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10DepthStencilState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10DepthStencilState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10DepthStencilState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10DepthStencilState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10DepthStencilState methods ***/ #define ID3D10DepthStencilState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10DepthStencilState_QueryInterface(ID3D10DepthStencilState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10DepthStencilState_AddRef(ID3D10DepthStencilState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10DepthStencilState_Release(ID3D10DepthStencilState* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10DepthStencilState_GetDevice(ID3D10DepthStencilState* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10DepthStencilState_GetPrivateData(ID3D10DepthStencilState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10DepthStencilState_SetPrivateData(ID3D10DepthStencilState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10DepthStencilState_SetPrivateDataInterface(ID3D10DepthStencilState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10DepthStencilState methods ***/ static FORCEINLINE void ID3D10DepthStencilState_GetDesc(ID3D10DepthStencilState* This,D3D10_DEPTH_STENCIL_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10DepthStencilState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10GeometryShader interface */ #ifndef __ID3D10GeometryShader_INTERFACE_DEFINED__ #define __ID3D10GeometryShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10GeometryShader, 0x6316be88, 0x54cd, 0x4040, 0xab,0x44, 0x20,0x46,0x1b,0xc8,0x1f,0x68); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6316be88-54cd-4040-ab44-20461bc81f68") ID3D10GeometryShader : public ID3D10DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10GeometryShader, 0x6316be88, 0x54cd, 0x4040, 0xab,0x44, 0x20,0x46,0x1b,0xc8,0x1f,0x68) #endif #else typedef struct ID3D10GeometryShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10GeometryShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10GeometryShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10GeometryShader *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10GeometryShader *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10GeometryShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10GeometryShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10GeometryShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D10GeometryShaderVtbl; interface ID3D10GeometryShader { CONST_VTBL ID3D10GeometryShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10GeometryShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10GeometryShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10GeometryShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10GeometryShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10GeometryShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10GeometryShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10GeometryShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10GeometryShader_QueryInterface(ID3D10GeometryShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10GeometryShader_AddRef(ID3D10GeometryShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10GeometryShader_Release(ID3D10GeometryShader* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10GeometryShader_GetDevice(ID3D10GeometryShader* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10GeometryShader_GetPrivateData(ID3D10GeometryShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10GeometryShader_SetPrivateData(ID3D10GeometryShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10GeometryShader_SetPrivateDataInterface(ID3D10GeometryShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D10GeometryShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10InputLayout interface */ #ifndef __ID3D10InputLayout_INTERFACE_DEFINED__ #define __ID3D10InputLayout_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10InputLayout, 0x9b7e4c0b, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0b-342c-4106-a19f-4f2704f689f0") ID3D10InputLayout : public ID3D10DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10InputLayout, 0x9b7e4c0b, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10InputLayoutVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10InputLayout *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10InputLayout *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10InputLayout *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10InputLayout *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10InputLayout *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10InputLayout *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10InputLayout *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D10InputLayoutVtbl; interface ID3D10InputLayout { CONST_VTBL ID3D10InputLayoutVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10InputLayout_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10InputLayout_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10InputLayout_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10InputLayout_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10InputLayout_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10InputLayout_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10InputLayout_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10InputLayout_QueryInterface(ID3D10InputLayout* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10InputLayout_AddRef(ID3D10InputLayout* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10InputLayout_Release(ID3D10InputLayout* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10InputLayout_GetDevice(ID3D10InputLayout* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10InputLayout_GetPrivateData(ID3D10InputLayout* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10InputLayout_SetPrivateData(ID3D10InputLayout* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10InputLayout_SetPrivateDataInterface(ID3D10InputLayout* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D10InputLayout_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10PixelShader interface */ #ifndef __ID3D10PixelShader_INTERFACE_DEFINED__ #define __ID3D10PixelShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10PixelShader, 0x4968b601, 0x9d00, 0x4cde, 0x83,0x46, 0x8e,0x7f,0x67,0x58,0x19,0xb6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4968b601-9d00-4cde-8346-8e7f675819b6") ID3D10PixelShader : public ID3D10DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10PixelShader, 0x4968b601, 0x9d00, 0x4cde, 0x83,0x46, 0x8e,0x7f,0x67,0x58,0x19,0xb6) #endif #else typedef struct ID3D10PixelShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10PixelShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10PixelShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10PixelShader *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10PixelShader *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10PixelShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10PixelShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10PixelShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D10PixelShaderVtbl; interface ID3D10PixelShader { CONST_VTBL ID3D10PixelShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10PixelShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10PixelShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10PixelShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10PixelShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10PixelShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10PixelShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10PixelShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10PixelShader_QueryInterface(ID3D10PixelShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10PixelShader_AddRef(ID3D10PixelShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10PixelShader_Release(ID3D10PixelShader* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10PixelShader_GetDevice(ID3D10PixelShader* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10PixelShader_GetPrivateData(ID3D10PixelShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10PixelShader_SetPrivateData(ID3D10PixelShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10PixelShader_SetPrivateDataInterface(ID3D10PixelShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D10PixelShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10RasterizerState interface */ #ifndef __ID3D10RasterizerState_INTERFACE_DEFINED__ #define __ID3D10RasterizerState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10RasterizerState, 0xa2a07292, 0x89af, 0x4345, 0xbe,0x2e, 0xc5,0x3d,0x9f,0xbb,0x6e,0x9f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a2a07292-89af-4345-be2e-c53d9fbb6e9f") ID3D10RasterizerState : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D10_RASTERIZER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10RasterizerState, 0xa2a07292, 0x89af, 0x4345, 0xbe,0x2e, 0xc5,0x3d,0x9f,0xbb,0x6e,0x9f) #endif #else typedef struct ID3D10RasterizerStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10RasterizerState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10RasterizerState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10RasterizerState *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10RasterizerState *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10RasterizerState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10RasterizerState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10RasterizerState *This, REFGUID guid, const IUnknown *pData); /*** ID3D10RasterizerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10RasterizerState *This, D3D10_RASTERIZER_DESC *pDesc); END_INTERFACE } ID3D10RasterizerStateVtbl; interface ID3D10RasterizerState { CONST_VTBL ID3D10RasterizerStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10RasterizerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10RasterizerState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10RasterizerState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10RasterizerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10RasterizerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10RasterizerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10RasterizerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10RasterizerState methods ***/ #define ID3D10RasterizerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10RasterizerState_QueryInterface(ID3D10RasterizerState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10RasterizerState_AddRef(ID3D10RasterizerState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10RasterizerState_Release(ID3D10RasterizerState* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10RasterizerState_GetDevice(ID3D10RasterizerState* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10RasterizerState_GetPrivateData(ID3D10RasterizerState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10RasterizerState_SetPrivateData(ID3D10RasterizerState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10RasterizerState_SetPrivateDataInterface(ID3D10RasterizerState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10RasterizerState methods ***/ static FORCEINLINE void ID3D10RasterizerState_GetDesc(ID3D10RasterizerState* This,D3D10_RASTERIZER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10RasterizerState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10SamplerState interface */ #ifndef __ID3D10SamplerState_INTERFACE_DEFINED__ #define __ID3D10SamplerState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10SamplerState, 0x9b7e4c0c, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0c-342c-4106-a19f-4f2704f689f0") ID3D10SamplerState : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D10_SAMPLER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10SamplerState, 0x9b7e4c0c, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10SamplerStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10SamplerState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10SamplerState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10SamplerState *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10SamplerState *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10SamplerState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10SamplerState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10SamplerState *This, REFGUID guid, const IUnknown *pData); /*** ID3D10SamplerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10SamplerState *This, D3D10_SAMPLER_DESC *pDesc); END_INTERFACE } ID3D10SamplerStateVtbl; interface ID3D10SamplerState { CONST_VTBL ID3D10SamplerStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10SamplerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10SamplerState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10SamplerState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10SamplerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10SamplerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10SamplerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10SamplerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10SamplerState methods ***/ #define ID3D10SamplerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10SamplerState_QueryInterface(ID3D10SamplerState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10SamplerState_AddRef(ID3D10SamplerState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10SamplerState_Release(ID3D10SamplerState* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10SamplerState_GetDevice(ID3D10SamplerState* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10SamplerState_GetPrivateData(ID3D10SamplerState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10SamplerState_SetPrivateData(ID3D10SamplerState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10SamplerState_SetPrivateDataInterface(ID3D10SamplerState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10SamplerState methods ***/ static FORCEINLINE void ID3D10SamplerState_GetDesc(ID3D10SamplerState* This,D3D10_SAMPLER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10SamplerState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10VertexShader interface */ #ifndef __ID3D10VertexShader_INTERFACE_DEFINED__ #define __ID3D10VertexShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10VertexShader, 0x9b7e4c0a, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0a-342c-4106-a19f-4f2704f689f0") ID3D10VertexShader : public ID3D10DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10VertexShader, 0x9b7e4c0a, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10VertexShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10VertexShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10VertexShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10VertexShader *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10VertexShader *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10VertexShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10VertexShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10VertexShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D10VertexShaderVtbl; interface ID3D10VertexShader { CONST_VTBL ID3D10VertexShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10VertexShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10VertexShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10VertexShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10VertexShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10VertexShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10VertexShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10VertexShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10VertexShader_QueryInterface(ID3D10VertexShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10VertexShader_AddRef(ID3D10VertexShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10VertexShader_Release(ID3D10VertexShader* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10VertexShader_GetDevice(ID3D10VertexShader* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10VertexShader_GetPrivateData(ID3D10VertexShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10VertexShader_SetPrivateData(ID3D10VertexShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10VertexShader_SetPrivateDataInterface(ID3D10VertexShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D10VertexShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Asynchronous interface */ #ifndef __ID3D10Asynchronous_INTERFACE_DEFINED__ #define __ID3D10Asynchronous_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Asynchronous, 0x9b7e4c0d, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0d-342c-4106-a19f-4f2704f689f0") ID3D10Asynchronous : public ID3D10DeviceChild { virtual void STDMETHODCALLTYPE Begin( ) = 0; virtual void STDMETHODCALLTYPE End( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetData( void *pData, UINT DataSize, UINT GetDataFlags) = 0; virtual UINT STDMETHODCALLTYPE GetDataSize( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Asynchronous, 0x9b7e4c0d, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10AsynchronousVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Asynchronous *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Asynchronous *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Asynchronous *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Asynchronous *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Asynchronous *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Asynchronous *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Asynchronous *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Asynchronous methods ***/ void (STDMETHODCALLTYPE *Begin)( ID3D10Asynchronous *This); void (STDMETHODCALLTYPE *End)( ID3D10Asynchronous *This); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D10Asynchronous *This, void *pData, UINT DataSize, UINT GetDataFlags); UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D10Asynchronous *This); END_INTERFACE } ID3D10AsynchronousVtbl; interface ID3D10Asynchronous { CONST_VTBL ID3D10AsynchronousVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Asynchronous_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Asynchronous_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Asynchronous_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Asynchronous_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Asynchronous_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Asynchronous_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Asynchronous_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Asynchronous methods ***/ #define ID3D10Asynchronous_Begin(This) (This)->lpVtbl->Begin(This) #define ID3D10Asynchronous_End(This) (This)->lpVtbl->End(This) #define ID3D10Asynchronous_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags) #define ID3D10Asynchronous_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Asynchronous_QueryInterface(ID3D10Asynchronous* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Asynchronous_AddRef(ID3D10Asynchronous* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Asynchronous_Release(ID3D10Asynchronous* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Asynchronous_GetDevice(ID3D10Asynchronous* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Asynchronous_GetPrivateData(ID3D10Asynchronous* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Asynchronous_SetPrivateData(ID3D10Asynchronous* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Asynchronous_SetPrivateDataInterface(ID3D10Asynchronous* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Asynchronous methods ***/ static FORCEINLINE void ID3D10Asynchronous_Begin(ID3D10Asynchronous* This) { This->lpVtbl->Begin(This); } static FORCEINLINE void ID3D10Asynchronous_End(ID3D10Asynchronous* This) { This->lpVtbl->End(This); } static FORCEINLINE HRESULT ID3D10Asynchronous_GetData(ID3D10Asynchronous* This,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags); } static FORCEINLINE UINT ID3D10Asynchronous_GetDataSize(ID3D10Asynchronous* This) { return This->lpVtbl->GetDataSize(This); } #endif #endif #endif #endif /* __ID3D10Asynchronous_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Counter interface */ #ifndef __ID3D10Counter_INTERFACE_DEFINED__ #define __ID3D10Counter_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Counter, 0x9b7e4c11, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c11-342c-4106-a19f-4f2704f689f0") ID3D10Counter : public ID3D10Asynchronous { virtual void STDMETHODCALLTYPE GetDesc( D3D10_COUNTER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Counter, 0x9b7e4c11, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10CounterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Counter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Counter *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Counter *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Counter *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Counter *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Counter *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Counter *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Asynchronous methods ***/ void (STDMETHODCALLTYPE *Begin)( ID3D10Counter *This); void (STDMETHODCALLTYPE *End)( ID3D10Counter *This); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D10Counter *This, void *pData, UINT DataSize, UINT GetDataFlags); UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D10Counter *This); /*** ID3D10Counter methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10Counter *This, D3D10_COUNTER_DESC *pDesc); END_INTERFACE } ID3D10CounterVtbl; interface ID3D10Counter { CONST_VTBL ID3D10CounterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Counter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Counter_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Counter_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Counter_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Counter_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Counter_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Counter_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Asynchronous methods ***/ #define ID3D10Counter_Begin(This) (This)->lpVtbl->Begin(This) #define ID3D10Counter_End(This) (This)->lpVtbl->End(This) #define ID3D10Counter_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags) #define ID3D10Counter_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D10Counter methods ***/ #define ID3D10Counter_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Counter_QueryInterface(ID3D10Counter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Counter_AddRef(ID3D10Counter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Counter_Release(ID3D10Counter* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Counter_GetDevice(ID3D10Counter* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Counter_GetPrivateData(ID3D10Counter* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Counter_SetPrivateData(ID3D10Counter* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Counter_SetPrivateDataInterface(ID3D10Counter* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Asynchronous methods ***/ static FORCEINLINE void ID3D10Counter_Begin(ID3D10Counter* This) { This->lpVtbl->Begin(This); } static FORCEINLINE void ID3D10Counter_End(ID3D10Counter* This) { This->lpVtbl->End(This); } static FORCEINLINE HRESULT ID3D10Counter_GetData(ID3D10Counter* This,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags); } static FORCEINLINE UINT ID3D10Counter_GetDataSize(ID3D10Counter* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D10Counter methods ***/ static FORCEINLINE void ID3D10Counter_GetDesc(ID3D10Counter* This,D3D10_COUNTER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Counter_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Query interface */ #ifndef __ID3D10Query_INTERFACE_DEFINED__ #define __ID3D10Query_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Query, 0x9b7e4c0e, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0e-342c-4106-a19f-4f2704f689f0") ID3D10Query : public ID3D10Asynchronous { virtual void STDMETHODCALLTYPE GetDesc( D3D10_QUERY_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Query, 0x9b7e4c0e, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10QueryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Query *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Query *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Query *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Query *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Query *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Query *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Query *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Asynchronous methods ***/ void (STDMETHODCALLTYPE *Begin)( ID3D10Query *This); void (STDMETHODCALLTYPE *End)( ID3D10Query *This); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D10Query *This, void *pData, UINT DataSize, UINT GetDataFlags); UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D10Query *This); /*** ID3D10Query methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10Query *This, D3D10_QUERY_DESC *pDesc); END_INTERFACE } ID3D10QueryVtbl; interface ID3D10Query { CONST_VTBL ID3D10QueryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Query_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Query_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Query_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Query_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Query_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Query_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Query_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Asynchronous methods ***/ #define ID3D10Query_Begin(This) (This)->lpVtbl->Begin(This) #define ID3D10Query_End(This) (This)->lpVtbl->End(This) #define ID3D10Query_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags) #define ID3D10Query_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D10Query methods ***/ #define ID3D10Query_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Query_QueryInterface(ID3D10Query* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Query_AddRef(ID3D10Query* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Query_Release(ID3D10Query* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Query_GetDevice(ID3D10Query* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Query_GetPrivateData(ID3D10Query* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Query_SetPrivateData(ID3D10Query* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Query_SetPrivateDataInterface(ID3D10Query* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Asynchronous methods ***/ static FORCEINLINE void ID3D10Query_Begin(ID3D10Query* This) { This->lpVtbl->Begin(This); } static FORCEINLINE void ID3D10Query_End(ID3D10Query* This) { This->lpVtbl->End(This); } static FORCEINLINE HRESULT ID3D10Query_GetData(ID3D10Query* This,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags); } static FORCEINLINE UINT ID3D10Query_GetDataSize(ID3D10Query* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D10Query methods ***/ static FORCEINLINE void ID3D10Query_GetDesc(ID3D10Query* This,D3D10_QUERY_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Query_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Predicate interface */ #ifndef __ID3D10Predicate_INTERFACE_DEFINED__ #define __ID3D10Predicate_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Predicate, 0x9b7e4c10, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c10-342c-4106-a19f-4f2704f689f0") ID3D10Predicate : public ID3D10Query { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Predicate, 0x9b7e4c10, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10PredicateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Predicate *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Predicate *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Predicate *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10Predicate *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Predicate *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Predicate *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Predicate *This, REFGUID guid, const IUnknown *pData); /*** ID3D10Asynchronous methods ***/ void (STDMETHODCALLTYPE *Begin)( ID3D10Predicate *This); void (STDMETHODCALLTYPE *End)( ID3D10Predicate *This); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D10Predicate *This, void *pData, UINT DataSize, UINT GetDataFlags); UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D10Predicate *This); /*** ID3D10Query methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10Predicate *This, D3D10_QUERY_DESC *pDesc); END_INTERFACE } ID3D10PredicateVtbl; interface ID3D10Predicate { CONST_VTBL ID3D10PredicateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Predicate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Predicate_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Predicate_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10Predicate_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10Predicate_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Predicate_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Predicate_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10Asynchronous methods ***/ #define ID3D10Predicate_Begin(This) (This)->lpVtbl->Begin(This) #define ID3D10Predicate_End(This) (This)->lpVtbl->End(This) #define ID3D10Predicate_GetData(This,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pData,DataSize,GetDataFlags) #define ID3D10Predicate_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D10Query methods ***/ #define ID3D10Predicate_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Predicate_QueryInterface(ID3D10Predicate* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Predicate_AddRef(ID3D10Predicate* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Predicate_Release(ID3D10Predicate* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10Predicate_GetDevice(ID3D10Predicate* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10Predicate_GetPrivateData(ID3D10Predicate* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Predicate_SetPrivateData(ID3D10Predicate* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Predicate_SetPrivateDataInterface(ID3D10Predicate* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10Asynchronous methods ***/ static FORCEINLINE void ID3D10Predicate_Begin(ID3D10Predicate* This) { This->lpVtbl->Begin(This); } static FORCEINLINE void ID3D10Predicate_End(ID3D10Predicate* This) { This->lpVtbl->End(This); } static FORCEINLINE HRESULT ID3D10Predicate_GetData(ID3D10Predicate* This,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pData,DataSize,GetDataFlags); } static FORCEINLINE UINT ID3D10Predicate_GetDataSize(ID3D10Predicate* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D10Query methods ***/ static FORCEINLINE void ID3D10Predicate_GetDesc(ID3D10Predicate* This,D3D10_QUERY_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D10Predicate_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Device interface */ #ifndef __ID3D10Device_INTERFACE_DEFINED__ #define __ID3D10Device_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Device, 0x9b7e4c0f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c0f-342c-4106-a19f-4f2704f689f0") ID3D10Device : public IUnknown { virtual void STDMETHODCALLTYPE VSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE PSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE PSSetShader( ID3D10PixelShader *pPixelShader) = 0; virtual void STDMETHODCALLTYPE PSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE VSSetShader( ID3D10VertexShader *pVertexShader) = 0; virtual void STDMETHODCALLTYPE DrawIndexed( UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation) = 0; virtual void STDMETHODCALLTYPE Draw( UINT VertexCount, UINT StartVertexLocation) = 0; virtual void STDMETHODCALLTYPE PSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE IASetInputLayout( ID3D10InputLayout *pInputLayout) = 0; virtual void STDMETHODCALLTYPE IASetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE IASetIndexBuffer( ID3D10Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset) = 0; virtual void STDMETHODCALLTYPE DrawIndexedInstanced( UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE DrawInstanced( UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE GSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE GSSetShader( ID3D10GeometryShader *pShader) = 0; virtual void STDMETHODCALLTYPE IASetPrimitiveTopology( D3D10_PRIMITIVE_TOPOLOGY Topology) = 0; virtual void STDMETHODCALLTYPE VSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE VSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE SetPredication( ID3D10Predicate *pPredicate, WINBOOL PredicateValue) = 0; virtual void STDMETHODCALLTYPE GSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE GSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE OMSetRenderTargets( UINT NumViews, ID3D10RenderTargetView *const *ppRenderTargetViews, ID3D10DepthStencilView *pDepthStencilView) = 0; virtual void STDMETHODCALLTYPE OMSetBlendState( ID3D10BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask) = 0; virtual void STDMETHODCALLTYPE OMSetDepthStencilState( ID3D10DepthStencilState *pDepthStencilState, UINT StencilRef) = 0; virtual void STDMETHODCALLTYPE SOSetTargets( UINT NumBuffers, ID3D10Buffer *const *ppSOTargets, const UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE DrawAuto( ) = 0; virtual void STDMETHODCALLTYPE RSSetState( ID3D10RasterizerState *pRasterizerState) = 0; virtual void STDMETHODCALLTYPE RSSetViewports( UINT NumViewports, const D3D10_VIEWPORT *pViewports) = 0; virtual void STDMETHODCALLTYPE RSSetScissorRects( UINT NumRects, const D3D10_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE CopySubresourceRegion( ID3D10Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D10Resource *pSrcResource, UINT SrcSubresource, const D3D10_BOX *pSrcBox) = 0; virtual void STDMETHODCALLTYPE CopyResource( ID3D10Resource *pDstResource, ID3D10Resource *pSrcResource) = 0; virtual void STDMETHODCALLTYPE UpdateSubresource( ID3D10Resource *pDstResource, UINT DstSubresource, const D3D10_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch) = 0; virtual void STDMETHODCALLTYPE ClearRenderTargetView( ID3D10RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]) = 0; virtual void STDMETHODCALLTYPE ClearDepthStencilView( ID3D10DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil) = 0; virtual void STDMETHODCALLTYPE GenerateMips( ID3D10ShaderResourceView *pShaderResourceView) = 0; virtual void STDMETHODCALLTYPE ResolveSubresource( ID3D10Resource *pDstResource, UINT DstSubresource, ID3D10Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format) = 0; virtual void STDMETHODCALLTYPE VSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE PSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE PSGetShader( ID3D10PixelShader **ppPixelShader) = 0; virtual void STDMETHODCALLTYPE PSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE VSGetShader( ID3D10VertexShader **ppVertexShader) = 0; virtual void STDMETHODCALLTYPE PSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE IAGetInputLayout( ID3D10InputLayout **ppInputLayout) = 0; virtual void STDMETHODCALLTYPE IAGetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE IAGetIndexBuffer( ID3D10Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset) = 0; virtual void STDMETHODCALLTYPE GSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE GSGetShader( ID3D10GeometryShader **ppGeometryShader) = 0; virtual void STDMETHODCALLTYPE IAGetPrimitiveTopology( D3D10_PRIMITIVE_TOPOLOGY *pTopology) = 0; virtual void STDMETHODCALLTYPE VSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE VSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE GetPredication( ID3D10Predicate **ppPredicate, WINBOOL *pPredicateValue) = 0; virtual void STDMETHODCALLTYPE GSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE GSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE OMGetRenderTargets( UINT NumViews, ID3D10RenderTargetView **ppRenderTargetViews, ID3D10DepthStencilView **ppDepthStencilView) = 0; virtual void STDMETHODCALLTYPE OMGetBlendState( ID3D10BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask) = 0; virtual void STDMETHODCALLTYPE OMGetDepthStencilState( ID3D10DepthStencilState **ppDepthStencilState, UINT *pStencilRef) = 0; virtual void STDMETHODCALLTYPE SOGetTargets( UINT NumBuffers, ID3D10Buffer **ppSOTargets, UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE RSGetState( ID3D10RasterizerState **ppRasterizerState) = 0; virtual void STDMETHODCALLTYPE RSGetViewports( UINT *NumViewports, D3D10_VIEWPORT *pViewports) = 0; virtual void STDMETHODCALLTYPE RSGetScissorRects( UINT *NumRects, D3D10_RECT *pRects) = 0; virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetExceptionMode( UINT RaiseFlags) = 0; virtual UINT STDMETHODCALLTYPE GetExceptionMode( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *pDataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pData) = 0; virtual void STDMETHODCALLTYPE ClearState( ) = 0; virtual void STDMETHODCALLTYPE Flush( ) = 0; virtual HRESULT STDMETHODCALLTYPE CreateBuffer( const D3D10_BUFFER_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Buffer **ppBuffer) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture1D( const D3D10_TEXTURE1D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture1D **ppTexture1D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture2D( const D3D10_TEXTURE2D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture2D **ppTexture2D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture3D( const D3D10_TEXTURE3D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture3D **ppTexture3D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView( ID3D10Resource *pResource, const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D10ShaderResourceView **ppSRView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRenderTargetView( ID3D10Resource *pResource, const D3D10_RENDER_TARGET_VIEW_DESC *pDesc, ID3D10RenderTargetView **ppRTView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilView( ID3D10Resource *pResource, const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D10DepthStencilView **ppDepthStencilView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateInputLayout( const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D10InputLayout **ppInputLayout) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVertexShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10VertexShader **ppVertexShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGeometryShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10GeometryShader **ppGeometryShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGeometryShaderWithStreamOutput( const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D10_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, UINT OutputStreamStride, ID3D10GeometryShader **ppGeometryShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePixelShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10PixelShader **ppPixelShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateBlendState( const D3D10_BLEND_DESC *pBlendStateDesc, ID3D10BlendState **ppBlendState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilState( const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D10DepthStencilState **ppDepthStencilState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState( const D3D10_RASTERIZER_DESC *pRasterizerDesc, ID3D10RasterizerState **ppRasterizerState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSamplerState( const D3D10_SAMPLER_DESC *pSamplerDesc, ID3D10SamplerState **ppSamplerState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateQuery( const D3D10_QUERY_DESC *pQueryDesc, ID3D10Query **ppQuery) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePredicate( const D3D10_QUERY_DESC *pPredicateDesc, ID3D10Predicate **ppPredicate) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCounter( const D3D10_COUNTER_DESC *pCounterDesc, ID3D10Counter **ppCounter) = 0; virtual HRESULT STDMETHODCALLTYPE CheckFormatSupport( DXGI_FORMAT Format, UINT *pFormatSupport) = 0; virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels( DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels) = 0; virtual void STDMETHODCALLTYPE CheckCounterInfo( D3D10_COUNTER_INFO *pCounterInfo) = 0; virtual HRESULT STDMETHODCALLTYPE CheckCounter( const D3D10_COUNTER_DESC *pDesc, D3D10_COUNTER_TYPE *pType, UINT *pActiveCounters, char *name, UINT *pNameLength, char *units, UINT *pUnitsLength, char *description, UINT *pDescriptionLength) = 0; virtual UINT STDMETHODCALLTYPE GetCreationFlags( ) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedResource( HANDLE hResource, REFIID ReturnedInterface, void **ppResource) = 0; virtual void STDMETHODCALLTYPE SetTextFilterSize( UINT Width, UINT Height) = 0; virtual void STDMETHODCALLTYPE GetTextFilterSize( UINT *pWidth, UINT *pHeight) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Device, 0x9b7e4c0f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10DeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Device *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Device *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Device *This); /*** ID3D10Device methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D10Device *This, ID3D10PixelShader *pPixelShader); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D10Device *This, ID3D10VertexShader *pVertexShader); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D10Device *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D10Device *This, UINT VertexCount, UINT StartVertexLocation); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D10Device *This, ID3D10InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D10Device *This, ID3D10Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D10Device *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D10Device *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D10Device *This, ID3D10GeometryShader *pShader); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D10Device *This, D3D10_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *SetPredication)( ID3D10Device *This, ID3D10Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D10Device *This, UINT NumViews, ID3D10RenderTargetView *const *ppRenderTargetViews, ID3D10DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D10Device *This, ID3D10BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D10Device *This, ID3D10DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D10Device *This, UINT NumBuffers, ID3D10Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D10Device *This); void (STDMETHODCALLTYPE *RSSetState)( ID3D10Device *This, ID3D10RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D10Device *This, UINT NumViewports, const D3D10_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D10Device *This, UINT NumRects, const D3D10_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D10Device *This, ID3D10Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D10Resource *pSrcResource, UINT SrcSubresource, const D3D10_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D10Device *This, ID3D10Resource *pDstResource, ID3D10Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D10Device *This, ID3D10Resource *pDstResource, UINT DstSubresource, const D3D10_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D10Device *This, ID3D10RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D10Device *This, ID3D10DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D10Device *This, ID3D10ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D10Device *This, ID3D10Resource *pDstResource, UINT DstSubresource, ID3D10Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D10Device *This, ID3D10PixelShader **ppPixelShader); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D10Device *This, ID3D10VertexShader **ppVertexShader); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D10Device *This, ID3D10InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D10Device *This, ID3D10Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D10Device *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D10Device *This, ID3D10GeometryShader **ppGeometryShader); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D10Device *This, D3D10_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D10Device *This, ID3D10Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D10Device *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D10Device *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D10Device *This, UINT NumViews, ID3D10RenderTargetView **ppRenderTargetViews, ID3D10DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D10Device *This, ID3D10BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D10Device *This, ID3D10DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D10Device *This, UINT NumBuffers, ID3D10Buffer **ppSOTargets, UINT *pOffsets); void (STDMETHODCALLTYPE *RSGetState)( ID3D10Device *This, ID3D10RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D10Device *This, UINT *NumViewports, D3D10_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D10Device *This, UINT *NumRects, D3D10_RECT *pRects); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D10Device *This); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D10Device *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D10Device *This); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Device *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Device *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Device *This, REFGUID guid, const IUnknown *pData); void (STDMETHODCALLTYPE *ClearState)( ID3D10Device *This); void (STDMETHODCALLTYPE *Flush)( ID3D10Device *This); HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D10Device *This, const D3D10_BUFFER_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D10Device *This, const D3D10_TEXTURE1D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D10Device *This, const D3D10_TEXTURE2D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D10Device *This, const D3D10_TEXTURE3D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D10Device *This, ID3D10Resource *pResource, const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D10ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D10Device *This, ID3D10Resource *pResource, const D3D10_RENDER_TARGET_VIEW_DESC *pDesc, ID3D10RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D10Device *This, ID3D10Resource *pResource, const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D10DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D10Device *This, const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D10InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D10Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D10Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D10Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D10_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, UINT OutputStreamStride, ID3D10GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D10Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D10Device *This, const D3D10_BLEND_DESC *pBlendStateDesc, ID3D10BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D10Device *This, const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D10DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D10Device *This, const D3D10_RASTERIZER_DESC *pRasterizerDesc, ID3D10RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D10Device *This, const D3D10_SAMPLER_DESC *pSamplerDesc, ID3D10SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D10Device *This, const D3D10_QUERY_DESC *pQueryDesc, ID3D10Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D10Device *This, const D3D10_QUERY_DESC *pPredicateDesc, ID3D10Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D10Device *This, const D3D10_COUNTER_DESC *pCounterDesc, ID3D10Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D10Device *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D10Device *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D10Device *This, D3D10_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D10Device *This, const D3D10_COUNTER_DESC *pDesc, D3D10_COUNTER_TYPE *pType, UINT *pActiveCounters, char *name, UINT *pNameLength, char *units, UINT *pUnitsLength, char *description, UINT *pDescriptionLength); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D10Device *This); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D10Device *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); void (STDMETHODCALLTYPE *SetTextFilterSize)( ID3D10Device *This, UINT Width, UINT Height); void (STDMETHODCALLTYPE *GetTextFilterSize)( ID3D10Device *This, UINT *pWidth, UINT *pHeight); END_INTERFACE } ID3D10DeviceVtbl; interface ID3D10Device { CONST_VTBL ID3D10DeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Device_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Device_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10Device methods ***/ #define ID3D10Device_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_PSSetShader(This,pPixelShader) (This)->lpVtbl->PSSetShader(This,pPixelShader) #define ID3D10Device_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_VSSetShader(This,pVertexShader) (This)->lpVtbl->VSSetShader(This,pVertexShader) #define ID3D10Device_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D10Device_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D10Device_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D10Device_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D10Device_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D10Device_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D10Device_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D10Device_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_GSSetShader(This,pShader) (This)->lpVtbl->GSSetShader(This,pShader) #define ID3D10Device_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D10Device_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D10Device_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D10Device_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D10Device_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D10Device_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D10Device_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D10Device_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D10Device_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D10Device_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D10Device_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D10Device_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D10Device_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D10Device_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D10Device_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D10Device_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D10Device_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D10Device_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_PSGetShader(This,ppPixelShader) (This)->lpVtbl->PSGetShader(This,ppPixelShader) #define ID3D10Device_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_VSGetShader(This,ppVertexShader) (This)->lpVtbl->VSGetShader(This,ppVertexShader) #define ID3D10Device_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D10Device_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D10Device_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D10Device_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device_GSGetShader(This,ppGeometryShader) (This)->lpVtbl->GSGetShader(This,ppGeometryShader) #define ID3D10Device_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D10Device_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D10Device_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D10Device_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D10Device_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D10Device_SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D10Device_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D10Device_RSGetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,NumViewports,pViewports) #define ID3D10Device_RSGetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,NumRects,pRects) #define ID3D10Device_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D10Device_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D10Device_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) #define ID3D10Device_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Device_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Device_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D10Device_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D10Device_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D10Device_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D10Device_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D10Device_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D10Device_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D10Device_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D10Device_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D10Device_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D10Device_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D10Device_CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) #define ID3D10Device_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) #define ID3D10Device_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) #define ID3D10Device_CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) #define ID3D10Device_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D10Device_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D10Device_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D10Device_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D10Device_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D10Device_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D10Device_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D10Device_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D10Device_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D10Device_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D10Device_CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength) #define ID3D10Device_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D10Device_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D10Device_SetTextFilterSize(This,Width,Height) (This)->lpVtbl->SetTextFilterSize(This,Width,Height) #define ID3D10Device_GetTextFilterSize(This,pWidth,pHeight) (This)->lpVtbl->GetTextFilterSize(This,pWidth,pHeight) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Device_QueryInterface(ID3D10Device* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Device_AddRef(ID3D10Device* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Device_Release(ID3D10Device* This) { return This->lpVtbl->Release(This); } /*** ID3D10Device methods ***/ static FORCEINLINE void ID3D10Device_VSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_PSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_PSSetShader(ID3D10Device* This,ID3D10PixelShader *pPixelShader) { This->lpVtbl->PSSetShader(This,pPixelShader); } static FORCEINLINE void ID3D10Device_PSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_VSSetShader(ID3D10Device* This,ID3D10VertexShader *pVertexShader) { This->lpVtbl->VSSetShader(This,pVertexShader); } static FORCEINLINE void ID3D10Device_DrawIndexed(ID3D10Device* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D10Device_Draw(ID3D10Device* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE void ID3D10Device_PSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_IASetInputLayout(ID3D10Device* This,ID3D10InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D10Device_IASetVertexBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D10Device_IASetIndexBuffer(ID3D10Device* This,ID3D10Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D10Device_DrawIndexedInstanced(ID3D10Device* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D10Device_DrawInstanced(ID3D10Device* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D10Device_GSSetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_GSSetShader(ID3D10Device* This,ID3D10GeometryShader *pShader) { This->lpVtbl->GSSetShader(This,pShader); } static FORCEINLINE void ID3D10Device_IASetPrimitiveTopology(ID3D10Device* This,D3D10_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D10Device_VSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_VSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_SetPredication(ID3D10Device* This,ID3D10Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D10Device_GSSetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_GSSetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_OMSetRenderTargets(ID3D10Device* This,UINT NumViews,ID3D10RenderTargetView *const *ppRenderTargetViews,ID3D10DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D10Device_OMSetBlendState(ID3D10Device* This,ID3D10BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D10Device_OMSetDepthStencilState(ID3D10Device* This,ID3D10DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D10Device_SOSetTargets(ID3D10Device* This,UINT NumBuffers,ID3D10Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D10Device_DrawAuto(ID3D10Device* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D10Device_RSSetState(ID3D10Device* This,ID3D10RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D10Device_RSSetViewports(ID3D10Device* This,UINT NumViewports,const D3D10_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D10Device_RSSetScissorRects(ID3D10Device* This,UINT NumRects,const D3D10_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D10Device_CopySubresourceRegion(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D10Resource *pSrcResource,UINT SrcSubresource,const D3D10_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D10Device_CopyResource(ID3D10Device* This,ID3D10Resource *pDstResource,ID3D10Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D10Device_UpdateSubresource(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,const D3D10_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D10Device_ClearRenderTargetView(ID3D10Device* This,ID3D10RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D10Device_ClearDepthStencilView(ID3D10Device* This,ID3D10DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D10Device_GenerateMips(ID3D10Device* This,ID3D10ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D10Device_ResolveSubresource(ID3D10Device* This,ID3D10Resource *pDstResource,UINT DstSubresource,ID3D10Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D10Device_VSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_PSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_PSGetShader(ID3D10Device* This,ID3D10PixelShader **ppPixelShader) { This->lpVtbl->PSGetShader(This,ppPixelShader); } static FORCEINLINE void ID3D10Device_PSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_VSGetShader(ID3D10Device* This,ID3D10VertexShader **ppVertexShader) { This->lpVtbl->VSGetShader(This,ppVertexShader); } static FORCEINLINE void ID3D10Device_PSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_IAGetInputLayout(ID3D10Device* This,ID3D10InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D10Device_IAGetVertexBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D10Device_IAGetIndexBuffer(ID3D10Device* This,ID3D10Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D10Device_GSGetConstantBuffers(ID3D10Device* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device_GSGetShader(ID3D10Device* This,ID3D10GeometryShader **ppGeometryShader) { This->lpVtbl->GSGetShader(This,ppGeometryShader); } static FORCEINLINE void ID3D10Device_IAGetPrimitiveTopology(ID3D10Device* This,D3D10_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D10Device_VSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_VSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_GetPredication(ID3D10Device* This,ID3D10Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D10Device_GSGetShaderResources(ID3D10Device* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device_GSGetSamplers(ID3D10Device* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device_OMGetRenderTargets(ID3D10Device* This,UINT NumViews,ID3D10RenderTargetView **ppRenderTargetViews,ID3D10DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D10Device_OMGetBlendState(ID3D10Device* This,ID3D10BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D10Device_OMGetDepthStencilState(ID3D10Device* This,ID3D10DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D10Device_SOGetTargets(ID3D10Device* This,UINT NumBuffers,ID3D10Buffer **ppSOTargets,UINT *pOffsets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D10Device_RSGetState(ID3D10Device* This,ID3D10RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D10Device_RSGetViewports(ID3D10Device* This,UINT *NumViewports,D3D10_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D10Device_RSGetScissorRects(ID3D10Device* This,UINT *NumRects,D3D10_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,NumRects,pRects); } static FORCEINLINE HRESULT ID3D10Device_GetDeviceRemovedReason(ID3D10Device* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE HRESULT ID3D10Device_SetExceptionMode(ID3D10Device* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D10Device_GetExceptionMode(ID3D10Device* This) { return This->lpVtbl->GetExceptionMode(This); } static FORCEINLINE HRESULT ID3D10Device_GetPrivateData(ID3D10Device* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Device_SetPrivateData(ID3D10Device* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Device_SetPrivateDataInterface(ID3D10Device* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE void ID3D10Device_ClearState(ID3D10Device* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D10Device_Flush(ID3D10Device* This) { This->lpVtbl->Flush(This); } static FORCEINLINE HRESULT ID3D10Device_CreateBuffer(ID3D10Device* This,const D3D10_BUFFER_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D10Device_CreateTexture1D(ID3D10Device* This,const D3D10_TEXTURE1D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D10Device_CreateTexture2D(ID3D10Device* This,const D3D10_TEXTURE2D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D10Device_CreateTexture3D(ID3D10Device* This,const D3D10_TEXTURE3D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D10Device_CreateShaderResourceView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D10ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D10Device_CreateRenderTargetView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,ID3D10RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D10Device_CreateDepthStencilView(ID3D10Device* This,ID3D10Resource *pResource,const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D10DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D10Device_CreateInputLayout(ID3D10Device* This,const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D10InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D10Device_CreateVertexShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader); } static FORCEINLINE HRESULT ID3D10Device_CreateGeometryShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader); } static FORCEINLINE HRESULT ID3D10Device_CreateGeometryShaderWithStreamOutput(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,UINT OutputStreamStride,ID3D10GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader); } static FORCEINLINE HRESULT ID3D10Device_CreatePixelShader(ID3D10Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader); } static FORCEINLINE HRESULT ID3D10Device_CreateBlendState(ID3D10Device* This,const D3D10_BLEND_DESC *pBlendStateDesc,ID3D10BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D10Device_CreateDepthStencilState(ID3D10Device* This,const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D10DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D10Device_CreateRasterizerState(ID3D10Device* This,const D3D10_RASTERIZER_DESC *pRasterizerDesc,ID3D10RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D10Device_CreateSamplerState(ID3D10Device* This,const D3D10_SAMPLER_DESC *pSamplerDesc,ID3D10SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D10Device_CreateQuery(ID3D10Device* This,const D3D10_QUERY_DESC *pQueryDesc,ID3D10Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D10Device_CreatePredicate(ID3D10Device* This,const D3D10_QUERY_DESC *pPredicateDesc,ID3D10Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D10Device_CreateCounter(ID3D10Device* This,const D3D10_COUNTER_DESC *pCounterDesc,ID3D10Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D10Device_CheckFormatSupport(ID3D10Device* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D10Device_CheckMultisampleQualityLevels(ID3D10Device* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D10Device_CheckCounterInfo(ID3D10Device* This,D3D10_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D10Device_CheckCounter(ID3D10Device* This,const D3D10_COUNTER_DESC *pDesc,D3D10_COUNTER_TYPE *pType,UINT *pActiveCounters,char *name,UINT *pNameLength,char *units,UINT *pUnitsLength,char *description,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength); } static FORCEINLINE UINT ID3D10Device_GetCreationFlags(ID3D10Device* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D10Device_OpenSharedResource(ID3D10Device* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE void ID3D10Device_SetTextFilterSize(ID3D10Device* This,UINT Width,UINT Height) { This->lpVtbl->SetTextFilterSize(This,Width,Height); } static FORCEINLINE void ID3D10Device_GetTextFilterSize(ID3D10Device* This,UINT *pWidth,UINT *pHeight) { This->lpVtbl->GetTextFilterSize(This,pWidth,pHeight); } #endif #endif #endif #endif /* __ID3D10Device_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Multithread interface */ #ifndef __ID3D10Multithread_INTERFACE_DEFINED__ #define __ID3D10Multithread_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4e00-342c-4106-a19f-4f2704f689f0") ID3D10Multithread : public IUnknown { virtual void STDMETHODCALLTYPE Enter( ) = 0; virtual void STDMETHODCALLTYPE Leave( ) = 0; virtual WINBOOL STDMETHODCALLTYPE SetMultithreadProtected( WINBOOL bMTProtect) = 0; virtual WINBOOL STDMETHODCALLTYPE GetMultithreadProtected( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10MultithreadVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Multithread *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Multithread *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Multithread *This); /*** ID3D10Multithread methods ***/ void (STDMETHODCALLTYPE *Enter)( ID3D10Multithread *This); void (STDMETHODCALLTYPE *Leave)( ID3D10Multithread *This); WINBOOL (STDMETHODCALLTYPE *SetMultithreadProtected)( ID3D10Multithread *This, WINBOOL bMTProtect); WINBOOL (STDMETHODCALLTYPE *GetMultithreadProtected)( ID3D10Multithread *This); END_INTERFACE } ID3D10MultithreadVtbl; interface ID3D10Multithread { CONST_VTBL ID3D10MultithreadVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Multithread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Multithread_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Multithread_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10Multithread methods ***/ #define ID3D10Multithread_Enter(This) (This)->lpVtbl->Enter(This) #define ID3D10Multithread_Leave(This) (This)->lpVtbl->Leave(This) #define ID3D10Multithread_SetMultithreadProtected(This,bMTProtect) (This)->lpVtbl->SetMultithreadProtected(This,bMTProtect) #define ID3D10Multithread_GetMultithreadProtected(This) (This)->lpVtbl->GetMultithreadProtected(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Multithread_QueryInterface(ID3D10Multithread* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Multithread_AddRef(ID3D10Multithread* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Multithread_Release(ID3D10Multithread* This) { return This->lpVtbl->Release(This); } /*** ID3D10Multithread methods ***/ static FORCEINLINE void ID3D10Multithread_Enter(ID3D10Multithread* This) { This->lpVtbl->Enter(This); } static FORCEINLINE void ID3D10Multithread_Leave(ID3D10Multithread* This) { This->lpVtbl->Leave(This); } static FORCEINLINE WINBOOL ID3D10Multithread_SetMultithreadProtected(ID3D10Multithread* This,WINBOOL bMTProtect) { return This->lpVtbl->SetMultithreadProtected(This,bMTProtect); } static FORCEINLINE WINBOOL ID3D10Multithread_GetMultithreadProtected(ID3D10Multithread* This) { return This->lpVtbl->GetMultithreadProtected(This); } #endif #endif #endif #endif /* __ID3D10Multithread_INTERFACE_DEFINED__ */ #ifndef D3D10_IGNORE_SDK_LAYERS #include "d3d10sdklayers.h" #endif #include "d3d10misc.h" #include "d3d10shader.h" #include "d3d10effect.h" /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d10_h__ */ dxvk-0~git20220822.9df86f2/d3d10_1.h000066400000000000000000002124111430055512200162040ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d10_1.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d10_1_h__ #define __d3d10_1_h__ /* Forward declarations */ #ifndef __ID3D10BlendState1_FWD_DEFINED__ #define __ID3D10BlendState1_FWD_DEFINED__ typedef interface ID3D10BlendState1 ID3D10BlendState1; #ifdef __cplusplus interface ID3D10BlendState1; #endif /* __cplusplus */ #endif #ifndef __ID3D10ShaderResourceView1_FWD_DEFINED__ #define __ID3D10ShaderResourceView1_FWD_DEFINED__ typedef interface ID3D10ShaderResourceView1 ID3D10ShaderResourceView1; #ifdef __cplusplus interface ID3D10ShaderResourceView1; #endif /* __cplusplus */ #endif #ifndef __ID3D10Device1_FWD_DEFINED__ #define __ID3D10Device1_FWD_DEFINED__ typedef interface ID3D10Device1 ID3D10Device1; #ifdef __cplusplus interface ID3D10Device1; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif #ifndef _D3D10_1_CONSTANTS #define _D3D10_1_CONSTANTS #define D3D10_1_DEFAULT_SAMPLE_MASK (0xffffffff) #define D3D10_1_GS_INPUT_REGISTER_COUNT (32) #define D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (32) #define D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS (128) #define D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT (32) #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENTS (1) #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D10_1_PS_OUTPUT_MASK_REGISTER_COUNT (1) #define D3D10_1_SHADER_MAJOR_VERSION (4) #define D3D10_1_SHADER_MINOR_VERSION (1) #define D3D10_1_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048) #define D3D10_1_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES (256) #define D3D10_1_SO_BUFFER_SLOT_COUNT (4) #define D3D10_1_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER (1) #define D3D10_1_SO_SINGLE_BUFFER_COMPONENT_LIMIT (64) #define D3D10_1_STANDARD_VERTEX_ELEMENT_COUNT (32) #define D3D10_1_SUBPIXEL_FRACTIONAL_BIT_COUNT (8) #define D3D10_1_VS_INPUT_REGISTER_COUNT (32) #define D3D10_1_VS_OUTPUT_REGISTER_COUNT (32) #endif #define D3D10_1_FLOAT16_FUSED_TOLERANCE_IN_ULP (0.6) #define D3D10_1_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP (0.6f) #include typedef enum D3D10_FEATURE_LEVEL1 { D3D10_FEATURE_LEVEL_10_0 = 0xa000, D3D10_FEATURE_LEVEL_10_1 = 0xa100, D3D10_FEATURE_LEVEL_9_1 = 0x9100, D3D10_FEATURE_LEVEL_9_2 = 0x9200, D3D10_FEATURE_LEVEL_9_3 = 0x9300 } D3D10_FEATURE_LEVEL1; typedef struct D3D10_RENDER_TARGET_BLEND_DESC1 { WINBOOL BlendEnable; D3D10_BLEND SrcBlend; D3D10_BLEND DestBlend; D3D10_BLEND_OP BlendOp; D3D10_BLEND SrcBlendAlpha; D3D10_BLEND DestBlendAlpha; D3D10_BLEND_OP BlendOpAlpha; UINT8 RenderTargetWriteMask; } D3D10_RENDER_TARGET_BLEND_DESC1; typedef struct D3D10_BLEND_DESC1 { WINBOOL AlphaToCoverageEnable; WINBOOL IndependentBlendEnable; D3D10_RENDER_TARGET_BLEND_DESC1 RenderTarget[8]; } D3D10_BLEND_DESC1; /***************************************************************************** * ID3D10BlendState1 interface */ #ifndef __ID3D10BlendState1_INTERFACE_DEFINED__ #define __ID3D10BlendState1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10BlendState1, 0xedad8d99, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("edad8d99-8a35-4d6d-8566-2ea276cde161") ID3D10BlendState1 : public ID3D10BlendState { virtual void STDMETHODCALLTYPE GetDesc1( D3D10_BLEND_DESC1 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10BlendState1, 0xedad8d99, 0x8a35, 0x4d6d, 0x85,0x66, 0x2e,0xa2,0x76,0xcd,0xe1,0x61) #endif #else typedef struct ID3D10BlendState1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10BlendState1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10BlendState1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10BlendState1 *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10BlendState1 *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10BlendState1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10BlendState1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10BlendState1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D10BlendState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10BlendState1 *This, D3D10_BLEND_DESC *pDesc); /*** ID3D10BlendState1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D10BlendState1 *This, D3D10_BLEND_DESC1 *pDesc); END_INTERFACE } ID3D10BlendState1Vtbl; interface ID3D10BlendState1 { CONST_VTBL ID3D10BlendState1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10BlendState1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10BlendState1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10BlendState1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10BlendState1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10BlendState1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10BlendState1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10BlendState1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10BlendState methods ***/ #define ID3D10BlendState1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D10BlendState1 methods ***/ #define ID3D10BlendState1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10BlendState1_QueryInterface(ID3D10BlendState1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10BlendState1_AddRef(ID3D10BlendState1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10BlendState1_Release(ID3D10BlendState1* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10BlendState1_GetDevice(ID3D10BlendState1* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10BlendState1_GetPrivateData(ID3D10BlendState1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10BlendState1_SetPrivateData(ID3D10BlendState1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10BlendState1_SetPrivateDataInterface(ID3D10BlendState1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10BlendState methods ***/ static FORCEINLINE void ID3D10BlendState1_GetDesc(ID3D10BlendState1* This,D3D10_BLEND_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D10BlendState1 methods ***/ static FORCEINLINE void ID3D10BlendState1_GetDesc1(ID3D10BlendState1* This,D3D10_BLEND_DESC1 *pDesc) { This->lpVtbl->GetDesc1(This,pDesc); } #endif #endif #endif #endif /* __ID3D10BlendState1_INTERFACE_DEFINED__ */ typedef struct D3D10_TEXCUBE_ARRAY_SRV1 { UINT MostDetailedMip; UINT MipLevels; UINT First2DArrayFace; UINT NumCubes; } D3D10_TEXCUBE_ARRAY_SRV1; typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION1; typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC1 { DXGI_FORMAT Format; D3D10_SRV_DIMENSION1 ViewDimension; __C89_NAMELESS union { D3D10_BUFFER_SRV Buffer; D3D10_TEX1D_SRV Texture1D; D3D10_TEX1D_ARRAY_SRV Texture1DArray; D3D10_TEX2D_SRV Texture2D; D3D10_TEX2D_ARRAY_SRV Texture2DArray; D3D10_TEX2DMS_SRV Texture2DMS; D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray; D3D10_TEX3D_SRV Texture3D; D3D10_TEXCUBE_SRV TextureCube; D3D10_TEXCUBE_ARRAY_SRV1 TextureCubeArray; } __C89_NAMELESSUNIONNAME; } D3D10_SHADER_RESOURCE_VIEW_DESC1; /***************************************************************************** * ID3D10ShaderResourceView1 interface */ #ifndef __ID3D10ShaderResourceView1_INTERFACE_DEFINED__ #define __ID3D10ShaderResourceView1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10ShaderResourceView1, 0x9b7e4c87, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c87-342c-4106-a19f-4f2704f689f0") ID3D10ShaderResourceView1 : public ID3D10ShaderResourceView { virtual void STDMETHODCALLTYPE GetDesc1( D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10ShaderResourceView1, 0x9b7e4c87, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10ShaderResourceView1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10ShaderResourceView1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10ShaderResourceView1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10ShaderResourceView1 *This); /*** ID3D10DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D10ShaderResourceView1 *This, ID3D10Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10ShaderResourceView1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10ShaderResourceView1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10ShaderResourceView1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D10View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D10ShaderResourceView1 *This, ID3D10Resource **ppResource); /*** ID3D10ShaderResourceView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D10ShaderResourceView1 *This, D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc); /*** ID3D10ShaderResourceView1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D10ShaderResourceView1 *This, D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc); END_INTERFACE } ID3D10ShaderResourceView1Vtbl; interface ID3D10ShaderResourceView1 { CONST_VTBL ID3D10ShaderResourceView1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10ShaderResourceView1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10ShaderResourceView1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10ShaderResourceView1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10DeviceChild methods ***/ #define ID3D10ShaderResourceView1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D10ShaderResourceView1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10ShaderResourceView1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10ShaderResourceView1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D10View methods ***/ #define ID3D10ShaderResourceView1_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D10ShaderResourceView methods ***/ #define ID3D10ShaderResourceView1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D10ShaderResourceView1 methods ***/ #define ID3D10ShaderResourceView1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10ShaderResourceView1_QueryInterface(ID3D10ShaderResourceView1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10ShaderResourceView1_AddRef(ID3D10ShaderResourceView1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10ShaderResourceView1_Release(ID3D10ShaderResourceView1* This) { return This->lpVtbl->Release(This); } /*** ID3D10DeviceChild methods ***/ static FORCEINLINE void ID3D10ShaderResourceView1_GetDevice(ID3D10ShaderResourceView1* This,ID3D10Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D10ShaderResourceView1_GetPrivateData(ID3D10ShaderResourceView1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10ShaderResourceView1_SetPrivateData(ID3D10ShaderResourceView1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10ShaderResourceView1_SetPrivateDataInterface(ID3D10ShaderResourceView1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D10View methods ***/ static FORCEINLINE void ID3D10ShaderResourceView1_GetResource(ID3D10ShaderResourceView1* This,ID3D10Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D10ShaderResourceView methods ***/ static FORCEINLINE void ID3D10ShaderResourceView1_GetDesc(ID3D10ShaderResourceView1* This,D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D10ShaderResourceView1 methods ***/ static FORCEINLINE void ID3D10ShaderResourceView1_GetDesc1(ID3D10ShaderResourceView1* This,D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc) { This->lpVtbl->GetDesc1(This,pDesc); } #endif #endif #endif #endif /* __ID3D10ShaderResourceView1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10Device1 interface */ #ifndef __ID3D10Device1_INTERFACE_DEFINED__ #define __ID3D10Device1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Device1, 0x9b7e4c8f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4c8f-342c-4106-a19f-4f2704f689f0") ID3D10Device1 : public ID3D10Device { virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView1( ID3D10Resource *pResource, const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc, ID3D10ShaderResourceView1 **ppSRView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateBlendState1( const D3D10_BLEND_DESC1 *pBlendStateDesc, ID3D10BlendState1 **ppBlendState) = 0; virtual D3D10_FEATURE_LEVEL1 STDMETHODCALLTYPE GetFeatureLevel( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Device1, 0x9b7e4c8f, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10Device1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Device1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Device1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Device1 *This); /*** ID3D10Device methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D10Device1 *This, ID3D10PixelShader *pPixelShader); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D10Device1 *This, ID3D10VertexShader *pVertexShader); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D10Device1 *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D10Device1 *This, UINT VertexCount, UINT StartVertexLocation); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D10Device1 *This, ID3D10InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D10Device1 *This, ID3D10Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D10Device1 *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D10Device1 *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D10Device1 *This, ID3D10GeometryShader *pShader); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D10Device1 *This, D3D10_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *SetPredication)( ID3D10Device1 *This, ID3D10Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D10Device1 *This, UINT NumViews, ID3D10RenderTargetView *const *ppRenderTargetViews, ID3D10DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D10Device1 *This, ID3D10BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D10Device1 *This, ID3D10DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D10Device1 *This, UINT NumBuffers, ID3D10Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D10Device1 *This); void (STDMETHODCALLTYPE *RSSetState)( ID3D10Device1 *This, ID3D10RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D10Device1 *This, UINT NumViewports, const D3D10_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D10Device1 *This, UINT NumRects, const D3D10_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D10Device1 *This, ID3D10Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D10Resource *pSrcResource, UINT SrcSubresource, const D3D10_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D10Device1 *This, ID3D10Resource *pDstResource, ID3D10Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D10Device1 *This, ID3D10Resource *pDstResource, UINT DstSubresource, const D3D10_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D10Device1 *This, ID3D10RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D10Device1 *This, ID3D10DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D10Device1 *This, ID3D10ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D10Device1 *This, ID3D10Resource *pDstResource, UINT DstSubresource, ID3D10Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D10Device1 *This, ID3D10PixelShader **ppPixelShader); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D10Device1 *This, ID3D10VertexShader **ppVertexShader); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D10Device1 *This, ID3D10InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D10Device1 *This, ID3D10Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D10Device1 *This, UINT StartSlot, UINT NumBuffers, ID3D10Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D10Device1 *This, ID3D10GeometryShader **ppGeometryShader); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D10Device1 *This, D3D10_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D10Device1 *This, ID3D10Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D10Device1 *This, UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D10Device1 *This, UINT StartSlot, UINT NumSamplers, ID3D10SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D10Device1 *This, UINT NumViews, ID3D10RenderTargetView **ppRenderTargetViews, ID3D10DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D10Device1 *This, ID3D10BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D10Device1 *This, ID3D10DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D10Device1 *This, UINT NumBuffers, ID3D10Buffer **ppSOTargets, UINT *pOffsets); void (STDMETHODCALLTYPE *RSGetState)( ID3D10Device1 *This, ID3D10RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D10Device1 *This, UINT *NumViewports, D3D10_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D10Device1 *This, UINT *NumRects, D3D10_RECT *pRects); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D10Device1 *This); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D10Device1 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D10Device1 *This); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D10Device1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D10Device1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D10Device1 *This, REFGUID guid, const IUnknown *pData); void (STDMETHODCALLTYPE *ClearState)( ID3D10Device1 *This); void (STDMETHODCALLTYPE *Flush)( ID3D10Device1 *This); HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D10Device1 *This, const D3D10_BUFFER_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D10Device1 *This, const D3D10_TEXTURE1D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D10Device1 *This, const D3D10_TEXTURE2D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D10Device1 *This, const D3D10_TEXTURE3D_DESC *pDesc, const D3D10_SUBRESOURCE_DATA *pInitialData, ID3D10Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D10Device1 *This, ID3D10Resource *pResource, const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D10ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D10Device1 *This, ID3D10Resource *pResource, const D3D10_RENDER_TARGET_VIEW_DESC *pDesc, ID3D10RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D10Device1 *This, ID3D10Resource *pResource, const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D10DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D10Device1 *This, const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D10InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D10Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D10Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D10Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D10_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, UINT OutputStreamStride, ID3D10GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D10Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D10PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D10Device1 *This, const D3D10_BLEND_DESC *pBlendStateDesc, ID3D10BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D10Device1 *This, const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D10DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D10Device1 *This, const D3D10_RASTERIZER_DESC *pRasterizerDesc, ID3D10RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D10Device1 *This, const D3D10_SAMPLER_DESC *pSamplerDesc, ID3D10SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D10Device1 *This, const D3D10_QUERY_DESC *pQueryDesc, ID3D10Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D10Device1 *This, const D3D10_QUERY_DESC *pPredicateDesc, ID3D10Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D10Device1 *This, const D3D10_COUNTER_DESC *pCounterDesc, ID3D10Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D10Device1 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D10Device1 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D10Device1 *This, D3D10_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D10Device1 *This, const D3D10_COUNTER_DESC *pDesc, D3D10_COUNTER_TYPE *pType, UINT *pActiveCounters, char *name, UINT *pNameLength, char *units, UINT *pUnitsLength, char *description, UINT *pDescriptionLength); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D10Device1 *This); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D10Device1 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); void (STDMETHODCALLTYPE *SetTextFilterSize)( ID3D10Device1 *This, UINT Width, UINT Height); void (STDMETHODCALLTYPE *GetTextFilterSize)( ID3D10Device1 *This, UINT *pWidth, UINT *pHeight); /*** ID3D10Device1 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView1)( ID3D10Device1 *This, ID3D10Resource *pResource, const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc, ID3D10ShaderResourceView1 **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D10Device1 *This, const D3D10_BLEND_DESC1 *pBlendStateDesc, ID3D10BlendState1 **ppBlendState); D3D10_FEATURE_LEVEL1 (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D10Device1 *This); END_INTERFACE } ID3D10Device1Vtbl; interface ID3D10Device1 { CONST_VTBL ID3D10Device1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Device1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Device1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Device1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10Device methods ***/ #define ID3D10Device1_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_PSSetShader(This,pPixelShader) (This)->lpVtbl->PSSetShader(This,pPixelShader) #define ID3D10Device1_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_VSSetShader(This,pVertexShader) (This)->lpVtbl->VSSetShader(This,pVertexShader) #define ID3D10Device1_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D10Device1_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D10Device1_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D10Device1_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D10Device1_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D10Device1_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D10Device1_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D10Device1_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_GSSetShader(This,pShader) (This)->lpVtbl->GSSetShader(This,pShader) #define ID3D10Device1_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D10Device1_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D10Device1_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D10Device1_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D10Device1_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D10Device1_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D10Device1_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D10Device1_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D10Device1_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D10Device1_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D10Device1_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D10Device1_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D10Device1_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D10Device1_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D10Device1_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D10Device1_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D10Device1_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D10Device1_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_PSGetShader(This,ppPixelShader) (This)->lpVtbl->PSGetShader(This,ppPixelShader) #define ID3D10Device1_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_VSGetShader(This,ppVertexShader) (This)->lpVtbl->VSGetShader(This,ppVertexShader) #define ID3D10Device1_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D10Device1_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D10Device1_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D10Device1_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D10Device1_GSGetShader(This,ppGeometryShader) (This)->lpVtbl->GSGetShader(This,ppGeometryShader) #define ID3D10Device1_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D10Device1_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D10Device1_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D10Device1_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D10Device1_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D10Device1_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D10Device1_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D10Device1_SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D10Device1_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D10Device1_RSGetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,NumViewports,pViewports) #define ID3D10Device1_RSGetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,NumRects,pRects) #define ID3D10Device1_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D10Device1_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D10Device1_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) #define ID3D10Device1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D10Device1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D10Device1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D10Device1_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D10Device1_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D10Device1_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D10Device1_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D10Device1_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D10Device1_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D10Device1_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D10Device1_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D10Device1_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D10Device1_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D10Device1_CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) #define ID3D10Device1_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) #define ID3D10Device1_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) #define ID3D10Device1_CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) #define ID3D10Device1_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D10Device1_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D10Device1_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D10Device1_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D10Device1_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D10Device1_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D10Device1_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D10Device1_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D10Device1_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D10Device1_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D10Device1_CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength) #define ID3D10Device1_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D10Device1_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D10Device1_SetTextFilterSize(This,Width,Height) (This)->lpVtbl->SetTextFilterSize(This,Width,Height) #define ID3D10Device1_GetTextFilterSize(This,pWidth,pHeight) (This)->lpVtbl->GetTextFilterSize(This,pWidth,pHeight) /*** ID3D10Device1 methods ***/ #define ID3D10Device1_CreateShaderResourceView1(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView1(This,pResource,pDesc,ppSRView) #define ID3D10Device1_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D10Device1_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Device1_QueryInterface(ID3D10Device1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Device1_AddRef(ID3D10Device1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Device1_Release(ID3D10Device1* This) { return This->lpVtbl->Release(This); } /*** ID3D10Device methods ***/ static FORCEINLINE void ID3D10Device1_VSSetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_PSSetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_PSSetShader(ID3D10Device1* This,ID3D10PixelShader *pPixelShader) { This->lpVtbl->PSSetShader(This,pPixelShader); } static FORCEINLINE void ID3D10Device1_PSSetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_VSSetShader(ID3D10Device1* This,ID3D10VertexShader *pVertexShader) { This->lpVtbl->VSSetShader(This,pVertexShader); } static FORCEINLINE void ID3D10Device1_DrawIndexed(ID3D10Device1* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D10Device1_Draw(ID3D10Device1* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE void ID3D10Device1_PSSetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_IASetInputLayout(ID3D10Device1* This,ID3D10InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D10Device1_IASetVertexBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D10Device1_IASetIndexBuffer(ID3D10Device1* This,ID3D10Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D10Device1_DrawIndexedInstanced(ID3D10Device1* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D10Device1_DrawInstanced(ID3D10Device1* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D10Device1_GSSetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_GSSetShader(ID3D10Device1* This,ID3D10GeometryShader *pShader) { This->lpVtbl->GSSetShader(This,pShader); } static FORCEINLINE void ID3D10Device1_IASetPrimitiveTopology(ID3D10Device1* This,D3D10_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D10Device1_VSSetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_VSSetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_SetPredication(ID3D10Device1* This,ID3D10Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D10Device1_GSSetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_GSSetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_OMSetRenderTargets(ID3D10Device1* This,UINT NumViews,ID3D10RenderTargetView *const *ppRenderTargetViews,ID3D10DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D10Device1_OMSetBlendState(ID3D10Device1* This,ID3D10BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D10Device1_OMSetDepthStencilState(ID3D10Device1* This,ID3D10DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D10Device1_SOSetTargets(ID3D10Device1* This,UINT NumBuffers,ID3D10Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D10Device1_DrawAuto(ID3D10Device1* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D10Device1_RSSetState(ID3D10Device1* This,ID3D10RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D10Device1_RSSetViewports(ID3D10Device1* This,UINT NumViewports,const D3D10_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D10Device1_RSSetScissorRects(ID3D10Device1* This,UINT NumRects,const D3D10_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D10Device1_CopySubresourceRegion(ID3D10Device1* This,ID3D10Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D10Resource *pSrcResource,UINT SrcSubresource,const D3D10_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D10Device1_CopyResource(ID3D10Device1* This,ID3D10Resource *pDstResource,ID3D10Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D10Device1_UpdateSubresource(ID3D10Device1* This,ID3D10Resource *pDstResource,UINT DstSubresource,const D3D10_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D10Device1_ClearRenderTargetView(ID3D10Device1* This,ID3D10RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D10Device1_ClearDepthStencilView(ID3D10Device1* This,ID3D10DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D10Device1_GenerateMips(ID3D10Device1* This,ID3D10ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D10Device1_ResolveSubresource(ID3D10Device1* This,ID3D10Resource *pDstResource,UINT DstSubresource,ID3D10Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D10Device1_VSGetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_PSGetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_PSGetShader(ID3D10Device1* This,ID3D10PixelShader **ppPixelShader) { This->lpVtbl->PSGetShader(This,ppPixelShader); } static FORCEINLINE void ID3D10Device1_PSGetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_VSGetShader(ID3D10Device1* This,ID3D10VertexShader **ppVertexShader) { This->lpVtbl->VSGetShader(This,ppVertexShader); } static FORCEINLINE void ID3D10Device1_PSGetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_IAGetInputLayout(ID3D10Device1* This,ID3D10InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D10Device1_IAGetVertexBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D10Device1_IAGetIndexBuffer(ID3D10Device1* This,ID3D10Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D10Device1_GSGetConstantBuffers(ID3D10Device1* This,UINT StartSlot,UINT NumBuffers,ID3D10Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D10Device1_GSGetShader(ID3D10Device1* This,ID3D10GeometryShader **ppGeometryShader) { This->lpVtbl->GSGetShader(This,ppGeometryShader); } static FORCEINLINE void ID3D10Device1_IAGetPrimitiveTopology(ID3D10Device1* This,D3D10_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D10Device1_VSGetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_VSGetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_GetPredication(ID3D10Device1* This,ID3D10Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D10Device1_GSGetShaderResources(ID3D10Device1* This,UINT StartSlot,UINT NumViews,ID3D10ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D10Device1_GSGetSamplers(ID3D10Device1* This,UINT StartSlot,UINT NumSamplers,ID3D10SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D10Device1_OMGetRenderTargets(ID3D10Device1* This,UINT NumViews,ID3D10RenderTargetView **ppRenderTargetViews,ID3D10DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D10Device1_OMGetBlendState(ID3D10Device1* This,ID3D10BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D10Device1_OMGetDepthStencilState(ID3D10Device1* This,ID3D10DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D10Device1_SOGetTargets(ID3D10Device1* This,UINT NumBuffers,ID3D10Buffer **ppSOTargets,UINT *pOffsets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D10Device1_RSGetState(ID3D10Device1* This,ID3D10RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D10Device1_RSGetViewports(ID3D10Device1* This,UINT *NumViewports,D3D10_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D10Device1_RSGetScissorRects(ID3D10Device1* This,UINT *NumRects,D3D10_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,NumRects,pRects); } static FORCEINLINE HRESULT ID3D10Device1_GetDeviceRemovedReason(ID3D10Device1* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE HRESULT ID3D10Device1_SetExceptionMode(ID3D10Device1* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D10Device1_GetExceptionMode(ID3D10Device1* This) { return This->lpVtbl->GetExceptionMode(This); } static FORCEINLINE HRESULT ID3D10Device1_GetPrivateData(ID3D10Device1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D10Device1_SetPrivateData(ID3D10Device1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D10Device1_SetPrivateDataInterface(ID3D10Device1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE void ID3D10Device1_ClearState(ID3D10Device1* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D10Device1_Flush(ID3D10Device1* This) { This->lpVtbl->Flush(This); } static FORCEINLINE HRESULT ID3D10Device1_CreateBuffer(ID3D10Device1* This,const D3D10_BUFFER_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D10Device1_CreateTexture1D(ID3D10Device1* This,const D3D10_TEXTURE1D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D10Device1_CreateTexture2D(ID3D10Device1* This,const D3D10_TEXTURE2D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D10Device1_CreateTexture3D(ID3D10Device1* This,const D3D10_TEXTURE3D_DESC *pDesc,const D3D10_SUBRESOURCE_DATA *pInitialData,ID3D10Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D10Device1_CreateShaderResourceView(ID3D10Device1* This,ID3D10Resource *pResource,const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D10ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D10Device1_CreateRenderTargetView(ID3D10Device1* This,ID3D10Resource *pResource,const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,ID3D10RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D10Device1_CreateDepthStencilView(ID3D10Device1* This,ID3D10Resource *pResource,const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D10DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D10Device1_CreateInputLayout(ID3D10Device1* This,const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D10InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D10Device1_CreateVertexShader(ID3D10Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader); } static FORCEINLINE HRESULT ID3D10Device1_CreateGeometryShader(ID3D10Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader); } static FORCEINLINE HRESULT ID3D10Device1_CreateGeometryShaderWithStreamOutput(ID3D10Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,UINT OutputStreamStride,ID3D10GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader); } static FORCEINLINE HRESULT ID3D10Device1_CreatePixelShader(ID3D10Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D10PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader); } static FORCEINLINE HRESULT ID3D10Device1_CreateBlendState(ID3D10Device1* This,const D3D10_BLEND_DESC *pBlendStateDesc,ID3D10BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D10Device1_CreateDepthStencilState(ID3D10Device1* This,const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D10DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D10Device1_CreateRasterizerState(ID3D10Device1* This,const D3D10_RASTERIZER_DESC *pRasterizerDesc,ID3D10RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D10Device1_CreateSamplerState(ID3D10Device1* This,const D3D10_SAMPLER_DESC *pSamplerDesc,ID3D10SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D10Device1_CreateQuery(ID3D10Device1* This,const D3D10_QUERY_DESC *pQueryDesc,ID3D10Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D10Device1_CreatePredicate(ID3D10Device1* This,const D3D10_QUERY_DESC *pPredicateDesc,ID3D10Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D10Device1_CreateCounter(ID3D10Device1* This,const D3D10_COUNTER_DESC *pCounterDesc,ID3D10Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D10Device1_CheckFormatSupport(ID3D10Device1* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D10Device1_CheckMultisampleQualityLevels(ID3D10Device1* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D10Device1_CheckCounterInfo(ID3D10Device1* This,D3D10_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D10Device1_CheckCounter(ID3D10Device1* This,const D3D10_COUNTER_DESC *pDesc,D3D10_COUNTER_TYPE *pType,UINT *pActiveCounters,char *name,UINT *pNameLength,char *units,UINT *pUnitsLength,char *description,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,name,pNameLength,units,pUnitsLength,description,pDescriptionLength); } static FORCEINLINE UINT ID3D10Device1_GetCreationFlags(ID3D10Device1* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D10Device1_OpenSharedResource(ID3D10Device1* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE void ID3D10Device1_SetTextFilterSize(ID3D10Device1* This,UINT Width,UINT Height) { This->lpVtbl->SetTextFilterSize(This,Width,Height); } static FORCEINLINE void ID3D10Device1_GetTextFilterSize(ID3D10Device1* This,UINT *pWidth,UINT *pHeight) { This->lpVtbl->GetTextFilterSize(This,pWidth,pHeight); } /*** ID3D10Device1 methods ***/ static FORCEINLINE HRESULT ID3D10Device1_CreateShaderResourceView1(ID3D10Device1* This,ID3D10Resource *pResource,const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc,ID3D10ShaderResourceView1 **ppSRView) { return This->lpVtbl->CreateShaderResourceView1(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D10Device1_CreateBlendState1(ID3D10Device1* This,const D3D10_BLEND_DESC1 *pBlendStateDesc,ID3D10BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE D3D10_FEATURE_LEVEL1 ID3D10Device1_GetFeatureLevel(ID3D10Device1* This) { return This->lpVtbl->GetFeatureLevel(This); } #endif #endif #endif #endif /* __ID3D10Device1_INTERFACE_DEFINED__ */ #define D3D10_1_SDK_VERSION (0x20) HRESULT WINAPI D3D10CreateDevice1(IDXGIAdapter*,D3D10_DRIVER_TYPE, HMODULE,UINT,D3D10_FEATURE_LEVEL1,UINT,ID3D10Device1**); HRESULT __stdcall D3D10CreateDeviceAndSwapChain1(IDXGIAdapter *adapter,enum D3D10_DRIVER_TYPE driver_type,HMODULE swrast,UINT flags,D3D10_FEATURE_LEVEL1 feature_level,UINT sdk_version,DXGI_SWAP_CHAIN_DESC *swapchain_desc,IDXGISwapChain **swapchain,ID3D10Device1 **device); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d10_1_h__ */ dxvk-0~git20220822.9df86f2/d3d10_1shader.h000066400000000000000000000050771430055512200174030ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2010 Rico Schüller * * 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 */ #ifndef __D3D10_1SHADER_H__ #define __D3D10_1SHADER_H__ #include "d3d10shader.h" DEFINE_GUID(IID_ID3D10ShaderReflection1, 0xc3457783, 0xa846, 0x47ce, 0x95, 0x20, 0xce, 0xa6, 0xf6, 0x6e, 0x74, 0x47); #define INTERFACE ID3D10ShaderReflection1 DECLARE_INTERFACE_(ID3D10ShaderReflection1, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D10ShaderReflection1 methods */ STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByName)(THIS_ const char *name) PURE; STDMETHOD(GetResourceBindingDesc)(THIS_ UINT index, D3D10_SHADER_INPUT_BIND_DESC *desc) PURE; STDMETHOD(GetInputParameterDesc)(THIS_ UINT index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD(GetOutputParameterDesc)(THIS_ UINT index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByName)(THIS_ const char *name) PURE; STDMETHOD(GetResourceBindingDescByName)(THIS_ const char *name, D3D10_SHADER_INPUT_BIND_DESC *desc) PURE; STDMETHOD(GetMovInstructionCount)(THIS_ UINT *count) PURE; STDMETHOD(GetMovcInstructionCount)(THIS_ UINT *count) PURE; STDMETHOD(GetConversionInstructionCount)(THIS_ UINT *count) PURE; STDMETHOD(GetBitwiseInstructionCount)(THIS_ UINT *count) PURE; STDMETHOD(GetGSInputPrimitive)(THIS_ D3D10_PRIMITIVE *prim) PURE; STDMETHOD(IsLevel9Shader)(THIS_ WINBOOL *level9shader) PURE; STDMETHOD(IsSampleFrequencyShader)(THIS_ WINBOOL *samplefrequency) PURE; }; #undef INTERFACE #endif dxvk-0~git20220822.9df86f2/d3d10effect.h000066400000000000000000001411351430055512200171450ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2009 Henri Verbeet for CodeWeavers * * 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 * */ #ifndef __WINE_D3D10EFFECT_H #define __WINE_D3D10EFFECT_H #include "d3d10.h" #define D3D10_EFFECT_VARIABLE_POOLED 0x1 #define D3D10_EFFECT_VARIABLE_ANNOTATION 0x2 #define D3D10_EFFECT_VARIABLE_EXPLICIT_BIND_POINT 0x4 #ifndef D3D10_BYTES_FROM_BITS #define D3D10_BYTES_FROM_BITS(x) (((x) + 7) >> 3) #endif typedef enum _D3D10_DEVICE_STATE_TYPES { D3D10_DST_SO_BUFFERS = 1, D3D10_DST_OM_RENDER_TARGETS, D3D10_DST_OM_DEPTH_STENCIL_STATE, D3D10_DST_OM_BLEND_STATE, D3D10_DST_VS, D3D10_DST_VS_SAMPLERS, D3D10_DST_VS_SHADER_RESOURCES, D3D10_DST_VS_CONSTANT_BUFFERS, D3D10_DST_GS, D3D10_DST_GS_SAMPLERS, D3D10_DST_GS_SHADER_RESOURCES, D3D10_DST_GS_CONSTANT_BUFFERS, D3D10_DST_PS, D3D10_DST_PS_SAMPLERS, D3D10_DST_PS_SHADER_RESOURCES, D3D10_DST_PS_CONSTANT_BUFFERS, D3D10_DST_IA_VERTEX_BUFFERS, D3D10_DST_IA_INDEX_BUFFER, D3D10_DST_IA_INPUT_LAYOUT, D3D10_DST_IA_PRIMITIVE_TOPOLOGY, D3D10_DST_RS_VIEWPORTS, D3D10_DST_RS_SCISSOR_RECTS, D3D10_DST_RS_RASTERIZER_STATE, D3D10_DST_PREDICATION, } D3D10_DEVICE_STATE_TYPES; typedef struct _D3D10_EFFECT_TYPE_DESC { const char *TypeName; D3D10_SHADER_VARIABLE_CLASS Class; D3D10_SHADER_VARIABLE_TYPE Type; UINT Elements; UINT Members; UINT Rows; UINT Columns; UINT PackedSize; UINT UnpackedSize; UINT Stride; } D3D10_EFFECT_TYPE_DESC; typedef struct _D3D10_EFFECT_VARIABLE_DESC { const char *Name; const char *Semantic; UINT Flags; UINT Annotations; UINT BufferOffset; UINT ExplicitBindPoint; } D3D10_EFFECT_VARIABLE_DESC; typedef struct _D3D10_TECHNIQUE_DESC { const char *Name; UINT Passes; UINT Annotations; } D3D10_TECHNIQUE_DESC; typedef struct _D3D10_STATE_BLOCK_MASK { BYTE VS; BYTE VSSamplers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT)]; BYTE VSShaderResources[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT)]; BYTE VSConstantBuffers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT)]; BYTE GS; BYTE GSSamplers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT)]; BYTE GSShaderResources[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT)]; BYTE GSConstantBuffers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT)]; BYTE PS; BYTE PSSamplers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT)]; BYTE PSShaderResources[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT)]; BYTE PSConstantBuffers[D3D10_BYTES_FROM_BITS(D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT)]; BYTE IAVertexBuffers[D3D10_BYTES_FROM_BITS(D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT)]; BYTE IAIndexBuffer; BYTE IAInputLayout; BYTE IAPrimitiveTopology; BYTE OMRenderTargets; BYTE OMDepthStencilState; BYTE OMBlendState; BYTE RSViewports; BYTE RSScissorRects; BYTE RSRasterizerState; BYTE SOBuffers; BYTE Predication; } D3D10_STATE_BLOCK_MASK; typedef struct _D3D10_EFFECT_DESC { WINBOOL IsChildEffect; UINT ConstantBuffers; UINT SharedConstantBuffers; UINT GlobalVariables; UINT SharedGlobalVariables; UINT Techniques; } D3D10_EFFECT_DESC; typedef struct _D3D10_EFFECT_SHADER_DESC { const BYTE *pInputSignature; WINBOOL IsInline; const BYTE *pBytecode; UINT BytecodeLength; const char *SODecl; UINT NumInputSignatureEntries; UINT NumOutputSignatureEntries; } D3D10_EFFECT_SHADER_DESC; typedef struct _D3D10_PASS_DESC { const char *Name; UINT Annotations; BYTE *pIAInputSignature; SIZE_T IAInputSignatureSize; UINT StencilRef; UINT SampleMask; FLOAT BlendFactor[4]; } D3D10_PASS_DESC; typedef struct _D3D10_PASS_SHADER_DESC { struct ID3D10EffectShaderVariable *pShaderVariable; UINT ShaderIndex; } D3D10_PASS_SHADER_DESC; #define D3D10_EFFECT_COMPILE_CHILD_EFFECT 0x0001 #define D3D10_EFFECT_COMPILE_ALLOW_SLOW_OPS 0x0002 #define D3D10_EFFECT_SINGLE_THREADED 0x0008 DEFINE_GUID(IID_ID3D10EffectType, 0x4e9e1ddc, 0xcd9d, 0x4772, 0xa8, 0x37, 0x00, 0x18, 0x0b, 0x9b, 0x88, 0xfd); #define INTERFACE ID3D10EffectType DECLARE_INTERFACE(ID3D10EffectType) { STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_TYPE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectType *, GetMemberTypeByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectType *, GetMemberTypeByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectType *, GetMemberTypeBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(const char *, GetMemberName)(THIS_ UINT index) PURE; STDMETHOD_(const char *, GetMemberSemantic)(THIS_ UINT index) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectVariable, 0xae897105, 0x00e6, 0x45bf, 0xbb, 0x8e, 0x28, 0x1d, 0xd6, 0xdb, 0x8e, 0x1b); #define INTERFACE ID3D10EffectVariable DECLARE_INTERFACE(ID3D10EffectVariable) { STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectConstantBuffer, 0x56648f4d, 0xcc8b, 0x4444, 0xa5, 0xad, 0xb5, 0xa3, 0xd7, 0x6e, 0x91, 0xb3); #define INTERFACE ID3D10EffectConstantBuffer DECLARE_INTERFACE_(ID3D10EffectConstantBuffer, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectConstantBuffer methods */ STDMETHOD(SetConstantBuffer)(THIS_ ID3D10Buffer *buffer) PURE; STDMETHOD(GetConstantBuffer)(THIS_ ID3D10Buffer **buffer) PURE; STDMETHOD(SetTextureBuffer)(THIS_ ID3D10ShaderResourceView *view) PURE; STDMETHOD(GetTextureBuffer)(THIS_ ID3D10ShaderResourceView **view) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectScalarVariable, 0x00e48f7b, 0xd2c8, 0x49e8, 0xa8, 0x6c, 0x02, 0x2d, 0xee, 0x53, 0x43, 0x1f); #define INTERFACE ID3D10EffectScalarVariable DECLARE_INTERFACE_(ID3D10EffectScalarVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectScalarVariable methods */ STDMETHOD(SetFloat)(THIS_ float value) PURE; STDMETHOD(GetFloat)(THIS_ float *value) PURE; STDMETHOD(SetFloatArray)(THIS_ float *values, UINT offset, UINT count) PURE; STDMETHOD(GetFloatArray)(THIS_ float *values, UINT offset, UINT count) PURE; STDMETHOD(SetInt)(THIS_ int value) PURE; STDMETHOD(GetInt)(THIS_ int *value) PURE; STDMETHOD(SetIntArray)(THIS_ int *values, UINT offset, UINT count) PURE; STDMETHOD(GetIntArray)(THIS_ int *values, UINT offset, UINT count) PURE; STDMETHOD(SetBool)(THIS_ WINBOOL value) PURE; STDMETHOD(GetBool)(THIS_ WINBOOL *value) PURE; STDMETHOD(SetBoolArray)(THIS_ WINBOOL *values, UINT offset, UINT count) PURE; STDMETHOD(GetBoolArray)(THIS_ WINBOOL *values, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectVectorVariable, 0x62b98c44, 0x1f82, 0x4c67, 0xbc, 0xd0, 0x72, 0xcf, 0x8f, 0x21, 0x7e, 0x81); #define INTERFACE ID3D10EffectVectorVariable DECLARE_INTERFACE_(ID3D10EffectVectorVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectVectorVariable methods */ STDMETHOD(SetBoolVector)(THIS_ WINBOOL *value) PURE; STDMETHOD(SetIntVector)(THIS_ int *value) PURE; STDMETHOD(SetFloatVector)(THIS_ float *value) PURE; STDMETHOD(GetBoolVector)(THIS_ WINBOOL *value) PURE; STDMETHOD(GetIntVector)(THIS_ int *value) PURE; STDMETHOD(GetFloatVector)(THIS_ float *value) PURE; STDMETHOD(SetBoolVectorArray)(THIS_ WINBOOL *values, UINT offset, UINT count) PURE; STDMETHOD(SetIntVectorArray)(THIS_ int *values, UINT offset, UINT count) PURE; STDMETHOD(SetFloatVectorArray)(THIS_ float *values, UINT offset, UINT count) PURE; STDMETHOD(GetBoolVectorArray)(THIS_ WINBOOL *values, UINT offset, UINT count) PURE; STDMETHOD(GetIntVectorArray)(THIS_ int *values, UINT offset, UINT count) PURE; STDMETHOD(GetFloatVectorArray)(THIS_ float *values, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectMatrixVariable, 0x50666c24, 0xb82f, 0x4eed, 0xa1, 0x72, 0x5b, 0x6e, 0x7e, 0x85, 0x22, 0xe0); #define INTERFACE ID3D10EffectMatrixVariable DECLARE_INTERFACE_(ID3D10EffectMatrixVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectMatrixVariable methods */ STDMETHOD(SetMatrix)(THIS_ float *data) PURE; STDMETHOD(GetMatrix)(THIS_ float *data) PURE; STDMETHOD(SetMatrixArray)(THIS_ float *data, UINT offset, UINT count) PURE; STDMETHOD(GetMatrixArray)(THIS_ float *data, UINT offset, UINT count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ float *data) PURE; STDMETHOD(GetMatrixTranspose)(THIS_ float *data) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ float *data, UINT offset, UINT count) PURE; STDMETHOD(GetMatrixTransposeArray)(THIS_ float *data, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectStringVariable, 0x71417501, 0x8df9, 0x4e0a, 0xa7, 0x8a, 0x25, 0x5f, 0x97, 0x56, 0xba, 0xff); #define INTERFACE ID3D10EffectStringVariable DECLARE_INTERFACE_(ID3D10EffectStringVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectStringVariable methods */ STDMETHOD(GetString)(THIS_ const char **str) PURE; STDMETHOD(GetStringArray)(THIS_ const char **strs, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectShaderResourceVariable, 0xc0a7157b, 0xd872, 0x4b1d, 0x80, 0x73, 0xef, 0xc2, 0xac, 0xd4, 0xb1, 0xfc); #define INTERFACE ID3D10EffectShaderResourceVariable DECLARE_INTERFACE_(ID3D10EffectShaderResourceVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectShaderResourceVariable methods */ STDMETHOD(SetResource)(THIS_ ID3D10ShaderResourceView *resource) PURE; STDMETHOD(GetResource)(THIS_ ID3D10ShaderResourceView **resource) PURE; STDMETHOD(SetResourceArray)(THIS_ ID3D10ShaderResourceView **resources, UINT offset, UINT count) PURE; STDMETHOD(GetResourceArray)(THIS_ ID3D10ShaderResourceView **resources, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectRenderTargetViewVariable, 0x28ca0cc3, 0xc2c9, 0x40bb, 0xb5, 0x7f, 0x67, 0xb7, 0x37, 0x12, 0x2b, 0x17); #define INTERFACE ID3D10EffectRenderTargetViewVariable DECLARE_INTERFACE_(ID3D10EffectRenderTargetViewVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectRenderTargetViewVariable methods */ STDMETHOD(SetRenderTarget)(THIS_ ID3D10RenderTargetView *view) PURE; STDMETHOD(GetRenderTarget)(THIS_ ID3D10RenderTargetView **view) PURE; STDMETHOD(SetRenderTargetArray)(THIS_ ID3D10RenderTargetView **views, UINT offset, UINT count) PURE; STDMETHOD(GetRenderTargetArray)(THIS_ ID3D10RenderTargetView **views, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectDepthStencilViewVariable, 0x3e02c918, 0xcc79, 0x4985, 0xb6, 0x22, 0x2d, 0x92, 0xad, 0x70, 0x16, 0x23); #define INTERFACE ID3D10EffectDepthStencilViewVariable DECLARE_INTERFACE_(ID3D10EffectDepthStencilViewVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectDepthStencilViewVariable methods */ STDMETHOD(SetDepthStencil)(THIS_ ID3D10DepthStencilView *view) PURE; STDMETHOD(GetDepthStencil)(THIS_ ID3D10DepthStencilView **view) PURE; STDMETHOD(SetDepthStencilArray)(THIS_ ID3D10DepthStencilView **views, UINT offset, UINT count) PURE; STDMETHOD(GetDepthStencilArray)(THIS_ ID3D10DepthStencilView **views, UINT offset, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectShaderVariable, 0x80849279, 0xc799, 0x4797, 0x8c, 0x33, 0x04, 0x07, 0xa0, 0x7d, 0x9e, 0x06); #define INTERFACE ID3D10EffectShaderVariable DECLARE_INTERFACE_(ID3D10EffectShaderVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectShaderVariable methods */ STDMETHOD(GetShaderDesc)(THIS_ UINT index, D3D10_EFFECT_SHADER_DESC *desc) PURE; STDMETHOD(GetVertexShader)(THIS_ UINT index, ID3D10VertexShader **shader) PURE; STDMETHOD(GetGeometryShader)(THIS_ UINT index, ID3D10GeometryShader **shader) PURE; STDMETHOD(GetPixelShader)(THIS_ UINT index, ID3D10PixelShader **shader) PURE; STDMETHOD(GetInputSignatureElementDesc)(THIS_ UINT shader_index, UINT element_index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD(GetOutputSignatureElementDesc)(THIS_ UINT shader_index, UINT element_index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectBlendVariable, 0x1fcd2294, 0xdf6d, 0x4eae, 0x86, 0xb3, 0x0e, 0x91, 0x60, 0xcf, 0xb0, 0x7b); #define INTERFACE ID3D10EffectBlendVariable DECLARE_INTERFACE_(ID3D10EffectBlendVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectBlendVariable methods */ STDMETHOD(GetBlendState)(THIS_ UINT index, ID3D10BlendState **blend_state) PURE; STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_BLEND_DESC *desc) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectDepthStencilVariable, 0xaf482368, 0x330a, 0x46a5, 0x9a, 0x5c, 0x01, 0xc7, 0x1a, 0xf2, 0x4c, 0x8d); #define INTERFACE ID3D10EffectDepthStencilVariable DECLARE_INTERFACE_(ID3D10EffectDepthStencilVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectDepthStencilVariable methods */ STDMETHOD(GetDepthStencilState)(THIS_ UINT index, ID3D10DepthStencilState **depth_stencil_state) PURE; STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_DEPTH_STENCIL_DESC *desc) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectRasterizerVariable, 0x21af9f0e, 0x4d94, 0x4ea9, 0x97, 0x85, 0x2c, 0xb7, 0x6b, 0x8c, 0x0b, 0x34); #define INTERFACE ID3D10EffectRasterizerVariable DECLARE_INTERFACE_(ID3D10EffectRasterizerVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectRasterizerVariable methods */ STDMETHOD(GetRasterizerState)(THIS_ UINT index, ID3D10RasterizerState **rasterizer_state) PURE; STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_RASTERIZER_DESC *desc) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectSamplerVariable, 0x6530d5c7, 0x07e9, 0x4271, 0xa4, 0x18, 0xe7, 0xce, 0x4b, 0xd1, 0xe4, 0x80); #define INTERFACE ID3D10EffectSamplerVariable DECLARE_INTERFACE_(ID3D10EffectSamplerVariable, ID3D10EffectVariable) { /* ID3D10EffectVariable methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(struct ID3D10EffectType *, GetType)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetMemberBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetElement)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetParentConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectScalarVariable *, AsScalar)(THIS) PURE; STDMETHOD_(struct ID3D10EffectVectorVariable *, AsVector)(THIS) PURE; STDMETHOD_(struct ID3D10EffectMatrixVariable *, AsMatrix)(THIS) PURE; STDMETHOD_(struct ID3D10EffectStringVariable *, AsString)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderResourceVariable *, AsShaderResource)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRenderTargetViewVariable *, AsRenderTargetView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilViewVariable *, AsDepthStencilView)(THIS) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, AsConstantBuffer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectShaderVariable *, AsShader)(THIS) PURE; STDMETHOD_(struct ID3D10EffectBlendVariable *, AsBlend)(THIS) PURE; STDMETHOD_(struct ID3D10EffectDepthStencilVariable *, AsDepthStencil)(THIS) PURE; STDMETHOD_(struct ID3D10EffectRasterizerVariable *, AsRasterizer)(THIS) PURE; STDMETHOD_(struct ID3D10EffectSamplerVariable *, AsSampler)(THIS) PURE; STDMETHOD(SetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; STDMETHOD(GetRawValue)(THIS_ void *data, UINT offset, UINT count) PURE; /* ID3D10EffectSamplerVariable methods */ STDMETHOD(GetSampler)(THIS_ UINT index, ID3D10SamplerState **sampler) PURE; STDMETHOD(GetBackingStore)(THIS_ UINT index, D3D10_SAMPLER_DESC *desc) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectTechnique, 0xdb122ce8, 0xd1c9, 0x4292, 0xb2, 0x37, 0x24, 0xed, 0x3d, 0xe8, 0xb1, 0x75); #define INTERFACE ID3D10EffectTechnique DECLARE_INTERFACE(ID3D10EffectTechnique) { STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_TECHNIQUE_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectPass *, GetPassByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectPass *, GetPassByName)(THIS_ const char *name) PURE; STDMETHOD(ComputeStateBlockMask)(THIS_ D3D10_STATE_BLOCK_MASK *mask) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10Effect, 0x51b0ca8b, 0xec0b, 0x4519, 0x87, 0x0d, 0x8e, 0xe1, 0xcb, 0x50, 0x17, 0xc7); #define INTERFACE ID3D10Effect DECLARE_INTERFACE_(ID3D10Effect, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D10Effect methods */ STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD_(WINBOOL, IsPool)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ ID3D10Device **device) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_EFFECT_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetConstantBufferByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectConstantBuffer *, GetConstantBufferByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetVariableByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetVariableByName)(THIS_ const char *name) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetVariableBySemantic)(THIS_ const char *semantic) PURE; STDMETHOD_(struct ID3D10EffectTechnique *, GetTechniqueByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectTechnique *, GetTechniqueByName)(THIS_ const char *name) PURE; STDMETHOD(Optimize)(THIS) PURE; STDMETHOD_(WINBOOL, IsOptimized)(THIS) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectPool, 0x9537ab04, 0x3250, 0x412e, 0x82, 0x13, 0xfc, 0xd2, 0xf8, 0x67, 0x79, 0x33); #define INTERFACE ID3D10EffectPool DECLARE_INTERFACE_(ID3D10EffectPool, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D10EffectPool methods */ STDMETHOD_(struct ID3D10Effect *, AsEffect)(THIS) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10EffectPass, 0x5cfbeb89, 0x1a06, 0x46e0, 0xb2, 0x82, 0xe3, 0xf9, 0xbf, 0xa3, 0x6a, 0x54); #define INTERFACE ID3D10EffectPass DECLARE_INTERFACE(ID3D10EffectPass) { STDMETHOD_(WINBOOL, IsValid)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3D10_PASS_DESC *desc) PURE; STDMETHOD(GetVertexShaderDesc)(THIS_ D3D10_PASS_SHADER_DESC *desc) PURE; STDMETHOD(GetGeometryShaderDesc)(THIS_ D3D10_PASS_SHADER_DESC *desc) PURE; STDMETHOD(GetPixelShaderDesc)(THIS_ D3D10_PASS_SHADER_DESC *desc) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10EffectVariable *, GetAnnotationByName)(THIS_ const char *name) PURE; STDMETHOD(Apply)(THIS_ UINT flags) PURE; STDMETHOD(ComputeStateBlockMask)(THIS_ D3D10_STATE_BLOCK_MASK *mask) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10StateBlock, 0x0803425a, 0x57f5, 0x4dd6, 0x94, 0x65, 0xa8, 0x75, 0x70, 0x83, 0x4a, 0x08); #define INTERFACE ID3D10StateBlock DECLARE_INTERFACE_(ID3D10StateBlock, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **object) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D10StateBlock methods */ STDMETHOD(Capture)(THIS) PURE; STDMETHOD(Apply)(THIS) PURE; STDMETHOD(ReleaseAllDeviceObjects)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ ID3D10Device **device) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3D10CompileEffectFromMemory(void *data, SIZE_T data_size, const char *filename, const D3D10_SHADER_MACRO *defines, ID3D10Include *include, UINT hlsl_flags, UINT fx_flags, ID3D10Blob **effect, ID3D10Blob **errors); HRESULT WINAPI D3D10CreateEffectFromMemory(void *data, SIZE_T data_size, UINT flags, ID3D10Device *device, ID3D10EffectPool *effect_pool, ID3D10Effect **effect); HRESULT WINAPI D3D10CreateEffectPoolFromMemory(void *data, SIZE_T data_size, UINT fx_flags, ID3D10Device *device, ID3D10EffectPool **effect_pool); HRESULT WINAPI D3D10CreateStateBlock(ID3D10Device *device, D3D10_STATE_BLOCK_MASK *mask, ID3D10StateBlock **stateblock); HRESULT WINAPI D3D10StateBlockMaskDifference(D3D10_STATE_BLOCK_MASK *mask_x, D3D10_STATE_BLOCK_MASK *mask_y, D3D10_STATE_BLOCK_MASK *result); HRESULT WINAPI D3D10StateBlockMaskDisableAll(D3D10_STATE_BLOCK_MASK *mask); HRESULT WINAPI D3D10StateBlockMaskDisableCapture(D3D10_STATE_BLOCK_MASK *mask, D3D10_DEVICE_STATE_TYPES state_type, UINT start_idx, UINT count); HRESULT WINAPI D3D10StateBlockMaskEnableAll(D3D10_STATE_BLOCK_MASK *mask); HRESULT WINAPI D3D10StateBlockMaskEnableCapture(D3D10_STATE_BLOCK_MASK *mask, D3D10_DEVICE_STATE_TYPES state_type, UINT start_idx, UINT count); WINBOOL WINAPI D3D10StateBlockMaskGetSetting(D3D10_STATE_BLOCK_MASK *mask, D3D10_DEVICE_STATE_TYPES state_type, UINT idx); HRESULT WINAPI D3D10StateBlockMaskIntersect(D3D10_STATE_BLOCK_MASK *mask_x, D3D10_STATE_BLOCK_MASK *mask_y, D3D10_STATE_BLOCK_MASK *result); HRESULT WINAPI D3D10StateBlockMaskUnion(D3D10_STATE_BLOCK_MASK *mask_x, D3D10_STATE_BLOCK_MASK *mask_y, D3D10_STATE_BLOCK_MASK *result); #ifdef __cplusplus } #endif #endif /* __WINE_D3D10EFFECT_H */ dxvk-0~git20220822.9df86f2/d3d10misc.h000066400000000000000000000032321430055512200166370ustar00rootroot00000000000000/* * Copyright 2008 Henri Verbeet for CodeWeavers * * 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 */ #ifndef __D3D10MISC_H__ #define __D3D10MISC_H__ #include "d3d10.h" #ifdef __cplusplus extern "C" { #endif typedef enum D3D10_DRIVER_TYPE { D3D10_DRIVER_TYPE_HARDWARE = 0, D3D10_DRIVER_TYPE_REFERENCE = 1, D3D10_DRIVER_TYPE_NULL = 2, D3D10_DRIVER_TYPE_SOFTWARE = 3, D3D10_DRIVER_TYPE_WARP = 5, } D3D10_DRIVER_TYPE; HRESULT WINAPI D3D10CreateDevice(IDXGIAdapter *adapter, D3D10_DRIVER_TYPE driver_type, HMODULE swrast, UINT flags, UINT sdk_version, ID3D10Device **device); HRESULT WINAPI D3D10CreateDeviceAndSwapChain(IDXGIAdapter *adapter, D3D10_DRIVER_TYPE driver_type, HMODULE swrast, UINT flags, UINT sdk_version, DXGI_SWAP_CHAIN_DESC *swapchain_desc, IDXGISwapChain **swapchain, ID3D10Device **device); HRESULT WINAPI D3D10CreateBlob(SIZE_T data_size, ID3D10Blob **blob); #ifdef __cplusplus } #endif #endif /* __D3D10MISC_H__ */ dxvk-0~git20220822.9df86f2/d3d10sdklayers.h000066400000000000000000001725571430055512200177260ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d10sdklayers.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d10sdklayers_h__ #define __d3d10sdklayers_h__ /* Forward declarations */ #ifndef __ID3D10Debug_FWD_DEFINED__ #define __ID3D10Debug_FWD_DEFINED__ typedef interface ID3D10Debug ID3D10Debug; #ifdef __cplusplus interface ID3D10Debug; #endif /* __cplusplus */ #endif #ifndef __ID3D10SwitchToRef_FWD_DEFINED__ #define __ID3D10SwitchToRef_FWD_DEFINED__ typedef interface ID3D10SwitchToRef ID3D10SwitchToRef; #ifdef __cplusplus interface ID3D10SwitchToRef; #endif /* __cplusplus */ #endif #ifndef __ID3D10InfoQueue_FWD_DEFINED__ #define __ID3D10InfoQueue_FWD_DEFINED__ typedef interface ID3D10InfoQueue ID3D10InfoQueue; #ifdef __cplusplus interface ID3D10InfoQueue; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif #ifdef WINE_NO_UNICODE_MACROS #undef GetMessage #endif #define D3D10_DEBUG_FEATURE_FLUSH_PER_RENDER_OP (0x1) #define D3D10_DEBUG_FEATURE_FINISH_PER_RENDER_OP (0x2) #define D3D10_DEBUG_FEATURE_PRESENT_PER_RENDER_OP (0x4) typedef enum D3D10_MESSAGE_CATEGORY { D3D10_MESSAGE_CATEGORY_APPLICATION_DEFINED = 0, D3D10_MESSAGE_CATEGORY_MISCELLANEOUS = 1, D3D10_MESSAGE_CATEGORY_INITIALIZATION = 2, D3D10_MESSAGE_CATEGORY_CLEANUP = 3, D3D10_MESSAGE_CATEGORY_COMPILATION = 4, D3D10_MESSAGE_CATEGORY_STATE_CREATION = 5, D3D10_MESSAGE_CATEGORY_STATE_SETTING = 6, D3D10_MESSAGE_CATEGORY_STATE_GETTING = 7, D3D10_MESSAGE_CATEGORY_RESOURCE_MANIPULATION = 8, D3D10_MESSAGE_CATEGORY_EXECUTION = 9, D3D10_MESSAGE_CATEGORY_SHADER = 10 } D3D10_MESSAGE_CATEGORY; typedef enum D3D10_MESSAGE_SEVERITY { D3D10_MESSAGE_SEVERITY_CORRUPTION = 0, D3D10_MESSAGE_SEVERITY_ERROR = 1, D3D10_MESSAGE_SEVERITY_WARNING = 2, D3D10_MESSAGE_SEVERITY_INFO = 3, D3D10_MESSAGE_SEVERITY_MESSAGE = 4 } D3D10_MESSAGE_SEVERITY; typedef enum D3D10_MESSAGE_ID { D3D10_MESSAGE_ID_UNKNOWN = 0, D3D10_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD = 1, D3D10_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD = 2, D3D10_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD = 3, D3D10_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD = 4, D3D10_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD = 5, D3D10_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD = 6, D3D10_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD = 7, D3D10_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD = 8, D3D10_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD = 9, D3D10_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD = 10, D3D10_MESSAGE_ID_STRING_FROM_APPLICATION = 11, D3D10_MESSAGE_ID_CORRUPTED_THIS = 12, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER1 = 13, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER2 = 14, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER3 = 15, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER4 = 16, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER5 = 17, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER6 = 18, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER7 = 19, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER8 = 20, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER9 = 21, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER10 = 22, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER11 = 23, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER12 = 24, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER13 = 25, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER14 = 26, D3D10_MESSAGE_ID_CORRUPTED_PARAMETER15 = 27, D3D10_MESSAGE_ID_CORRUPTED_MULTITHREADING = 28, D3D10_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY = 29, D3D10_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT = 30, D3D10_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT = 31, D3D10_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT = 32, D3D10_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT = 33, D3D10_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 34, D3D10_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 35, D3D10_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT = 36, D3D10_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT = 37, D3D10_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 38, D3D10_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 39, D3D10_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT = 40, D3D10_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT = 41, D3D10_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT = 42, D3D10_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 43, D3D10_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 44, D3D10_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT = 45, D3D10_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT = 46, D3D10_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT = 47, D3D10_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT = 48, D3D10_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT = 49, D3D10_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT = 50, D3D10_MESSAGE_ID_GETPRIVATEDATA_MOREDATA = 51, D3D10_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA = 52, D3D10_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN = 53, D3D10_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS = 54, D3D10_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS = 55, D3D10_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY = 56, D3D10_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT = 57, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES = 58, D3D10_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE = 59, D3D10_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS = 60, D3D10_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS = 61, D3D10_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS = 62, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS = 63, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS = 64, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA = 65, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS = 66, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS = 67, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS = 68, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN = 69, D3D10_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN = 70, D3D10_MESSAGE_ID_CREATEBUFFER_NULLDESC = 71, D3D10_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS = 72, D3D10_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION = 73, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT = 74, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT = 75, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES = 76, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE = 77, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS = 78, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS = 79, D3D10_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS = 80, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS = 81, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS = 82, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA = 83, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS = 84, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS = 85, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS = 86, D3D10_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN = 87, D3D10_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN = 88, D3D10_MESSAGE_ID_CREATETEXTURE1D_NULLDESC = 89, D3D10_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION = 90, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT = 91, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT = 92, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES = 93, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE = 94, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS = 95, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS = 96, D3D10_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS = 97, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS = 98, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS = 99, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA = 100, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS = 101, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS = 102, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS = 103, D3D10_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN = 104, D3D10_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN = 105, D3D10_MESSAGE_ID_CREATETEXTURE2D_NULLDESC = 106, D3D10_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION = 107, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT = 108, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT = 109, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES = 110, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE = 111, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS = 112, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS = 113, D3D10_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS = 114, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS = 115, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS = 116, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA = 117, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS = 118, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS = 119, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS = 120, D3D10_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN = 121, D3D10_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN = 122, D3D10_MESSAGE_ID_CREATETEXTURE3D_NULLDESC = 123, D3D10_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION = 124, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT = 125, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC = 126, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT = 127, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS = 128, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE = 129, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS = 130, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN = 131, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN = 132, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT = 133, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT = 134, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC = 135, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT = 136, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS = 137, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE = 138, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS = 139, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN = 140, D3D10_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN = 141, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT = 142, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC = 143, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT = 144, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS = 145, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE = 146, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS = 147, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN = 148, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN = 149, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY = 150, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS = 151, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT = 152, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT = 153, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT = 154, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS = 155, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH = 156, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE = 157, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE = 158, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT = 159, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC = 160, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE = 161, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC = 162, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT = 163, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC = 164, D3D10_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY = 165, D3D10_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE = 166, D3D10_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE = 167, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY = 168, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE = 169, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE = 170, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY = 171, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE = 172, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 173, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES = 174, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED = 175, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL = 176, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL = 177, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED = 178, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT = 179, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT = 180, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT = 181, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT = 182, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION = 183, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT = 184, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE = 185, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC = 186, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH = 187, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS = 188, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX = 189, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE = 190, D3D10_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY = 191, D3D10_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE = 192, D3D10_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE = 193, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE = 194, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE = 195, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP = 196, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS = 197, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS = 198, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC = 199, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK = 200, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC = 201, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP = 202, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP = 203, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP = 204, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC = 205, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP = 206, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP = 207, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP = 208, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC = 209, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS = 210, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC = 211, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND = 212, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND = 213, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP = 214, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA = 215, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA = 216, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA = 217, D3D10_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK = 218, D3D10_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS = 219, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC = 220, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER = 221, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU = 222, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV = 223, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW = 224, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS = 225, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY = 226, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC = 227, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD = 228, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD = 229, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS = 230, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC = 231, D3D10_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY = 232, D3D10_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS = 233, D3D10_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG = 234, D3D10_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC = 235, D3D10_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED = 236, D3D10_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED = 237, D3D10_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER = 238, D3D10_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE = 239, D3D10_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY = 240, D3D10_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER = 241, D3D10_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID = 242, D3D10_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE = 243, D3D10_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED = 244, D3D10_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY = 245, D3D10_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER = 246, D3D10_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 247, D3D10_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY = 248, D3D10_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY = 249, D3D10_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER = 250, D3D10_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 251, D3D10_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY = 252, D3D10_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER = 253, D3D10_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED = 254, D3D10_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY = 255, D3D10_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER = 256, D3D10_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 257, D3D10_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY = 258, D3D10_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT = 259, D3D10_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR = 260, D3D10_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH = 261, D3D10_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH = 262, D3D10_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID = 263, D3D10_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY = 264, D3D10_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY = 265, D3D10_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 266, D3D10_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY = 267, D3D10_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY = 268, D3D10_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 269, D3D10_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY = 270, D3D10_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY = 271, D3D10_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY = 272, D3D10_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 273, D3D10_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY = 274, D3D10_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY = 275, D3D10_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY = 276, D3D10_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID = 277, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE = 278, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE = 279, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX = 280, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE = 281, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE = 282, D3D10_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE = 283, D3D10_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE = 284, D3D10_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE = 285, D3D10_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE = 286, D3D10_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE = 287, D3D10_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX = 288, D3D10_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE = 289, D3D10_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID = 290, D3D10_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID = 291, D3D10_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID = 292, D3D10_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID = 293, D3D10_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID = 294, D3D10_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE = 295, D3D10_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS = 296, D3D10_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED = 297, D3D10_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN = 298, D3D10_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED = 299, D3D10_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE = 300, D3D10_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE = 301, D3D10_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS = 302, D3D10_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED = 303, D3D10_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN = 304, D3D10_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE = 305, D3D10_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED = 306, D3D10_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE = 307, D3D10_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE = 308, D3D10_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS = 309, D3D10_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED = 310, D3D10_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN = 311, D3D10_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE = 312, D3D10_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED = 313, D3D10_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE = 314, D3D10_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE = 315, D3D10_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS = 316, D3D10_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED = 317, D3D10_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN = 318, D3D10_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE = 319, D3D10_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED = 320, D3D10_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED = 321, D3D10_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED = 322, D3D10_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS = 323, D3D10_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN = 324, D3D10_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN = 325, D3D10_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE = 326, D3D10_MESSAGE_ID_REF_THREADING_MODE = 327, D3D10_MESSAGE_ID_REF_UMDRIVER_EXCEPTION = 328, D3D10_MESSAGE_ID_REF_KMDRIVER_EXCEPTION = 329, D3D10_MESSAGE_ID_REF_HARDWARE_EXCEPTION = 330, D3D10_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE = 331, D3D10_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER = 332, D3D10_MESSAGE_ID_REF_OUT_OF_MEMORY = 333, D3D10_MESSAGE_ID_REF_INFO = 334, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW = 335, D3D10_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW = 336, D3D10_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW = 337, D3D10_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW = 338, D3D10_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW = 339, D3D10_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW = 340, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET = 341, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND = 342, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX = 343, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE = 344, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK = 345, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE = 346, D3D10_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS = 347, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET = 348, D3D10_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET = 349, D3D10_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET = 350, D3D10_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL = 351, D3D10_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET = 352, D3D10_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET = 353, D3D10_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH = 354, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL = 355, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL = 356, D3D10_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET = 357, D3D10_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID = 358, D3D10_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL = 359, D3D10_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH = 360, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH = 361, D3D10_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT = 362, D3D10_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET = 363, D3D10_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED = 364, D3D10_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY = 365, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED = 366, D3D10_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED = 367, D3D10_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED = 368, D3D10_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED = 369, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED = 370, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED = 371, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED = 372, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED = 373, D3D10_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE = 374, D3D10_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER = 375, D3D10_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING = 376, D3D10_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 = 377, D3D10_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT = 378, D3D10_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT = 379, D3D10_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT = 380, D3D10_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN = 381, D3D10_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN = 382, D3D10_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN = 383, D3D10_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET = 384, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC = 385, D3D10_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC = 386, D3D10_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH = 387, D3D10_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW = 388, D3D10_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS = 389, D3D10_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH = 390, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH = 391, D3D10_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY = 392, D3D10_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY = 393, D3D10_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN = 394, D3D10_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN = 395, D3D10_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER = 396, D3D10_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED = 397, D3D10_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 398, D3D10_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN = 399, D3D10_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN = 400, D3D10_MESSAGE_ID_CREATECOUNTER_NULLDESC = 401, D3D10_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER = 402, D3D10_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 403, D3D10_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE = 404, D3D10_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED = 405, D3D10_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION = 406, D3D10_MESSAGE_ID_QUERY_BEGIN_DUPLICATE = 407, D3D10_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS = 408, D3D10_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION = 409, D3D10_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS = 410, D3D10_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN = 411, D3D10_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE = 412, D3D10_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS = 413, D3D10_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL = 414, D3D10_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH = 415, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED = 416, D3D10_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN = 417, D3D10_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE = 418, D3D10_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE = 419, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT = 420, D3D10_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH = 421, D3D10_MESSAGE_ID_LIVE_OBJECT_SUMMARY = 422, D3D10_MESSAGE_ID_LIVE_BUFFER = 423, D3D10_MESSAGE_ID_LIVE_TEXTURE1D = 424, D3D10_MESSAGE_ID_LIVE_TEXTURE2D = 425, D3D10_MESSAGE_ID_LIVE_TEXTURE3D = 426, D3D10_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW = 427, D3D10_MESSAGE_ID_LIVE_RENDERTARGETVIEW = 428, D3D10_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW = 429, D3D10_MESSAGE_ID_LIVE_VERTEXSHADER = 430, D3D10_MESSAGE_ID_LIVE_GEOMETRYSHADER = 431, D3D10_MESSAGE_ID_LIVE_PIXELSHADER = 432, D3D10_MESSAGE_ID_LIVE_INPUTLAYOUT = 433, D3D10_MESSAGE_ID_LIVE_SAMPLER = 434, D3D10_MESSAGE_ID_LIVE_BLENDSTATE = 435, D3D10_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE = 436, D3D10_MESSAGE_ID_LIVE_RASTERIZERSTATE = 437, D3D10_MESSAGE_ID_LIVE_QUERY = 438, D3D10_MESSAGE_ID_LIVE_PREDICATE = 439, D3D10_MESSAGE_ID_LIVE_COUNTER = 440, D3D10_MESSAGE_ID_LIVE_DEVICE = 441, D3D10_MESSAGE_ID_LIVE_SWAPCHAIN = 442, D3D10_MESSAGE_ID_D3D10_MESSAGES_END = 443, D3D10_MESSAGE_ID_D3D10L9_MESSAGES_START = 0x100000, D3D10_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED = 0x100001, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED = 0x100002, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT = 0x100003, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY = 0x100004, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE = 0x100005, D3D10_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED = 0x100006, D3D10_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS = 0x100007, D3D10_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS = 0x100008, D3D10_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS = 0x100009, D3D10_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND = 0x10000a, D3D10_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D = 0x10000b, D3D10_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE = 0x10000c, D3D10_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE = 0x10000d, D3D10_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS = 0x10000e, D3D10_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS = 0x10000f, D3D10_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX = 0x100010, D3D10_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS = 0x100011, D3D10_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED = 0x100012, D3D10_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS = 0x100013, D3D10_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY = 0x100014, D3D10_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK = 0x100015, D3D10_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK = 0x100016, D3D10_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT = 0x100017, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE = 0x100018, D3D10_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE = 0x100019, D3D10_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE = 0x10001a, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD = 0x10001b, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL = 0x10001c, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX = 0x10001d, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO = 0x10001e, D3D10_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES = 0x10001f, D3D10_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET = 0x100020, D3D10_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER = 0x100021, D3D10_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE = 0x100022, D3D10_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE = 0x100023, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE = 0x100024, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS = 0x100025, D3D10_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT = 0x100026, D3D10_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS = 0x100027, D3D10_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES = 0x100028, D3D10_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED = 0x100029, D3D10_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED = 0x10002a, D3D10_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED = 0x10002b, D3D10_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED = 0x10002c, D3D10_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED = 0x10002d, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND = 0x10002e, D3D10_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND = 0x10002f, D3D10_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED = 0x100030, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE = 0x100031, D3D10_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED = 0x100032, D3D10_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3 = 0x100033, D3D10_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED = 0x100034, D3D10_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO = 0x100035, D3D10_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION = 0x100036, D3D10_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED = 0x100037, D3D10_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR = 0x100038, D3D10_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA = 0x100039, D3D10_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP = 0x10003a, D3D10_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED = 0x10003b, D3D10_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT = 0x10003c, D3D10_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES = 0x10003d, D3D10_MESSAGE_ID_D3D10L9_MESSAGES_END = 0x10003e } D3D10_MESSAGE_ID; typedef struct D3D10_MESSAGE { D3D10_MESSAGE_CATEGORY Category; D3D10_MESSAGE_SEVERITY Severity; D3D10_MESSAGE_ID ID; const char *pDescription; SIZE_T DescriptionByteLength; } D3D10_MESSAGE; typedef struct D3D10_INFO_QUEUE_FILTER_DESC { UINT NumCategories; D3D10_MESSAGE_CATEGORY *pCategoryList; UINT NumSeverities; D3D10_MESSAGE_SEVERITY *pSeverityList; UINT NumIDs; D3D10_MESSAGE_ID *pIDList; } D3D10_INFO_QUEUE_FILTER_DESC; typedef struct D3D10_INFO_QUEUE_FILTER { D3D10_INFO_QUEUE_FILTER_DESC AllowList; D3D10_INFO_QUEUE_FILTER_DESC DenyList; } D3D10_INFO_QUEUE_FILTER; /***************************************************************************** * ID3D10Debug interface */ #ifndef __ID3D10Debug_INTERFACE_DEFINED__ #define __ID3D10Debug_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Debug, 0x9b7e4e01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4e01-342c-4106-a19f-4f2704f689f0") ID3D10Debug : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFeatureMask( UINT mask) = 0; virtual UINT STDMETHODCALLTYPE GetFeatureMask( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetPresentPerRenderOpDelay( UINT milliseconds) = 0; virtual UINT STDMETHODCALLTYPE GetPresentPerRenderOpDelay( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetSwapChain( IDXGISwapChain *swapchain) = 0; virtual HRESULT STDMETHODCALLTYPE GetSwapChain( IDXGISwapChain **swapchain) = 0; virtual HRESULT STDMETHODCALLTYPE Validate( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Debug, 0x9b7e4e01, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10DebugVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Debug *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Debug *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Debug *This); /*** ID3D10Debug methods ***/ HRESULT (STDMETHODCALLTYPE *SetFeatureMask)( ID3D10Debug *This, UINT mask); UINT (STDMETHODCALLTYPE *GetFeatureMask)( ID3D10Debug *This); HRESULT (STDMETHODCALLTYPE *SetPresentPerRenderOpDelay)( ID3D10Debug *This, UINT milliseconds); UINT (STDMETHODCALLTYPE *GetPresentPerRenderOpDelay)( ID3D10Debug *This); HRESULT (STDMETHODCALLTYPE *SetSwapChain)( ID3D10Debug *This, IDXGISwapChain *swapchain); HRESULT (STDMETHODCALLTYPE *GetSwapChain)( ID3D10Debug *This, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *Validate)( ID3D10Debug *This); END_INTERFACE } ID3D10DebugVtbl; interface ID3D10Debug { CONST_VTBL ID3D10DebugVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Debug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Debug_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Debug_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10Debug methods ***/ #define ID3D10Debug_SetFeatureMask(This,mask) (This)->lpVtbl->SetFeatureMask(This,mask) #define ID3D10Debug_GetFeatureMask(This) (This)->lpVtbl->GetFeatureMask(This) #define ID3D10Debug_SetPresentPerRenderOpDelay(This,milliseconds) (This)->lpVtbl->SetPresentPerRenderOpDelay(This,milliseconds) #define ID3D10Debug_GetPresentPerRenderOpDelay(This) (This)->lpVtbl->GetPresentPerRenderOpDelay(This) #define ID3D10Debug_SetSwapChain(This,swapchain) (This)->lpVtbl->SetSwapChain(This,swapchain) #define ID3D10Debug_GetSwapChain(This,swapchain) (This)->lpVtbl->GetSwapChain(This,swapchain) #define ID3D10Debug_Validate(This) (This)->lpVtbl->Validate(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Debug_QueryInterface(ID3D10Debug* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Debug_AddRef(ID3D10Debug* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Debug_Release(ID3D10Debug* This) { return This->lpVtbl->Release(This); } /*** ID3D10Debug methods ***/ static FORCEINLINE HRESULT ID3D10Debug_SetFeatureMask(ID3D10Debug* This,UINT mask) { return This->lpVtbl->SetFeatureMask(This,mask); } static FORCEINLINE UINT ID3D10Debug_GetFeatureMask(ID3D10Debug* This) { return This->lpVtbl->GetFeatureMask(This); } static FORCEINLINE HRESULT ID3D10Debug_SetPresentPerRenderOpDelay(ID3D10Debug* This,UINT milliseconds) { return This->lpVtbl->SetPresentPerRenderOpDelay(This,milliseconds); } static FORCEINLINE UINT ID3D10Debug_GetPresentPerRenderOpDelay(ID3D10Debug* This) { return This->lpVtbl->GetPresentPerRenderOpDelay(This); } static FORCEINLINE HRESULT ID3D10Debug_SetSwapChain(ID3D10Debug* This,IDXGISwapChain *swapchain) { return This->lpVtbl->SetSwapChain(This,swapchain); } static FORCEINLINE HRESULT ID3D10Debug_GetSwapChain(ID3D10Debug* This,IDXGISwapChain **swapchain) { return This->lpVtbl->GetSwapChain(This,swapchain); } static FORCEINLINE HRESULT ID3D10Debug_Validate(ID3D10Debug* This) { return This->lpVtbl->Validate(This); } #endif #endif #endif #endif /* __ID3D10Debug_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10SwitchToRef interface */ #ifndef __ID3D10SwitchToRef_INTERFACE_DEFINED__ #define __ID3D10SwitchToRef_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10SwitchToRef, 0x9b7e4e02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4e02-342c-4106-a19f-4f2704f689f0") ID3D10SwitchToRef : public IUnknown { virtual WINBOOL STDMETHODCALLTYPE SetUseRef( WINBOOL useref) = 0; virtual WINBOOL STDMETHODCALLTYPE GetUseRef( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10SwitchToRef, 0x9b7e4e02, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D10SwitchToRefVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10SwitchToRef *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10SwitchToRef *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10SwitchToRef *This); /*** ID3D10SwitchToRef methods ***/ WINBOOL (STDMETHODCALLTYPE *SetUseRef)( ID3D10SwitchToRef *This, WINBOOL useref); WINBOOL (STDMETHODCALLTYPE *GetUseRef)( ID3D10SwitchToRef *This); END_INTERFACE } ID3D10SwitchToRefVtbl; interface ID3D10SwitchToRef { CONST_VTBL ID3D10SwitchToRefVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10SwitchToRef_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10SwitchToRef_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10SwitchToRef_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10SwitchToRef methods ***/ #define ID3D10SwitchToRef_SetUseRef(This,useref) (This)->lpVtbl->SetUseRef(This,useref) #define ID3D10SwitchToRef_GetUseRef(This) (This)->lpVtbl->GetUseRef(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10SwitchToRef_QueryInterface(ID3D10SwitchToRef* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10SwitchToRef_AddRef(ID3D10SwitchToRef* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10SwitchToRef_Release(ID3D10SwitchToRef* This) { return This->lpVtbl->Release(This); } /*** ID3D10SwitchToRef methods ***/ static FORCEINLINE WINBOOL ID3D10SwitchToRef_SetUseRef(ID3D10SwitchToRef* This,WINBOOL useref) { return This->lpVtbl->SetUseRef(This,useref); } static FORCEINLINE WINBOOL ID3D10SwitchToRef_GetUseRef(ID3D10SwitchToRef* This) { return This->lpVtbl->GetUseRef(This); } #endif #endif #endif #endif /* __ID3D10SwitchToRef_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D10InfoQueue interface */ #ifndef __ID3D10InfoQueue_INTERFACE_DEFINED__ #define __ID3D10InfoQueue_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10InfoQueue, 0x1b940b17, 0x2642, 0x4d1f, 0xab,0x1f, 0xb9,0x9b,0xad,0x0c,0x39,0x5f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1b940b17-2642-4d1f-ab1f-b99bad0c395f") ID3D10InfoQueue : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetMessageCountLimit( UINT64 limit) = 0; virtual void STDMETHODCALLTYPE ClearStoredMessages( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMessage( UINT64 message_idx, D3D10_MESSAGE *message, SIZE_T *message_size) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesAllowedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDeniedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessages( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessagesAllowedByRetrievalFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDiscardedByMessageCountLimit( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetMessageCountLimit( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddStorageFilterEntries( D3D10_INFO_QUEUE_FILTER *filter) = 0; virtual HRESULT STDMETHODCALLTYPE GetStorageFilter( D3D10_INFO_QUEUE_FILTER *filter, SIZE_T *filter_size) = 0; virtual void STDMETHODCALLTYPE ClearStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushStorageFilter( D3D10_INFO_QUEUE_FILTER *filter) = 0; virtual void STDMETHODCALLTYPE PopStorageFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetStorageFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddRetrievalFilterEntries( D3D10_INFO_QUEUE_FILTER *filter) = 0; virtual HRESULT STDMETHODCALLTYPE GetRetrievalFilter( D3D10_INFO_QUEUE_FILTER *filter, SIZE_T *filterbytelength) = 0; virtual void STDMETHODCALLTYPE ClearRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushRetrievalFilter( D3D10_INFO_QUEUE_FILTER *filter) = 0; virtual void STDMETHODCALLTYPE PopRetrievalFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetRetrievalFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddMessage( D3D10_MESSAGE_CATEGORY category, D3D10_MESSAGE_SEVERITY severity, D3D10_MESSAGE_ID id, const char *description) = 0; virtual HRESULT STDMETHODCALLTYPE AddApplicationMessage( D3D10_MESSAGE_SEVERITY severity, const char *description) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnCategory( D3D10_MESSAGE_CATEGORY category, WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnSeverity( D3D10_MESSAGE_SEVERITY severity, WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnID( D3D10_MESSAGE_ID id, WINBOOL enable) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnCategory( D3D10_MESSAGE_CATEGORY category) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnSeverity( D3D10_MESSAGE_SEVERITY severity) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnID( D3D10_MESSAGE_ID id) = 0; virtual void STDMETHODCALLTYPE SetMuteDebugOutput( WINBOOL mute) = 0; virtual WINBOOL STDMETHODCALLTYPE GetMuteDebugOutput( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10InfoQueue, 0x1b940b17, 0x2642, 0x4d1f, 0xab,0x1f, 0xb9,0x9b,0xad,0x0c,0x39,0x5f) #endif #else typedef struct ID3D10InfoQueueVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10InfoQueue *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10InfoQueue *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10InfoQueue *This); /*** ID3D10InfoQueue methods ***/ HRESULT (STDMETHODCALLTYPE *SetMessageCountLimit)( ID3D10InfoQueue *This, UINT64 limit); void (STDMETHODCALLTYPE *ClearStoredMessages)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *GetMessage)( ID3D10InfoQueue *This, UINT64 message_idx, D3D10_MESSAGE *message, SIZE_T *message_size); UINT64 (STDMETHODCALLTYPE *GetNumMessagesAllowedByStorageFilter)( ID3D10InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDeniedByStorageFilter)( ID3D10InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessages)( ID3D10InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessagesAllowedByRetrievalFilter)( ID3D10InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDiscardedByMessageCountLimit)( ID3D10InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetMessageCountLimit)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddStorageFilterEntries)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter); HRESULT (STDMETHODCALLTYPE *GetStorageFilter)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter, SIZE_T *filter_size); void (STDMETHODCALLTYPE *ClearStorageFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyStorageFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfStorageFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushStorageFilter)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter); void (STDMETHODCALLTYPE *PopStorageFilter)( ID3D10InfoQueue *This); UINT (STDMETHODCALLTYPE *GetStorageFilterStackSize)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddRetrievalFilterEntries)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter); HRESULT (STDMETHODCALLTYPE *GetRetrievalFilter)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter, SIZE_T *filterbytelength); void (STDMETHODCALLTYPE *ClearRetrievalFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyRetrievalFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfRetrievalFilter)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushRetrievalFilter)( ID3D10InfoQueue *This, D3D10_INFO_QUEUE_FILTER *filter); void (STDMETHODCALLTYPE *PopRetrievalFilter)( ID3D10InfoQueue *This); UINT (STDMETHODCALLTYPE *GetRetrievalFilterStackSize)( ID3D10InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddMessage)( ID3D10InfoQueue *This, D3D10_MESSAGE_CATEGORY category, D3D10_MESSAGE_SEVERITY severity, D3D10_MESSAGE_ID id, const char *description); HRESULT (STDMETHODCALLTYPE *AddApplicationMessage)( ID3D10InfoQueue *This, D3D10_MESSAGE_SEVERITY severity, const char *description); HRESULT (STDMETHODCALLTYPE *SetBreakOnCategory)( ID3D10InfoQueue *This, D3D10_MESSAGE_CATEGORY category, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *SetBreakOnSeverity)( ID3D10InfoQueue *This, D3D10_MESSAGE_SEVERITY severity, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *SetBreakOnID)( ID3D10InfoQueue *This, D3D10_MESSAGE_ID id, WINBOOL enable); WINBOOL (STDMETHODCALLTYPE *GetBreakOnCategory)( ID3D10InfoQueue *This, D3D10_MESSAGE_CATEGORY category); WINBOOL (STDMETHODCALLTYPE *GetBreakOnSeverity)( ID3D10InfoQueue *This, D3D10_MESSAGE_SEVERITY severity); WINBOOL (STDMETHODCALLTYPE *GetBreakOnID)( ID3D10InfoQueue *This, D3D10_MESSAGE_ID id); void (STDMETHODCALLTYPE *SetMuteDebugOutput)( ID3D10InfoQueue *This, WINBOOL mute); WINBOOL (STDMETHODCALLTYPE *GetMuteDebugOutput)( ID3D10InfoQueue *This); END_INTERFACE } ID3D10InfoQueueVtbl; interface ID3D10InfoQueue { CONST_VTBL ID3D10InfoQueueVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10InfoQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10InfoQueue_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10InfoQueue_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10InfoQueue methods ***/ #define ID3D10InfoQueue_SetMessageCountLimit(This,limit) (This)->lpVtbl->SetMessageCountLimit(This,limit) #define ID3D10InfoQueue_ClearStoredMessages(This) (This)->lpVtbl->ClearStoredMessages(This) #define ID3D10InfoQueue_GetMessage(This,message_idx,message,message_size) (This)->lpVtbl->GetMessage(This,message_idx,message,message_size) #define ID3D10InfoQueue_GetNumMessagesAllowedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesAllowedByStorageFilter(This) #define ID3D10InfoQueue_GetNumMessagesDeniedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesDeniedByStorageFilter(This) #define ID3D10InfoQueue_GetNumStoredMessages(This) (This)->lpVtbl->GetNumStoredMessages(This) #define ID3D10InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(This) (This)->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This) #define ID3D10InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(This) (This)->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This) #define ID3D10InfoQueue_GetMessageCountLimit(This) (This)->lpVtbl->GetMessageCountLimit(This) #define ID3D10InfoQueue_AddStorageFilterEntries(This,filter) (This)->lpVtbl->AddStorageFilterEntries(This,filter) #define ID3D10InfoQueue_GetStorageFilter(This,filter,filter_size) (This)->lpVtbl->GetStorageFilter(This,filter,filter_size) #define ID3D10InfoQueue_ClearStorageFilter(This) (This)->lpVtbl->ClearStorageFilter(This) #define ID3D10InfoQueue_PushEmptyStorageFilter(This) (This)->lpVtbl->PushEmptyStorageFilter(This) #define ID3D10InfoQueue_PushCopyOfStorageFilter(This) (This)->lpVtbl->PushCopyOfStorageFilter(This) #define ID3D10InfoQueue_PushStorageFilter(This,filter) (This)->lpVtbl->PushStorageFilter(This,filter) #define ID3D10InfoQueue_PopStorageFilter(This) (This)->lpVtbl->PopStorageFilter(This) #define ID3D10InfoQueue_GetStorageFilterStackSize(This) (This)->lpVtbl->GetStorageFilterStackSize(This) #define ID3D10InfoQueue_AddRetrievalFilterEntries(This,filter) (This)->lpVtbl->AddRetrievalFilterEntries(This,filter) #define ID3D10InfoQueue_GetRetrievalFilter(This,filter,filterbytelength) (This)->lpVtbl->GetRetrievalFilter(This,filter,filterbytelength) #define ID3D10InfoQueue_ClearRetrievalFilter(This) (This)->lpVtbl->ClearRetrievalFilter(This) #define ID3D10InfoQueue_PushEmptyRetrievalFilter(This) (This)->lpVtbl->PushEmptyRetrievalFilter(This) #define ID3D10InfoQueue_PushCopyOfRetrievalFilter(This) (This)->lpVtbl->PushCopyOfRetrievalFilter(This) #define ID3D10InfoQueue_PushRetrievalFilter(This,filter) (This)->lpVtbl->PushRetrievalFilter(This,filter) #define ID3D10InfoQueue_PopRetrievalFilter(This) (This)->lpVtbl->PopRetrievalFilter(This) #define ID3D10InfoQueue_GetRetrievalFilterStackSize(This) (This)->lpVtbl->GetRetrievalFilterStackSize(This) #define ID3D10InfoQueue_AddMessage(This,category,severity,id,description) (This)->lpVtbl->AddMessage(This,category,severity,id,description) #define ID3D10InfoQueue_AddApplicationMessage(This,severity,description) (This)->lpVtbl->AddApplicationMessage(This,severity,description) #define ID3D10InfoQueue_SetBreakOnCategory(This,category,enable) (This)->lpVtbl->SetBreakOnCategory(This,category,enable) #define ID3D10InfoQueue_SetBreakOnSeverity(This,severity,enable) (This)->lpVtbl->SetBreakOnSeverity(This,severity,enable) #define ID3D10InfoQueue_SetBreakOnID(This,id,enable) (This)->lpVtbl->SetBreakOnID(This,id,enable) #define ID3D10InfoQueue_GetBreakOnCategory(This,category) (This)->lpVtbl->GetBreakOnCategory(This,category) #define ID3D10InfoQueue_GetBreakOnSeverity(This,severity) (This)->lpVtbl->GetBreakOnSeverity(This,severity) #define ID3D10InfoQueue_GetBreakOnID(This,id) (This)->lpVtbl->GetBreakOnID(This,id) #define ID3D10InfoQueue_SetMuteDebugOutput(This,mute) (This)->lpVtbl->SetMuteDebugOutput(This,mute) #define ID3D10InfoQueue_GetMuteDebugOutput(This) (This)->lpVtbl->GetMuteDebugOutput(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10InfoQueue_QueryInterface(ID3D10InfoQueue* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10InfoQueue_AddRef(ID3D10InfoQueue* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10InfoQueue_Release(ID3D10InfoQueue* This) { return This->lpVtbl->Release(This); } /*** ID3D10InfoQueue methods ***/ static FORCEINLINE HRESULT ID3D10InfoQueue_SetMessageCountLimit(ID3D10InfoQueue* This,UINT64 limit) { return This->lpVtbl->SetMessageCountLimit(This,limit); } static FORCEINLINE void ID3D10InfoQueue_ClearStoredMessages(ID3D10InfoQueue* This) { This->lpVtbl->ClearStoredMessages(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_GetMessage(ID3D10InfoQueue* This,UINT64 message_idx,D3D10_MESSAGE *message,SIZE_T *message_size) { return This->lpVtbl->GetMessage(This,message_idx,message,message_size); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetNumMessagesAllowedByStorageFilter(ID3D10InfoQueue* This) { return This->lpVtbl->GetNumMessagesAllowedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetNumMessagesDeniedByStorageFilter(ID3D10InfoQueue* This) { return This->lpVtbl->GetNumMessagesDeniedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetNumStoredMessages(ID3D10InfoQueue* This) { return This->lpVtbl->GetNumStoredMessages(This); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(ID3D10InfoQueue* This) { return This->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(ID3D10InfoQueue* This) { return This->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This); } static FORCEINLINE UINT64 ID3D10InfoQueue_GetMessageCountLimit(ID3D10InfoQueue* This) { return This->lpVtbl->GetMessageCountLimit(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_AddStorageFilterEntries(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->AddStorageFilterEntries(This,filter); } static FORCEINLINE HRESULT ID3D10InfoQueue_GetStorageFilter(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter,SIZE_T *filter_size) { return This->lpVtbl->GetStorageFilter(This,filter,filter_size); } static FORCEINLINE void ID3D10InfoQueue_ClearStorageFilter(ID3D10InfoQueue* This) { This->lpVtbl->ClearStorageFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushEmptyStorageFilter(ID3D10InfoQueue* This) { return This->lpVtbl->PushEmptyStorageFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushCopyOfStorageFilter(ID3D10InfoQueue* This) { return This->lpVtbl->PushCopyOfStorageFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushStorageFilter(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->PushStorageFilter(This,filter); } static FORCEINLINE void ID3D10InfoQueue_PopStorageFilter(ID3D10InfoQueue* This) { This->lpVtbl->PopStorageFilter(This); } static FORCEINLINE UINT ID3D10InfoQueue_GetStorageFilterStackSize(ID3D10InfoQueue* This) { return This->lpVtbl->GetStorageFilterStackSize(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_AddRetrievalFilterEntries(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->AddRetrievalFilterEntries(This,filter); } static FORCEINLINE HRESULT ID3D10InfoQueue_GetRetrievalFilter(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter,SIZE_T *filterbytelength) { return This->lpVtbl->GetRetrievalFilter(This,filter,filterbytelength); } static FORCEINLINE void ID3D10InfoQueue_ClearRetrievalFilter(ID3D10InfoQueue* This) { This->lpVtbl->ClearRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushEmptyRetrievalFilter(ID3D10InfoQueue* This) { return This->lpVtbl->PushEmptyRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushCopyOfRetrievalFilter(ID3D10InfoQueue* This) { return This->lpVtbl->PushCopyOfRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_PushRetrievalFilter(ID3D10InfoQueue* This,D3D10_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->PushRetrievalFilter(This,filter); } static FORCEINLINE void ID3D10InfoQueue_PopRetrievalFilter(ID3D10InfoQueue* This) { This->lpVtbl->PopRetrievalFilter(This); } static FORCEINLINE UINT ID3D10InfoQueue_GetRetrievalFilterStackSize(ID3D10InfoQueue* This) { return This->lpVtbl->GetRetrievalFilterStackSize(This); } static FORCEINLINE HRESULT ID3D10InfoQueue_AddMessage(ID3D10InfoQueue* This,D3D10_MESSAGE_CATEGORY category,D3D10_MESSAGE_SEVERITY severity,D3D10_MESSAGE_ID id,const char *description) { return This->lpVtbl->AddMessage(This,category,severity,id,description); } static FORCEINLINE HRESULT ID3D10InfoQueue_AddApplicationMessage(ID3D10InfoQueue* This,D3D10_MESSAGE_SEVERITY severity,const char *description) { return This->lpVtbl->AddApplicationMessage(This,severity,description); } static FORCEINLINE HRESULT ID3D10InfoQueue_SetBreakOnCategory(ID3D10InfoQueue* This,D3D10_MESSAGE_CATEGORY category,WINBOOL enable) { return This->lpVtbl->SetBreakOnCategory(This,category,enable); } static FORCEINLINE HRESULT ID3D10InfoQueue_SetBreakOnSeverity(ID3D10InfoQueue* This,D3D10_MESSAGE_SEVERITY severity,WINBOOL enable) { return This->lpVtbl->SetBreakOnSeverity(This,severity,enable); } static FORCEINLINE HRESULT ID3D10InfoQueue_SetBreakOnID(ID3D10InfoQueue* This,D3D10_MESSAGE_ID id,WINBOOL enable) { return This->lpVtbl->SetBreakOnID(This,id,enable); } static FORCEINLINE WINBOOL ID3D10InfoQueue_GetBreakOnCategory(ID3D10InfoQueue* This,D3D10_MESSAGE_CATEGORY category) { return This->lpVtbl->GetBreakOnCategory(This,category); } static FORCEINLINE WINBOOL ID3D10InfoQueue_GetBreakOnSeverity(ID3D10InfoQueue* This,D3D10_MESSAGE_SEVERITY severity) { return This->lpVtbl->GetBreakOnSeverity(This,severity); } static FORCEINLINE WINBOOL ID3D10InfoQueue_GetBreakOnID(ID3D10InfoQueue* This,D3D10_MESSAGE_ID id) { return This->lpVtbl->GetBreakOnID(This,id); } static FORCEINLINE void ID3D10InfoQueue_SetMuteDebugOutput(ID3D10InfoQueue* This,WINBOOL mute) { This->lpVtbl->SetMuteDebugOutput(This,mute); } static FORCEINLINE WINBOOL ID3D10InfoQueue_GetMuteDebugOutput(ID3D10InfoQueue* This) { return This->lpVtbl->GetMuteDebugOutput(This); } #endif #endif #endif #endif /* __ID3D10InfoQueue_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d10sdklayers_h__ */ dxvk-0~git20220822.9df86f2/d3d10shader.h000066400000000000000000000211131430055512200171500ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2009 Henri Verbeet for CodeWeavers * * 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 * */ #ifndef __WINE_D3D10SHADER_H #define __WINE_D3D10SHADER_H #include "d3d10.h" #define D3D10_SHADER_DEBUG 0x0001 #define D3D10_SHADER_SKIP_VALIDATION 0x0002 #define D3D10_SHADER_SKIP_OPTIMIZATION 0x0004 #define D3D10_SHADER_PACK_MATRIX_ROW_MAJOR 0x0008 #define D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR 0x0010 #define D3D10_SHADER_PARTIAL_PRECISION 0x0020 #define D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT 0x0040 #define D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT 0x0080 #define D3D10_SHADER_NO_PRESHADER 0x0100 #define D3D10_SHADER_AVOID_FLOW_CONTROL 0x0200 #define D3D10_SHADER_PREFER_FLOW_CONTROL 0x0400 #define D3D10_SHADER_ENABLE_STRICTNESS 0x0800 #define D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY 0x1000 #define D3D10_SHADER_IEEE_STRICTNESS 0x2000 #define D3D10_SHADER_WARNINGS_ARE_ERRORS 0x40000 #define D3D10_SHADER_OPTIMIZATION_LEVEL0 0x4000 #define D3D10_SHADER_OPTIMIZATION_LEVEL1 0x0000 #define D3D10_SHADER_OPTIMIZATION_LEVEL2 0xC000 #define D3D10_SHADER_OPTIMIZATION_LEVEL3 0x8000 /* These are defined as version-neutral in d3dcommon.h */ typedef D3D_SHADER_MACRO D3D10_SHADER_MACRO; typedef D3D_SHADER_MACRO *LPD3D10_SHADER_MACRO; typedef D3D_SHADER_VARIABLE_CLASS D3D10_SHADER_VARIABLE_CLASS; typedef D3D_SHADER_VARIABLE_CLASS *LPD3D10_SHADER_VARIABLE_CLASS; typedef D3D_CBUFFER_TYPE D3D10_CBUFFER_TYPE; typedef D3D_CBUFFER_TYPE *LPD3D10_CBUFFER_TYPE; typedef D3D_REGISTER_COMPONENT_TYPE D3D10_REGISTER_COMPONENT_TYPE; typedef D3D_RESOURCE_RETURN_TYPE D3D10_RESOURCE_RETURN_TYPE; typedef D3D_NAME D3D10_NAME; typedef D3D_SHADER_INPUT_TYPE D3D10_SHADER_INPUT_TYPE; typedef D3D_SHADER_INPUT_TYPE *LPD3D10_SHADER_INPUT_TYPE; typedef D3D_SHADER_VARIABLE_TYPE D3D10_SHADER_VARIABLE_TYPE; typedef D3D_SHADER_VARIABLE_TYPE *LPD3D10_SHADER_VARIABLE_TYPE; typedef D3D_INCLUDE_TYPE D3D10_INCLUDE_TYPE; typedef ID3DInclude ID3D10Include; typedef ID3DInclude *LPD3D10INCLUDE; #define IID_ID3D10Include IID_ID3DInclude typedef struct _D3D10_SHADER_INPUT_BIND_DESC { const char *Name; D3D10_SHADER_INPUT_TYPE Type; UINT BindPoint; UINT BindCount; UINT uFlags; D3D10_RESOURCE_RETURN_TYPE ReturnType; D3D10_SRV_DIMENSION Dimension; UINT NumSamples; } D3D10_SHADER_INPUT_BIND_DESC; typedef struct _D3D10_SIGNATURE_PARAMETER_DESC { const char *SemanticName; UINT SemanticIndex; UINT Register; D3D10_NAME SystemValueType; D3D10_REGISTER_COMPONENT_TYPE ComponentType; BYTE Mask; BYTE ReadWriteMask; } D3D10_SIGNATURE_PARAMETER_DESC; typedef struct _D3D10_SHADER_DESC { UINT Version; const char *Creator; UINT Flags; UINT ConstantBuffers; UINT BoundResources; UINT InputParameters; UINT OutputParameters; UINT InstructionCount; UINT TempRegisterCount; UINT TempArrayCount; UINT DefCount; UINT DclCount; UINT TextureNormalInstructions; UINT TextureLoadInstructions; UINT TextureCompInstructions; UINT TextureBiasInstructions; UINT TextureGradientInstructions; UINT FloatInstructionCount; UINT IntInstructionCount; UINT UintInstructionCount; UINT StaticFlowControlCount; UINT DynamicFlowControlCount; UINT MacroInstructionCount; UINT ArrayInstructionCount; UINT CutInstructionCount; UINT EmitInstructionCount; D3D10_PRIMITIVE_TOPOLOGY GSOutputTopology; UINT GSMaxOutputVertexCount; } D3D10_SHADER_DESC; typedef struct _D3D10_SHADER_BUFFER_DESC { const char *Name; D3D10_CBUFFER_TYPE Type; UINT Variables; UINT Size; UINT uFlags; } D3D10_SHADER_BUFFER_DESC; typedef struct _D3D10_SHADER_VARIABLE_DESC { const char *Name; UINT StartOffset; UINT Size; UINT uFlags; void *DefaultValue; } D3D10_SHADER_VARIABLE_DESC; typedef struct _D3D10_SHADER_TYPE_DESC { D3D10_SHADER_VARIABLE_CLASS Class; D3D10_SHADER_VARIABLE_TYPE Type; UINT Rows; UINT Columns; UINT Elements; UINT Members; UINT Offset; } D3D10_SHADER_TYPE_DESC; DEFINE_GUID(IID_ID3D10ShaderReflectionType, 0xc530ad7d, 0x9b16, 0x4395, 0xa9, 0x79, 0xba, 0x2e, 0xcf, 0xf8, 0x3a, 0xdd); #define INTERFACE ID3D10ShaderReflectionType DECLARE_INTERFACE(ID3D10ShaderReflectionType) { STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_TYPE_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionType *, GetMemberTypeByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10ShaderReflectionType *, GetMemberTypeByName)(THIS_ const char *name) PURE; STDMETHOD_(const char *, GetMemberTypeName)(THIS_ UINT index) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10ShaderReflectionVariable, 0x1bf63c95, 0x2650, 0x405d, 0x99, 0xc1, 0x36, 0x36, 0xbd, 0x1d, 0xa0, 0xa1); #define INTERFACE ID3D10ShaderReflectionVariable DECLARE_INTERFACE(ID3D10ShaderReflectionVariable) { STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionType *, GetType)(THIS) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10ShaderReflectionConstantBuffer, 0x66c66a94, 0xdddd, 0x4b62, 0xa6, 0x6a, 0xf0, 0xda, 0x33, 0xc2, 0xb4, 0xd0); #define INTERFACE ID3D10ShaderReflectionConstantBuffer DECLARE_INTERFACE(ID3D10ShaderReflectionConstantBuffer) { STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_BUFFER_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10ShaderReflectionVariable *, GetVariableByName)(THIS_ const char *name) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D10ShaderReflection, 0xd40e20b6, 0xf8f7, 0x42ad, 0xab, 0x20, 0x4b, 0xaf, 0x8f, 0x15, 0xdf, 0xaa); #define INTERFACE ID3D10ShaderReflection DECLARE_INTERFACE_(ID3D10ShaderReflection, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D10ShaderReflection methods */ STDMETHOD(GetDesc)(THIS_ D3D10_SHADER_DESC *desc) PURE; STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D10ShaderReflectionConstantBuffer *, GetConstantBufferByName)(THIS_ const char *name) PURE; STDMETHOD(GetResourceBindingDesc)(THIS_ UINT index, D3D10_SHADER_INPUT_BIND_DESC *desc) PURE; STDMETHOD(GetInputParameterDesc)(THIS_ UINT index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD(GetOutputParameterDesc)(THIS_ UINT index, D3D10_SIGNATURE_PARAMETER_DESC *desc) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3D10CompileShader(const char *data, SIZE_T data_size, const char *filename, const D3D10_SHADER_MACRO *defines, ID3D10Include *include, const char *entrypoint, const char *profile, UINT flags, ID3D10Blob **shader, ID3D10Blob **error_messages); HRESULT WINAPI D3D10DisassembleShader(const void *data, SIZE_T data_size, WINBOOL color_code, const char *comments, ID3D10Blob **disassembly); const char * WINAPI D3D10GetVertexShaderProfile(ID3D10Device *device); const char * WINAPI D3D10GetGeometryShaderProfile(ID3D10Device *device); const char * WINAPI D3D10GetPixelShaderProfile(ID3D10Device *device); HRESULT WINAPI D3D10ReflectShader(const void *data, SIZE_T data_size, ID3D10ShaderReflection **reflector); HRESULT WINAPI D3D10GetInputSignatureBlob(const void *data, SIZE_T data_size, ID3D10Blob **blob); HRESULT WINAPI D3D10GetOutputSignatureBlob(const void *data, SIZE_T data_size, ID3D10Blob **blob); HRESULT WINAPI D3D10GetInputAndOutputSignatureBlob(const void *data, SIZE_T data_size, ID3D10Blob **blob); HRESULT WINAPI D3D10GetShaderDebugInfo(const void *data, SIZE_T data_size, ID3D10Blob **blob); #ifdef __cplusplus } #endif #endif /* __WINE_D3D10SHADER_H */ dxvk-0~git20220822.9df86f2/d3d11.h000066400000000000000000016231541430055512200160000ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11_h__ #define __d3d11_h__ /* Forward declarations */ #ifndef __ID3D11DeviceChild_FWD_DEFINED__ #define __ID3D11DeviceChild_FWD_DEFINED__ typedef interface ID3D11DeviceChild ID3D11DeviceChild; #ifdef __cplusplus interface ID3D11DeviceChild; #endif /* __cplusplus */ #endif #ifndef __ID3D11Asynchronous_FWD_DEFINED__ #define __ID3D11Asynchronous_FWD_DEFINED__ typedef interface ID3D11Asynchronous ID3D11Asynchronous; #ifdef __cplusplus interface ID3D11Asynchronous; #endif /* __cplusplus */ #endif #ifndef __ID3D11Query_FWD_DEFINED__ #define __ID3D11Query_FWD_DEFINED__ typedef interface ID3D11Query ID3D11Query; #ifdef __cplusplus interface ID3D11Query; #endif /* __cplusplus */ #endif #ifndef __ID3D11Resource_FWD_DEFINED__ #define __ID3D11Resource_FWD_DEFINED__ typedef interface ID3D11Resource ID3D11Resource; #ifdef __cplusplus interface ID3D11Resource; #endif /* __cplusplus */ #endif #ifndef __ID3D11View_FWD_DEFINED__ #define __ID3D11View_FWD_DEFINED__ typedef interface ID3D11View ID3D11View; #ifdef __cplusplus interface ID3D11View; #endif /* __cplusplus */ #endif #ifndef __ID3D11BlendState_FWD_DEFINED__ #define __ID3D11BlendState_FWD_DEFINED__ typedef interface ID3D11BlendState ID3D11BlendState; #ifdef __cplusplus interface ID3D11BlendState; #endif /* __cplusplus */ #endif #ifndef __ID3D11Buffer_FWD_DEFINED__ #define __ID3D11Buffer_FWD_DEFINED__ typedef interface ID3D11Buffer ID3D11Buffer; #ifdef __cplusplus interface ID3D11Buffer; #endif /* __cplusplus */ #endif #ifndef __ID3D11ClassInstance_FWD_DEFINED__ #define __ID3D11ClassInstance_FWD_DEFINED__ typedef interface ID3D11ClassInstance ID3D11ClassInstance; #ifdef __cplusplus interface ID3D11ClassInstance; #endif /* __cplusplus */ #endif #ifndef __ID3D11ClassLinkage_FWD_DEFINED__ #define __ID3D11ClassLinkage_FWD_DEFINED__ typedef interface ID3D11ClassLinkage ID3D11ClassLinkage; #ifdef __cplusplus interface ID3D11ClassLinkage; #endif /* __cplusplus */ #endif #ifndef __ID3D11CommandList_FWD_DEFINED__ #define __ID3D11CommandList_FWD_DEFINED__ typedef interface ID3D11CommandList ID3D11CommandList; #ifdef __cplusplus interface ID3D11CommandList; #endif /* __cplusplus */ #endif #ifndef __ID3D11ComputeShader_FWD_DEFINED__ #define __ID3D11ComputeShader_FWD_DEFINED__ typedef interface ID3D11ComputeShader ID3D11ComputeShader; #ifdef __cplusplus interface ID3D11ComputeShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11Counter_FWD_DEFINED__ #define __ID3D11Counter_FWD_DEFINED__ typedef interface ID3D11Counter ID3D11Counter; #ifdef __cplusplus interface ID3D11Counter; #endif /* __cplusplus */ #endif #ifndef __ID3D11DepthStencilState_FWD_DEFINED__ #define __ID3D11DepthStencilState_FWD_DEFINED__ typedef interface ID3D11DepthStencilState ID3D11DepthStencilState; #ifdef __cplusplus interface ID3D11DepthStencilState; #endif /* __cplusplus */ #endif #ifndef __ID3D11DepthStencilView_FWD_DEFINED__ #define __ID3D11DepthStencilView_FWD_DEFINED__ typedef interface ID3D11DepthStencilView ID3D11DepthStencilView; #ifdef __cplusplus interface ID3D11DepthStencilView; #endif /* __cplusplus */ #endif #ifndef __ID3D11DomainShader_FWD_DEFINED__ #define __ID3D11DomainShader_FWD_DEFINED__ typedef interface ID3D11DomainShader ID3D11DomainShader; #ifdef __cplusplus interface ID3D11DomainShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11GeometryShader_FWD_DEFINED__ #define __ID3D11GeometryShader_FWD_DEFINED__ typedef interface ID3D11GeometryShader ID3D11GeometryShader; #ifdef __cplusplus interface ID3D11GeometryShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11HullShader_FWD_DEFINED__ #define __ID3D11HullShader_FWD_DEFINED__ typedef interface ID3D11HullShader ID3D11HullShader; #ifdef __cplusplus interface ID3D11HullShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11InputLayout_FWD_DEFINED__ #define __ID3D11InputLayout_FWD_DEFINED__ typedef interface ID3D11InputLayout ID3D11InputLayout; #ifdef __cplusplus interface ID3D11InputLayout; #endif /* __cplusplus */ #endif #ifndef __ID3D11PixelShader_FWD_DEFINED__ #define __ID3D11PixelShader_FWD_DEFINED__ typedef interface ID3D11PixelShader ID3D11PixelShader; #ifdef __cplusplus interface ID3D11PixelShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11Predicate_FWD_DEFINED__ #define __ID3D11Predicate_FWD_DEFINED__ typedef interface ID3D11Predicate ID3D11Predicate; #ifdef __cplusplus interface ID3D11Predicate; #endif /* __cplusplus */ #endif #ifndef __ID3D11RasterizerState_FWD_DEFINED__ #define __ID3D11RasterizerState_FWD_DEFINED__ typedef interface ID3D11RasterizerState ID3D11RasterizerState; #ifdef __cplusplus interface ID3D11RasterizerState; #endif /* __cplusplus */ #endif #ifndef __ID3D11RenderTargetView_FWD_DEFINED__ #define __ID3D11RenderTargetView_FWD_DEFINED__ typedef interface ID3D11RenderTargetView ID3D11RenderTargetView; #ifdef __cplusplus interface ID3D11RenderTargetView; #endif /* __cplusplus */ #endif #ifndef __ID3D11SamplerState_FWD_DEFINED__ #define __ID3D11SamplerState_FWD_DEFINED__ typedef interface ID3D11SamplerState ID3D11SamplerState; #ifdef __cplusplus interface ID3D11SamplerState; #endif /* __cplusplus */ #endif #ifndef __ID3D11ShaderResourceView_FWD_DEFINED__ #define __ID3D11ShaderResourceView_FWD_DEFINED__ typedef interface ID3D11ShaderResourceView ID3D11ShaderResourceView; #ifdef __cplusplus interface ID3D11ShaderResourceView; #endif /* __cplusplus */ #endif #ifndef __ID3D11Texture1D_FWD_DEFINED__ #define __ID3D11Texture1D_FWD_DEFINED__ typedef interface ID3D11Texture1D ID3D11Texture1D; #ifdef __cplusplus interface ID3D11Texture1D; #endif /* __cplusplus */ #endif #ifndef __ID3D11Texture2D_FWD_DEFINED__ #define __ID3D11Texture2D_FWD_DEFINED__ typedef interface ID3D11Texture2D ID3D11Texture2D; #ifdef __cplusplus interface ID3D11Texture2D; #endif /* __cplusplus */ #endif #ifndef __ID3D11Texture3D_FWD_DEFINED__ #define __ID3D11Texture3D_FWD_DEFINED__ typedef interface ID3D11Texture3D ID3D11Texture3D; #ifdef __cplusplus interface ID3D11Texture3D; #endif /* __cplusplus */ #endif #ifndef __ID3D11UnorderedAccessView_FWD_DEFINED__ #define __ID3D11UnorderedAccessView_FWD_DEFINED__ typedef interface ID3D11UnorderedAccessView ID3D11UnorderedAccessView; #ifdef __cplusplus interface ID3D11UnorderedAccessView; #endif /* __cplusplus */ #endif #ifndef __ID3D11VertexShader_FWD_DEFINED__ #define __ID3D11VertexShader_FWD_DEFINED__ typedef interface ID3D11VertexShader ID3D11VertexShader; #ifdef __cplusplus interface ID3D11VertexShader; #endif /* __cplusplus */ #endif #ifndef __ID3D11DeviceContext_FWD_DEFINED__ #define __ID3D11DeviceContext_FWD_DEFINED__ typedef interface ID3D11DeviceContext ID3D11DeviceContext; #ifdef __cplusplus interface ID3D11DeviceContext; #endif /* __cplusplus */ #endif #ifndef __ID3D11AuthenticatedChannel_FWD_DEFINED__ #define __ID3D11AuthenticatedChannel_FWD_DEFINED__ typedef interface ID3D11AuthenticatedChannel ID3D11AuthenticatedChannel; #ifdef __cplusplus interface ID3D11AuthenticatedChannel; #endif /* __cplusplus */ #endif #ifndef __ID3D11CryptoSession_FWD_DEFINED__ #define __ID3D11CryptoSession_FWD_DEFINED__ typedef interface ID3D11CryptoSession ID3D11CryptoSession; #ifdef __cplusplus interface ID3D11CryptoSession; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoDecoder_FWD_DEFINED__ #define __ID3D11VideoDecoder_FWD_DEFINED__ typedef interface ID3D11VideoDecoder ID3D11VideoDecoder; #ifdef __cplusplus interface ID3D11VideoDecoder; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessorEnumerator_FWD_DEFINED__ #define __ID3D11VideoProcessorEnumerator_FWD_DEFINED__ typedef interface ID3D11VideoProcessorEnumerator ID3D11VideoProcessorEnumerator; #ifdef __cplusplus interface ID3D11VideoProcessorEnumerator; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessor_FWD_DEFINED__ #define __ID3D11VideoProcessor_FWD_DEFINED__ typedef interface ID3D11VideoProcessor ID3D11VideoProcessor; #ifdef __cplusplus interface ID3D11VideoProcessor; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoDecoderOutputView_FWD_DEFINED__ #define __ID3D11VideoDecoderOutputView_FWD_DEFINED__ typedef interface ID3D11VideoDecoderOutputView ID3D11VideoDecoderOutputView; #ifdef __cplusplus interface ID3D11VideoDecoderOutputView; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessorInputView_FWD_DEFINED__ #define __ID3D11VideoProcessorInputView_FWD_DEFINED__ typedef interface ID3D11VideoProcessorInputView ID3D11VideoProcessorInputView; #ifdef __cplusplus interface ID3D11VideoProcessorInputView; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessorOutputView_FWD_DEFINED__ #define __ID3D11VideoProcessorOutputView_FWD_DEFINED__ typedef interface ID3D11VideoProcessorOutputView ID3D11VideoProcessorOutputView; #ifdef __cplusplus interface ID3D11VideoProcessorOutputView; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoDevice_FWD_DEFINED__ #define __ID3D11VideoDevice_FWD_DEFINED__ typedef interface ID3D11VideoDevice ID3D11VideoDevice; #ifdef __cplusplus interface ID3D11VideoDevice; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoContext_FWD_DEFINED__ #define __ID3D11VideoContext_FWD_DEFINED__ typedef interface ID3D11VideoContext ID3D11VideoContext; #ifdef __cplusplus interface ID3D11VideoContext; #endif /* __cplusplus */ #endif #ifndef __ID3D11Device_FWD_DEFINED__ #define __ID3D11Device_FWD_DEFINED__ typedef interface ID3D11Device ID3D11Device; #ifdef __cplusplus interface ID3D11Device; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef D3D_PRIMITIVE D3D11_PRIMITIVE; typedef D3D_PRIMITIVE_TOPOLOGY D3D11_PRIMITIVE_TOPOLOGY; typedef D3D_SRV_DIMENSION D3D11_SRV_DIMENSION; typedef RECT D3D11_RECT; #ifndef __ID3D11Device_FWD_DEFINED__ #define __ID3D11Device_FWD_DEFINED__ typedef interface ID3D11Device ID3D11Device; #ifdef __cplusplus interface ID3D11Device; #endif /* __cplusplus */ #endif #ifndef __ID3D11ClassLinkage_FWD_DEFINED__ #define __ID3D11ClassLinkage_FWD_DEFINED__ typedef interface ID3D11ClassLinkage ID3D11ClassLinkage; #ifdef __cplusplus interface ID3D11ClassLinkage; #endif /* __cplusplus */ #endif #ifndef __ID3D11Resource_FWD_DEFINED__ #define __ID3D11Resource_FWD_DEFINED__ typedef interface ID3D11Resource ID3D11Resource; #ifdef __cplusplus interface ID3D11Resource; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessorInputView_FWD_DEFINED__ #define __ID3D11VideoProcessorInputView_FWD_DEFINED__ typedef interface ID3D11VideoProcessorInputView ID3D11VideoProcessorInputView; #ifdef __cplusplus interface ID3D11VideoProcessorInputView; #endif /* __cplusplus */ #endif #ifndef _D3D11_CONSTANTS #define _D3D11_CONSTANTS #define D3D11_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT (14) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS (4) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT (32) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT (15) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT (16) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS (4) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT (15) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1) #define D3D11_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS (1) #define D3D11_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT (64) #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS (4) #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT (1) #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST (1) #define D3D11_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS (1) #define D3D11_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT (32) #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS (1) #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT (128) #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST (1) #define D3D11_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS (1) #define D3D11_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT (128) #define D3D11_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS (1) #define D3D11_COMMONSHADER_SAMPLER_REGISTER_COUNT (16) #define D3D11_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST (1) #define D3D11_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS (1) #define D3D11_COMMONSHADER_SAMPLER_SLOT_COUNT (16) #define D3D11_COMMONSHADER_SUBROUTINE_NESTING_LIMIT (32) #define D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENTS (4) #define D3D11_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D11_COMMONSHADER_TEMP_REGISTER_COUNT (4096) #define D3D11_COMMONSHADER_TEMP_REGISTER_READS_PER_INST (3) #define D3D11_COMMONSHADER_TEMP_REGISTER_READ_PORTS (3) #define D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX (10) #define D3D11_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN (-10) #define D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE (-8) #define D3D11_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE (7) #define D3D11_CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (256) #define D3D11_CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP (64) #define D3D11_CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (240) #define D3D11_CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP (68) #define D3D11_CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (224) #define D3D11_CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP (72) #define D3D11_CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (208) #define D3D11_CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP (76) #define D3D11_CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (192) #define D3D11_CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP (84) #define D3D11_CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (176) #define D3D11_CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP (92) #define D3D11_CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (160) #define D3D11_CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP (100) #define D3D11_CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (144) #define D3D11_CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP (112) #define D3D11_CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (128) #define D3D11_CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP (128) #define D3D11_CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (112) #define D3D11_CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP (144) #define D3D11_CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (96) #define D3D11_CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP (168) #define D3D11_CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (80) #define D3D11_CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP (204) #define D3D11_CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (64) #define D3D11_CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP (256) #define D3D11_CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (48) #define D3D11_CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP (340) #define D3D11_CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (32) #define D3D11_CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP (512) #define D3D11_CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD (16) #define D3D11_CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP (768) #define D3D11_CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION (1) #define D3D11_CS_4_X_RAW_UAV_BYTE_ALIGNMENT (256) #define D3D11_CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP (768) #define D3D11_CS_4_X_THREAD_GROUP_MAX_X (768) #define D3D11_CS_4_X_THREAD_GROUP_MAX_Y (768) #define D3D11_CS_4_X_UAV_REGISTER_COUNT (1) #define D3D11_CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION (65535) #define D3D11_CS_TGSM_REGISTER_COUNT (8192) #define D3D11_CS_TGSM_REGISTER_READS_PER_INST (1) #define D3D11_CS_TGSM_RESOURCE_REGISTER_COMPONENTS (1) #define D3D11_CS_TGSM_RESOURCE_REGISTER_READ_PORTS (1) #define D3D11_CS_THREAD_GROUP_MAX_THREADS_PER_GROUP (1024) #define D3D11_CS_THREAD_GROUP_MAX_X (1024) #define D3D11_CS_THREAD_GROUP_MAX_Y (1024) #define D3D11_CS_THREAD_GROUP_MAX_Z (64) #define D3D11_CS_THREAD_GROUP_MIN_X (1) #define D3D11_CS_THREAD_GROUP_MIN_Y (1) #define D3D11_CS_THREAD_GROUP_MIN_Z (1) #define D3D11_CS_THREAD_LOCAL_TEMP_REGISTER_POOL (16384) #define D3D11_DEFAULT_DEPTH_BIAS (0) #define D3D11_DEFAULT_DEPTH_BIAS_CLAMP 0.0f #define D3D11_DEFAULT_MAX_ANISOTROPY (16) #define D3D11_DEFAULT_MIP_LOD_BIAS 0.0f #define D3D11_DEFAULT_RENDER_TARGET_ARRAY_INDEX (0) #define D3D11_DEFAULT_SAMPLE_MASK (0xffffffff) #define D3D11_DEFAULT_SCISSOR_ENDX (0) #define D3D11_DEFAULT_SCISSOR_ENDY (0) #define D3D11_DEFAULT_SCISSOR_STARTX (0) #define D3D11_DEFAULT_SCISSOR_STARTY (0) #define D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS 0.0f #define D3D11_DEFAULT_STENCIL_READ_MASK (0xff) #define D3D11_DEFAULT_STENCIL_REFERENCE (0) #define D3D11_DEFAULT_STENCIL_WRITE_MASK (0xff) #define D3D11_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX (0) #define D3D11_DEFAULT_VIEWPORT_HEIGHT (0) #define D3D11_DEFAULT_VIEWPORT_MAX_DEPTH 0.0f #define D3D11_DEFAULT_VIEWPORT_MIN_DEPTH 0.0f #define D3D11_DEFAULT_VIEWPORT_TOPLEFTX (0) #define D3D11_DEFAULT_VIEWPORT_TOPLEFTY (0) #define D3D11_DEFAULT_VIEWPORT_WIDTH (0) #define D3D11_FLOAT32_MAX (3.402823466e+38f) #define D3D11_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (32) #define D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT (8) #define D3D11_MAX_MAXANISOTROPY (16) #define D3D11_MAX_MULTISAMPLE_SAMPLE_COUNT (32) #define D3D11_VIEWPORT_BOUNDS_MAX (32767) #define D3D11_VIEWPORT_BOUNDS_MIN (-32768) #define D3D11_VIEWPORT_AND_SCISSORRECT_MAX_INDEX (15) #define D3D11_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16) #define D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL (0xffffffff) #define D3D11_KEEP_UNORDERED_ACCESS_VIEWS (0xffffffff) #define D3D11_SHADER_MAJOR_VERSION (5) #define D3D11_SHADER_MAX_INSTANCES (65535) #define D3D11_SHADER_MAX_INTERFACES (253) #define D3D11_SHADER_MAX_INTERFACE_CALL_SITES (4096) #define D3D11_SHADER_MAX_TYPES (65535) #define D3D11_SHADER_MINOR_VERSION (0) #define D3D11_VS_OUTPUT_REGISTER_COUNT (32) #define D3D11_OMAC_SIZE (16) #define D3D11_PS_CS_UAV_REGISTER_COMPONENTS (1) #define D3D11_PS_CS_UAV_REGISTER_COUNT (8) #define D3D11_PS_CS_UAV_REGISTER_READS_PER_INST (1) #define D3D11_PS_CS_UAV_REGISTER_READ_PORTS (1) #define D3D11_PS_FRONTFACING_DEFAULT_VALUE (0xffffffff) #define D3D11_PS_FRONTFACING_FALSE_VALUE (0) #define D3D11_PS_FRONTFACING_TRUE_VALUE (0xffffffff) #define D3D11_PS_INPUT_REGISTER_COMPONENTS (4) #define D3D11_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D11_PS_INPUT_REGISTER_COUNT (32) #define D3D11_PS_INPUT_REGISTER_READS_PER_INST (2) #define D3D11_PS_INPUT_REGISTER_READ_PORTS (1) #define D3D11_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.0f) #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS (1) #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D11_PS_OUTPUT_DEPTH_REGISTER_COUNT (1) #define D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENTS (1) #define D3D11_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D11_PS_OUTPUT_MASK_REGISTER_COUNT (1) #define D3D11_PS_OUTPUT_REGISTER_COMPONENTS (4) #define D3D11_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT (32) #define D3D11_PS_OUTPUT_REGISTER_COUNT (8) #define D3D11_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT (0.5f) #define D3D11_RAW_UAV_SRV_BYTE_ALIGNMENT (16) #define D3D11_REQ_BLEND_OBJECT_COUNT_PER_DEVICE (4096) #define D3D11_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP (27) #define D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D11_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE (4096) #define D3D11_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP (32) #define D3D11_REQ_DRAW_VERTEX_COUNT_2_TO_EXP (32) #define D3D11_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION (16384) #define D3D11_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT (1024) #define D3D11_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D11_REQ_MAXANISOTROPY (16) #define D3D11_REQ_MIP_LEVELS (15) #define D3D11_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES (2048) #define D3D11_REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE (4096) #define D3D11_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH (16384) #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM (128) #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM (0.25f) #define D3D11_REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM (2048) #define D3D11_REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP (20) #define D3D11_REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE (4096) #define D3D11_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (2048) #define D3D11_REQ_TEXTURE1D_U_DIMENSION (16384) #define D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048) #define D3D11_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384) #define D3D11_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) #define D3D11_REQ_TEXTURECUBE_DIMENSION (16384) #define D3D11_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL (0) #define D3D11_SHIFT_INSTRUCTION_PAD_VALUE (0) #define D3D11_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT (5) #define D3D11_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048) #define D3D11_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES (512) #define D3D11_SO_BUFFER_SLOT_COUNT (4) #define D3D11_SO_DDI_REGISTER_INDEX_DENOTING_GAP (0xffffffff) #define D3D11_SO_NO_RASTERIZED_STREAM (0xffffffff) #define D3D11_SO_OUTPUT_COMPONENT_COUNT (128) #define D3D11_SO_STREAM_COUNT (4) #define D3D11_SPEC_DATE_DAY (16) #define D3D11_SPEC_DATE_MONTH (5) #define D3D11_SPEC_DATE_YEAR (2011) #define D3D11_SPEC_VERSION (1.07) #define D3D11_SRGB_GAMMA (2.2f) #define D3D11_SRGB_TO_FLOAT_DENOMINATOR_1 (12.92f) #define D3D11_SRGB_TO_FLOAT_DENOMINATOR_2 (1.055f) #define D3D11_SRGB_TO_FLOAT_EXPONENT (2.4f) #define D3D11_SRGB_TO_FLOAT_OFFSET (0.055f) #define D3D11_SRGB_TO_FLOAT_THRESHOLD (0.04045f) #define D3D11_SRGB_TO_FLOAT_TOLERANCE_IN_ULP (0.5f) #define D3D11_STANDARD_COMPONENT_BIT_COUNT (32) #define D3D11_STANDARD_COMPONENT_BIT_COUNT_DOUBLED (64) #define D3D11_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE (4) #define D3D11_STANDARD_PIXEL_COMPONENT_COUNT (128) #define D3D11_STANDARD_PIXEL_ELEMENT_COUNT (32) #define D3D11_STANDARD_VECTOR_SIZE (4) #define D3D11_STANDARD_VERTEX_ELEMENT_COUNT (32) #define D3D11_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT (64) #endif #ifndef _D3D11_1_CONSTANTS #define _D3D11_1_CONSTANTS #define D3D11_1_UAV_SLOT_COUNT (64) #endif #ifndef _D3D11_2_CONSTANTS #define _D3D11_2_CONSTANTS #define D3D11_2_TILED_RESOURCE_TILE_SIZE_IN_BYTES (0x10000) #endif #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_DEFAULT {}; extern const DECLSPEC_SELECTANY CD3D11_DEFAULT D3D11_DEFAULT; #endif typedef enum D3D11_BLEND { D3D11_BLEND_ZERO = 1, D3D11_BLEND_ONE = 2, D3D11_BLEND_SRC_COLOR = 3, D3D11_BLEND_INV_SRC_COLOR = 4, D3D11_BLEND_SRC_ALPHA = 5, D3D11_BLEND_INV_SRC_ALPHA = 6, D3D11_BLEND_DEST_ALPHA = 7, D3D11_BLEND_INV_DEST_ALPHA = 8, D3D11_BLEND_DEST_COLOR = 9, D3D11_BLEND_INV_DEST_COLOR = 10, D3D11_BLEND_SRC_ALPHA_SAT = 11, D3D11_BLEND_BLEND_FACTOR = 14, D3D11_BLEND_INV_BLEND_FACTOR = 15, D3D11_BLEND_SRC1_COLOR = 16, D3D11_BLEND_INV_SRC1_COLOR = 17, D3D11_BLEND_SRC1_ALPHA = 18, D3D11_BLEND_INV_SRC1_ALPHA = 19 } D3D11_BLEND; typedef enum D3D11_BLEND_OP { D3D11_BLEND_OP_ADD = 1, D3D11_BLEND_OP_SUBTRACT = 2, D3D11_BLEND_OP_REV_SUBTRACT = 3, D3D11_BLEND_OP_MIN = 4, D3D11_BLEND_OP_MAX = 5 } D3D11_BLEND_OP; typedef enum D3D11_VIDEO_DECODER_BUFFER_TYPE { D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS = 0, D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL = 1, D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE = 2, D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL = 3, D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX = 4, D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL = 5, D3D11_VIDEO_DECODER_BUFFER_BITSTREAM = 6, D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR = 7, D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN = 8 } D3D11_VIDEO_DECODER_BUFFER_TYPE; typedef enum D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE { D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_OPAQUE = 0, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_BACKGROUND = 1, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_DESTINATION = 2, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE_SOURCE_STREAM = 3 } D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE; typedef enum D3D11_VIDEO_PROCESSOR_OUTPUT_RATE { D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_NORMAL = 0, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_HALF = 1, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE_CUSTOM = 2 } D3D11_VIDEO_PROCESSOR_OUTPUT_RATE; typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FORMAT { D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO = 0, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_HORIZONTAL = 1, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_VERTICAL = 2, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_SEPARATE = 3, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_MONO_OFFSET = 4, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_ROW_INTERLEAVED = 5, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_COLUMN_INTERLEAVED = 6, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT_CHECKERBOARD = 7 } D3D11_VIDEO_PROCESSOR_STEREO_FORMAT; typedef enum D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE { D3D11_VIDEO_PROCESSOR_STEREO_FLIP_NONE = 0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME0 = 1, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_FRAME1 = 2 } D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE; typedef enum D3D11_VIDEO_PROCESSOR_ROTATION { D3D11_VIDEO_PROCESSOR_ROTATION_IDENTITY = 0, D3D11_VIDEO_PROCESSOR_ROTATION_90 = 1, D3D11_VIDEO_PROCESSOR_ROTATION_180 = 2, D3D11_VIDEO_PROCESSOR_ROTATION_270 = 3 } D3D11_VIDEO_PROCESSOR_ROTATION; typedef enum D3D11_VIDEO_PROCESSOR_DEVICE_CAPS { D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_LINEAR_SPACE = 0x1, D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_xvYCC = 0x2, D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_RGB_RANGE_CONVERSION = 0x4, D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION = 0x8, D3D11_VIDEO_PROCESSOR_DEVICE_CAPS_NOMINAL_RANGE = 0x10 } D3D11_VIDEO_PROCESSOR_DEVICE_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_FEATURE_CAPS { D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_FILL = 0x1, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_CONSTRICTION = 0x2, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LUMA_KEY = 0x4, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_PALETTE = 0x8, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_LEGACY = 0x10, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_STEREO = 0x20, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ROTATION = 0x40, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_ALPHA_STREAM = 0x80, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_PIXEL_ASPECT_RATIO = 0x100, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_MIRROR = 0x200, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_SHADER_USAGE = 0x400, D3D11_VIDEO_PROCESSOR_FEATURE_CAPS_METADATA_HDR10 = 0x800 } D3D11_VIDEO_PROCESSOR_FEATURE_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_FILTER_CAPS { D3D11_VIDEO_PROCESSOR_FILTER_CAPS_BRIGHTNESS = 0x1, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_CONTRAST = 0x2, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_HUE = 0x4, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_SATURATION = 0x8, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_NOISE_REDUCTION = 0x10, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_EDGE_ENHANCEMENT = 0x20, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_ANAMORPHIC_SCALING = 0x40, D3D11_VIDEO_PROCESSOR_FILTER_CAPS_STEREO_ADJUSTMENT = 0x80 } D3D11_VIDEO_PROCESSOR_FILTER_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_CAPS { D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_INTERLACED = 0x1, D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_PROCAMP = 0x2, D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_RGB_LUMA_KEY = 0x4, D3D11_VIDEO_PROCESSOR_FORMAT_CAPS_PALETTE_INTERLACED = 0x8 } D3D11_VIDEO_PROCESSOR_FORMAT_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS { D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DENOISE = 0x1, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_DERINGING = 0x2, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_EDGE_ENHANCEMENT = 0x4, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_COLOR_CORRECTION = 0x8, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_FLESH_TONE_MAPPING = 0x10, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_IMAGE_STABILIZATION = 0x20, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_SUPER_RESOLUTION = 0x40, D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS_ANAMORPHIC_SCALING = 0x80 } D3D11_VIDEO_PROCESSOR_AUTO_STREAM_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_STEREO_CAPS { D3D11_VIDEO_PROCESSOR_STEREO_CAPS_MONO_OFFSET = 0x1, D3D11_VIDEO_PROCESSOR_STEREO_CAPS_ROW_INTERLEAVED = 0x2, D3D11_VIDEO_PROCESSOR_STEREO_CAPS_COLUMN_INTERLEAVED = 0x4, D3D11_VIDEO_PROCESSOR_STEREO_CAPS_CHECKERBOARD = 0x8, D3D11_VIDEO_PROCESSOR_STEREO_CAPS_FLIP_MODE = 0x10 } D3D11_VIDEO_PROCESSOR_STEREO_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS { D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND = 0x1, D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB = 0x2, D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE = 0x4, D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION = 0x8, D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE = 0x10, D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION = 0x20 } D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS { D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32 = 0x1, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22 = 0x2, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224 = 0x4, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332 = 0x8, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322 = 0x10, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55 = 0x20, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64 = 0x40, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87 = 0x80, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223 = 0x100, D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER = 0x80000000 } D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS; typedef enum D3D11_CONTENT_PROTECTION_CAPS { D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE = 0x1, D3D11_CONTENT_PROTECTION_CAPS_HARDWARE = 0x2, D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON = 0x4, D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION = 0x8, D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY = 0x10, D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY = 0x20, D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK = 0x40, D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY = 0x80, D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV = 0x100, D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY = 0x200, D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT = 0x400, D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED = 0x800, D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE = 0x1000, D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN = 0x2000, D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION = 0x4000 } D3D11_CONTENT_PROTECTION_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE { D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED = 0x0, D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 = 0x1, D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255 = 0x2 } D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE; typedef enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE { D3D11_PROCESSIDTYPE_UNKNOWN = 0x0, D3D11_PROCESSIDTYPE_DWM = 0x1, D3D11_PROCESSIDTYPE_HANDLE = 0x2 } D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE; typedef enum D3D11_BUS_TYPE { D3D11_BUS_TYPE_OTHER = 0x0, D3D11_BUS_TYPE_PCI = 0x1, D3D11_BUS_TYPE_PCIX = 0x2, D3D11_BUS_TYPE_PCIEXPRESS = 0x3, D3D11_BUS_TYPE_AGP = 0x4, D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET = 0x10000, D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP = 0x20000, D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET = 0x30000, D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR = 0x40000, D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 0x50000, D3D11_BUS_IMPL_MODIFIER_NON_STANDARD = 0x80000000 } D3D11_BUS_TYPE; typedef struct D3D11_BOX { UINT left; UINT top; UINT front; UINT right; UINT bottom; UINT back; } D3D11_BOX; typedef struct D3D11_BUFFER_RTV { __C89_NAMELESS union { UINT FirstElement; UINT ElementOffset; } __C89_NAMELESSUNIONNAME1; __C89_NAMELESS union { UINT NumElements; UINT ElementWidth; } __C89_NAMELESSUNIONNAME2; } D3D11_BUFFER_RTV; typedef struct D3D11_BUFFER_SRV { __C89_NAMELESS union { UINT FirstElement; UINT ElementOffset; } __C89_NAMELESSUNIONNAME1; __C89_NAMELESS union { UINT NumElements; UINT ElementWidth; } __C89_NAMELESSUNIONNAME2; } D3D11_BUFFER_SRV; typedef struct D3D11_BUFFER_UAV { UINT FirstElement; UINT NumElements; UINT Flags; } D3D11_BUFFER_UAV; typedef struct D3D11_BUFFEREX_SRV { UINT FirstElement; UINT NumElements; UINT Flags; } D3D11_BUFFEREX_SRV; typedef struct D3D11_CLASS_INSTANCE_DESC { UINT InstanceId; UINT InstanceIndex; UINT TypeId; UINT ConstantBuffer; UINT BaseConstantBufferOffset; UINT BaseTexture; UINT BaseSampler; WINBOOL Created; } D3D11_CLASS_INSTANCE_DESC; typedef enum D3D11_COMPARISON_FUNC { D3D11_COMPARISON_NEVER = 1, D3D11_COMPARISON_LESS = 2, D3D11_COMPARISON_EQUAL = 3, D3D11_COMPARISON_LESS_EQUAL = 4, D3D11_COMPARISON_GREATER = 5, D3D11_COMPARISON_NOT_EQUAL = 6, D3D11_COMPARISON_GREATER_EQUAL = 7, D3D11_COMPARISON_ALWAYS = 8 } D3D11_COMPARISON_FUNC; typedef enum D3D11_COUNTER { D3D11_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000 } D3D11_COUNTER; typedef struct D3D11_COUNTER_DESC { D3D11_COUNTER Counter; UINT MiscFlags; } D3D11_COUNTER_DESC; typedef struct D3D11_COUNTER_INFO { D3D11_COUNTER LastDeviceDependentCounter; UINT NumSimultaneousCounters; UINT8 NumDetectableParallelUnits; } D3D11_COUNTER_INFO; typedef enum D3D11_COUNTER_TYPE { D3D11_COUNTER_TYPE_FLOAT32 = 0, D3D11_COUNTER_TYPE_UINT16 = 1, D3D11_COUNTER_TYPE_UINT32 = 2, D3D11_COUNTER_TYPE_UINT64 = 3 } D3D11_COUNTER_TYPE; typedef enum D3D11_CULL_MODE { D3D11_CULL_NONE = 1, D3D11_CULL_FRONT = 2, D3D11_CULL_BACK = 3 } D3D11_CULL_MODE; typedef enum D3D11_DEPTH_WRITE_MASK { D3D11_DEPTH_WRITE_MASK_ZERO = 0, D3D11_DEPTH_WRITE_MASK_ALL = 1 } D3D11_DEPTH_WRITE_MASK; typedef enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS { D3D11_STANDARD_MULTISAMPLE_PATTERN = 0xffffffff, D3D11_CENTER_MULTISAMPLE_PATTERN = 0xfffffffe } D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS; typedef enum D3D11_DEVICE_CONTEXT_TYPE { D3D11_DEVICE_CONTEXT_IMMEDIATE = 0, D3D11_DEVICE_CONTEXT_DEFERRED = 1 } D3D11_DEVICE_CONTEXT_TYPE; typedef enum D3D11_DSV_DIMENSION { D3D11_DSV_DIMENSION_UNKNOWN = 0, D3D11_DSV_DIMENSION_TEXTURE1D = 1, D3D11_DSV_DIMENSION_TEXTURE1DARRAY = 2, D3D11_DSV_DIMENSION_TEXTURE2D = 3, D3D11_DSV_DIMENSION_TEXTURE2DARRAY = 4, D3D11_DSV_DIMENSION_TEXTURE2DMS = 5, D3D11_DSV_DIMENSION_TEXTURE2DMSARRAY = 6 } D3D11_DSV_DIMENSION; typedef enum D3D11_FEATURE { D3D11_FEATURE_THREADING = 0, D3D11_FEATURE_DOUBLES = 1, D3D11_FEATURE_FORMAT_SUPPORT = 2, D3D11_FEATURE_FORMAT_SUPPORT2 = 3, D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS = 4, D3D11_FEATURE_D3D11_OPTIONS = 5, D3D11_FEATURE_ARCHITECTURE_INFO = 6, D3D11_FEATURE_D3D9_OPTIONS = 7, D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT = 8, D3D11_FEATURE_D3D9_SHADOW_SUPPORT = 9, D3D11_FEATURE_D3D11_OPTIONS1 = 10, D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT = 11, D3D11_FEATURE_MARKER_SUPPORT = 12, D3D11_FEATURE_D3D9_OPTIONS1 = 13, D3D11_FEATURE_D3D11_OPTIONS2 = 14, D3D11_FEATURE_D3D11_OPTIONS3 = 15, D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT = 16, D3D11_FEATURE_D3D11_OPTIONS4 = 17, D3D11_FEATURE_SHADER_CACHE = 18, D3D11_FEATURE_D3D11_OPTIONS5 = 19 } D3D11_FEATURE; typedef struct D3D11_FEATURE_DATA_THREADING { WINBOOL DriverConcurrentCreates; WINBOOL DriverCommandLists; } D3D11_FEATURE_DATA_THREADING; typedef struct D3D11_FEATURE_DATA_DOUBLES { WINBOOL DoublePrecisionFloatShaderOps; } D3D11_FEATURE_DATA_DOUBLES; typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT { DXGI_FORMAT InFormat; UINT OutFormatSupport; } D3D11_FEATURE_DATA_FORMAT_SUPPORT; typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2 { DXGI_FORMAT InFormat; UINT OutFormatSupport2; } D3D11_FEATURE_DATA_FORMAT_SUPPORT2; typedef struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS { WINBOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x; } D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS; typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS { WINBOOL OutputMergerLogicOp; WINBOOL UAVOnlyRenderingForcedSampleCount; WINBOOL DiscardAPIsSeenByDriver; WINBOOL FlagsForUpdateAndCopySeenByDriver; WINBOOL ClearView; WINBOOL CopyWithOverlap; WINBOOL ConstantBufferPartialUpdate; WINBOOL ConstantBufferOffsetting; WINBOOL MapNoOverwriteOnDynamicConstantBuffer; WINBOOL MapNoOverwriteOnDynamicBufferSRV; WINBOOL MultisampleRTVWithForcedSampleCountOne; WINBOOL SAD4ShaderInstructions; WINBOOL ExtendedDoublesShaderInstructions; WINBOOL ExtendedResourceSharing; } D3D11_FEATURE_DATA_D3D11_OPTIONS; typedef struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO { WINBOOL TileBasedDeferredRenderer; } D3D11_FEATURE_DATA_ARCHITECTURE_INFO; typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS { WINBOOL FullNonPow2TextureSupport; } D3D11_FEATURE_DATA_D3D9_OPTIONS; typedef struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT { WINBOOL SupportsDepthAsTextureWithLessEqualComparisonFilter; } D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT; typedef enum D3D11_SHADER_MIN_PRECISION_SUPPORT { D3D11_SHADER_MIN_PRECISION_10_BIT = 0x1, D3D11_SHADER_MIN_PRECISION_16_BIT = 0x2 } D3D11_SHADER_MIN_PRECISION_SUPPORT; typedef struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT { UINT PixelShaderMinPrecision; UINT AllOtherShaderStagesMinPrecision; } D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT; typedef enum D3D11_TILED_RESOURCES_TIER { D3D11_TILED_RESOURCES_NOT_SUPPORTED = 0x0, D3D11_TILED_RESOURCES_TIER_1 = 0x1, D3D11_TILED_RESOURCES_TIER_2 = 0x2, D3D11_TILED_RESOURCES_TIER_3 = 0x3 } D3D11_TILED_RESOURCES_TIER; typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS1 { D3D11_TILED_RESOURCES_TIER TiledResourcesTier; WINBOOL MinMaxFiltering; WINBOOL ClearViewAlsoSupportsDepthOnlyFormats; WINBOOL MapOnDefaultBuffers; } D3D11_FEATURE_DATA_D3D11_OPTIONS1; typedef struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT { WINBOOL SimpleInstancingSupported; } D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT; typedef struct D3D11_FEATURE_DATA_MARKER_SUPPORT { WINBOOL Profile; } D3D11_FEATURE_DATA_MARKER_SUPPORT; typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS1 { WINBOOL FullNonPow2TextureSupported; WINBOOL DepthAsTextureWithLessEqualComparisonFilterSupported; WINBOOL SimpleInstancingSupported; WINBOOL TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported; } D3D11_FEATURE_DATA_D3D9_OPTIONS1; typedef enum D3D11_CONSERVATIVE_RASTERIZATION_TIER { D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED = 0x0, D3D11_CONSERVATIVE_RASTERIZATION_TIER_1 = 0x1, D3D11_CONSERVATIVE_RASTERIZATION_TIER_2 = 0x2, D3D11_CONSERVATIVE_RASTERIZATION_TIER_3 = 0x3 } D3D11_CONSERVATIVE_RASTERIZATION_TIER; typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS2 { WINBOOL PSSpecifiedStencilRefSupported; WINBOOL TypedUAVLoadAdditionalFormats; WINBOOL ROVsSupported; D3D11_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; D3D11_TILED_RESOURCES_TIER TiledResourcesTier; WINBOOL MapOnDefaultTextures; WINBOOL StandardSwizzle; WINBOOL UnifiedMemoryArchitecture; } D3D11_FEATURE_DATA_D3D11_OPTIONS2; typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS3 { WINBOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizer; } D3D11_FEATURE_DATA_D3D11_OPTIONS3; typedef struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT { UINT MaxGPUVirtualAddressBitsPerResource; UINT MaxGPUVirtualAddressBitsPerProcess; } D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT; typedef enum D3D11_SHADER_CACHE_SUPPORT_FLAGS { D3D11_SHADER_CACHE_SUPPORT_NONE = 0x0, D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE = 0x1, D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE = 0x2 } D3D11_SHADER_CACHE_SUPPORT_FLAGS; typedef struct D3D11_FEATURE_DATA_SHADER_CACHE { UINT SupportFlags; } D3D11_FEATURE_DATA_SHADER_CACHE; typedef enum D3D11_SHARED_RESOURCE_TIER { D3D11_SHARED_RESOURCE_TIER_0 = 0, D3D11_SHARED_RESOURCE_TIER_1 = 1, D3D11_SHARED_RESOURCE_TIER_2 = 2, D3D11_SHARED_RESOURCE_TIER_3 = 3 } D3D11_SHARED_RESOURCE_TIER; typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS5 { D3D11_SHARED_RESOURCE_TIER SharedResourceTier; } D3D11_FEATURE_DATA_D3D11_OPTIONS5; typedef enum D3D11_FILL_MODE { D3D11_FILL_WIREFRAME = 2, D3D11_FILL_SOLID = 3 } D3D11_FILL_MODE; typedef enum D3D11_FILTER_TYPE { D3D11_FILTER_TYPE_POINT = 0, D3D11_FILTER_TYPE_LINEAR = 1 } D3D11_FILTER_TYPE; #define D3D11_MIN_FILTER_SHIFT (4) #define D3D11_MAG_FILTER_SHIFT (2) #define D3D11_MIP_FILTER_SHIFT (0) #define D3D11_FILTER_TYPE_MASK (0x3) #define D3D11_COMPARISON_FILTERING_BIT (0x80) #define D3D11_ANISOTROPIC_FILTERING_BIT (0x40) #define D3D11_ENCODE_BASIC_FILTER(min, mag, mip, bComparison) \ ((D3D11_FILTER)(((bComparison) ? D3D11_COMPARISON_FILTERING_BIT : 0 ) | \ (((min)&D3D11_FILTER_TYPE_MASK) << D3D11_MIN_FILTER_SHIFT) | \ (((mag)&D3D11_FILTER_TYPE_MASK) << D3D11_MAG_FILTER_SHIFT) | \ (((mip)&D3D11_FILTER_TYPE_MASK) << D3D11_MIP_FILTER_SHIFT))) #define D3D11_ENCODE_ANISOTROPIC_FILTER(bComparison) \ ((D3D11_FILTER)(D3D11_ANISOTROPIC_FILTERING_BIT | \ D3D11_ENCODE_BASIC_FILTER(D3D11_FILTER_TYPE_LINEAR,D3D11_FILTER_TYPE_LINEAR, \ D3D11_FILTER_TYPE_LINEAR,bComparison))) #define D3D11_DECODE_MIN_FILTER(d3d11Filter) \ ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIN_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK)) #define D3D11_DECODE_MAG_FILTER(d3d11Filter) \ ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MAG_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK)) #define D3D11_DECODE_MIP_FILTER(d3d11Filter) \ ((D3D11_FILTER_TYPE)(((d3d11Filter) >> D3D11_MIP_FILTER_SHIFT) & D3D11_FILTER_TYPE_MASK)) #define D3D11_DECODE_IS_COMPARISON_FILTER(d3d11Filter) ((d3d11Filter) & D3D11_COMPARISON_FILTERING_BIT) #define D3D11_DECODE_IS_ANISOTROPIC_FILTER(d3d11Filter) \ (((d3d11Filter) & D3D11_ANISOTROPIC_FILTERING_BIT ) \ && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIN_FILTER(d3d11Filter)) \ && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MAG_FILTER(d3d11Filter)) \ && (D3D11_FILTER_TYPE_LINEAR == D3D11_DECODE_MIP_FILTER(d3d11Filter))) typedef enum D3D11_FILTER { D3D11_FILTER_MIN_MAG_MIP_POINT = 0x0, D3D11_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1, D3D11_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4, D3D11_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5, D3D11_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, D3D11_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, D3D11_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, D3D11_FILTER_MIN_MAG_MIP_LINEAR = 0x15, D3D11_FILTER_ANISOTROPIC = 0x55, D3D11_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80, D3D11_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81, D3D11_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84, D3D11_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85, D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90, D3D11_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91, D3D11_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94, D3D11_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95, D3D11_FILTER_COMPARISON_ANISOTROPIC = 0xd5, D3D11_FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100, D3D11_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101, D3D11_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104, D3D11_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105, D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110, D3D11_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111, D3D11_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114, D3D11_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115, D3D11_FILTER_MINIMUM_ANISOTROPIC = 0x155, D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180, D3D11_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181, D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184, D3D11_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185, D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190, D3D11_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191, D3D11_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194, D3D11_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195, D3D11_FILTER_MAXIMUM_ANISOTROPIC = 0x1d5 } D3D11_FILTER; typedef enum D3D11_DSV_FLAG { D3D11_DSV_READ_ONLY_DEPTH = 0x1, D3D11_DSV_READ_ONLY_STENCIL = 0x2 } D3D11_DSV_FLAG; typedef enum D3D11_BUFFEREX_SRV_FLAG { D3D11_BUFFEREX_SRV_FLAG_RAW = 0x1 } D3D11_BUFFEREX_SRV_FLAG; typedef enum D3D11_UAV_FLAG { D3D11_BUFFER_UAV_FLAG_RAW = 0x1, D3D11_BUFFER_UAV_FLAG_APPEND = 0x2, D3D11_BUFFER_UAV_FLAG_COUNTER = 0x4 } D3D11_UAV_FLAG; typedef enum D3D11_INPUT_CLASSIFICATION { D3D11_INPUT_PER_VERTEX_DATA = 0, D3D11_INPUT_PER_INSTANCE_DATA = 1 } D3D11_INPUT_CLASSIFICATION; #define D3D11_APPEND_ALIGNED_ELEMENT (0xffffffff) typedef struct D3D11_INPUT_ELEMENT_DESC { LPCSTR SemanticName; UINT SemanticIndex; DXGI_FORMAT Format; UINT InputSlot; UINT AlignedByteOffset; D3D11_INPUT_CLASSIFICATION InputSlotClass; UINT InstanceDataStepRate; } D3D11_INPUT_ELEMENT_DESC; typedef enum D3D11_MAP { D3D11_MAP_READ = 1, D3D11_MAP_WRITE = 2, D3D11_MAP_READ_WRITE = 3, D3D11_MAP_WRITE_DISCARD = 4, D3D11_MAP_WRITE_NO_OVERWRITE = 5 } D3D11_MAP; typedef enum D3D11_MAP_FLAG { D3D11_MAP_FLAG_DO_NOT_WAIT = 0x100000 } D3D11_MAP_FLAG; typedef enum D3D11_RAISE_FLAG { D3D11_RAISE_FLAG_DRIVER_INTERNAL_ERROR = 0x1 } D3D11_RAISE_FLAG; typedef struct D3D11_QUERY_DATA_SO_STATISTICS { UINT64 NumPrimitivesWritten; UINT64 PrimitivesStorageNeeded; } D3D11_QUERY_DATA_SO_STATISTICS; typedef struct D3D11_MAPPED_SUBRESOURCE { void *pData; UINT RowPitch; UINT DepthPitch; } D3D11_MAPPED_SUBRESOURCE; typedef enum D3D11_QUERY { D3D11_QUERY_EVENT = 0, D3D11_QUERY_OCCLUSION = 1, D3D11_QUERY_TIMESTAMP = 2, D3D11_QUERY_TIMESTAMP_DISJOINT = 3, D3D11_QUERY_PIPELINE_STATISTICS = 4, D3D11_QUERY_OCCLUSION_PREDICATE = 5, D3D11_QUERY_SO_STATISTICS = 6, D3D11_QUERY_SO_OVERFLOW_PREDICATE = 7, D3D11_QUERY_SO_STATISTICS_STREAM0 = 8, D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM0 = 9, D3D11_QUERY_SO_STATISTICS_STREAM1 = 10, D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM1 = 11, D3D11_QUERY_SO_STATISTICS_STREAM2 = 12, D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM2 = 13, D3D11_QUERY_SO_STATISTICS_STREAM3 = 14, D3D11_QUERY_SO_OVERFLOW_PREDICATE_STREAM3 = 15 } D3D11_QUERY; typedef enum D3D11_QUERY_MISC_FLAG { D3D11_QUERY_MISC_PREDICATEHINT = 0x1 } D3D11_QUERY_MISC_FLAG; typedef enum D3D11_ASYNC_GETDATA_FLAG { D3D11_ASYNC_GETDATA_DONOTFLUSH = 0x1 } D3D11_ASYNC_GETDATA_FLAG; typedef enum D3D11_RESOURCE_MISC_FLAG { D3D11_RESOURCE_MISC_GENERATE_MIPS = 0x1, D3D11_RESOURCE_MISC_SHARED = 0x2, D3D11_RESOURCE_MISC_TEXTURECUBE = 0x4, D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS = 0x10, D3D11_RESOURCE_MISC_BUFFER_ALLOW_RAW_VIEWS = 0x20, D3D11_RESOURCE_MISC_BUFFER_STRUCTURED = 0x40, D3D11_RESOURCE_MISC_RESOURCE_CLAMP = 0x80, D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX = 0x100, D3D11_RESOURCE_MISC_GDI_COMPATIBLE = 0x200, D3D11_RESOURCE_MISC_SHARED_NTHANDLE = 0x800, D3D11_RESOURCE_MISC_RESTRICTED_CONTENT = 0x1000, D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE = 0x2000, D3D11_RESOURCE_MISC_RESTRICT_SHARED_RESOURCE_DRIVER = 0x4000, D3D11_RESOURCE_MISC_GUARDED = 0x8000, D3D11_RESOURCE_MISC_TILE_POOL = 0x20000, D3D11_RESOURCE_MISC_TILED = 0x40000, D3D11_RESOURCE_MISC_HW_PROTECTED = 0x80000 } D3D11_RESOURCE_MISC_FLAG; typedef struct D3D11_QUERY_DESC { D3D11_QUERY Query; UINT MiscFlags; } D3D11_QUERY_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_QUERY_DESC : public D3D11_QUERY_DESC { CD3D11_QUERY_DESC() {} ~CD3D11_QUERY_DESC() {} explicit CD3D11_QUERY_DESC(const D3D11_QUERY_DESC &other) : D3D11_QUERY_DESC(other) {} explicit CD3D11_QUERY_DESC(D3D11_QUERY query, UINT misc_flags = 0) { Query = query; MiscFlags = misc_flags; } operator const D3D11_QUERY_DESC&() const { return *this; } }; #endif typedef struct D3D11_RASTERIZER_DESC { D3D11_FILL_MODE FillMode; D3D11_CULL_MODE CullMode; WINBOOL FrontCounterClockwise; INT DepthBias; FLOAT DepthBiasClamp; FLOAT SlopeScaledDepthBias; WINBOOL DepthClipEnable; WINBOOL ScissorEnable; WINBOOL MultisampleEnable; WINBOOL AntialiasedLineEnable; } D3D11_RASTERIZER_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_RASTERIZER_DESC : public D3D11_RASTERIZER_DESC { CD3D11_RASTERIZER_DESC() {} explicit CD3D11_RASTERIZER_DESC(const D3D11_RASTERIZER_DESC &o) : D3D11_RASTERIZER_DESC(o) {} explicit CD3D11_RASTERIZER_DESC(CD3D11_DEFAULT) { FillMode = D3D11_FILL_SOLID; CullMode = D3D11_CULL_BACK; FrontCounterClockwise = FALSE; DepthBias = D3D11_DEFAULT_DEPTH_BIAS; DepthBiasClamp = D3D11_DEFAULT_DEPTH_BIAS_CLAMP; SlopeScaledDepthBias = D3D11_DEFAULT_SLOPE_SCALED_DEPTH_BIAS; DepthClipEnable = TRUE; ScissorEnable = FALSE; MultisampleEnable = FALSE; AntialiasedLineEnable = FALSE; } explicit CD3D11_RASTERIZER_DESC(D3D11_FILL_MODE fillMode, D3D11_CULL_MODE cullMode, WINBOOL frontCounterClockwise, INT depthBias, FLOAT depthBiasClamp, FLOAT slopeScaledDepthBias, BOOL depthClipEnable, WINBOOL scissorEnable, WINBOOL multisampleEnable, WINBOOL antialiasedLineEnable) { FillMode = fillMode; CullMode = cullMode; FrontCounterClockwise = frontCounterClockwise; DepthBias = depthBias; DepthBiasClamp = depthBiasClamp; SlopeScaledDepthBias = slopeScaledDepthBias; DepthClipEnable = depthClipEnable; ScissorEnable = scissorEnable; MultisampleEnable = multisampleEnable; AntialiasedLineEnable = antialiasedLineEnable; } ~CD3D11_RASTERIZER_DESC() {} operator const D3D11_RASTERIZER_DESC&() const { return *this; } }; #endif typedef enum D3D11_RESOURCE_DIMENSION { D3D11_RESOURCE_DIMENSION_UNKNOWN = 0, D3D11_RESOURCE_DIMENSION_BUFFER = 1, D3D11_RESOURCE_DIMENSION_TEXTURE1D = 2, D3D11_RESOURCE_DIMENSION_TEXTURE2D = 3, D3D11_RESOURCE_DIMENSION_TEXTURE3D = 4 } D3D11_RESOURCE_DIMENSION; typedef enum D3D11_RTV_DIMENSION { D3D11_RTV_DIMENSION_UNKNOWN = 0, D3D11_RTV_DIMENSION_BUFFER = 1, D3D11_RTV_DIMENSION_TEXTURE1D = 2, D3D11_RTV_DIMENSION_TEXTURE1DARRAY = 3, D3D11_RTV_DIMENSION_TEXTURE2D = 4, D3D11_RTV_DIMENSION_TEXTURE2DARRAY = 5, D3D11_RTV_DIMENSION_TEXTURE2DMS = 6, D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D11_RTV_DIMENSION_TEXTURE3D = 8 } D3D11_RTV_DIMENSION; typedef struct D3D11_SO_DECLARATION_ENTRY { UINT Stream; LPCSTR SemanticName; UINT SemanticIndex; BYTE StartComponent; BYTE ComponentCount; BYTE OutputSlot; } D3D11_SO_DECLARATION_ENTRY; typedef enum D3D11_STENCIL_OP { D3D11_STENCIL_OP_KEEP = 1, D3D11_STENCIL_OP_ZERO = 2, D3D11_STENCIL_OP_REPLACE = 3, D3D11_STENCIL_OP_INCR_SAT = 4, D3D11_STENCIL_OP_DECR_SAT = 5, D3D11_STENCIL_OP_INVERT = 6, D3D11_STENCIL_OP_INCR = 7, D3D11_STENCIL_OP_DECR = 8 } D3D11_STENCIL_OP; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) } inline UINT D3D11CalcSubresource(UINT MipSlice, UINT ArraySlice, UINT MipLevels) { return MipSlice + ArraySlice * MipLevels; } extern "C"{ #endif typedef struct D3D11_SUBRESOURCE_DATA { const void *pSysMem; UINT SysMemPitch; UINT SysMemSlicePitch; } D3D11_SUBRESOURCE_DATA; typedef struct D3D11_TEX1D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX1D_ARRAY_DSV; typedef struct D3D11_TEX1D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX1D_ARRAY_RTV; typedef struct D3D11_TEX1D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX1D_ARRAY_SRV; typedef struct D3D11_TEX1D_ARRAY_UAV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX1D_ARRAY_UAV; typedef struct D3D11_TEX1D_DSV { UINT MipSlice; } D3D11_TEX1D_DSV; typedef struct D3D11_TEX1D_RTV { UINT MipSlice; } D3D11_TEX1D_RTV; typedef struct D3D11_TEX1D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D11_TEX1D_SRV; typedef struct D3D11_TEX1D_UAV { UINT MipSlice; } D3D11_TEX1D_UAV; typedef struct D3D11_TEX2D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2D_ARRAY_DSV; typedef struct D3D11_TEX2D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2D_ARRAY_RTV; typedef struct D3D11_TEX2D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2D_ARRAY_SRV; typedef struct D3D11_TEX2D_ARRAY_UAV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2D_ARRAY_UAV; typedef struct D3D11_TEX2D_DSV { UINT MipSlice; } D3D11_TEX2D_DSV; typedef struct D3D11_TEX2D_RTV { UINT MipSlice; } D3D11_TEX2D_RTV; typedef struct D3D11_TEX2D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D11_TEX2D_SRV; typedef struct D3D11_TEX2D_UAV { UINT MipSlice; } D3D11_TEX2D_UAV; typedef struct D3D11_TEX2DMS_ARRAY_DSV { UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2DMS_ARRAY_DSV; typedef struct D3D11_TEX2DMS_ARRAY_RTV { UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2DMS_ARRAY_RTV; typedef struct D3D11_TEX2DMS_ARRAY_SRV { UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2DMS_ARRAY_SRV; typedef struct D3D11_TEX2DMS_DSV { UINT UnusedField_NothingToDefine; } D3D11_TEX2DMS_DSV; typedef struct D3D11_TEX2DMS_RTV { UINT UnusedField_NothingToDefine; } D3D11_TEX2DMS_RTV; typedef struct D3D11_TEX2DMS_SRV { UINT UnusedField_NothingToDefine; } D3D11_TEX2DMS_SRV; typedef struct D3D11_TEX3D_RTV { UINT MipSlice; UINT FirstWSlice; UINT WSize; } D3D11_TEX3D_RTV; typedef struct D3D11_TEX3D_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D11_TEX3D_SRV; typedef struct D3D11_TEX3D_UAV { UINT MipSlice; UINT FirstWSlice; UINT WSize; } D3D11_TEX3D_UAV; typedef struct D3D11_TEXCUBE_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT First2DArrayFace; UINT NumCubes; } D3D11_TEXCUBE_ARRAY_SRV; typedef struct D3D11_TEXCUBE_SRV { UINT MostDetailedMip; UINT MipLevels; } D3D11_TEXCUBE_SRV; typedef enum D3D11_TEXTURE_ADDRESS_MODE { D3D11_TEXTURE_ADDRESS_WRAP = 1, D3D11_TEXTURE_ADDRESS_MIRROR = 2, D3D11_TEXTURE_ADDRESS_CLAMP = 3, D3D11_TEXTURE_ADDRESS_BORDER = 4, D3D11_TEXTURE_ADDRESS_MIRROR_ONCE = 5 } D3D11_TEXTURE_ADDRESS_MODE; typedef enum D3D11_UAV_DIMENSION { D3D11_UAV_DIMENSION_UNKNOWN = 0, D3D11_UAV_DIMENSION_BUFFER = 1, D3D11_UAV_DIMENSION_TEXTURE1D = 2, D3D11_UAV_DIMENSION_TEXTURE1DARRAY = 3, D3D11_UAV_DIMENSION_TEXTURE2D = 4, D3D11_UAV_DIMENSION_TEXTURE2DARRAY = 5, D3D11_UAV_DIMENSION_TEXTURE3D = 8 } D3D11_UAV_DIMENSION; typedef struct D3D11_UNORDERED_ACCESS_VIEW_DESC { DXGI_FORMAT Format; D3D11_UAV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_UAV Buffer; D3D11_TEX1D_UAV Texture1D; D3D11_TEX1D_ARRAY_UAV Texture1DArray; D3D11_TEX2D_UAV Texture2D; D3D11_TEX2D_ARRAY_UAV Texture2DArray; D3D11_TEX3D_UAV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D11_UNORDERED_ACCESS_VIEW_DESC; typedef enum D3D11_USAGE { D3D11_USAGE_DEFAULT = 0, D3D11_USAGE_IMMUTABLE = 1, D3D11_USAGE_DYNAMIC = 2, D3D11_USAGE_STAGING = 3 } D3D11_USAGE; typedef enum D3D11_BIND_FLAG { D3D11_BIND_VERTEX_BUFFER = 0x1, D3D11_BIND_INDEX_BUFFER = 0x2, D3D11_BIND_CONSTANT_BUFFER = 0x4, D3D11_BIND_SHADER_RESOURCE = 0x8, D3D11_BIND_STREAM_OUTPUT = 0x10, D3D11_BIND_RENDER_TARGET = 0x20, D3D11_BIND_DEPTH_STENCIL = 0x40, D3D11_BIND_UNORDERED_ACCESS = 0x80, D3D11_BIND_DECODER = 0x200, D3D11_BIND_VIDEO_ENCODER = 0x400 } D3D11_BIND_FLAG; typedef enum D3D11_CPU_ACCESS_FLAG { D3D11_CPU_ACCESS_WRITE = 0x10000, D3D11_CPU_ACCESS_READ = 0x20000 } D3D11_CPU_ACCESS_FLAG; typedef struct D3D11_VIEWPORT { FLOAT TopLeftX; FLOAT TopLeftY; FLOAT Width; FLOAT Height; FLOAT MinDepth; FLOAT MaxDepth; } D3D11_VIEWPORT; typedef enum D3D11_COLOR_WRITE_ENABLE { D3D11_COLOR_WRITE_ENABLE_RED = 1, D3D11_COLOR_WRITE_ENABLE_GREEN = 2, D3D11_COLOR_WRITE_ENABLE_BLUE = 4, D3D11_COLOR_WRITE_ENABLE_ALPHA = 8, D3D11_COLOR_WRITE_ENABLE_ALL = ((D3D11_COLOR_WRITE_ENABLE_RED | D3D11_COLOR_WRITE_ENABLE_GREEN) | D3D11_COLOR_WRITE_ENABLE_BLUE) | D3D11_COLOR_WRITE_ENABLE_ALPHA } D3D11_COLOR_WRITE_ENABLE; typedef enum D3D11_FORMAT_SUPPORT { D3D11_FORMAT_SUPPORT_BUFFER = 0x1, D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x2, D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x4, D3D11_FORMAT_SUPPORT_SO_BUFFER = 0x8, D3D11_FORMAT_SUPPORT_TEXTURE1D = 0x10, D3D11_FORMAT_SUPPORT_TEXTURE2D = 0x20, D3D11_FORMAT_SUPPORT_TEXTURE3D = 0x40, D3D11_FORMAT_SUPPORT_TEXTURECUBE = 0x80, D3D11_FORMAT_SUPPORT_SHADER_LOAD = 0x100, D3D11_FORMAT_SUPPORT_SHADER_SAMPLE = 0x200, D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x400, D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x800, D3D11_FORMAT_SUPPORT_MIP = 0x1000, D3D11_FORMAT_SUPPORT_MIP_AUTOGEN = 0x2000, D3D11_FORMAT_SUPPORT_RENDER_TARGET = 0x4000, D3D11_FORMAT_SUPPORT_BLENDABLE = 0x8000, D3D11_FORMAT_SUPPORT_DEPTH_STENCIL = 0x10000, D3D11_FORMAT_SUPPORT_CPU_LOCKABLE = 0x20000, D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x40000, D3D11_FORMAT_SUPPORT_DISPLAY = 0x80000, D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x100000, D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x200000, D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x400000, D3D11_FORMAT_SUPPORT_SHADER_GATHER = 0x800000, D3D11_FORMAT_SUPPORT_BACK_BUFFER_CAST = 0x1000000, D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW = 0x2000000, D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON = 0x4000000, D3D11_FORMAT_SUPPORT_DECODER_OUTPUT = 0x8000000, D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT = 0x10000000, D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT = 0x20000000, D3D11_FORMAT_SUPPORT_VIDEO_ENCODER = 0x40000000 } D3D11_FORMAT_SUPPORT; typedef enum D3D11_FORMAT_SUPPORT2 { D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD = 0x1, D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS = 0x2, D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 0x4, D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE = 0x8, D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX = 0x10, D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 0x20, D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD = 0x40, D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE = 0x80, D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP = 0x100, D3D11_FORMAT_SUPPORT2_TILED = 0x200, D3D11_FORMAT_SUPPORT2_SHAREABLE = 0x400, D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x4000 } D3D11_FORMAT_SUPPORT2; typedef enum D3D11_CLEAR_FLAG { D3D11_CLEAR_DEPTH = 0x1, D3D11_CLEAR_STENCIL = 0x2 } D3D11_CLEAR_FLAG; typedef struct D3D11_RENDER_TARGET_BLEND_DESC { WINBOOL BlendEnable; D3D11_BLEND SrcBlend; D3D11_BLEND DestBlend; D3D11_BLEND_OP BlendOp; D3D11_BLEND SrcBlendAlpha; D3D11_BLEND DestBlendAlpha; D3D11_BLEND_OP BlendOpAlpha; UINT8 RenderTargetWriteMask; } D3D11_RENDER_TARGET_BLEND_DESC; typedef struct D3D11_BLEND_DESC { WINBOOL AlphaToCoverageEnable; WINBOOL IndependentBlendEnable; D3D11_RENDER_TARGET_BLEND_DESC RenderTarget[8]; } D3D11_BLEND_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_BLEND_DESC : public D3D11_BLEND_DESC { CD3D11_BLEND_DESC() {} explicit CD3D11_BLEND_DESC(const D3D11_BLEND_DESC &o) : D3D11_BLEND_DESC(o) {} explicit CD3D11_BLEND_DESC(CD3D11_DEFAULT) { AlphaToCoverageEnable = FALSE; IndependentBlendEnable = FALSE; for(D3D11_RENDER_TARGET_BLEND_DESC *target = RenderTarget; target < RenderTarget + D3D11_SIMULTANEOUS_RENDER_TARGET_COUNT; target++) { target->BlendEnable = FALSE; target->SrcBlend = target->SrcBlendAlpha = D3D11_BLEND_ONE; target->DestBlend = target->DestBlendAlpha = D3D11_BLEND_ZERO; target->BlendOp = target->BlendOpAlpha = D3D11_BLEND_OP_ADD; target->RenderTargetWriteMask = D3D11_COLOR_WRITE_ENABLE_ALL; } } ~CD3D11_BLEND_DESC() {} operator const D3D11_BLEND_DESC&() const { return *this; } }; #endif typedef struct D3D11_BUFFER_DESC { UINT ByteWidth; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; UINT StructureByteStride; } D3D11_BUFFER_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_BUFFER_DESC : public D3D11_BUFFER_DESC { CD3D11_BUFFER_DESC() {} explicit CD3D11_BUFFER_DESC(const D3D11_BUFFER_DESC &o) : D3D11_BUFFER_DESC(o) {} explicit CD3D11_BUFFER_DESC(UINT byteWidth,UINT bindFlags, D3D11_USAGE usage = D3D11_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT miscFlags = 0, UINT structureByteStride = 0 ) { ByteWidth = byteWidth; Usage = usage; BindFlags = bindFlags; CPUAccessFlags = cpuaccessFlags; MiscFlags = miscFlags; StructureByteStride = structureByteStride; } ~CD3D11_BUFFER_DESC() {} operator const D3D11_BUFFER_DESC&() const { return *this; } }; #endif typedef struct D3D11_DEPTH_STENCIL_VIEW_DESC { DXGI_FORMAT Format; D3D11_DSV_DIMENSION ViewDimension; UINT Flags; __C89_NAMELESS union { D3D11_TEX1D_DSV Texture1D; D3D11_TEX1D_ARRAY_DSV Texture1DArray; D3D11_TEX2D_DSV Texture2D; D3D11_TEX2D_ARRAY_DSV Texture2DArray; D3D11_TEX2DMS_DSV Texture2DMS; D3D11_TEX2DMS_ARRAY_DSV Texture2DMSArray; } __C89_NAMELESSUNIONNAME; } D3D11_DEPTH_STENCIL_VIEW_DESC; typedef struct D3D11_DEPTH_STENCILOP_DESC { D3D11_STENCIL_OP StencilFailOp; D3D11_STENCIL_OP StencilDepthFailOp; D3D11_STENCIL_OP StencilPassOp; D3D11_COMPARISON_FUNC StencilFunc; } D3D11_DEPTH_STENCILOP_DESC; typedef struct D3D11_DEPTH_STENCIL_DESC { WINBOOL DepthEnable; D3D11_DEPTH_WRITE_MASK DepthWriteMask; D3D11_COMPARISON_FUNC DepthFunc; WINBOOL StencilEnable; UINT8 StencilReadMask; UINT8 StencilWriteMask; D3D11_DEPTH_STENCILOP_DESC FrontFace; D3D11_DEPTH_STENCILOP_DESC BackFace; } D3D11_DEPTH_STENCIL_DESC; #if !defined( D3D11_NO_HELPERS ) && defined( __cplusplus ) struct CD3D11_DEPTH_STENCIL_DESC : public D3D11_DEPTH_STENCIL_DESC { CD3D11_DEPTH_STENCIL_DESC() {} explicit CD3D11_DEPTH_STENCIL_DESC(const D3D11_DEPTH_STENCIL_DESC &other) : D3D11_DEPTH_STENCIL_DESC(other) {} explicit CD3D11_DEPTH_STENCIL_DESC(CD3D11_DEFAULT) { const D3D11_DEPTH_STENCILOP_DESC default_op = {D3D11_STENCIL_OP_KEEP, D3D11_STENCIL_OP_KEEP, D3D11_STENCIL_OP_KEEP, D3D11_COMPARISON_ALWAYS}; DepthEnable = TRUE; DepthWriteMask = D3D11_DEPTH_WRITE_MASK_ALL; DepthFunc = D3D11_COMPARISON_LESS; StencilEnable = FALSE; StencilReadMask = D3D11_DEFAULT_STENCIL_READ_MASK; StencilWriteMask = D3D11_DEFAULT_STENCIL_WRITE_MASK; FrontFace = default_op; BackFace = default_op; } explicit CD3D11_DEPTH_STENCIL_DESC( WINBOOL depth_enable, D3D11_DEPTH_WRITE_MASK depth_write_mask, D3D11_COMPARISON_FUNC depth_func, WINBOOL stencil_enable, UINT8 stencil_read_mask, UINT8 stencil_write_mask, D3D11_STENCIL_OP front_stencil_fail_op, D3D11_STENCIL_OP front_stencil_depth_fail_op, D3D11_STENCIL_OP front_stencil_pass_op, D3D11_COMPARISON_FUNC front_stencil_func, D3D11_STENCIL_OP back_stencil_fail_op, D3D11_STENCIL_OP back_stencil_depth_fail_op, D3D11_STENCIL_OP back_stencil_pass_op, D3D11_COMPARISON_FUNC back_stencil_func) { DepthEnable = depth_enable; DepthWriteMask = depth_write_mask; DepthFunc = depth_func; StencilEnable = stencil_enable; StencilReadMask = stencil_read_mask; StencilWriteMask = stencil_write_mask; FrontFace.StencilFailOp = front_stencil_fail_op; FrontFace.StencilDepthFailOp = front_stencil_depth_fail_op; FrontFace.StencilPassOp = front_stencil_pass_op; FrontFace.StencilFunc = front_stencil_func; BackFace.StencilFailOp = back_stencil_fail_op; BackFace.StencilDepthFailOp = back_stencil_depth_fail_op; BackFace.StencilPassOp = back_stencil_pass_op; BackFace.StencilFunc = back_stencil_func; } ~CD3D11_DEPTH_STENCIL_DESC() {} operator const D3D11_DEPTH_STENCIL_DESC&() const { return *this; } }; #endif typedef struct D3D11_RENDER_TARGET_VIEW_DESC { DXGI_FORMAT Format; D3D11_RTV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_RTV Buffer; D3D11_TEX1D_RTV Texture1D; D3D11_TEX1D_ARRAY_RTV Texture1DArray; D3D11_TEX2D_RTV Texture2D; D3D11_TEX2D_ARRAY_RTV Texture2DArray; D3D11_TEX2DMS_RTV Texture2DMS; D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray; D3D11_TEX3D_RTV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D11_RENDER_TARGET_VIEW_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_RENDER_TARGET_VIEW_DESC : public D3D11_RENDER_TARGET_VIEW_DESC { CD3D11_RENDER_TARGET_VIEW_DESC() {} explicit CD3D11_RENDER_TARGET_VIEW_DESC(D3D11_RTV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_slice = 0, UINT array_size = -1) { Format = format; ViewDimension = dim; switch(dim) { case D3D11_RTV_DIMENSION_BUFFER: Buffer.FirstElement = mip_slice; Buffer.NumElements = first_slice; break; case D3D11_RTV_DIMENSION_TEXTURE1D: Texture1D.MipSlice = mip_slice; break; case D3D11_RTV_DIMENSION_TEXTURE1DARRAY: Texture1DArray.MipSlice = mip_slice; Texture1DArray.FirstArraySlice = first_slice; Texture1DArray.ArraySize = array_size; break; case D3D11_RTV_DIMENSION_TEXTURE2D: Texture2D.MipSlice = mip_slice; break; case D3D11_RTV_DIMENSION_TEXTURE2DARRAY: Texture2DArray.MipSlice = mip_slice; Texture2DArray.FirstArraySlice = first_slice; Texture2DArray.ArraySize = array_size; break; case D3D11_RTV_DIMENSION_TEXTURE2DMSARRAY: Texture2DMSArray.FirstArraySlice = first_slice; Texture2DMSArray.ArraySize = array_size; break; case D3D11_RTV_DIMENSION_TEXTURE3D: Texture3D.MipSlice = mip_slice; Texture3D.FirstWSlice = first_slice; Texture3D.WSize = array_size; break; default: break; } } explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Buffer*, DXGI_FORMAT format, UINT first_elem, UINT elem_cnt) { Format = format; ViewDimension = D3D11_RTV_DIMENSION_BUFFER; Buffer.FirstElement = first_elem; Buffer.NumElements = elem_cnt; } explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture1D *texture, D3D11_RTV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_slice = 0, UINT array_size = -1); explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture2D *texture, D3D11_RTV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_slice = 0, UINT array_size = -1); explicit CD3D11_RENDER_TARGET_VIEW_DESC(ID3D11Texture3D *texture, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT mip_slice = 0, UINT first_w_slice = 0, UINT w_slice = -1 ); ~CD3D11_RENDER_TARGET_VIEW_DESC() {} explicit CD3D11_RENDER_TARGET_VIEW_DESC(const D3D11_RENDER_TARGET_VIEW_DESC &other) : D3D11_RENDER_TARGET_VIEW_DESC(other) {} operator const D3D11_RENDER_TARGET_VIEW_DESC&() const { return *this; } }; #endif typedef struct D3D11_SAMPLER_DESC { D3D11_FILTER Filter; D3D11_TEXTURE_ADDRESS_MODE AddressU; D3D11_TEXTURE_ADDRESS_MODE AddressV; D3D11_TEXTURE_ADDRESS_MODE AddressW; FLOAT MipLODBias; UINT MaxAnisotropy; D3D11_COMPARISON_FUNC ComparisonFunc; FLOAT BorderColor[4]; FLOAT MinLOD; FLOAT MaxLOD; } D3D11_SAMPLER_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_SAMPLER_DESC : public D3D11_SAMPLER_DESC { CD3D11_SAMPLER_DESC() {} explicit CD3D11_SAMPLER_DESC(const D3D11_SAMPLER_DESC &o) : D3D11_SAMPLER_DESC(o) {} explicit CD3D11_SAMPLER_DESC(CD3D11_DEFAULT) { Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR; AddressU = D3D11_TEXTURE_ADDRESS_CLAMP; AddressV = D3D11_TEXTURE_ADDRESS_CLAMP; AddressW = D3D11_TEXTURE_ADDRESS_CLAMP; MipLODBias = 0; MaxAnisotropy = 1; ComparisonFunc = D3D11_COMPARISON_NEVER; BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f; MinLOD = -3.402823466e+38f; MaxLOD = 3.402823466e+38f; } explicit CD3D11_SAMPLER_DESC(D3D11_FILTER filter, D3D11_TEXTURE_ADDRESS_MODE addressU, D3D11_TEXTURE_ADDRESS_MODE addressV, D3D11_TEXTURE_ADDRESS_MODE addressW, FLOAT mipLODBias, UINT maxAnisotropy, D3D11_COMPARISON_FUNC comparisonFunc, const FLOAT *borderColor, FLOAT minLOD, FLOAT maxLOD) { Filter = filter; AddressU = addressU; AddressV = addressV; AddressW = addressW; MipLODBias = mipLODBias; MaxAnisotropy = maxAnisotropy; ComparisonFunc = comparisonFunc; if(borderColor) { BorderColor[0] = borderColor[0]; BorderColor[1] = borderColor[1]; BorderColor[2] = borderColor[2]; BorderColor[3] = borderColor[3]; }else { BorderColor[0] = BorderColor[1] = BorderColor[2] = BorderColor[3] = 1.0f; } MinLOD = minLOD; MaxLOD = maxLOD; } ~CD3D11_SAMPLER_DESC() {} operator const D3D11_SAMPLER_DESC&() const { return *this; } }; #endif typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC { DXGI_FORMAT Format; D3D11_SRV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_SRV Buffer; D3D11_TEX1D_SRV Texture1D; D3D11_TEX1D_ARRAY_SRV Texture1DArray; D3D11_TEX2D_SRV Texture2D; D3D11_TEX2D_ARRAY_SRV Texture2DArray; D3D11_TEX2DMS_SRV Texture2DMS; D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray; D3D11_TEX3D_SRV Texture3D; D3D11_TEXCUBE_SRV TextureCube; D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray; D3D11_BUFFEREX_SRV BufferEx; } __C89_NAMELESSUNIONNAME; } D3D11_SHADER_RESOURCE_VIEW_DESC; #if !defined(D3D11_NO_HELPERS) && defined( __cplusplus ) struct CD3D11_SHADER_RESOURCE_VIEW_DESC : public D3D11_SHADER_RESOURCE_VIEW_DESC { CD3D11_SHADER_RESOURCE_VIEW_DESC() {} explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(D3D11_SRV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1, UINT first_slice = 0, UINT array_size = -1, UINT flags = 0) { Format = format; ViewDimension = dim; switch(ViewDimension) { case D3D11_SRV_DIMENSION_BUFFER: Buffer.FirstElement = most_detailed_mip; Buffer.NumElements = mip_levels; break; case D3D11_SRV_DIMENSION_TEXTURE1D: Texture1D.MostDetailedMip = most_detailed_mip; Texture1D.MipLevels = mip_levels; break; case D3D11_SRV_DIMENSION_TEXTURE1DARRAY: Texture1DArray.MostDetailedMip = most_detailed_mip; Texture1DArray.MipLevels = mip_levels; Texture1DArray.FirstArraySlice = first_slice; Texture1DArray.ArraySize = array_size; break; case D3D11_SRV_DIMENSION_TEXTURE2D: Texture2D.MostDetailedMip = most_detailed_mip; Texture2D.MipLevels = mip_levels; break; case D3D11_SRV_DIMENSION_TEXTURE2DARRAY: Texture2DArray.MostDetailedMip = most_detailed_mip; Texture2DArray.MipLevels = mip_levels; Texture2DArray.FirstArraySlice = first_slice; Texture2DArray.ArraySize = array_size; break; case D3D11_SRV_DIMENSION_TEXTURE2DMSARRAY: Texture2DMSArray.FirstArraySlice = first_slice; Texture2DMSArray.ArraySize = array_size; break; case D3D11_SRV_DIMENSION_TEXTURE3D: Texture3D.MostDetailedMip = most_detailed_mip; Texture3D.MipLevels = mip_levels; break; case D3D11_SRV_DIMENSION_TEXTURECUBE: TextureCube.MostDetailedMip = most_detailed_mip; TextureCube.MipLevels = mip_levels; break; case D3D11_SRV_DIMENSION_TEXTURECUBEARRAY: TextureCubeArray.MostDetailedMip = most_detailed_mip; TextureCubeArray.MipLevels = mip_levels; TextureCubeArray.First2DArrayFace = first_slice; TextureCubeArray.NumCubes = array_size; break; case D3D11_SRV_DIMENSION_BUFFEREX: BufferEx.FirstElement = most_detailed_mip; BufferEx.NumElements = mip_levels; BufferEx.Flags = flags; break; default: break; } } explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Buffer*, DXGI_FORMAT format, UINT first_elem, UINT elem_cnt, UINT flags = 0); explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture1D *texture, D3D11_SRV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1, UINT first_slice = 0, UINT array_size = -1 ); explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture2D *texture, D3D11_SRV_DIMENSION dim, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1, UINT first_slice = 0, UINT array_size = -1 ); explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(ID3D11Texture3D *texture, DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN, UINT most_detailed_mip = 0, UINT mip_levels = -1 ); ~CD3D11_SHADER_RESOURCE_VIEW_DESC() {} explicit CD3D11_SHADER_RESOURCE_VIEW_DESC(const D3D11_SHADER_RESOURCE_VIEW_DESC &other) : D3D11_SHADER_RESOURCE_VIEW_DESC(other) {} operator const D3D11_SHADER_RESOURCE_VIEW_DESC&() const { return *this; } }; #endif typedef struct D3D11_TEXTURE1D_DESC { UINT Width; UINT MipLevels; UINT ArraySize; DXGI_FORMAT Format; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D11_TEXTURE1D_DESC; typedef struct D3D11_TEXTURE2D_DESC { UINT Width; UINT Height; UINT MipLevels; UINT ArraySize; DXGI_FORMAT Format; DXGI_SAMPLE_DESC SampleDesc; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D11_TEXTURE2D_DESC; #if !defined(D3D11_NO_HELPERS) && defined(__cplusplus) struct CD3D11_TEXTURE2D_DESC : public D3D11_TEXTURE2D_DESC { CD3D11_TEXTURE2D_DESC() {} explicit CD3D11_TEXTURE2D_DESC(const D3D11_TEXTURE2D_DESC &o) : D3D11_TEXTURE2D_DESC(o) {} explicit CD3D11_TEXTURE2D_DESC(DXGI_FORMAT format, UINT width, UINT height, UINT arraySize = 1, UINT mipLevels = 0, UINT bindFlags = D3D11_BIND_SHADER_RESOURCE, D3D11_USAGE usage = D3D11_USAGE_DEFAULT, UINT cpuaccessFlags = 0, UINT sampleCount = 1, UINT sampleQuality = 0, UINT miscFlags = 0) { Width = width; Height = height; MipLevels = mipLevels; ArraySize = arraySize; Format = format; SampleDesc.Count = sampleCount; SampleDesc.Quality = sampleQuality; Usage = usage; BindFlags = bindFlags; CPUAccessFlags = cpuaccessFlags; MiscFlags = miscFlags; } ~CD3D11_TEXTURE2D_DESC() {} operator const D3D11_TEXTURE2D_DESC&() const { return *this; } }; #endif typedef struct D3D11_TEXTURE3D_DESC { UINT Width; UINT Height; UINT Depth; UINT MipLevels; DXGI_FORMAT Format; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; } D3D11_TEXTURE3D_DESC; typedef struct D3D11_VIDEO_DECODER_DESC { GUID Guid; UINT SampleWidth; UINT SampleHeight; DXGI_FORMAT OutputFormat; } D3D11_VIDEO_DECODER_DESC; typedef struct D3D11_VIDEO_DECODER_CONFIG { GUID guidConfigBitstreamEncryption; GUID guidConfigMBcontrolEncryption; GUID guidConfigResidDiffEncryption; UINT ConfigBitstreamRaw; UINT ConfigMBcontrolRasterOrder; UINT ConfigResidDiffHost; UINT ConfigSpatialResid8; UINT ConfigResid8Subtraction; UINT ConfigSpatialHost8or9Clipping; UINT ConfigSpatialResidInterleaved; UINT ConfigIntraResidUnsigned; UINT ConfigResidDiffAccelerator; UINT ConfigHostInverseScan; UINT ConfigSpecificIDCT; UINT Config4GroupedCoefs; USHORT ConfigMinRenderTargetBuffCount; USHORT ConfigDecoderSpecific; } D3D11_VIDEO_DECODER_CONFIG; typedef enum D3D11_VIDEO_FRAME_FORMAT { D3D11_VIDEO_FRAME_FORMAT_PROGRESSIVE = 0, D3D11_VIDEO_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST = 1, D3D11_VIDEO_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST = 2 } D3D11_VIDEO_FRAME_FORMAT; typedef enum D3D11_VIDEO_USAGE { D3D11_VIDEO_USAGE_PLAYBACK_NORMAL = 0, D3D11_VIDEO_USAGE_OPTIMAL_SPEED = 1, D3D11_VIDEO_USAGE_OPTIMAL_QUALITY = 2 } D3D11_VIDEO_USAGE; typedef struct D3D11_VIDEO_PROCESSOR_CONTENT_DESC { D3D11_VIDEO_FRAME_FORMAT InputFrameFormat; DXGI_RATIONAL InputFrameRate; UINT InputWidth; UINT InputHeight; DXGI_RATIONAL OutputFrameRate; UINT OutputWidth; UINT OutputHeight; D3D11_VIDEO_USAGE Usage; } D3D11_VIDEO_PROCESSOR_CONTENT_DESC; typedef struct D3D11_VIDEO_PROCESSOR_CAPS { UINT DeviceCaps; UINT FeatureCaps; UINT FilterCaps; UINT InputFormatCaps; UINT AutoStreamCaps; UINT StereoCaps; UINT RateConversionCapsCount; UINT MaxInputStreams; UINT MaxStreamStates; } D3D11_VIDEO_PROCESSOR_CAPS; typedef struct D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS { UINT PastFrames; UINT FutureFrames; UINT ProcessorCaps; UINT ITelecineCaps; UINT CustomRateCount; } D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS; typedef struct D3D11_VIDEO_PROCESSOR_CUSTOM_RATE { DXGI_RATIONAL CustomRate; UINT OutputFrames; WINBOOL InputInterlaced; UINT InputFramesOrFields; } D3D11_VIDEO_PROCESSOR_CUSTOM_RATE; typedef enum D3D11_VIDEO_PROCESSOR_FILTER { D3D11_VIDEO_PROCESSOR_FILTER_BRIGHTNESS = 0, D3D11_VIDEO_PROCESSOR_FILTER_CONTRAST = 1, D3D11_VIDEO_PROCESSOR_FILTER_HUE = 2, D3D11_VIDEO_PROCESSOR_FILTER_SATURATION = 3, D3D11_VIDEO_PROCESSOR_FILTER_NOISE_REDUCTION = 4, D3D11_VIDEO_PROCESSOR_FILTER_EDGE_ENHANCEMENT = 5, D3D11_VIDEO_PROCESSOR_FILTER_ANAMORPHIC_SCALING = 6, D3D11_VIDEO_PROCESSOR_FILTER_STEREO_ADJUSTMENT = 7 } D3D11_VIDEO_PROCESSOR_FILTER; typedef struct D3D11_VIDEO_PROCESSOR_FILTER_RANGE { int Minimum; int Maximum; int Default; float Multiplier; } D3D11_VIDEO_PROCESSOR_FILTER_RANGE; typedef enum D3D11_AUTHENTICATED_CHANNEL_TYPE { D3D11_AUTHENTICATED_CHANNEL_D3D11 = 1, D3D11_AUTHENTICATED_CHANNEL_DRIVER_SOFTWARE = 2, D3D11_AUTHENTICATED_CHANNEL_DRIVER_HARDWARE = 3 } D3D11_AUTHENTICATED_CHANNEL_TYPE; typedef enum D3D11_VDOV_DIMENSION { D3D11_VDOV_DIMENSION_UNKNOWN = 0, D3D11_VDOV_DIMENSION_TEXTURE2D = 1 } D3D11_VDOV_DIMENSION; typedef struct D3D11_TEX2D_VDOV { UINT ArraySlice; } D3D11_TEX2D_VDOV; typedef struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC { GUID DecodeProfile; D3D11_VDOV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_TEX2D_VDOV Texture2D; } __C89_NAMELESSUNIONNAME; } D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC; typedef enum D3D11_VPIV_DIMENSION { D3D11_VPIV_DIMENSION_UNKNOWN = 0, D3D11_VPIV_DIMENSION_TEXTURE2D = 1 } D3D11_VPIV_DIMENSION; typedef struct D3D11_TEX2D_VPIV { UINT MipSlice; UINT ArraySlice; } D3D11_TEX2D_VPIV; typedef struct D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC { UINT FourCC; D3D11_VPIV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_TEX2D_VPIV Texture2D; } __C89_NAMELESSUNIONNAME; } D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC; typedef enum D3D11_VPOV_DIMENSION { D3D11_VPOV_DIMENSION_UNKNOWN = 0, D3D11_VPOV_DIMENSION_TEXTURE2D = 1, D3D11_VPOV_DIMENSION_TEXTURE2DARRAY = 2 } D3D11_VPOV_DIMENSION; typedef struct D3D11_TEX2D_VPOV { UINT MipSlice; } D3D11_TEX2D_VPOV; typedef struct D3D11_TEX2D_ARRAY_VPOV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D11_TEX2D_ARRAY_VPOV; typedef struct D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC { D3D11_VPOV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_TEX2D_VPOV Texture2D; D3D11_TEX2D_ARRAY_VPOV Texture2DArray; } __C89_NAMELESSUNIONNAME; } D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC; typedef struct D3D11_VIDEO_CONTENT_PROTECTION_CAPS { UINT Caps; UINT KeyExchangeTypeCount; UINT BlockAlignmentSize; ULONGLONG ProtectedMemorySize; } D3D11_VIDEO_CONTENT_PROTECTION_CAPS; typedef struct D3D11_ENCRYPTED_BLOCK_INFO { UINT NumEncryptedBytesAtBeginning; UINT NumBytesInSkipPattern; UINT NumBytesInEncryptPattern; } D3D11_ENCRYPTED_BLOCK_INFO; typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC { D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType; UINT BufferIndex; UINT DataOffset; UINT DataSize; UINT FirstMBaddress; UINT NumMBsInBuffer; UINT Width; UINT Height; UINT Stride; UINT ReservedBits; void *pIV; UINT IVSize; WINBOOL PartialEncryption; D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo; } D3D11_VIDEO_DECODER_BUFFER_DESC; typedef struct D3D11_VIDEO_DECODER_EXTENSION { UINT Function; void *pPrivateInputData; UINT PrivateInputDataSize; void *pPrivateOutputData; UINT PrivateOutputDataSize; UINT ResourceCount; ID3D11Resource **ppResourceList; } D3D11_VIDEO_DECODER_EXTENSION; typedef struct D3D11_VIDEO_COLOR_YCbCrA { float Y; float Cb; float Cr; float A; } D3D11_VIDEO_COLOR_YCbCrA; typedef struct D3D11_VIDEO_COLOR_RGBA { float R; float G; float B; float A; } D3D11_VIDEO_COLOR_RGBA; typedef struct D3D11_VIDEO_COLOR { __C89_NAMELESS union { D3D11_VIDEO_COLOR_YCbCrA YCbCr; D3D11_VIDEO_COLOR_RGBA RGBA; } __C89_NAMELESSUNIONNAME; } D3D11_VIDEO_COLOR; typedef struct D3D11_VIDEO_PROCESSOR_COLOR_SPACE { UINT Usage : 1; UINT RGB_Range : 1; UINT YCbCr_Matrix : 1; UINT YCbCr_xvYCC : 1; UINT Nominal_Range : 2; UINT Reserved : 26; } D3D11_VIDEO_PROCESSOR_COLOR_SPACE; typedef struct D3D11_VIDEO_PROCESSOR_STREAM { WINBOOL Enable; UINT OutputIndex; UINT InputFrameOrField; UINT PastFrames; UINT FutureFrames; ID3D11VideoProcessorInputView **ppPastSurfaces; ID3D11VideoProcessorInputView *pInputSurface; ID3D11VideoProcessorInputView **ppFutureSurfaces; ID3D11VideoProcessorInputView **ppPastSurfacesRight; ID3D11VideoProcessorInputView *pInputSurfaceRight; ID3D11VideoProcessorInputView **ppFutureSurfacesRight; } D3D11_VIDEO_PROCESSOR_STREAM; typedef struct D3D11_OMAC { BYTE Omac[16]; } D3D11_OMAC; typedef struct D3D11_AUTHENTICATED_CONFIGURE_OUTPUT { D3D11_OMAC omac; GUID ConfigureType; HANDLE hChannel; UINT SequenceNumber; HRESULT ReturnCode; } D3D11_AUTHENTICATED_CONFIGURE_OUTPUT; typedef struct D3D11_QUERY_DATA_TIMESTAMP_DISJOINT { UINT64 Frequency; WINBOOL Disjoint; } D3D11_QUERY_DATA_TIMESTAMP_DISJOINT; typedef struct D3D11_QUERY_DATA_PIPELINE_STATISTICS { UINT64 IAVertices; UINT64 IAPrimitives; UINT64 VSInvocations; UINT64 GSInvocations; UINT64 GSPrimitives; UINT64 CInvocations; UINT64 CPrimitives; UINT64 PSInvocations; UINT64 HSInvocations; UINT64 DSInvocations; UINT64 CSInvocations; } D3D11_QUERY_DATA_PIPELINE_STATISTICS; typedef struct D3D11_DRAW_INSTANCED_INDIRECT_ARGS { UINT VertexCountPerInstance; UINT InstanceCount; UINT StartVertexLocation; UINT StartInstanceLocation; } D3D11_DRAW_INSTANCED_INDIRECT_ARGS; typedef struct D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS { UINT IndexCountPerInstance; UINT InstanceCount; UINT StartIndexLocation; INT BaseVertexLocation; UINT StartInstanceLocation; } D3D11_DRAW_INDEXED_INSTANCED_INDIRECT_ARGS; typedef struct D3D11_AUTHENTICATED_CONFIGURE_INPUT { D3D11_OMAC omac; GUID ConfigureType; HANDLE hChannel; UINT SequenceNumber; } D3D11_AUTHENTICATED_CONFIGURE_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_INPUT { GUID QueryType; HANDLE hChannel; UINT SequenceNumber; } D3D11_AUTHENTICATED_QUERY_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT { D3D11_OMAC omac; GUID QueryType; HANDLE hChannel; UINT SequenceNumber; HRESULT ReturnCode; } D3D11_AUTHENTICATED_QUERY_OUTPUT; typedef union D3D11_AUTHENTICATED_PROTECTION_FLAGS { struct { UINT ProtectionEnabled : 1; UINT OverlayOrFullscreenRequired : 1; UINT Reserved : 30; } Flags; UINT Value; } D3D11_AUTHENTICATED_PROTECTION_FLAGS; typedef struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; D3D11_AUTHENTICATED_PROTECTION_FLAGS ProtectionFlags; } D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType; } D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; HANDLE DeviceHandle; } D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT { D3D11_AUTHENTICATED_QUERY_INPUT Input; HANDLE DecoderHandle; } D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; HANDLE DecoderHandle; HANDLE CryptoSessionHandle; HANDLE DeviceHandle; } D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; UINT RestrictedSharedResourceProcessCount; } D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT { D3D11_AUTHENTICATED_QUERY_INPUT Input; UINT ProcessIndex; } D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; UINT ProcessIndex; D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessIdentifier; HANDLE ProcessHandle; } D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; UINT UnrestrictedProtectedSharedResourceCount; } D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT { D3D11_AUTHENTICATED_QUERY_INPUT Input; HANDLE DeviceHandle; HANDLE CryptoSessionHandle; } D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; HANDLE DeviceHandle; HANDLE CryptoSessionHandle; UINT OutputIDCount; } D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT { D3D11_AUTHENTICATED_QUERY_INPUT Input; HANDLE DeviceHandle; HANDLE CryptoSessionHandle; UINT OutputIDIndex; } D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; HANDLE DeviceHandle; HANDLE CryptoSessionHandle; UINT OutputIDIndex; UINT64 OutputID; } D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; D3D11_BUS_TYPE BusType; WINBOOL AccessibleInContiguousBlocks; WINBOOL AccessibleInNonContiguousBlocks; } D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; UINT EncryptionGuidCount; } D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT { D3D11_AUTHENTICATED_QUERY_INPUT Input; UINT EncryptionGuidIndex; } D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT; typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; UINT EncryptionGuidIndex; GUID EncryptionGuid; } D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT; typedef struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT { D3D11_AUTHENTICATED_QUERY_OUTPUT Output; GUID EncryptionGuid; } D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT; typedef struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT { D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; UINT StartSequenceQuery; UINT StartSequenceConfigure; } D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT; typedef struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT { D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; D3D11_AUTHENTICATED_PROTECTION_FLAGS Protections; } D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT; typedef struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT { D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; HANDLE DecoderHandle; HANDLE CryptoSessionHandle; HANDLE DeviceHandle; } D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT; typedef struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT { D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessType; HANDLE ProcessHandle; WINBOOL AllowAccess; } D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT; typedef struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT { D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; GUID EncryptionGuid; } D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT; /***************************************************************************** * ID3D11DeviceChild interface */ #ifndef __ID3D11DeviceChild_INTERFACE_DEFINED__ #define __ID3D11DeviceChild_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceChild, 0x1841e5c8, 0x16b0, 0x489b, 0xbc,0xc8, 0x44,0xcf,0xb0,0xd5,0xde,0xae); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1841e5c8-16b0-489b-bcc8-44cfb0d5deae") ID3D11DeviceChild : public IUnknown { virtual void STDMETHODCALLTYPE GetDevice( ID3D11Device **ppDevice) = 0; virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *pDataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pData) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceChild, 0x1841e5c8, 0x16b0, 0x489b, 0xbc,0xc8, 0x44,0xcf,0xb0,0xd5,0xde,0xae) #endif #else typedef struct ID3D11DeviceChildVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceChild *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceChild *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceChild *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceChild *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceChild *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceChild *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceChild *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11DeviceChildVtbl; interface ID3D11DeviceChild { CONST_VTBL ID3D11DeviceChildVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceChild_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceChild_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceChild_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceChild_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceChild_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceChild_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceChild_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceChild_QueryInterface(ID3D11DeviceChild* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceChild_AddRef(ID3D11DeviceChild* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceChild_Release(ID3D11DeviceChild* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceChild_GetDevice(ID3D11DeviceChild* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceChild_GetPrivateData(ID3D11DeviceChild* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceChild_SetPrivateData(ID3D11DeviceChild* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceChild_SetPrivateDataInterface(ID3D11DeviceChild* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11DeviceChild_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Asynchronous interface */ #ifndef __ID3D11Asynchronous_INTERFACE_DEFINED__ #define __ID3D11Asynchronous_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Asynchronous, 0x4b35d0cd, 0x1e15, 0x4258, 0x9c,0x98, 0x1b,0x13,0x33,0xf6,0xdd,0x3b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4b35d0cd-1e15-4258-9c98-1b1333f6dd3b") ID3D11Asynchronous : public ID3D11DeviceChild { virtual UINT STDMETHODCALLTYPE GetDataSize( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Asynchronous, 0x4b35d0cd, 0x1e15, 0x4258, 0x9c,0x98, 0x1b,0x13,0x33,0xf6,0xdd,0x3b) #endif #else typedef struct ID3D11AsynchronousVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Asynchronous *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Asynchronous *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Asynchronous *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Asynchronous *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Asynchronous *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Asynchronous *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Asynchronous *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Asynchronous methods ***/ UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D11Asynchronous *This); END_INTERFACE } ID3D11AsynchronousVtbl; interface ID3D11Asynchronous { CONST_VTBL ID3D11AsynchronousVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Asynchronous_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Asynchronous_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Asynchronous_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Asynchronous_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Asynchronous_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Asynchronous_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Asynchronous_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Asynchronous methods ***/ #define ID3D11Asynchronous_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Asynchronous_QueryInterface(ID3D11Asynchronous* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Asynchronous_AddRef(ID3D11Asynchronous* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Asynchronous_Release(ID3D11Asynchronous* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Asynchronous_GetDevice(ID3D11Asynchronous* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Asynchronous_GetPrivateData(ID3D11Asynchronous* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Asynchronous_SetPrivateData(ID3D11Asynchronous* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Asynchronous_SetPrivateDataInterface(ID3D11Asynchronous* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Asynchronous methods ***/ static FORCEINLINE UINT ID3D11Asynchronous_GetDataSize(ID3D11Asynchronous* This) { return This->lpVtbl->GetDataSize(This); } #endif #endif #endif #endif /* __ID3D11Asynchronous_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Query interface */ #ifndef __ID3D11Query_INTERFACE_DEFINED__ #define __ID3D11Query_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Query, 0xd6c00747, 0x87b7, 0x425e, 0xb8,0x4d, 0x44,0xd1,0x08,0x56,0x0a,0xfd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("d6c00747-87b7-425e-b84d-44d108560afd") ID3D11Query : public ID3D11Asynchronous { virtual void STDMETHODCALLTYPE GetDesc( D3D11_QUERY_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Query, 0xd6c00747, 0x87b7, 0x425e, 0xb8,0x4d, 0x44,0xd1,0x08,0x56,0x0a,0xfd) #endif #else typedef struct ID3D11QueryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Query *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Query *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Query *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Query *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Query *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Query *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Query *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Asynchronous methods ***/ UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D11Query *This); /*** ID3D11Query methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Query *This, D3D11_QUERY_DESC *pDesc); END_INTERFACE } ID3D11QueryVtbl; interface ID3D11Query { CONST_VTBL ID3D11QueryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Query_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Query_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Query_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Query_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Query_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Query_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Query_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Asynchronous methods ***/ #define ID3D11Query_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D11Query methods ***/ #define ID3D11Query_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Query_QueryInterface(ID3D11Query* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Query_AddRef(ID3D11Query* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Query_Release(ID3D11Query* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Query_GetDevice(ID3D11Query* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Query_GetPrivateData(ID3D11Query* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Query_SetPrivateData(ID3D11Query* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Query_SetPrivateDataInterface(ID3D11Query* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Asynchronous methods ***/ static FORCEINLINE UINT ID3D11Query_GetDataSize(ID3D11Query* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D11Query methods ***/ static FORCEINLINE void ID3D11Query_GetDesc(ID3D11Query* This,D3D11_QUERY_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Query_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Resource interface */ #ifndef __ID3D11Resource_INTERFACE_DEFINED__ #define __ID3D11Resource_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Resource, 0xdc8e63f3, 0xd12b, 0x4952, 0xb4,0x7b, 0x5e,0x45,0x02,0x6a,0x86,0x2d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dc8e63f3-d12b-4952-b47b-5e45026a862d") ID3D11Resource : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetType( D3D11_RESOURCE_DIMENSION *pResourceDimension) = 0; virtual void STDMETHODCALLTYPE SetEvictionPriority( UINT EvictionPriority) = 0; virtual UINT STDMETHODCALLTYPE GetEvictionPriority( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Resource, 0xdc8e63f3, 0xd12b, 0x4952, 0xb4,0x7b, 0x5e,0x45,0x02,0x6a,0x86,0x2d) #endif #else typedef struct ID3D11ResourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Resource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Resource *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Resource *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Resource *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Resource *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Resource *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Resource *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Resource *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Resource *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Resource *This); END_INTERFACE } ID3D11ResourceVtbl; interface ID3D11Resource { CONST_VTBL ID3D11ResourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Resource_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Resource_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Resource_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Resource_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Resource_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Resource_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Resource_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Resource_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Resource_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Resource_QueryInterface(ID3D11Resource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Resource_AddRef(ID3D11Resource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Resource_Release(ID3D11Resource* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Resource_GetDevice(ID3D11Resource* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Resource_GetPrivateData(ID3D11Resource* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Resource_SetPrivateData(ID3D11Resource* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Resource_SetPrivateDataInterface(ID3D11Resource* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Resource_GetType(ID3D11Resource* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Resource_SetEvictionPriority(ID3D11Resource* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Resource_GetEvictionPriority(ID3D11Resource* This) { return This->lpVtbl->GetEvictionPriority(This); } #endif #endif #endif #endif /* __ID3D11Resource_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11View interface */ #ifndef __ID3D11View_INTERFACE_DEFINED__ #define __ID3D11View_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11View, 0x839d1216, 0xbb2e, 0x412b, 0xb7,0xf4, 0xa9,0xdb,0xeb,0xe0,0x8e,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("839d1216-bb2e-412b-b7f4-a9dbebe08ed1") ID3D11View : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetResource( ID3D11Resource **ppResource) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11View, 0x839d1216, 0xbb2e, 0x412b, 0xb7,0xf4, 0xa9,0xdb,0xeb,0xe0,0x8e,0xd1) #endif #else typedef struct ID3D11ViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11View *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11View *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11View *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11View *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11View *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11View *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11View *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11View *This, ID3D11Resource **ppResource); END_INTERFACE } ID3D11ViewVtbl; interface ID3D11View { CONST_VTBL ID3D11ViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11View_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11View_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11View_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11View_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11View_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11View_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11View_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11View_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11View_QueryInterface(ID3D11View* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11View_AddRef(ID3D11View* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11View_Release(ID3D11View* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11View_GetDevice(ID3D11View* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11View_GetPrivateData(ID3D11View* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11View_SetPrivateData(ID3D11View* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11View_SetPrivateDataInterface(ID3D11View* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11View_GetResource(ID3D11View* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } #endif #endif #endif #endif /* __ID3D11View_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11BlendState interface */ #ifndef __ID3D11BlendState_INTERFACE_DEFINED__ #define __ID3D11BlendState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11BlendState, 0x75b68faa, 0x347d, 0x4159, 0x8f,0x45, 0xa0,0x64,0x0f,0x01,0xcd,0x9a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("75b68faa-347d-4159-8f45-a0640f01cd9a") ID3D11BlendState : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D11_BLEND_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11BlendState, 0x75b68faa, 0x347d, 0x4159, 0x8f,0x45, 0xa0,0x64,0x0f,0x01,0xcd,0x9a) #endif #else typedef struct ID3D11BlendStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11BlendState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11BlendState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11BlendState *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11BlendState *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11BlendState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11BlendState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11BlendState *This, REFGUID guid, const IUnknown *pData); /*** ID3D11BlendState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11BlendState *This, D3D11_BLEND_DESC *pDesc); END_INTERFACE } ID3D11BlendStateVtbl; interface ID3D11BlendState { CONST_VTBL ID3D11BlendStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11BlendState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11BlendState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11BlendState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11BlendState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11BlendState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11BlendState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11BlendState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11BlendState methods ***/ #define ID3D11BlendState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11BlendState_QueryInterface(ID3D11BlendState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11BlendState_AddRef(ID3D11BlendState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11BlendState_Release(ID3D11BlendState* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11BlendState_GetDevice(ID3D11BlendState* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11BlendState_GetPrivateData(ID3D11BlendState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11BlendState_SetPrivateData(ID3D11BlendState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11BlendState_SetPrivateDataInterface(ID3D11BlendState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11BlendState methods ***/ static FORCEINLINE void ID3D11BlendState_GetDesc(ID3D11BlendState* This,D3D11_BLEND_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11BlendState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Buffer interface */ #ifndef __ID3D11Buffer_INTERFACE_DEFINED__ #define __ID3D11Buffer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Buffer, 0x48570b85, 0xd1ee, 0x4fcd, 0xa2,0x50, 0xeb,0x35,0x07,0x22,0xb0,0x37); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("48570b85-d1ee-4fcd-a250-eb350722b037") ID3D11Buffer : public ID3D11Resource { virtual void STDMETHODCALLTYPE GetDesc( D3D11_BUFFER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Buffer, 0x48570b85, 0xd1ee, 0x4fcd, 0xa2,0x50, 0xeb,0x35,0x07,0x22,0xb0,0x37) #endif #else typedef struct ID3D11BufferVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Buffer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Buffer *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Buffer *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Buffer *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Buffer *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Buffer *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Buffer *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Buffer *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Buffer *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Buffer *This); /*** ID3D11Buffer methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Buffer *This, D3D11_BUFFER_DESC *pDesc); END_INTERFACE } ID3D11BufferVtbl; interface ID3D11Buffer { CONST_VTBL ID3D11BufferVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Buffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Buffer_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Buffer_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Buffer_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Buffer_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Buffer_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Buffer_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Buffer_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Buffer_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Buffer_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Buffer methods ***/ #define ID3D11Buffer_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Buffer_QueryInterface(ID3D11Buffer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Buffer_AddRef(ID3D11Buffer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Buffer_Release(ID3D11Buffer* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Buffer_GetDevice(ID3D11Buffer* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Buffer_GetPrivateData(ID3D11Buffer* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Buffer_SetPrivateData(ID3D11Buffer* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Buffer_SetPrivateDataInterface(ID3D11Buffer* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Buffer_GetType(ID3D11Buffer* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Buffer_SetEvictionPriority(ID3D11Buffer* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Buffer_GetEvictionPriority(ID3D11Buffer* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Buffer methods ***/ static FORCEINLINE void ID3D11Buffer_GetDesc(ID3D11Buffer* This,D3D11_BUFFER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Buffer_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11ClassInstance interface */ #ifndef __ID3D11ClassInstance_INTERFACE_DEFINED__ #define __ID3D11ClassInstance_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11ClassInstance, 0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94,0x36, 0x86,0x62,0xa6,0x57,0x97,0xcb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a6cd7faa-b0b7-4a2f-9436-8662a65797cb") ID3D11ClassInstance : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetClassLinkage( ID3D11ClassLinkage **ppLinkage) = 0; virtual void STDMETHODCALLTYPE GetDesc( D3D11_CLASS_INSTANCE_DESC *pDesc) = 0; virtual void STDMETHODCALLTYPE GetInstanceName( LPSTR pInstanceName, SIZE_T *pBufferLength) = 0; virtual void STDMETHODCALLTYPE GetTypeName( LPSTR pTypeName, SIZE_T *pBufferLength) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11ClassInstance, 0xa6cd7faa, 0xb0b7, 0x4a2f, 0x94,0x36, 0x86,0x62,0xa6,0x57,0x97,0xcb) #endif #else typedef struct ID3D11ClassInstanceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11ClassInstance *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11ClassInstance *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11ClassInstance *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11ClassInstance *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11ClassInstance *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11ClassInstance *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11ClassInstance *This, REFGUID guid, const IUnknown *pData); /*** ID3D11ClassInstance methods ***/ void (STDMETHODCALLTYPE *GetClassLinkage)( ID3D11ClassInstance *This, ID3D11ClassLinkage **ppLinkage); void (STDMETHODCALLTYPE *GetDesc)( ID3D11ClassInstance *This, D3D11_CLASS_INSTANCE_DESC *pDesc); void (STDMETHODCALLTYPE *GetInstanceName)( ID3D11ClassInstance *This, LPSTR pInstanceName, SIZE_T *pBufferLength); void (STDMETHODCALLTYPE *GetTypeName)( ID3D11ClassInstance *This, LPSTR pTypeName, SIZE_T *pBufferLength); END_INTERFACE } ID3D11ClassInstanceVtbl; interface ID3D11ClassInstance { CONST_VTBL ID3D11ClassInstanceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11ClassInstance_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11ClassInstance_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11ClassInstance_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11ClassInstance_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11ClassInstance_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11ClassInstance_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11ClassInstance_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11ClassInstance methods ***/ #define ID3D11ClassInstance_GetClassLinkage(This,ppLinkage) (This)->lpVtbl->GetClassLinkage(This,ppLinkage) #define ID3D11ClassInstance_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #define ID3D11ClassInstance_GetInstanceName(This,pInstanceName,pBufferLength) (This)->lpVtbl->GetInstanceName(This,pInstanceName,pBufferLength) #define ID3D11ClassInstance_GetTypeName(This,pTypeName,pBufferLength) (This)->lpVtbl->GetTypeName(This,pTypeName,pBufferLength) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11ClassInstance_QueryInterface(ID3D11ClassInstance* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11ClassInstance_AddRef(ID3D11ClassInstance* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11ClassInstance_Release(ID3D11ClassInstance* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11ClassInstance_GetDevice(ID3D11ClassInstance* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11ClassInstance_GetPrivateData(ID3D11ClassInstance* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11ClassInstance_SetPrivateData(ID3D11ClassInstance* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11ClassInstance_SetPrivateDataInterface(ID3D11ClassInstance* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11ClassInstance methods ***/ static FORCEINLINE void ID3D11ClassInstance_GetClassLinkage(ID3D11ClassInstance* This,ID3D11ClassLinkage **ppLinkage) { This->lpVtbl->GetClassLinkage(This,ppLinkage); } static FORCEINLINE void ID3D11ClassInstance_GetDesc(ID3D11ClassInstance* This,D3D11_CLASS_INSTANCE_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } static FORCEINLINE void ID3D11ClassInstance_GetInstanceName(ID3D11ClassInstance* This,LPSTR pInstanceName,SIZE_T *pBufferLength) { This->lpVtbl->GetInstanceName(This,pInstanceName,pBufferLength); } static FORCEINLINE void ID3D11ClassInstance_GetTypeName(ID3D11ClassInstance* This,LPSTR pTypeName,SIZE_T *pBufferLength) { This->lpVtbl->GetTypeName(This,pTypeName,pBufferLength); } #endif #endif #endif #endif /* __ID3D11ClassInstance_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11ClassLinkage interface */ #ifndef __ID3D11ClassLinkage_INTERFACE_DEFINED__ #define __ID3D11ClassLinkage_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11ClassLinkage, 0xddf57cba, 0x9543, 0x46e4, 0xa1,0x2b, 0xf2,0x07,0xa0,0xfe,0x7f,0xed); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ddf57cba-9543-46e4-a12b-f207a0fe7fed") ID3D11ClassLinkage : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE GetClassInstance( LPCSTR pClassInstanceName, UINT InstanceIndex, ID3D11ClassInstance **ppInstance) = 0; virtual HRESULT STDMETHODCALLTYPE CreateClassInstance( LPCSTR pClassTypeName, UINT ConstantBufferOffset, UINT ConstantVectorOffset, UINT TextureOffset, UINT SamplerOffset, ID3D11ClassInstance **ppInstance) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11ClassLinkage, 0xddf57cba, 0x9543, 0x46e4, 0xa1,0x2b, 0xf2,0x07,0xa0,0xfe,0x7f,0xed) #endif #else typedef struct ID3D11ClassLinkageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11ClassLinkage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11ClassLinkage *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11ClassLinkage *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11ClassLinkage *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11ClassLinkage *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11ClassLinkage *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11ClassLinkage *This, REFGUID guid, const IUnknown *pData); /*** ID3D11ClassLinkage methods ***/ HRESULT (STDMETHODCALLTYPE *GetClassInstance)( ID3D11ClassLinkage *This, LPCSTR pClassInstanceName, UINT InstanceIndex, ID3D11ClassInstance **ppInstance); HRESULT (STDMETHODCALLTYPE *CreateClassInstance)( ID3D11ClassLinkage *This, LPCSTR pClassTypeName, UINT ConstantBufferOffset, UINT ConstantVectorOffset, UINT TextureOffset, UINT SamplerOffset, ID3D11ClassInstance **ppInstance); END_INTERFACE } ID3D11ClassLinkageVtbl; interface ID3D11ClassLinkage { CONST_VTBL ID3D11ClassLinkageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11ClassLinkage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11ClassLinkage_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11ClassLinkage_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11ClassLinkage_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11ClassLinkage_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11ClassLinkage_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11ClassLinkage_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11ClassLinkage methods ***/ #define ID3D11ClassLinkage_GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance) (This)->lpVtbl->GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance) #define ID3D11ClassLinkage_CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance) (This)->lpVtbl->CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11ClassLinkage_QueryInterface(ID3D11ClassLinkage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11ClassLinkage_AddRef(ID3D11ClassLinkage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11ClassLinkage_Release(ID3D11ClassLinkage* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11ClassLinkage_GetDevice(ID3D11ClassLinkage* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11ClassLinkage_GetPrivateData(ID3D11ClassLinkage* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11ClassLinkage_SetPrivateData(ID3D11ClassLinkage* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11ClassLinkage_SetPrivateDataInterface(ID3D11ClassLinkage* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11ClassLinkage methods ***/ static FORCEINLINE HRESULT ID3D11ClassLinkage_GetClassInstance(ID3D11ClassLinkage* This,LPCSTR pClassInstanceName,UINT InstanceIndex,ID3D11ClassInstance **ppInstance) { return This->lpVtbl->GetClassInstance(This,pClassInstanceName,InstanceIndex,ppInstance); } static FORCEINLINE HRESULT ID3D11ClassLinkage_CreateClassInstance(ID3D11ClassLinkage* This,LPCSTR pClassTypeName,UINT ConstantBufferOffset,UINT ConstantVectorOffset,UINT TextureOffset,UINT SamplerOffset,ID3D11ClassInstance **ppInstance) { return This->lpVtbl->CreateClassInstance(This,pClassTypeName,ConstantBufferOffset,ConstantVectorOffset,TextureOffset,SamplerOffset,ppInstance); } #endif #endif #endif #endif /* __ID3D11ClassLinkage_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11CommandList interface */ #ifndef __ID3D11CommandList_INTERFACE_DEFINED__ #define __ID3D11CommandList_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11CommandList, 0xa24bc4d1, 0x769e, 0x43f7, 0x80,0x13, 0x98,0xff,0x56,0x6c,0x18,0xe2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a24bc4d1-769e-43f7-8013-98ff566c18e2") ID3D11CommandList : public ID3D11DeviceChild { virtual UINT STDMETHODCALLTYPE GetContextFlags( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11CommandList, 0xa24bc4d1, 0x769e, 0x43f7, 0x80,0x13, 0x98,0xff,0x56,0x6c,0x18,0xe2) #endif #else typedef struct ID3D11CommandListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11CommandList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11CommandList *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11CommandList *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11CommandList *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11CommandList *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11CommandList *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11CommandList *This, REFGUID guid, const IUnknown *pData); /*** ID3D11CommandList methods ***/ UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11CommandList *This); END_INTERFACE } ID3D11CommandListVtbl; interface ID3D11CommandList { CONST_VTBL ID3D11CommandListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11CommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11CommandList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11CommandList_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11CommandList_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11CommandList_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11CommandList_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11CommandList_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11CommandList methods ***/ #define ID3D11CommandList_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11CommandList_QueryInterface(ID3D11CommandList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11CommandList_AddRef(ID3D11CommandList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11CommandList_Release(ID3D11CommandList* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11CommandList_GetDevice(ID3D11CommandList* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11CommandList_GetPrivateData(ID3D11CommandList* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11CommandList_SetPrivateData(ID3D11CommandList* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11CommandList_SetPrivateDataInterface(ID3D11CommandList* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11CommandList methods ***/ static FORCEINLINE UINT ID3D11CommandList_GetContextFlags(ID3D11CommandList* This) { return This->lpVtbl->GetContextFlags(This); } #endif #endif #endif #endif /* __ID3D11CommandList_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11ComputeShader interface */ #ifndef __ID3D11ComputeShader_INTERFACE_DEFINED__ #define __ID3D11ComputeShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11ComputeShader, 0x4f5b196e, 0xc2bd, 0x495e, 0xbd,0x01, 0x1f,0xde,0xd3,0x8e,0x49,0x69); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4f5b196e-c2bd-495e-bd01-1fded38e4969") ID3D11ComputeShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11ComputeShader, 0x4f5b196e, 0xc2bd, 0x495e, 0xbd,0x01, 0x1f,0xde,0xd3,0x8e,0x49,0x69) #endif #else typedef struct ID3D11ComputeShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11ComputeShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11ComputeShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11ComputeShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11ComputeShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11ComputeShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11ComputeShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11ComputeShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11ComputeShaderVtbl; interface ID3D11ComputeShader { CONST_VTBL ID3D11ComputeShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11ComputeShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11ComputeShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11ComputeShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11ComputeShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11ComputeShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11ComputeShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11ComputeShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11ComputeShader_QueryInterface(ID3D11ComputeShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11ComputeShader_AddRef(ID3D11ComputeShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11ComputeShader_Release(ID3D11ComputeShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11ComputeShader_GetDevice(ID3D11ComputeShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11ComputeShader_GetPrivateData(ID3D11ComputeShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11ComputeShader_SetPrivateData(ID3D11ComputeShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11ComputeShader_SetPrivateDataInterface(ID3D11ComputeShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11ComputeShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Counter interface */ #ifndef __ID3D11Counter_INTERFACE_DEFINED__ #define __ID3D11Counter_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Counter, 0x6e8c49fb, 0xa371, 0x4770, 0xb4,0x40, 0x29,0x08,0x60,0x22,0xb7,0x41); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6e8c49fb-a371-4770-b440-29086022b741") ID3D11Counter : public ID3D11Asynchronous { virtual void STDMETHODCALLTYPE GetDesc( D3D11_COUNTER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Counter, 0x6e8c49fb, 0xa371, 0x4770, 0xb4,0x40, 0x29,0x08,0x60,0x22,0xb7,0x41) #endif #else typedef struct ID3D11CounterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Counter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Counter *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Counter *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Counter *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Counter *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Counter *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Counter *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Asynchronous methods ***/ UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D11Counter *This); /*** ID3D11Counter methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Counter *This, D3D11_COUNTER_DESC *pDesc); END_INTERFACE } ID3D11CounterVtbl; interface ID3D11Counter { CONST_VTBL ID3D11CounterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Counter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Counter_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Counter_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Counter_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Counter_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Counter_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Counter_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Asynchronous methods ***/ #define ID3D11Counter_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D11Counter methods ***/ #define ID3D11Counter_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Counter_QueryInterface(ID3D11Counter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Counter_AddRef(ID3D11Counter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Counter_Release(ID3D11Counter* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Counter_GetDevice(ID3D11Counter* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Counter_GetPrivateData(ID3D11Counter* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Counter_SetPrivateData(ID3D11Counter* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Counter_SetPrivateDataInterface(ID3D11Counter* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Asynchronous methods ***/ static FORCEINLINE UINT ID3D11Counter_GetDataSize(ID3D11Counter* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D11Counter methods ***/ static FORCEINLINE void ID3D11Counter_GetDesc(ID3D11Counter* This,D3D11_COUNTER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Counter_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DepthStencilState interface */ #ifndef __ID3D11DepthStencilState_INTERFACE_DEFINED__ #define __ID3D11DepthStencilState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DepthStencilState, 0x03823efb, 0x8d8f, 0x4e1c, 0x9a,0xa2, 0xf6,0x4b,0xb2,0xcb,0xfd,0xf1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("03823efb-8d8f-4e1c-9aa2-f64bb2cbfdf1") ID3D11DepthStencilState : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D11_DEPTH_STENCIL_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DepthStencilState, 0x03823efb, 0x8d8f, 0x4e1c, 0x9a,0xa2, 0xf6,0x4b,0xb2,0xcb,0xfd,0xf1) #endif #else typedef struct ID3D11DepthStencilStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DepthStencilState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DepthStencilState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DepthStencilState *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DepthStencilState *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DepthStencilState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DepthStencilState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DepthStencilState *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DepthStencilState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11DepthStencilState *This, D3D11_DEPTH_STENCIL_DESC *pDesc); END_INTERFACE } ID3D11DepthStencilStateVtbl; interface ID3D11DepthStencilState { CONST_VTBL ID3D11DepthStencilStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DepthStencilState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DepthStencilState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DepthStencilState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DepthStencilState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DepthStencilState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DepthStencilState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DepthStencilState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DepthStencilState methods ***/ #define ID3D11DepthStencilState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DepthStencilState_QueryInterface(ID3D11DepthStencilState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DepthStencilState_AddRef(ID3D11DepthStencilState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DepthStencilState_Release(ID3D11DepthStencilState* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DepthStencilState_GetDevice(ID3D11DepthStencilState* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DepthStencilState_GetPrivateData(ID3D11DepthStencilState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DepthStencilState_SetPrivateData(ID3D11DepthStencilState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DepthStencilState_SetPrivateDataInterface(ID3D11DepthStencilState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DepthStencilState methods ***/ static FORCEINLINE void ID3D11DepthStencilState_GetDesc(ID3D11DepthStencilState* This,D3D11_DEPTH_STENCIL_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11DepthStencilState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DepthStencilView interface */ #ifndef __ID3D11DepthStencilView_INTERFACE_DEFINED__ #define __ID3D11DepthStencilView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DepthStencilView, 0x9fdac92a, 0x1876, 0x48c3, 0xaf,0xad, 0x25,0xb9,0x4f,0x84,0xa9,0xb6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9fdac92a-1876-48c3-afad-25b94f84a9b6") ID3D11DepthStencilView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DepthStencilView, 0x9fdac92a, 0x1876, 0x48c3, 0xaf,0xad, 0x25,0xb9,0x4f,0x84,0xa9,0xb6) #endif #else typedef struct ID3D11DepthStencilViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DepthStencilView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DepthStencilView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DepthStencilView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DepthStencilView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DepthStencilView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DepthStencilView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DepthStencilView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11DepthStencilView *This, ID3D11Resource **ppResource); /*** ID3D11DepthStencilView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11DepthStencilView *This, D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc); END_INTERFACE } ID3D11DepthStencilViewVtbl; interface ID3D11DepthStencilView { CONST_VTBL ID3D11DepthStencilViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DepthStencilView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DepthStencilView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DepthStencilView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DepthStencilView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DepthStencilView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DepthStencilView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DepthStencilView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11DepthStencilView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11DepthStencilView methods ***/ #define ID3D11DepthStencilView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DepthStencilView_QueryInterface(ID3D11DepthStencilView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DepthStencilView_AddRef(ID3D11DepthStencilView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DepthStencilView_Release(ID3D11DepthStencilView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DepthStencilView_GetDevice(ID3D11DepthStencilView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DepthStencilView_GetPrivateData(ID3D11DepthStencilView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DepthStencilView_SetPrivateData(ID3D11DepthStencilView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DepthStencilView_SetPrivateDataInterface(ID3D11DepthStencilView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11DepthStencilView_GetResource(ID3D11DepthStencilView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11DepthStencilView methods ***/ static FORCEINLINE void ID3D11DepthStencilView_GetDesc(ID3D11DepthStencilView* This,D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11DepthStencilView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DomainShader interface */ #ifndef __ID3D11DomainShader_INTERFACE_DEFINED__ #define __ID3D11DomainShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DomainShader, 0xf582c508, 0x0f36, 0x490c, 0x99,0x77, 0x31,0xee,0xce,0x26,0x8c,0xfa); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f582c508-0f36-490c-9977-31eece268cfa") ID3D11DomainShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DomainShader, 0xf582c508, 0x0f36, 0x490c, 0x99,0x77, 0x31,0xee,0xce,0x26,0x8c,0xfa) #endif #else typedef struct ID3D11DomainShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DomainShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DomainShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DomainShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DomainShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DomainShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DomainShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DomainShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11DomainShaderVtbl; interface ID3D11DomainShader { CONST_VTBL ID3D11DomainShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DomainShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DomainShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DomainShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DomainShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DomainShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DomainShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DomainShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DomainShader_QueryInterface(ID3D11DomainShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DomainShader_AddRef(ID3D11DomainShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DomainShader_Release(ID3D11DomainShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DomainShader_GetDevice(ID3D11DomainShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DomainShader_GetPrivateData(ID3D11DomainShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DomainShader_SetPrivateData(ID3D11DomainShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DomainShader_SetPrivateDataInterface(ID3D11DomainShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11DomainShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11GeometryShader interface */ #ifndef __ID3D11GeometryShader_INTERFACE_DEFINED__ #define __ID3D11GeometryShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11GeometryShader, 0x38325b96, 0xeffb, 0x4022, 0xba,0x02, 0x2e,0x79,0x5b,0x70,0x27,0x5c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("38325b96-effb-4022-ba02-2e795b70275c") ID3D11GeometryShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11GeometryShader, 0x38325b96, 0xeffb, 0x4022, 0xba,0x02, 0x2e,0x79,0x5b,0x70,0x27,0x5c) #endif #else typedef struct ID3D11GeometryShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11GeometryShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11GeometryShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11GeometryShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11GeometryShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11GeometryShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11GeometryShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11GeometryShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11GeometryShaderVtbl; interface ID3D11GeometryShader { CONST_VTBL ID3D11GeometryShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11GeometryShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11GeometryShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11GeometryShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11GeometryShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11GeometryShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11GeometryShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11GeometryShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11GeometryShader_QueryInterface(ID3D11GeometryShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11GeometryShader_AddRef(ID3D11GeometryShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11GeometryShader_Release(ID3D11GeometryShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11GeometryShader_GetDevice(ID3D11GeometryShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11GeometryShader_GetPrivateData(ID3D11GeometryShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11GeometryShader_SetPrivateData(ID3D11GeometryShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11GeometryShader_SetPrivateDataInterface(ID3D11GeometryShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11GeometryShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11HullShader interface */ #ifndef __ID3D11HullShader_INTERFACE_DEFINED__ #define __ID3D11HullShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11HullShader, 0x8e5c6061, 0x628a, 0x4c8e, 0x82,0x64, 0xbb,0xe4,0x5c,0xb3,0xd5,0xdd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8e5c6061-628a-4c8e-8264-bbe45cb3d5dd") ID3D11HullShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11HullShader, 0x8e5c6061, 0x628a, 0x4c8e, 0x82,0x64, 0xbb,0xe4,0x5c,0xb3,0xd5,0xdd) #endif #else typedef struct ID3D11HullShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11HullShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11HullShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11HullShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11HullShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11HullShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11HullShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11HullShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11HullShaderVtbl; interface ID3D11HullShader { CONST_VTBL ID3D11HullShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11HullShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11HullShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11HullShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11HullShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11HullShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11HullShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11HullShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11HullShader_QueryInterface(ID3D11HullShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11HullShader_AddRef(ID3D11HullShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11HullShader_Release(ID3D11HullShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11HullShader_GetDevice(ID3D11HullShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11HullShader_GetPrivateData(ID3D11HullShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11HullShader_SetPrivateData(ID3D11HullShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11HullShader_SetPrivateDataInterface(ID3D11HullShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11HullShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11InputLayout interface */ #ifndef __ID3D11InputLayout_INTERFACE_DEFINED__ #define __ID3D11InputLayout_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11InputLayout, 0xe4819ddc, 0x4cf0, 0x4025, 0xbd,0x26, 0x5d,0xe8,0x2a,0x3e,0x07,0xb7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e4819ddc-4cf0-4025-bd26-5de82a3e07b7") ID3D11InputLayout : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11InputLayout, 0xe4819ddc, 0x4cf0, 0x4025, 0xbd,0x26, 0x5d,0xe8,0x2a,0x3e,0x07,0xb7) #endif #else typedef struct ID3D11InputLayoutVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11InputLayout *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11InputLayout *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11InputLayout *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11InputLayout *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11InputLayout *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11InputLayout *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11InputLayout *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11InputLayoutVtbl; interface ID3D11InputLayout { CONST_VTBL ID3D11InputLayoutVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11InputLayout_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11InputLayout_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11InputLayout_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11InputLayout_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11InputLayout_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11InputLayout_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11InputLayout_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11InputLayout_QueryInterface(ID3D11InputLayout* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11InputLayout_AddRef(ID3D11InputLayout* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11InputLayout_Release(ID3D11InputLayout* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11InputLayout_GetDevice(ID3D11InputLayout* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11InputLayout_GetPrivateData(ID3D11InputLayout* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11InputLayout_SetPrivateData(ID3D11InputLayout* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11InputLayout_SetPrivateDataInterface(ID3D11InputLayout* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11InputLayout_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11PixelShader interface */ #ifndef __ID3D11PixelShader_INTERFACE_DEFINED__ #define __ID3D11PixelShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11PixelShader, 0xea82e40d, 0x51dc, 0x4f33, 0x93,0xd4, 0xdb,0x7c,0x91,0x25,0xae,0x8c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ea82e40d-51dc-4f33-93d4-db7c9125ae8c") ID3D11PixelShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11PixelShader, 0xea82e40d, 0x51dc, 0x4f33, 0x93,0xd4, 0xdb,0x7c,0x91,0x25,0xae,0x8c) #endif #else typedef struct ID3D11PixelShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11PixelShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11PixelShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11PixelShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11PixelShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11PixelShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11PixelShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11PixelShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11PixelShaderVtbl; interface ID3D11PixelShader { CONST_VTBL ID3D11PixelShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11PixelShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11PixelShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11PixelShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11PixelShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11PixelShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11PixelShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11PixelShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11PixelShader_QueryInterface(ID3D11PixelShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11PixelShader_AddRef(ID3D11PixelShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11PixelShader_Release(ID3D11PixelShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11PixelShader_GetDevice(ID3D11PixelShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11PixelShader_GetPrivateData(ID3D11PixelShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11PixelShader_SetPrivateData(ID3D11PixelShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11PixelShader_SetPrivateDataInterface(ID3D11PixelShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11PixelShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Predicate interface */ #ifndef __ID3D11Predicate_INTERFACE_DEFINED__ #define __ID3D11Predicate_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Predicate, 0x9eb576dd, 0x9f77, 0x4d86, 0x81,0xaa, 0x8b,0xab,0x5f,0xe4,0x90,0xe2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9eb576dd-9f77-4d86-81aa-8bab5fe490e2") ID3D11Predicate : public ID3D11Query { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Predicate, 0x9eb576dd, 0x9f77, 0x4d86, 0x81,0xaa, 0x8b,0xab,0x5f,0xe4,0x90,0xe2) #endif #else typedef struct ID3D11PredicateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Predicate *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Predicate *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Predicate *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Predicate *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Predicate *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Predicate *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Predicate *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Asynchronous methods ***/ UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D11Predicate *This); /*** ID3D11Query methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Predicate *This, D3D11_QUERY_DESC *pDesc); END_INTERFACE } ID3D11PredicateVtbl; interface ID3D11Predicate { CONST_VTBL ID3D11PredicateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Predicate_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Predicate_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Predicate_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Predicate_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Predicate_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Predicate_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Predicate_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Asynchronous methods ***/ #define ID3D11Predicate_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D11Query methods ***/ #define ID3D11Predicate_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Predicate_QueryInterface(ID3D11Predicate* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Predicate_AddRef(ID3D11Predicate* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Predicate_Release(ID3D11Predicate* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Predicate_GetDevice(ID3D11Predicate* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Predicate_GetPrivateData(ID3D11Predicate* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Predicate_SetPrivateData(ID3D11Predicate* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Predicate_SetPrivateDataInterface(ID3D11Predicate* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Asynchronous methods ***/ static FORCEINLINE UINT ID3D11Predicate_GetDataSize(ID3D11Predicate* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D11Query methods ***/ static FORCEINLINE void ID3D11Predicate_GetDesc(ID3D11Predicate* This,D3D11_QUERY_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Predicate_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11RasterizerState interface */ #ifndef __ID3D11RasterizerState_INTERFACE_DEFINED__ #define __ID3D11RasterizerState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11RasterizerState, 0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5,0x06, 0xfc,0x04,0x20,0x0b,0x6e,0xe7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9bb4ab81-ab1a-4d8f-b506-fc04200b6ee7") ID3D11RasterizerState : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D11_RASTERIZER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11RasterizerState, 0x9bb4ab81, 0xab1a, 0x4d8f, 0xb5,0x06, 0xfc,0x04,0x20,0x0b,0x6e,0xe7) #endif #else typedef struct ID3D11RasterizerStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11RasterizerState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11RasterizerState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11RasterizerState *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11RasterizerState *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11RasterizerState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11RasterizerState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11RasterizerState *This, REFGUID guid, const IUnknown *pData); /*** ID3D11RasterizerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11RasterizerState *This, D3D11_RASTERIZER_DESC *pDesc); END_INTERFACE } ID3D11RasterizerStateVtbl; interface ID3D11RasterizerState { CONST_VTBL ID3D11RasterizerStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11RasterizerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11RasterizerState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11RasterizerState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11RasterizerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11RasterizerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11RasterizerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11RasterizerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11RasterizerState methods ***/ #define ID3D11RasterizerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11RasterizerState_QueryInterface(ID3D11RasterizerState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11RasterizerState_AddRef(ID3D11RasterizerState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11RasterizerState_Release(ID3D11RasterizerState* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11RasterizerState_GetDevice(ID3D11RasterizerState* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11RasterizerState_GetPrivateData(ID3D11RasterizerState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState_SetPrivateData(ID3D11RasterizerState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState_SetPrivateDataInterface(ID3D11RasterizerState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11RasterizerState methods ***/ static FORCEINLINE void ID3D11RasterizerState_GetDesc(ID3D11RasterizerState* This,D3D11_RASTERIZER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11RasterizerState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11RenderTargetView interface */ #ifndef __ID3D11RenderTargetView_INTERFACE_DEFINED__ #define __ID3D11RenderTargetView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11RenderTargetView, 0xdfdba067, 0x0b8d, 0x4865, 0x87,0x5b, 0xd7,0xb4,0x51,0x6c,0xc1,0x64); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dfdba067-0b8d-4865-875b-d7b4516cc164") ID3D11RenderTargetView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_RENDER_TARGET_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11RenderTargetView, 0xdfdba067, 0x0b8d, 0x4865, 0x87,0x5b, 0xd7,0xb4,0x51,0x6c,0xc1,0x64) #endif #else typedef struct ID3D11RenderTargetViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11RenderTargetView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11RenderTargetView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11RenderTargetView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11RenderTargetView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11RenderTargetView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11RenderTargetView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11RenderTargetView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11RenderTargetView *This, ID3D11Resource **ppResource); /*** ID3D11RenderTargetView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11RenderTargetView *This, D3D11_RENDER_TARGET_VIEW_DESC *pDesc); END_INTERFACE } ID3D11RenderTargetViewVtbl; interface ID3D11RenderTargetView { CONST_VTBL ID3D11RenderTargetViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11RenderTargetView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11RenderTargetView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11RenderTargetView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11RenderTargetView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11RenderTargetView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11RenderTargetView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11RenderTargetView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11RenderTargetView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11RenderTargetView methods ***/ #define ID3D11RenderTargetView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11RenderTargetView_QueryInterface(ID3D11RenderTargetView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11RenderTargetView_AddRef(ID3D11RenderTargetView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11RenderTargetView_Release(ID3D11RenderTargetView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11RenderTargetView_GetDevice(ID3D11RenderTargetView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11RenderTargetView_GetPrivateData(ID3D11RenderTargetView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11RenderTargetView_SetPrivateData(ID3D11RenderTargetView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11RenderTargetView_SetPrivateDataInterface(ID3D11RenderTargetView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11RenderTargetView_GetResource(ID3D11RenderTargetView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11RenderTargetView methods ***/ static FORCEINLINE void ID3D11RenderTargetView_GetDesc(ID3D11RenderTargetView* This,D3D11_RENDER_TARGET_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11RenderTargetView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11SamplerState interface */ #ifndef __ID3D11SamplerState_INTERFACE_DEFINED__ #define __ID3D11SamplerState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11SamplerState, 0xda6fea51, 0x564c, 0x4487, 0x98,0x10, 0xf0,0xd0,0xf9,0xb4,0xe3,0xa5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("da6fea51-564c-4487-9810-f0d0f9b4e3a5") ID3D11SamplerState : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetDesc( D3D11_SAMPLER_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11SamplerState, 0xda6fea51, 0x564c, 0x4487, 0x98,0x10, 0xf0,0xd0,0xf9,0xb4,0xe3,0xa5) #endif #else typedef struct ID3D11SamplerStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11SamplerState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11SamplerState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11SamplerState *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11SamplerState *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11SamplerState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11SamplerState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11SamplerState *This, REFGUID guid, const IUnknown *pData); /*** ID3D11SamplerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11SamplerState *This, D3D11_SAMPLER_DESC *pDesc); END_INTERFACE } ID3D11SamplerStateVtbl; interface ID3D11SamplerState { CONST_VTBL ID3D11SamplerStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11SamplerState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11SamplerState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11SamplerState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11SamplerState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11SamplerState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11SamplerState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11SamplerState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11SamplerState methods ***/ #define ID3D11SamplerState_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11SamplerState_QueryInterface(ID3D11SamplerState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11SamplerState_AddRef(ID3D11SamplerState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11SamplerState_Release(ID3D11SamplerState* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11SamplerState_GetDevice(ID3D11SamplerState* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11SamplerState_GetPrivateData(ID3D11SamplerState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11SamplerState_SetPrivateData(ID3D11SamplerState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11SamplerState_SetPrivateDataInterface(ID3D11SamplerState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11SamplerState methods ***/ static FORCEINLINE void ID3D11SamplerState_GetDesc(ID3D11SamplerState* This,D3D11_SAMPLER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11SamplerState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11ShaderResourceView interface */ #ifndef __ID3D11ShaderResourceView_INTERFACE_DEFINED__ #define __ID3D11ShaderResourceView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11ShaderResourceView, 0xb0e06fe0, 0x8192, 0x4e1a, 0xb1,0xca, 0x36,0xd7,0x41,0x47,0x10,0xb2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b0e06fe0-8192-4e1a-b1ca-36d7414710b2") ID3D11ShaderResourceView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11ShaderResourceView, 0xb0e06fe0, 0x8192, 0x4e1a, 0xb1,0xca, 0x36,0xd7,0x41,0x47,0x10,0xb2) #endif #else typedef struct ID3D11ShaderResourceViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11ShaderResourceView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11ShaderResourceView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11ShaderResourceView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11ShaderResourceView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11ShaderResourceView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11ShaderResourceView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11ShaderResourceView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11ShaderResourceView *This, ID3D11Resource **ppResource); /*** ID3D11ShaderResourceView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11ShaderResourceView *This, D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc); END_INTERFACE } ID3D11ShaderResourceViewVtbl; interface ID3D11ShaderResourceView { CONST_VTBL ID3D11ShaderResourceViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11ShaderResourceView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11ShaderResourceView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11ShaderResourceView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11ShaderResourceView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11ShaderResourceView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11ShaderResourceView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11ShaderResourceView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11ShaderResourceView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11ShaderResourceView methods ***/ #define ID3D11ShaderResourceView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11ShaderResourceView_QueryInterface(ID3D11ShaderResourceView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11ShaderResourceView_AddRef(ID3D11ShaderResourceView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11ShaderResourceView_Release(ID3D11ShaderResourceView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11ShaderResourceView_GetDevice(ID3D11ShaderResourceView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11ShaderResourceView_GetPrivateData(ID3D11ShaderResourceView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11ShaderResourceView_SetPrivateData(ID3D11ShaderResourceView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11ShaderResourceView_SetPrivateDataInterface(ID3D11ShaderResourceView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11ShaderResourceView_GetResource(ID3D11ShaderResourceView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11ShaderResourceView methods ***/ static FORCEINLINE void ID3D11ShaderResourceView_GetDesc(ID3D11ShaderResourceView* This,D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11ShaderResourceView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Texture1D interface */ #ifndef __ID3D11Texture1D_INTERFACE_DEFINED__ #define __ID3D11Texture1D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Texture1D, 0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4,0xc8, 0x43,0x9a,0xf2,0xef,0x56,0x4c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f8fb5c27-c6b3-4f75-a4c8-439af2ef564c") ID3D11Texture1D : public ID3D11Resource { virtual void STDMETHODCALLTYPE GetDesc( D3D11_TEXTURE1D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Texture1D, 0xf8fb5c27, 0xc6b3, 0x4f75, 0xa4,0xc8, 0x43,0x9a,0xf2,0xef,0x56,0x4c) #endif #else typedef struct ID3D11Texture1DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Texture1D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Texture1D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Texture1D *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Texture1D *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Texture1D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Texture1D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Texture1D *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Texture1D *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Texture1D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Texture1D *This); /*** ID3D11Texture1D methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Texture1D *This, D3D11_TEXTURE1D_DESC *pDesc); END_INTERFACE } ID3D11Texture1DVtbl; interface ID3D11Texture1D { CONST_VTBL ID3D11Texture1DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Texture1D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Texture1D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Texture1D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Texture1D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Texture1D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Texture1D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Texture1D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Texture1D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Texture1D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Texture1D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Texture1D methods ***/ #define ID3D11Texture1D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Texture1D_QueryInterface(ID3D11Texture1D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Texture1D_AddRef(ID3D11Texture1D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Texture1D_Release(ID3D11Texture1D* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Texture1D_GetDevice(ID3D11Texture1D* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Texture1D_GetPrivateData(ID3D11Texture1D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture1D_SetPrivateData(ID3D11Texture1D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture1D_SetPrivateDataInterface(ID3D11Texture1D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Texture1D_GetType(ID3D11Texture1D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Texture1D_SetEvictionPriority(ID3D11Texture1D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Texture1D_GetEvictionPriority(ID3D11Texture1D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Texture1D methods ***/ static FORCEINLINE void ID3D11Texture1D_GetDesc(ID3D11Texture1D* This,D3D11_TEXTURE1D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Texture1D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Texture2D interface */ #ifndef __ID3D11Texture2D_INTERFACE_DEFINED__ #define __ID3D11Texture2D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Texture2D, 0x6f15aaf2, 0xd208, 0x4e89, 0x9a,0xb4, 0x48,0x95,0x35,0xd3,0x4f,0x9c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6f15aaf2-d208-4e89-9ab4-489535d34f9c") ID3D11Texture2D : public ID3D11Resource { virtual void STDMETHODCALLTYPE GetDesc( D3D11_TEXTURE2D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Texture2D, 0x6f15aaf2, 0xd208, 0x4e89, 0x9a,0xb4, 0x48,0x95,0x35,0xd3,0x4f,0x9c) #endif #else typedef struct ID3D11Texture2DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Texture2D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Texture2D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Texture2D *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Texture2D *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Texture2D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Texture2D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Texture2D *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Texture2D *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Texture2D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Texture2D *This); /*** ID3D11Texture2D methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Texture2D *This, D3D11_TEXTURE2D_DESC *pDesc); END_INTERFACE } ID3D11Texture2DVtbl; interface ID3D11Texture2D { CONST_VTBL ID3D11Texture2DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Texture2D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Texture2D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Texture2D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Texture2D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Texture2D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Texture2D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Texture2D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Texture2D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Texture2D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Texture2D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Texture2D methods ***/ #define ID3D11Texture2D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Texture2D_QueryInterface(ID3D11Texture2D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Texture2D_AddRef(ID3D11Texture2D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Texture2D_Release(ID3D11Texture2D* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Texture2D_GetDevice(ID3D11Texture2D* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Texture2D_GetPrivateData(ID3D11Texture2D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture2D_SetPrivateData(ID3D11Texture2D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture2D_SetPrivateDataInterface(ID3D11Texture2D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Texture2D_GetType(ID3D11Texture2D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Texture2D_SetEvictionPriority(ID3D11Texture2D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Texture2D_GetEvictionPriority(ID3D11Texture2D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Texture2D methods ***/ static FORCEINLINE void ID3D11Texture2D_GetDesc(ID3D11Texture2D* This,D3D11_TEXTURE2D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Texture2D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Texture3D interface */ #ifndef __ID3D11Texture3D_INTERFACE_DEFINED__ #define __ID3D11Texture3D_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Texture3D, 0x037e866e, 0xf56d, 0x4357, 0xa8,0xaf, 0x9d,0xab,0xbe,0x6e,0x25,0x0e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("037e866e-f56d-4357-a8af-9dabbe6e250e") ID3D11Texture3D : public ID3D11Resource { virtual void STDMETHODCALLTYPE GetDesc( D3D11_TEXTURE3D_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Texture3D, 0x037e866e, 0xf56d, 0x4357, 0xa8,0xaf, 0x9d,0xab,0xbe,0x6e,0x25,0x0e) #endif #else typedef struct ID3D11Texture3DVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Texture3D *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Texture3D *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Texture3D *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Texture3D *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Texture3D *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Texture3D *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Texture3D *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Texture3D *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Texture3D *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Texture3D *This); /*** ID3D11Texture3D methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Texture3D *This, D3D11_TEXTURE3D_DESC *pDesc); END_INTERFACE } ID3D11Texture3DVtbl; interface ID3D11Texture3D { CONST_VTBL ID3D11Texture3DVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Texture3D_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Texture3D_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Texture3D_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Texture3D_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Texture3D_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Texture3D_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Texture3D_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Texture3D_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Texture3D_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Texture3D_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Texture3D methods ***/ #define ID3D11Texture3D_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Texture3D_QueryInterface(ID3D11Texture3D* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Texture3D_AddRef(ID3D11Texture3D* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Texture3D_Release(ID3D11Texture3D* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Texture3D_GetDevice(ID3D11Texture3D* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Texture3D_GetPrivateData(ID3D11Texture3D* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture3D_SetPrivateData(ID3D11Texture3D* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture3D_SetPrivateDataInterface(ID3D11Texture3D* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Texture3D_GetType(ID3D11Texture3D* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Texture3D_SetEvictionPriority(ID3D11Texture3D* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Texture3D_GetEvictionPriority(ID3D11Texture3D* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Texture3D methods ***/ static FORCEINLINE void ID3D11Texture3D_GetDesc(ID3D11Texture3D* This,D3D11_TEXTURE3D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11Texture3D_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11UnorderedAccessView interface */ #ifndef __ID3D11UnorderedAccessView_INTERFACE_DEFINED__ #define __ID3D11UnorderedAccessView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11UnorderedAccessView, 0x28acf509, 0x7f5c, 0x48f6, 0x86,0x11, 0xf3,0x16,0x01,0x0a,0x63,0x80); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("28acf509-7f5c-48f6-8611-f316010a6380") ID3D11UnorderedAccessView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11UnorderedAccessView, 0x28acf509, 0x7f5c, 0x48f6, 0x86,0x11, 0xf3,0x16,0x01,0x0a,0x63,0x80) #endif #else typedef struct ID3D11UnorderedAccessViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11UnorderedAccessView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11UnorderedAccessView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11UnorderedAccessView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11UnorderedAccessView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11UnorderedAccessView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11UnorderedAccessView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11UnorderedAccessView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11UnorderedAccessView *This, ID3D11Resource **ppResource); /*** ID3D11UnorderedAccessView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11UnorderedAccessView *This, D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc); END_INTERFACE } ID3D11UnorderedAccessViewVtbl; interface ID3D11UnorderedAccessView { CONST_VTBL ID3D11UnorderedAccessViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11UnorderedAccessView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11UnorderedAccessView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11UnorderedAccessView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11UnorderedAccessView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11UnorderedAccessView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11UnorderedAccessView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11UnorderedAccessView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11UnorderedAccessView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11UnorderedAccessView methods ***/ #define ID3D11UnorderedAccessView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11UnorderedAccessView_QueryInterface(ID3D11UnorderedAccessView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11UnorderedAccessView_AddRef(ID3D11UnorderedAccessView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11UnorderedAccessView_Release(ID3D11UnorderedAccessView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView_GetDevice(ID3D11UnorderedAccessView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView_GetPrivateData(ID3D11UnorderedAccessView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView_SetPrivateData(ID3D11UnorderedAccessView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView_SetPrivateDataInterface(ID3D11UnorderedAccessView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView_GetResource(ID3D11UnorderedAccessView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11UnorderedAccessView methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView_GetDesc(ID3D11UnorderedAccessView* This,D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11UnorderedAccessView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VertexShader interface */ #ifndef __ID3D11VertexShader_INTERFACE_DEFINED__ #define __ID3D11VertexShader_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VertexShader, 0x3b301d64, 0xd678, 0x4289, 0x88,0x97, 0x22,0xf8,0x92,0x8b,0x72,0xf3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3b301d64-d678-4289-8897-22f8928b72f3") ID3D11VertexShader : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VertexShader, 0x3b301d64, 0xd678, 0x4289, 0x88,0x97, 0x22,0xf8,0x92,0x8b,0x72,0xf3) #endif #else typedef struct ID3D11VertexShaderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VertexShader *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VertexShader *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VertexShader *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VertexShader *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VertexShader *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VertexShader *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VertexShader *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11VertexShaderVtbl; interface ID3D11VertexShader { CONST_VTBL ID3D11VertexShaderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VertexShader_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VertexShader_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VertexShader_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VertexShader_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VertexShader_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VertexShader_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VertexShader_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VertexShader_QueryInterface(ID3D11VertexShader* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VertexShader_AddRef(ID3D11VertexShader* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VertexShader_Release(ID3D11VertexShader* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VertexShader_GetDevice(ID3D11VertexShader* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VertexShader_GetPrivateData(ID3D11VertexShader* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VertexShader_SetPrivateData(ID3D11VertexShader* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VertexShader_SetPrivateDataInterface(ID3D11VertexShader* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11VertexShader_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DeviceContext interface */ #ifndef __ID3D11DeviceContext_INTERFACE_DEFINED__ #define __ID3D11DeviceContext_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceContext, 0xc0bfa96c, 0xe089, 0x44fb, 0x8e,0xaf, 0x26,0xf8,0x79,0x61,0x90,0xda); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c0bfa96c-e089-44fb-8eaf-26f8796190da") ID3D11DeviceContext : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE VSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE PSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE PSSetShader( ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE PSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE VSSetShader( ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE DrawIndexed( UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation) = 0; virtual void STDMETHODCALLTYPE Draw( UINT VertexCount, UINT StartVertexLocation) = 0; virtual HRESULT STDMETHODCALLTYPE Map( ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource) = 0; virtual void STDMETHODCALLTYPE Unmap( ID3D11Resource *pResource, UINT Subresource) = 0; virtual void STDMETHODCALLTYPE PSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE IASetInputLayout( ID3D11InputLayout *pInputLayout) = 0; virtual void STDMETHODCALLTYPE IASetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE IASetIndexBuffer( ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset) = 0; virtual void STDMETHODCALLTYPE DrawIndexedInstanced( UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE DrawInstanced( UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation) = 0; virtual void STDMETHODCALLTYPE GSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE GSSetShader( ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE IASetPrimitiveTopology( D3D11_PRIMITIVE_TOPOLOGY Topology) = 0; virtual void STDMETHODCALLTYPE VSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE VSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE Begin( ID3D11Asynchronous *pAsync) = 0; virtual void STDMETHODCALLTYPE End( ID3D11Asynchronous *pAsync) = 0; virtual HRESULT STDMETHODCALLTYPE GetData( ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags) = 0; virtual void STDMETHODCALLTYPE SetPredication( ID3D11Predicate *pPredicate, WINBOOL PredicateValue) = 0; virtual void STDMETHODCALLTYPE GSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE GSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE OMSetRenderTargets( UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView) = 0; virtual void STDMETHODCALLTYPE OMSetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts) = 0; virtual void STDMETHODCALLTYPE OMSetBlendState( ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask) = 0; virtual void STDMETHODCALLTYPE OMSetDepthStencilState( ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef) = 0; virtual void STDMETHODCALLTYPE SOSetTargets( UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE DrawAuto( ) = 0; virtual void STDMETHODCALLTYPE DrawIndexedInstancedIndirect( ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs) = 0; virtual void STDMETHODCALLTYPE DrawInstancedIndirect( ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs) = 0; virtual void STDMETHODCALLTYPE Dispatch( UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ) = 0; virtual void STDMETHODCALLTYPE DispatchIndirect( ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs) = 0; virtual void STDMETHODCALLTYPE RSSetState( ID3D11RasterizerState *pRasterizerState) = 0; virtual void STDMETHODCALLTYPE RSSetViewports( UINT NumViewports, const D3D11_VIEWPORT *pViewports) = 0; virtual void STDMETHODCALLTYPE RSSetScissorRects( UINT NumRects, const D3D11_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE CopySubresourceRegion( ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox) = 0; virtual void STDMETHODCALLTYPE CopyResource( ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource) = 0; virtual void STDMETHODCALLTYPE UpdateSubresource( ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch) = 0; virtual void STDMETHODCALLTYPE CopyStructureCount( ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView) = 0; virtual void STDMETHODCALLTYPE ClearRenderTargetView( ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewUint( ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewFloat( ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]) = 0; virtual void STDMETHODCALLTYPE ClearDepthStencilView( ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil) = 0; virtual void STDMETHODCALLTYPE GenerateMips( ID3D11ShaderResourceView *pShaderResourceView) = 0; virtual void STDMETHODCALLTYPE SetResourceMinLOD( ID3D11Resource *pResource, FLOAT MinLOD) = 0; virtual FLOAT STDMETHODCALLTYPE GetResourceMinLOD( ID3D11Resource *pResource) = 0; virtual void STDMETHODCALLTYPE ResolveSubresource( ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format) = 0; virtual void STDMETHODCALLTYPE ExecuteCommandList( ID3D11CommandList *pCommandList, WINBOOL RestoreContextState) = 0; virtual void STDMETHODCALLTYPE HSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE HSSetShader( ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE HSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE HSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE DSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE DSSetShader( ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE DSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE DSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE CSSetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE CSSetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts) = 0; virtual void STDMETHODCALLTYPE CSSetShader( ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances) = 0; virtual void STDMETHODCALLTYPE CSSetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers) = 0; virtual void STDMETHODCALLTYPE CSSetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE VSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE PSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE PSGetShader( ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE PSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE VSGetShader( ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE PSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE IAGetInputLayout( ID3D11InputLayout **ppInputLayout) = 0; virtual void STDMETHODCALLTYPE IAGetVertexBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets) = 0; virtual void STDMETHODCALLTYPE IAGetIndexBuffer( ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset) = 0; virtual void STDMETHODCALLTYPE GSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE GSGetShader( ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE IAGetPrimitiveTopology( D3D11_PRIMITIVE_TOPOLOGY *pTopology) = 0; virtual void STDMETHODCALLTYPE VSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE VSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE GetPredication( ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue) = 0; virtual void STDMETHODCALLTYPE GSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE GSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE OMGetRenderTargets( UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView) = 0; virtual void STDMETHODCALLTYPE OMGetRenderTargetsAndUnorderedAccessViews( UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews) = 0; virtual void STDMETHODCALLTYPE OMGetBlendState( ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask) = 0; virtual void STDMETHODCALLTYPE OMGetDepthStencilState( ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef) = 0; virtual void STDMETHODCALLTYPE SOGetTargets( UINT NumBuffers, ID3D11Buffer **ppSOTargets) = 0; virtual void STDMETHODCALLTYPE RSGetState( ID3D11RasterizerState **ppRasterizerState) = 0; virtual void STDMETHODCALLTYPE RSGetViewports( UINT *pNumViewports, D3D11_VIEWPORT *pViewports) = 0; virtual void STDMETHODCALLTYPE RSGetScissorRects( UINT *pNumRects, D3D11_RECT *pRects) = 0; virtual void STDMETHODCALLTYPE HSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE HSGetShader( ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE HSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE HSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE DSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE DSGetShader( ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE DSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE DSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE CSGetShaderResources( UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews) = 0; virtual void STDMETHODCALLTYPE CSGetUnorderedAccessViews( UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews) = 0; virtual void STDMETHODCALLTYPE CSGetShader( ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances) = 0; virtual void STDMETHODCALLTYPE CSGetSamplers( UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers) = 0; virtual void STDMETHODCALLTYPE CSGetConstantBuffers( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers) = 0; virtual void STDMETHODCALLTYPE ClearState( ) = 0; virtual void STDMETHODCALLTYPE Flush( ) = 0; virtual D3D11_DEVICE_CONTEXT_TYPE STDMETHODCALLTYPE GetType( ) = 0; virtual UINT STDMETHODCALLTYPE GetContextFlags( ) = 0; virtual HRESULT STDMETHODCALLTYPE FinishCommandList( WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceContext, 0xc0bfa96c, 0xe089, 0x44fb, 0x8e,0xaf, 0x26,0xf8,0x79,0x61,0x90,0xda) #endif #else typedef struct ID3D11DeviceContextVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceContext *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceContext *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceContext *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceContext *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceContext *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceContext *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceContext *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DeviceContext methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D11DeviceContext *This, ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D11DeviceContext *This, ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D11DeviceContext *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D11DeviceContext *This, UINT VertexCount, UINT StartVertexLocation); HRESULT (STDMETHODCALLTYPE *Map)( ID3D11DeviceContext *This, ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); void (STDMETHODCALLTYPE *Unmap)( ID3D11DeviceContext *This, ID3D11Resource *pResource, UINT Subresource); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D11DeviceContext *This, ID3D11InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D11DeviceContext *This, ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D11DeviceContext *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D11DeviceContext *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D11DeviceContext *This, ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D11DeviceContext *This, D3D11_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *Begin)( ID3D11DeviceContext *This, ID3D11Asynchronous *pAsync); void (STDMETHODCALLTYPE *End)( ID3D11DeviceContext *This, ID3D11Asynchronous *pAsync); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D11DeviceContext *This, ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags); void (STDMETHODCALLTYPE *SetPredication)( ID3D11DeviceContext *This, ID3D11Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D11DeviceContext *This, UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext *This, UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D11DeviceContext *This, ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D11DeviceContext *This, ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D11DeviceContext *This, UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D11DeviceContext *This); void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)( ID3D11DeviceContext *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *DrawInstancedIndirect)( ID3D11DeviceContext *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *Dispatch)( ID3D11DeviceContext *This, UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ); void (STDMETHODCALLTYPE *DispatchIndirect)( ID3D11DeviceContext *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *RSSetState)( ID3D11DeviceContext *This, ID3D11RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D11DeviceContext *This, UINT NumViewports, const D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D11DeviceContext *This, UINT NumRects, const D3D11_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D11DeviceContext *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D11DeviceContext *This, ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D11DeviceContext *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *CopyStructureCount)( ID3D11DeviceContext *This, ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D11DeviceContext *This, ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D11DeviceContext *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D11DeviceContext *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D11DeviceContext *This, ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D11DeviceContext *This, ID3D11ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *SetResourceMinLOD)( ID3D11DeviceContext *This, ID3D11Resource *pResource, FLOAT MinLOD); FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)( ID3D11DeviceContext *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D11DeviceContext *This, ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *ExecuteCommandList)( ID3D11DeviceContext *This, ID3D11CommandList *pCommandList, WINBOOL RestoreContextState); void (STDMETHODCALLTYPE *HSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *HSSetShader)( ID3D11DeviceContext *This, ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *HSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *HSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *DSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *DSSetShader)( ID3D11DeviceContext *This, ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *DSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *CSSetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *CSSetShader)( ID3D11DeviceContext *This, ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *CSSetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *CSSetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D11DeviceContext *This, ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D11DeviceContext *This, ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D11DeviceContext *This, ID3D11InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D11DeviceContext *This, ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D11DeviceContext *This, ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D11DeviceContext *This, D3D11_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D11DeviceContext *This, ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D11DeviceContext *This, UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext *This, UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D11DeviceContext *This, ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D11DeviceContext *This, ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D11DeviceContext *This, UINT NumBuffers, ID3D11Buffer **ppSOTargets); void (STDMETHODCALLTYPE *RSGetState)( ID3D11DeviceContext *This, ID3D11RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D11DeviceContext *This, UINT *pNumViewports, D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D11DeviceContext *This, UINT *pNumRects, D3D11_RECT *pRects); void (STDMETHODCALLTYPE *HSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *HSGetShader)( ID3D11DeviceContext *This, ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *HSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *HSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *DSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *DSGetShader)( ID3D11DeviceContext *This, ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *DSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *DSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *CSGetShaderResources)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *CSGetShader)( ID3D11DeviceContext *This, ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *CSGetSamplers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *CSGetConstantBuffers)( ID3D11DeviceContext *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *ClearState)( ID3D11DeviceContext *This); void (STDMETHODCALLTYPE *Flush)( ID3D11DeviceContext *This); D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)( ID3D11DeviceContext *This); UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11DeviceContext *This); HRESULT (STDMETHODCALLTYPE *FinishCommandList)( ID3D11DeviceContext *This, WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList); END_INTERFACE } ID3D11DeviceContextVtbl; interface ID3D11DeviceContext { CONST_VTBL ID3D11DeviceContextVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceContext_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceContext_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceContext_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceContext_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceContext_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceContext_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DeviceContext methods ***/ #define ID3D11DeviceContext_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D11DeviceContext_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D11DeviceContext_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) #define ID3D11DeviceContext_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource) #define ID3D11DeviceContext_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D11DeviceContext_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D11DeviceContext_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync) #define ID3D11DeviceContext_End(This,pAsync) (This)->lpVtbl->End(This,pAsync) #define ID3D11DeviceContext_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags) #define ID3D11DeviceContext_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D11DeviceContext_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D11DeviceContext_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D11DeviceContext_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D11DeviceContext_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D11DeviceContext_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) #define ID3D11DeviceContext_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D11DeviceContext_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D11DeviceContext_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D11DeviceContext_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D11DeviceContext_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D11DeviceContext_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D11DeviceContext_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) #define ID3D11DeviceContext_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D11DeviceContext_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D11DeviceContext_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D11DeviceContext_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD) #define ID3D11DeviceContext_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource) #define ID3D11DeviceContext_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D11DeviceContext_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState) #define ID3D11DeviceContext_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D11DeviceContext_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D11DeviceContext_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D11DeviceContext_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D11DeviceContext_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D11DeviceContext_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets) #define ID3D11DeviceContext_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D11DeviceContext_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports) #define ID3D11DeviceContext_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects) #define ID3D11DeviceContext_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D11DeviceContext_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D11DeviceContext_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D11DeviceContext_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #define ID3D11DeviceContext_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext_QueryInterface(ID3D11DeviceContext* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceContext_AddRef(ID3D11DeviceContext* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceContext_Release(ID3D11DeviceContext* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceContext_GetDevice(ID3D11DeviceContext* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceContext_GetPrivateData(ID3D11DeviceContext* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext_SetPrivateData(ID3D11DeviceContext* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext_SetPrivateDataInterface(ID3D11DeviceContext* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DeviceContext methods ***/ static FORCEINLINE void ID3D11DeviceContext_VSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_PSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_PSSetShader(ID3D11DeviceContext* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_PSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_VSSetShader(ID3D11DeviceContext* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_DrawIndexed(ID3D11DeviceContext* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D11DeviceContext_Draw(ID3D11DeviceContext* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE HRESULT ID3D11DeviceContext_Map(ID3D11DeviceContext* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) { return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource); } static FORCEINLINE void ID3D11DeviceContext_Unmap(ID3D11DeviceContext* This,ID3D11Resource *pResource,UINT Subresource) { This->lpVtbl->Unmap(This,pResource,Subresource); } static FORCEINLINE void ID3D11DeviceContext_PSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_IASetInputLayout(ID3D11DeviceContext* This,ID3D11InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D11DeviceContext_IASetVertexBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext_IASetIndexBuffer(ID3D11DeviceContext* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext_DrawIndexedInstanced(ID3D11DeviceContext* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext_DrawInstanced(ID3D11DeviceContext* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext_GSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_GSSetShader(ID3D11DeviceContext* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_IASetPrimitiveTopology(ID3D11DeviceContext* This,D3D11_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D11DeviceContext_VSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_VSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_Begin(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->Begin(This,pAsync); } static FORCEINLINE void ID3D11DeviceContext_End(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->End(This,pAsync); } static FORCEINLINE HRESULT ID3D11DeviceContext_GetData(ID3D11DeviceContext* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags); } static FORCEINLINE void ID3D11DeviceContext_SetPredication(ID3D11DeviceContext* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D11DeviceContext_GSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_GSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_OMSetRenderTargets(ID3D11DeviceContext* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext_OMSetBlendState(ID3D11DeviceContext* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D11DeviceContext_OMSetDepthStencilState(ID3D11DeviceContext* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D11DeviceContext_SOSetTargets(ID3D11DeviceContext* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D11DeviceContext_DrawAuto(ID3D11DeviceContext* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D11DeviceContext_DrawIndexedInstancedIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext_DrawInstancedIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext_Dispatch(ID3D11DeviceContext* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) { This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ); } static FORCEINLINE void ID3D11DeviceContext_DispatchIndirect(ID3D11DeviceContext* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext_RSSetState(ID3D11DeviceContext* This,ID3D11RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D11DeviceContext_RSSetViewports(ID3D11DeviceContext* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext_RSSetScissorRects(ID3D11DeviceContext* This,UINT NumRects,const D3D11_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext_CopySubresourceRegion(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D11DeviceContext_CopyResource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D11DeviceContext_UpdateSubresource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D11DeviceContext_CopyStructureCount(ID3D11DeviceContext* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) { This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView); } static FORCEINLINE void ID3D11DeviceContext_ClearRenderTargetView(ID3D11DeviceContext* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D11DeviceContext_ClearUnorderedAccessViewUint(ID3D11DeviceContext* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext_ClearUnorderedAccessViewFloat(ID3D11DeviceContext* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext_ClearDepthStencilView(ID3D11DeviceContext* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D11DeviceContext_GenerateMips(ID3D11DeviceContext* This,ID3D11ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D11DeviceContext_SetResourceMinLOD(ID3D11DeviceContext* This,ID3D11Resource *pResource,FLOAT MinLOD) { This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD); } static FORCEINLINE FLOAT ID3D11DeviceContext_GetResourceMinLOD(ID3D11DeviceContext* This,ID3D11Resource *pResource) { return This->lpVtbl->GetResourceMinLOD(This,pResource); } static FORCEINLINE void ID3D11DeviceContext_ResolveSubresource(ID3D11DeviceContext* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D11DeviceContext_ExecuteCommandList(ID3D11DeviceContext* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) { This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState); } static FORCEINLINE void ID3D11DeviceContext_HSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_HSSetShader(ID3D11DeviceContext* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_HSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_HSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_DSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_DSSetShader(ID3D11DeviceContext* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_DSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_DSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_CSSetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_CSSetUnorderedAccessViews(ID3D11DeviceContext* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext_CSSetShader(ID3D11DeviceContext* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_CSSetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_CSSetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_VSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_PSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_PSGetShader(ID3D11DeviceContext* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_PSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_VSGetShader(ID3D11DeviceContext* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_PSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_IAGetInputLayout(ID3D11DeviceContext* This,ID3D11InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D11DeviceContext_IAGetVertexBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext_IAGetIndexBuffer(ID3D11DeviceContext* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext_GSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_GSGetShader(ID3D11DeviceContext* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_IAGetPrimitiveTopology(ID3D11DeviceContext* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D11DeviceContext_VSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_VSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_GetPredication(ID3D11DeviceContext* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D11DeviceContext_GSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_GSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_OMGetRenderTargets(ID3D11DeviceContext* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext_OMGetBlendState(ID3D11DeviceContext* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D11DeviceContext_OMGetDepthStencilState(ID3D11DeviceContext* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D11DeviceContext_SOGetTargets(ID3D11DeviceContext* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets); } static FORCEINLINE void ID3D11DeviceContext_RSGetState(ID3D11DeviceContext* This,ID3D11RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D11DeviceContext_RSGetViewports(ID3D11DeviceContext* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext_RSGetScissorRects(ID3D11DeviceContext* This,UINT *pNumRects,D3D11_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext_HSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_HSGetShader(ID3D11DeviceContext* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_HSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_HSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_DSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_DSGetShader(ID3D11DeviceContext* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_DSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_DSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_CSGetShaderResources(ID3D11DeviceContext* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext_CSGetUnorderedAccessViews(ID3D11DeviceContext* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext_CSGetShader(ID3D11DeviceContext* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext_CSGetSamplers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext_CSGetConstantBuffers(ID3D11DeviceContext* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext_ClearState(ID3D11DeviceContext* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D11DeviceContext_Flush(ID3D11DeviceContext* This) { This->lpVtbl->Flush(This); } static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext_GetType(ID3D11DeviceContext* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE UINT ID3D11DeviceContext_GetContextFlags(ID3D11DeviceContext* This) { return This->lpVtbl->GetContextFlags(This); } static FORCEINLINE HRESULT ID3D11DeviceContext_FinishCommandList(ID3D11DeviceContext* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) { return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList); } #endif #endif #endif #endif /* __ID3D11DeviceContext_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11AuthenticatedChannel interface */ #ifndef __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__ #define __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11AuthenticatedChannel, 0x3015a308, 0xdcbd, 0x47aa, 0xa7,0x47, 0x19,0x24,0x86,0xd1,0x4d,0x4a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3015a308-dcbd-47aa-a747-192486d14d4a") ID3D11AuthenticatedChannel : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE GetCertificateSize( UINT *pCertificateSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetCertificate( UINT CertificateSize, BYTE *pCertificate) = 0; virtual void STDMETHODCALLTYPE GetChannelHandle( HANDLE *pChannelHandle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11AuthenticatedChannel, 0x3015a308, 0xdcbd, 0x47aa, 0xa7,0x47, 0x19,0x24,0x86,0xd1,0x4d,0x4a) #endif #else typedef struct ID3D11AuthenticatedChannelVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11AuthenticatedChannel *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11AuthenticatedChannel *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11AuthenticatedChannel *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11AuthenticatedChannel *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11AuthenticatedChannel *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11AuthenticatedChannel *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11AuthenticatedChannel *This, REFGUID guid, const IUnknown *pData); /*** ID3D11AuthenticatedChannel methods ***/ HRESULT (STDMETHODCALLTYPE *GetCertificateSize)( ID3D11AuthenticatedChannel *This, UINT *pCertificateSize); HRESULT (STDMETHODCALLTYPE *GetCertificate)( ID3D11AuthenticatedChannel *This, UINT CertificateSize, BYTE *pCertificate); void (STDMETHODCALLTYPE *GetChannelHandle)( ID3D11AuthenticatedChannel *This, HANDLE *pChannelHandle); END_INTERFACE } ID3D11AuthenticatedChannelVtbl; interface ID3D11AuthenticatedChannel { CONST_VTBL ID3D11AuthenticatedChannelVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11AuthenticatedChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11AuthenticatedChannel_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11AuthenticatedChannel_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11AuthenticatedChannel_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11AuthenticatedChannel_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11AuthenticatedChannel_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11AuthenticatedChannel_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11AuthenticatedChannel methods ***/ #define ID3D11AuthenticatedChannel_GetCertificateSize(This,pCertificateSize) (This)->lpVtbl->GetCertificateSize(This,pCertificateSize) #define ID3D11AuthenticatedChannel_GetCertificate(This,CertificateSize,pCertificate) (This)->lpVtbl->GetCertificate(This,CertificateSize,pCertificate) #define ID3D11AuthenticatedChannel_GetChannelHandle(This,pChannelHandle) (This)->lpVtbl->GetChannelHandle(This,pChannelHandle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_QueryInterface(ID3D11AuthenticatedChannel* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11AuthenticatedChannel_AddRef(ID3D11AuthenticatedChannel* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11AuthenticatedChannel_Release(ID3D11AuthenticatedChannel* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11AuthenticatedChannel_GetDevice(ID3D11AuthenticatedChannel* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetPrivateData(ID3D11AuthenticatedChannel* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_SetPrivateData(ID3D11AuthenticatedChannel* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_SetPrivateDataInterface(ID3D11AuthenticatedChannel* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11AuthenticatedChannel methods ***/ static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetCertificateSize(ID3D11AuthenticatedChannel* This,UINT *pCertificateSize) { return This->lpVtbl->GetCertificateSize(This,pCertificateSize); } static FORCEINLINE HRESULT ID3D11AuthenticatedChannel_GetCertificate(ID3D11AuthenticatedChannel* This,UINT CertificateSize,BYTE *pCertificate) { return This->lpVtbl->GetCertificate(This,CertificateSize,pCertificate); } static FORCEINLINE void ID3D11AuthenticatedChannel_GetChannelHandle(ID3D11AuthenticatedChannel* This,HANDLE *pChannelHandle) { This->lpVtbl->GetChannelHandle(This,pChannelHandle); } #endif #endif #endif #endif /* __ID3D11AuthenticatedChannel_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11CryptoSession interface */ #ifndef __ID3D11CryptoSession_INTERFACE_DEFINED__ #define __ID3D11CryptoSession_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11CryptoSession, 0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3,0x9d, 0xd5,0xc8,0x65,0x84,0x57,0x20); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b32f9ad-bdcc-40a6-a39d-d5c865845720") ID3D11CryptoSession : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetCryptoType( GUID *pCryptoType) = 0; virtual void STDMETHODCALLTYPE GetDecoderProfile( GUID *pDecoderProfile) = 0; virtual HRESULT STDMETHODCALLTYPE GetCertificateSize( UINT *pCertificateSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetCertificate( UINT CertificateSize, BYTE *pCertificate) = 0; virtual void STDMETHODCALLTYPE GetCryptoSessionHandle( HANDLE *pCryptoSessionHandle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11CryptoSession, 0x9b32f9ad, 0xbdcc, 0x40a6, 0xa3,0x9d, 0xd5,0xc8,0x65,0x84,0x57,0x20) #endif #else typedef struct ID3D11CryptoSessionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11CryptoSession *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11CryptoSession *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11CryptoSession *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11CryptoSession *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11CryptoSession *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11CryptoSession *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11CryptoSession *This, REFGUID guid, const IUnknown *pData); /*** ID3D11CryptoSession methods ***/ void (STDMETHODCALLTYPE *GetCryptoType)( ID3D11CryptoSession *This, GUID *pCryptoType); void (STDMETHODCALLTYPE *GetDecoderProfile)( ID3D11CryptoSession *This, GUID *pDecoderProfile); HRESULT (STDMETHODCALLTYPE *GetCertificateSize)( ID3D11CryptoSession *This, UINT *pCertificateSize); HRESULT (STDMETHODCALLTYPE *GetCertificate)( ID3D11CryptoSession *This, UINT CertificateSize, BYTE *pCertificate); void (STDMETHODCALLTYPE *GetCryptoSessionHandle)( ID3D11CryptoSession *This, HANDLE *pCryptoSessionHandle); END_INTERFACE } ID3D11CryptoSessionVtbl; interface ID3D11CryptoSession { CONST_VTBL ID3D11CryptoSessionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11CryptoSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11CryptoSession_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11CryptoSession_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11CryptoSession_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11CryptoSession_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11CryptoSession_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11CryptoSession_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11CryptoSession methods ***/ #define ID3D11CryptoSession_GetCryptoType(This,pCryptoType) (This)->lpVtbl->GetCryptoType(This,pCryptoType) #define ID3D11CryptoSession_GetDecoderProfile(This,pDecoderProfile) (This)->lpVtbl->GetDecoderProfile(This,pDecoderProfile) #define ID3D11CryptoSession_GetCertificateSize(This,pCertificateSize) (This)->lpVtbl->GetCertificateSize(This,pCertificateSize) #define ID3D11CryptoSession_GetCertificate(This,CertificateSize,pCertificate) (This)->lpVtbl->GetCertificate(This,CertificateSize,pCertificate) #define ID3D11CryptoSession_GetCryptoSessionHandle(This,pCryptoSessionHandle) (This)->lpVtbl->GetCryptoSessionHandle(This,pCryptoSessionHandle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11CryptoSession_QueryInterface(ID3D11CryptoSession* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11CryptoSession_AddRef(ID3D11CryptoSession* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11CryptoSession_Release(ID3D11CryptoSession* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11CryptoSession_GetDevice(ID3D11CryptoSession* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11CryptoSession_GetPrivateData(ID3D11CryptoSession* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11CryptoSession_SetPrivateData(ID3D11CryptoSession* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11CryptoSession_SetPrivateDataInterface(ID3D11CryptoSession* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11CryptoSession methods ***/ static FORCEINLINE void ID3D11CryptoSession_GetCryptoType(ID3D11CryptoSession* This,GUID *pCryptoType) { This->lpVtbl->GetCryptoType(This,pCryptoType); } static FORCEINLINE void ID3D11CryptoSession_GetDecoderProfile(ID3D11CryptoSession* This,GUID *pDecoderProfile) { This->lpVtbl->GetDecoderProfile(This,pDecoderProfile); } static FORCEINLINE HRESULT ID3D11CryptoSession_GetCertificateSize(ID3D11CryptoSession* This,UINT *pCertificateSize) { return This->lpVtbl->GetCertificateSize(This,pCertificateSize); } static FORCEINLINE HRESULT ID3D11CryptoSession_GetCertificate(ID3D11CryptoSession* This,UINT CertificateSize,BYTE *pCertificate) { return This->lpVtbl->GetCertificate(This,CertificateSize,pCertificate); } static FORCEINLINE void ID3D11CryptoSession_GetCryptoSessionHandle(ID3D11CryptoSession* This,HANDLE *pCryptoSessionHandle) { This->lpVtbl->GetCryptoSessionHandle(This,pCryptoSessionHandle); } #endif #endif #endif #endif /* __ID3D11CryptoSession_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoDecoder interface */ #ifndef __ID3D11VideoDecoder_INTERFACE_DEFINED__ #define __ID3D11VideoDecoder_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 0xfa,0x5c,0xae,0xde,0xd6,0x5c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3c9c5b51-995d-48d1-9b8d-fa5caeded65c") ID3D11VideoDecoder : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE GetCreationParameters( D3D11_VIDEO_DECODER_DESC *pVideoDesc, D3D11_VIDEO_DECODER_CONFIG *pConfig) = 0; virtual HRESULT STDMETHODCALLTYPE GetDriverHandle( HANDLE *pDriverHandle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 0xfa,0x5c,0xae,0xde,0xd6,0x5c) #endif #else typedef struct ID3D11VideoDecoderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoDecoder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoDecoder *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoDecoder *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoDecoder *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoDecoder *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoDecoder *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoDecoder *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoDecoder methods ***/ HRESULT (STDMETHODCALLTYPE *GetCreationParameters)( ID3D11VideoDecoder *This, D3D11_VIDEO_DECODER_DESC *pVideoDesc, D3D11_VIDEO_DECODER_CONFIG *pConfig); HRESULT (STDMETHODCALLTYPE *GetDriverHandle)( ID3D11VideoDecoder *This, HANDLE *pDriverHandle); END_INTERFACE } ID3D11VideoDecoderVtbl; interface ID3D11VideoDecoder { CONST_VTBL ID3D11VideoDecoderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoDecoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoDecoder_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoDecoder_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoDecoder_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoDecoder_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoDecoder_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoDecoder_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoDecoder methods ***/ #define ID3D11VideoDecoder_GetCreationParameters(This,pVideoDesc,pConfig) (This)->lpVtbl->GetCreationParameters(This,pVideoDesc,pConfig) #define ID3D11VideoDecoder_GetDriverHandle(This,pDriverHandle) (This)->lpVtbl->GetDriverHandle(This,pDriverHandle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoDecoder_QueryInterface(ID3D11VideoDecoder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoDecoder_AddRef(ID3D11VideoDecoder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoDecoder_Release(ID3D11VideoDecoder* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoDecoder_GetDevice(ID3D11VideoDecoder* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoDecoder_GetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDecoder_SetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDecoder_SetPrivateDataInterface(ID3D11VideoDecoder* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoDecoder methods ***/ static FORCEINLINE HRESULT ID3D11VideoDecoder_GetCreationParameters(ID3D11VideoDecoder* This,D3D11_VIDEO_DECODER_DESC *pVideoDesc,D3D11_VIDEO_DECODER_CONFIG *pConfig) { return This->lpVtbl->GetCreationParameters(This,pVideoDesc,pConfig); } static FORCEINLINE HRESULT ID3D11VideoDecoder_GetDriverHandle(ID3D11VideoDecoder* This,HANDLE *pDriverHandle) { return This->lpVtbl->GetDriverHandle(This,pDriverHandle); } #endif #endif #endif #endif /* __ID3D11VideoDecoder_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoProcessorEnumerator interface */ #ifndef __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__ #define __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator, 0x31627037, 0x53ab, 0x4200, 0x90,0x61, 0x05,0xfa,0xa9,0xab,0x45,0xf9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("31627037-53ab-4200-9061-05faa9ab45f9") ID3D11VideoProcessorEnumerator : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorContentDesc( D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc) = 0; virtual HRESULT STDMETHODCALLTYPE CheckVideoProcessorFormat( DXGI_FORMAT Format, UINT *pFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps( D3D11_VIDEO_PROCESSOR_CAPS *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorRateConversionCaps( UINT TypeIndex, D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCustomRate( UINT TypeIndex, UINT CustomRateIndex, D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorFilterRange( D3D11_VIDEO_PROCESSOR_FILTER Filter, D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoProcessorEnumerator, 0x31627037, 0x53ab, 0x4200, 0x90,0x61, 0x05,0xfa,0xa9,0xab,0x45,0xf9) #endif #else typedef struct ID3D11VideoProcessorEnumeratorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoProcessorEnumerator *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoProcessorEnumerator *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoProcessorEnumerator *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoProcessorEnumerator *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoProcessorEnumerator *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoProcessorEnumerator *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoProcessorEnumerator *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoProcessorEnumerator methods ***/ HRESULT (STDMETHODCALLTYPE *GetVideoProcessorContentDesc)( ID3D11VideoProcessorEnumerator *This, D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc); HRESULT (STDMETHODCALLTYPE *CheckVideoProcessorFormat)( ID3D11VideoProcessorEnumerator *This, DXGI_FORMAT Format, UINT *pFlags); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( ID3D11VideoProcessorEnumerator *This, D3D11_VIDEO_PROCESSOR_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorRateConversionCaps)( ID3D11VideoProcessorEnumerator *This, UINT TypeIndex, D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCustomRate)( ID3D11VideoProcessorEnumerator *This, UINT TypeIndex, UINT CustomRateIndex, D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorFilterRange)( ID3D11VideoProcessorEnumerator *This, D3D11_VIDEO_PROCESSOR_FILTER Filter, D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange); END_INTERFACE } ID3D11VideoProcessorEnumeratorVtbl; interface ID3D11VideoProcessorEnumerator { CONST_VTBL ID3D11VideoProcessorEnumeratorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoProcessorEnumerator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoProcessorEnumerator_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoProcessorEnumerator_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoProcessorEnumerator_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoProcessorEnumerator_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoProcessorEnumerator_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoProcessorEnumerator_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoProcessorEnumerator methods ***/ #define ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc(This,pContentDesc) (This)->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc) #define ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat(This,Format,pFlags) (This)->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags) #define ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps(This,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,pCaps) #define ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps) (This)->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps) #define ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate) (This)->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate) #define ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange(This,Filter,pRange) (This)->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_QueryInterface(ID3D11VideoProcessorEnumerator* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator_AddRef(ID3D11VideoProcessorEnumerator* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator_Release(ID3D11VideoProcessorEnumerator* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoProcessorEnumerator_GetDevice(ID3D11VideoProcessorEnumerator* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetPrivateData(ID3D11VideoProcessorEnumerator* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_SetPrivateData(ID3D11VideoProcessorEnumerator* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_SetPrivateDataInterface(ID3D11VideoProcessorEnumerator* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoProcessorEnumerator methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorContentDesc(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc) { return This->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_CheckVideoProcessorFormat(ID3D11VideoProcessorEnumerator* This,DXGI_FORMAT Format,UINT *pFlags) { return This->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorCaps(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_CAPS *pCaps) { return This->lpVtbl->GetVideoProcessorCaps(This,pCaps); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorRateConversionCaps(ID3D11VideoProcessorEnumerator* This,UINT TypeIndex,D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) { return This->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorCustomRate(ID3D11VideoProcessorEnumerator* This,UINT TypeIndex,UINT CustomRateIndex,D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate) { return This->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator_GetVideoProcessorFilterRange(ID3D11VideoProcessorEnumerator* This,D3D11_VIDEO_PROCESSOR_FILTER Filter,D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange) { return This->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange); } #endif #endif #endif #endif /* __ID3D11VideoProcessorEnumerator_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoProcessor interface */ #ifndef __ID3D11VideoProcessor_INTERFACE_DEFINED__ #define __ID3D11VideoProcessor_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoProcessor, 0x1d7b0652, 0x185f, 0x41c6, 0x85,0xce, 0x0c,0x5b,0xe3,0xd4,0xae,0x6c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1d7b0652-185f-41c6-85ce-0c5be3d4ae6c") ID3D11VideoProcessor : public ID3D11DeviceChild { virtual void STDMETHODCALLTYPE GetContentDesc( D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc) = 0; virtual void STDMETHODCALLTYPE GetRateConversionCaps( D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoProcessor, 0x1d7b0652, 0x185f, 0x41c6, 0x85,0xce, 0x0c,0x5b,0xe3,0xd4,0xae,0x6c) #endif #else typedef struct ID3D11VideoProcessorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoProcessor *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoProcessor *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoProcessor *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoProcessor *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoProcessor *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoProcessor *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoProcessor *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoProcessor methods ***/ void (STDMETHODCALLTYPE *GetContentDesc)( ID3D11VideoProcessor *This, D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc); void (STDMETHODCALLTYPE *GetRateConversionCaps)( ID3D11VideoProcessor *This, D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps); END_INTERFACE } ID3D11VideoProcessorVtbl; interface ID3D11VideoProcessor { CONST_VTBL ID3D11VideoProcessorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoProcessor_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoProcessor_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoProcessor_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoProcessor_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoProcessor_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoProcessor methods ***/ #define ID3D11VideoProcessor_GetContentDesc(This,pDesc) (This)->lpVtbl->GetContentDesc(This,pDesc) #define ID3D11VideoProcessor_GetRateConversionCaps(This,pCaps) (This)->lpVtbl->GetRateConversionCaps(This,pCaps) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessor_QueryInterface(ID3D11VideoProcessor* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoProcessor_AddRef(ID3D11VideoProcessor* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoProcessor_Release(ID3D11VideoProcessor* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoProcessor_GetDevice(ID3D11VideoProcessor* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoProcessor_GetPrivateData(ID3D11VideoProcessor* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessor_SetPrivateData(ID3D11VideoProcessor* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessor_SetPrivateDataInterface(ID3D11VideoProcessor* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoProcessor methods ***/ static FORCEINLINE void ID3D11VideoProcessor_GetContentDesc(ID3D11VideoProcessor* This,D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc) { This->lpVtbl->GetContentDesc(This,pDesc); } static FORCEINLINE void ID3D11VideoProcessor_GetRateConversionCaps(ID3D11VideoProcessor* This,D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) { This->lpVtbl->GetRateConversionCaps(This,pCaps); } #endif #endif #endif #endif /* __ID3D11VideoProcessor_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoDecoderOutputView interface */ #ifndef __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__ #define __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c2931aea-2a85-4f20-860f-fba1fd256e18") ID3D11VideoDecoderOutputView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18) #endif #else typedef struct ID3D11VideoDecoderOutputViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoDecoderOutputView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoDecoderOutputView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoDecoderOutputView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoDecoderOutputView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoDecoderOutputView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoDecoderOutputView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoDecoderOutputView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11VideoDecoderOutputView *This, ID3D11Resource **ppResource); /*** ID3D11VideoDecoderOutputView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11VideoDecoderOutputView *This, D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc); END_INTERFACE } ID3D11VideoDecoderOutputViewVtbl; interface ID3D11VideoDecoderOutputView { CONST_VTBL ID3D11VideoDecoderOutputViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoDecoderOutputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoDecoderOutputView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoDecoderOutputView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoDecoderOutputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoDecoderOutputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoDecoderOutputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoDecoderOutputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11VideoDecoderOutputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11VideoDecoderOutputView methods ***/ #define ID3D11VideoDecoderOutputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_QueryInterface(ID3D11VideoDecoderOutputView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoDecoderOutputView_AddRef(ID3D11VideoDecoderOutputView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoDecoderOutputView_Release(ID3D11VideoDecoderOutputView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoDecoderOutputView_GetDevice(ID3D11VideoDecoderOutputView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_GetPrivateData(ID3D11VideoDecoderOutputView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_SetPrivateData(ID3D11VideoDecoderOutputView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDecoderOutputView_SetPrivateDataInterface(ID3D11VideoDecoderOutputView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11VideoDecoderOutputView_GetResource(ID3D11VideoDecoderOutputView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11VideoDecoderOutputView methods ***/ static FORCEINLINE void ID3D11VideoDecoderOutputView_GetDesc(ID3D11VideoDecoderOutputView* This,D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoProcessorInputView interface */ #ifndef __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__ #define __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoProcessorInputView, 0x11ec5a5f, 0x51dc, 0x4945, 0xab,0x34, 0x6e,0x8c,0x21,0x30,0x0e,0xa5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("11ec5a5f-51dc-4945-ab34-6e8c21300ea5") ID3D11VideoProcessorInputView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoProcessorInputView, 0x11ec5a5f, 0x51dc, 0x4945, 0xab,0x34, 0x6e,0x8c,0x21,0x30,0x0e,0xa5) #endif #else typedef struct ID3D11VideoProcessorInputViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoProcessorInputView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoProcessorInputView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoProcessorInputView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoProcessorInputView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoProcessorInputView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoProcessorInputView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoProcessorInputView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11VideoProcessorInputView *This, ID3D11Resource **ppResource); /*** ID3D11VideoProcessorInputView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11VideoProcessorInputView *This, D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc); END_INTERFACE } ID3D11VideoProcessorInputViewVtbl; interface ID3D11VideoProcessorInputView { CONST_VTBL ID3D11VideoProcessorInputViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoProcessorInputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoProcessorInputView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoProcessorInputView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoProcessorInputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoProcessorInputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoProcessorInputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoProcessorInputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11VideoProcessorInputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11VideoProcessorInputView methods ***/ #define ID3D11VideoProcessorInputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_QueryInterface(ID3D11VideoProcessorInputView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoProcessorInputView_AddRef(ID3D11VideoProcessorInputView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoProcessorInputView_Release(ID3D11VideoProcessorInputView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoProcessorInputView_GetDevice(ID3D11VideoProcessorInputView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_GetPrivateData(ID3D11VideoProcessorInputView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_SetPrivateData(ID3D11VideoProcessorInputView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorInputView_SetPrivateDataInterface(ID3D11VideoProcessorInputView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11VideoProcessorInputView_GetResource(ID3D11VideoProcessorInputView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11VideoProcessorInputView methods ***/ static FORCEINLINE void ID3D11VideoProcessorInputView_GetDesc(ID3D11VideoProcessorInputView* This,D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11VideoProcessorInputView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoProcessorOutputView interface */ #ifndef __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__ #define __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoProcessorOutputView, 0xa048285e, 0x25a9, 0x4527, 0xbd,0x93, 0xd6,0x8b,0x68,0xc4,0x42,0x54); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a048285e-25a9-4527-bd93-d68b68c44254") ID3D11VideoProcessorOutputView : public ID3D11View { virtual void STDMETHODCALLTYPE GetDesc( D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoProcessorOutputView, 0xa048285e, 0x25a9, 0x4527, 0xbd,0x93, 0xd6,0x8b,0x68,0xc4,0x42,0x54) #endif #else typedef struct ID3D11VideoProcessorOutputViewVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoProcessorOutputView *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoProcessorOutputView *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoProcessorOutputView *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoProcessorOutputView *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoProcessorOutputView *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoProcessorOutputView *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoProcessorOutputView *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11VideoProcessorOutputView *This, ID3D11Resource **ppResource); /*** ID3D11VideoProcessorOutputView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11VideoProcessorOutputView *This, D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc); END_INTERFACE } ID3D11VideoProcessorOutputViewVtbl; interface ID3D11VideoProcessorOutputView { CONST_VTBL ID3D11VideoProcessorOutputViewVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoProcessorOutputView_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoProcessorOutputView_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoProcessorOutputView_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoProcessorOutputView_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoProcessorOutputView_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoProcessorOutputView_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoProcessorOutputView_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11VideoProcessorOutputView_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11VideoProcessorOutputView methods ***/ #define ID3D11VideoProcessorOutputView_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_QueryInterface(ID3D11VideoProcessorOutputView* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoProcessorOutputView_AddRef(ID3D11VideoProcessorOutputView* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoProcessorOutputView_Release(ID3D11VideoProcessorOutputView* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoProcessorOutputView_GetDevice(ID3D11VideoProcessorOutputView* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_GetPrivateData(ID3D11VideoProcessorOutputView* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_SetPrivateData(ID3D11VideoProcessorOutputView* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorOutputView_SetPrivateDataInterface(ID3D11VideoProcessorOutputView* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11VideoProcessorOutputView_GetResource(ID3D11VideoProcessorOutputView* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11VideoProcessorOutputView methods ***/ static FORCEINLINE void ID3D11VideoProcessorOutputView_GetDesc(ID3D11VideoProcessorOutputView* This,D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } #endif #endif #endif #endif /* __ID3D11VideoProcessorOutputView_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoDevice interface */ #ifndef __ID3D11VideoDevice_INTERFACE_DEFINED__ #define __ID3D11VideoDevice_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("10ec4d5b-975a-4689-b9e4-d0aac30fe333") ID3D11VideoDevice : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder( const D3D11_VIDEO_DECODER_DESC *pVideoDesc, const D3D11_VIDEO_DECODER_CONFIG *pConfig, ID3D11VideoDecoder **ppDecoder) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor( ID3D11VideoProcessorEnumerator *pEnum, UINT RateConversionIndex, ID3D11VideoProcessor **ppVideoProcessor) = 0; virtual HRESULT STDMETHODCALLTYPE CreateAuthenticatedChannel( D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, ID3D11AuthenticatedChannel **ppAuthenticatedChannel) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCryptoSession( const GUID *pCryptoType, const GUID *pDecoderProfile, const GUID *pKeyExchangeType, ID3D11CryptoSession **ppCryptoSession) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoderOutputView( ID3D11Resource *pResource, const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoDecoderOutputView **ppVDOVView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorInputView( ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorInputView **ppVPIView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorOutputView( ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorOutputView **ppVPOView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessorEnumerator( const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc, ID3D11VideoProcessorEnumerator **ppEnum) = 0; virtual UINT STDMETHODCALLTYPE GetVideoDecoderProfileCount( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderProfile( UINT Index, GUID *pDecoderProfile) = 0; virtual HRESULT STDMETHODCALLTYPE CheckVideoDecoderFormat( const GUID *pDecoderProfile, DXGI_FORMAT Format, WINBOOL *pSupported) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfigCount( const D3D11_VIDEO_DECODER_DESC *pDesc, UINT *pCount) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfig( const D3D11_VIDEO_DECODER_DESC *pDesc, UINT Index, D3D11_VIDEO_DECODER_CONFIG *pConfig) = 0; virtual HRESULT STDMETHODCALLTYPE GetContentProtectionCaps( const GUID *pCryptoType, const GUID *pDecoderProfile, D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE CheckCryptoKeyExchange( const GUID *pCryptoType, const GUID *pDecoderProfile, UINT Index, GUID *pKeyExchangeType) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pData) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33) #endif #else typedef struct ID3D11VideoDeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoDevice *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoDevice *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoDevice *This); /*** ID3D11VideoDevice methods ***/ HRESULT (STDMETHODCALLTYPE *CreateVideoDecoder)( ID3D11VideoDevice *This, const D3D11_VIDEO_DECODER_DESC *pVideoDesc, const D3D11_VIDEO_DECODER_CONFIG *pConfig, ID3D11VideoDecoder **ppDecoder); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessor)( ID3D11VideoDevice *This, ID3D11VideoProcessorEnumerator *pEnum, UINT RateConversionIndex, ID3D11VideoProcessor **ppVideoProcessor); HRESULT (STDMETHODCALLTYPE *CreateAuthenticatedChannel)( ID3D11VideoDevice *This, D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, ID3D11AuthenticatedChannel **ppAuthenticatedChannel); HRESULT (STDMETHODCALLTYPE *CreateCryptoSession)( ID3D11VideoDevice *This, const GUID *pCryptoType, const GUID *pDecoderProfile, const GUID *pKeyExchangeType, ID3D11CryptoSession **ppCryptoSession); HRESULT (STDMETHODCALLTYPE *CreateVideoDecoderOutputView)( ID3D11VideoDevice *This, ID3D11Resource *pResource, const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoDecoderOutputView **ppVDOVView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorInputView)( ID3D11VideoDevice *This, ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorInputView **ppVPIView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorOutputView)( ID3D11VideoDevice *This, ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorOutputView **ppVPOView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorEnumerator)( ID3D11VideoDevice *This, const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc, ID3D11VideoProcessorEnumerator **ppEnum); UINT (STDMETHODCALLTYPE *GetVideoDecoderProfileCount)( ID3D11VideoDevice *This); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderProfile)( ID3D11VideoDevice *This, UINT Index, GUID *pDecoderProfile); HRESULT (STDMETHODCALLTYPE *CheckVideoDecoderFormat)( ID3D11VideoDevice *This, const GUID *pDecoderProfile, DXGI_FORMAT Format, WINBOOL *pSupported); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfigCount)( ID3D11VideoDevice *This, const D3D11_VIDEO_DECODER_DESC *pDesc, UINT *pCount); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfig)( ID3D11VideoDevice *This, const D3D11_VIDEO_DECODER_DESC *pDesc, UINT Index, D3D11_VIDEO_DECODER_CONFIG *pConfig); HRESULT (STDMETHODCALLTYPE *GetContentProtectionCaps)( ID3D11VideoDevice *This, const GUID *pCryptoType, const GUID *pDecoderProfile, D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *CheckCryptoKeyExchange)( ID3D11VideoDevice *This, const GUID *pCryptoType, const GUID *pDecoderProfile, UINT Index, GUID *pKeyExchangeType); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoDevice *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoDevice *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3D11VideoDeviceVtbl; interface ID3D11VideoDevice { CONST_VTBL ID3D11VideoDeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoDevice_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoDevice_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11VideoDevice methods ***/ #define ID3D11VideoDevice_CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder) (This)->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder) #define ID3D11VideoDevice_CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor) (This)->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor) #define ID3D11VideoDevice_CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel) (This)->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel) #define ID3D11VideoDevice_CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession) (This)->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession) #define ID3D11VideoDevice_CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView) (This)->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView) #define ID3D11VideoDevice_CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView) (This)->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView) #define ID3D11VideoDevice_CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView) (This)->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView) #define ID3D11VideoDevice_CreateVideoProcessorEnumerator(This,pDesc,ppEnum) (This)->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum) #define ID3D11VideoDevice_GetVideoDecoderProfileCount(This) (This)->lpVtbl->GetVideoDecoderProfileCount(This) #define ID3D11VideoDevice_GetVideoDecoderProfile(This,Index,pDecoderProfile) (This)->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile) #define ID3D11VideoDevice_CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported) (This)->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported) #define ID3D11VideoDevice_GetVideoDecoderConfigCount(This,pDesc,pCount) (This)->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount) #define ID3D11VideoDevice_GetVideoDecoderConfig(This,pDesc,Index,pConfig) (This)->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig) #define ID3D11VideoDevice_GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps) (This)->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps) #define ID3D11VideoDevice_CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType) (This)->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType) #define ID3D11VideoDevice_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoDevice_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoDevice_QueryInterface(ID3D11VideoDevice* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoDevice_AddRef(ID3D11VideoDevice* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoDevice_Release(ID3D11VideoDevice* This) { return This->lpVtbl->Release(This); } /*** ID3D11VideoDevice methods ***/ static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoDecoder(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pVideoDesc,const D3D11_VIDEO_DECODER_CONFIG *pConfig,ID3D11VideoDecoder **ppDecoder) { return This->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessor(ID3D11VideoDevice* This,ID3D11VideoProcessorEnumerator *pEnum,UINT RateConversionIndex,ID3D11VideoProcessor **ppVideoProcessor) { return This->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateAuthenticatedChannel(ID3D11VideoDevice* This,D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,ID3D11AuthenticatedChannel **ppAuthenticatedChannel) { return This->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateCryptoSession(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,const GUID *pKeyExchangeType,ID3D11CryptoSession **ppCryptoSession) { return This->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoDecoderOutputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoDecoderOutputView **ppVDOVView) { return This->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorInputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorInputView **ppVPIView) { return This->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorOutputView(ID3D11VideoDevice* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorOutputView **ppVPOView) { return This->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView); } static FORCEINLINE HRESULT ID3D11VideoDevice_CreateVideoProcessorEnumerator(ID3D11VideoDevice* This,const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,ID3D11VideoProcessorEnumerator **ppEnum) { return This->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum); } static FORCEINLINE UINT ID3D11VideoDevice_GetVideoDecoderProfileCount(ID3D11VideoDevice* This) { return This->lpVtbl->GetVideoDecoderProfileCount(This); } static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderProfile(ID3D11VideoDevice* This,UINT Index,GUID *pDecoderProfile) { return This->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile); } static FORCEINLINE HRESULT ID3D11VideoDevice_CheckVideoDecoderFormat(ID3D11VideoDevice* This,const GUID *pDecoderProfile,DXGI_FORMAT Format,WINBOOL *pSupported) { return This->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported); } static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderConfigCount(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT *pCount) { return This->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount); } static FORCEINLINE HRESULT ID3D11VideoDevice_GetVideoDecoderConfig(ID3D11VideoDevice* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT Index,D3D11_VIDEO_DECODER_CONFIG *pConfig) { return This->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig); } static FORCEINLINE HRESULT ID3D11VideoDevice_GetContentProtectionCaps(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps) { return This->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps); } static FORCEINLINE HRESULT ID3D11VideoDevice_CheckCryptoKeyExchange(ID3D11VideoDevice* This,const GUID *pCryptoType,const GUID *pDecoderProfile,UINT Index,GUID *pKeyExchangeType) { return This->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType); } static FORCEINLINE HRESULT ID3D11VideoDevice_SetPrivateData(ID3D11VideoDevice* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDevice_SetPrivateDataInterface(ID3D11VideoDevice* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3D11VideoDevice_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoContext interface */ #ifndef __ID3D11VideoContext_INTERFACE_DEFINED__ #define __ID3D11VideoContext_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("61f21c45-3c0e-4a74-9cea-67100d9ad5e4") ID3D11VideoContext : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE GetDecoderBuffer( ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type, UINT *buffer_size, void **buffer) = 0; virtual HRESULT STDMETHODCALLTYPE ReleaseDecoderBuffer( ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type) = 0; virtual HRESULT STDMETHODCALLTYPE DecoderBeginFrame( ID3D11VideoDecoder *decoder, ID3D11VideoDecoderOutputView *view, UINT key_size, const void *key) = 0; virtual HRESULT STDMETHODCALLTYPE DecoderEndFrame( ID3D11VideoDecoder *decoder) = 0; virtual HRESULT STDMETHODCALLTYPE SubmitDecoderBuffers( ID3D11VideoDecoder *decoder, UINT buffers_count, const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) = 0; virtual HRESULT STDMETHODCALLTYPE DecoderExtension( ID3D11VideoDecoder *decoder, const D3D11_VIDEO_DECODER_EXTENSION *extension) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputTargetRect( ID3D11VideoProcessor *processor, WINBOOL enable, const RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputBackgroundColor( ID3D11VideoProcessor *processor, WINBOOL y_cb_cr, const D3D11_VIDEO_COLOR *color) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputColorSpace( ID3D11VideoProcessor *processor, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputAlphaFillMode( ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode, UINT stream_idx) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputConstriction( ID3D11VideoProcessor *processor, WINBOOL enable, SIZE size) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputStereoMode( ID3D11VideoProcessor *processor, WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorSetOutputExtension( ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputTargetRect( ID3D11VideoProcessor *processor, WINBOOL *enabled, RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputBackgroundColor( ID3D11VideoProcessor *processor, WINBOOL *y_cb_cr, D3D11_VIDEO_COLOR *color) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputColorSpace( ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputAlphaFillMode( ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode, UINT *stream_idx) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputConstriction( ID3D11VideoProcessor *processor, WINBOOL *enabled, SIZE *size) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputStereoMode( ID3D11VideoProcessor *processor, WINBOOL *enabled) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorGetOutputExtension( ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamFrameFormat( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT format) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamColorSpace( ID3D11VideoProcessor *processor, UINT stream_idx, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamOutputRate( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate, WINBOOL repeat, const DXGI_RATIONAL *custom_rate) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamSourceRect( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamDestRect( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamAlpha( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float alpha) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamPalette( ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, const UINT *entries) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamPixelAspectRatio( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const DXGI_RATIONAL *src_aspect_ratio, const DXGI_RATIONAL *dst_aspect_ratio) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamLumaKey( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float lower, float upper) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamStereoFormat( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format, WINBOOL left_view_frame0, WINBOOL base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode, int mono_offset) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamAutoProcessingMode( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamFilter( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL enable, int level) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorSetStreamExtension( ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamFrameFormat( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT *format) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamColorSpace( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamOutputRate( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate, WINBOOL *repeat, DXGI_RATIONAL *custom_rate) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamSourceRect( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamDestRect( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamAlpha( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *alpha) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamPalette( ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, UINT *entries) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamPixelAspectRatio( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, DXGI_RATIONAL *src_aspect_ratio, DXGI_RATIONAL *dst_aspect_ratio) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamLumaKey( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *lower, float *upper) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamStereoFormat( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format, WINBOOL *left_view_frame0, WINBOOL *base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode, int *mono_offset) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamAutoProcessingMode( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamFilter( ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL *enabled, int *level) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorGetStreamExtension( ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorBlt( ID3D11VideoProcessor *processor, ID3D11VideoProcessorOutputView *view, UINT frame_idx, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM *streams) = 0; virtual HRESULT STDMETHODCALLTYPE NegotiateCryptoSessionKeyExchange( ID3D11CryptoSession *session, UINT data_size, void *data) = 0; virtual void STDMETHODCALLTYPE EncryptionBlt( ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, UINT iv_size, void *iv) = 0; virtual void STDMETHODCALLTYPE DecryptionBlt( ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, D3D11_ENCRYPTED_BLOCK_INFO *block_info, UINT key_size, const void *key, UINT iv_size, void *iv) = 0; virtual void STDMETHODCALLTYPE StartSessionKeyRefresh( ID3D11CryptoSession *session, UINT random_number_size, void *random_number) = 0; virtual void STDMETHODCALLTYPE FinishSessionKeyRefresh( ID3D11CryptoSession *session) = 0; virtual HRESULT STDMETHODCALLTYPE GetEncryptionBltKey( ID3D11CryptoSession *session, UINT key_size, void *key) = 0; virtual HRESULT STDMETHODCALLTYPE NegotiateAuthenticatedChannelKeyExchange( ID3D11AuthenticatedChannel *channel, UINT data_size, void *data) = 0; virtual HRESULT STDMETHODCALLTYPE QueryAuthenticatedChannel( ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, UINT output_size, void *output) = 0; virtual HRESULT STDMETHODCALLTYPE ConfigureAuthenticatedChannel( ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamRotation( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_ROTATION rotation) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamRotation( ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enable, D3D11_VIDEO_PROCESSOR_ROTATION *rotation) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4) #endif #else typedef struct ID3D11VideoContextVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoContext *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoContext *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoContext *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoContext *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoContext *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoContext *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoContext *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoContext methods ***/ HRESULT (STDMETHODCALLTYPE *GetDecoderBuffer)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type, UINT *buffer_size, void **buffer); HRESULT (STDMETHODCALLTYPE *ReleaseDecoderBuffer)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type); HRESULT (STDMETHODCALLTYPE *DecoderBeginFrame)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder, ID3D11VideoDecoderOutputView *view, UINT key_size, const void *key); HRESULT (STDMETHODCALLTYPE *DecoderEndFrame)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder); HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder, UINT buffers_count, const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc); HRESULT (STDMETHODCALLTYPE *DecoderExtension)( ID3D11VideoContext *This, ID3D11VideoDecoder *decoder, const D3D11_VIDEO_DECODER_EXTENSION *extension); void (STDMETHODCALLTYPE *VideoProcessorSetOutputTargetRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetOutputBackgroundColor)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL y_cb_cr, const D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetOutputAlphaFillMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode, UINT stream_idx); void (STDMETHODCALLTYPE *VideoProcessorSetOutputConstriction)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL enable, SIZE size); void (STDMETHODCALLTYPE *VideoProcessorSetOutputStereoMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetOutputExtension)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetOutputTargetRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetOutputBackgroundColor)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL *y_cb_cr, D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetOutputAlphaFillMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode, UINT *stream_idx); void (STDMETHODCALLTYPE *VideoProcessorGetOutputConstriction)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, SIZE *size); void (STDMETHODCALLTYPE *VideoProcessorGetOutputStereoMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, WINBOOL *enabled); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetOutputExtension)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFrameFormat)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT format); void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetStreamOutputRate)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate, WINBOOL repeat, const DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorSetStreamSourceRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamDestRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAlpha)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float alpha); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPalette)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, const UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPixelAspectRatio)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const DXGI_RATIONAL *src_aspect_ratio, const DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorSetStreamLumaKey)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float lower, float upper); void (STDMETHODCALLTYPE *VideoProcessorSetStreamStereoFormat)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format, WINBOOL left_view_frame0, WINBOOL base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode, int mono_offset); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAutoProcessingMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFilter)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL enable, int level); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetStreamExtension)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFrameFormat)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT *format); void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetStreamOutputRate)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate, WINBOOL *repeat, DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorGetStreamSourceRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamDestRect)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAlpha)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *alpha); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPalette)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPixelAspectRatio)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, DXGI_RATIONAL *src_aspect_ratio, DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorGetStreamLumaKey)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *lower, float *upper); void (STDMETHODCALLTYPE *VideoProcessorGetStreamStereoFormat)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format, WINBOOL *left_view_frame0, WINBOOL *base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode, int *mono_offset); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAutoProcessingMode)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFilter)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL *enabled, int *level); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetStreamExtension)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *VideoProcessorBlt)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, ID3D11VideoProcessorOutputView *view, UINT frame_idx, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM *streams); HRESULT (STDMETHODCALLTYPE *NegotiateCryptoSessionKeyExchange)( ID3D11VideoContext *This, ID3D11CryptoSession *session, UINT data_size, void *data); void (STDMETHODCALLTYPE *EncryptionBlt)( ID3D11VideoContext *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *DecryptionBlt)( ID3D11VideoContext *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, D3D11_ENCRYPTED_BLOCK_INFO *block_info, UINT key_size, const void *key, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *StartSessionKeyRefresh)( ID3D11VideoContext *This, ID3D11CryptoSession *session, UINT random_number_size, void *random_number); void (STDMETHODCALLTYPE *FinishSessionKeyRefresh)( ID3D11VideoContext *This, ID3D11CryptoSession *session); HRESULT (STDMETHODCALLTYPE *GetEncryptionBltKey)( ID3D11VideoContext *This, ID3D11CryptoSession *session, UINT key_size, void *key); HRESULT (STDMETHODCALLTYPE *NegotiateAuthenticatedChannelKeyExchange)( ID3D11VideoContext *This, ID3D11AuthenticatedChannel *channel, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *QueryAuthenticatedChannel)( ID3D11VideoContext *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, UINT output_size, void *output); HRESULT (STDMETHODCALLTYPE *ConfigureAuthenticatedChannel)( ID3D11VideoContext *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output); void (STDMETHODCALLTYPE *VideoProcessorSetStreamRotation)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_ROTATION rotation); void (STDMETHODCALLTYPE *VideoProcessorGetStreamRotation)( ID3D11VideoContext *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enable, D3D11_VIDEO_PROCESSOR_ROTATION *rotation); END_INTERFACE } ID3D11VideoContextVtbl; interface ID3D11VideoContext { CONST_VTBL ID3D11VideoContextVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoContext_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoContext_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoContext_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoContext_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoContext_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoContext_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoContext methods ***/ #define ID3D11VideoContext_GetDecoderBuffer(This,decoder,type,buffer_size,buffer) (This)->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer) #define ID3D11VideoContext_ReleaseDecoderBuffer(This,decoder,type) (This)->lpVtbl->ReleaseDecoderBuffer(This,decoder,type) #define ID3D11VideoContext_DecoderBeginFrame(This,decoder,view,key_size,key) (This)->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key) #define ID3D11VideoContext_DecoderEndFrame(This,decoder) (This)->lpVtbl->DecoderEndFrame(This,decoder) #define ID3D11VideoContext_SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) #define ID3D11VideoContext_DecoderExtension(This,decoder,extension) (This)->lpVtbl->DecoderExtension(This,decoder,extension) #define ID3D11VideoContext_VideoProcessorSetOutputTargetRect(This,processor,enable,rect) (This)->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect) #define ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext_VideoProcessorSetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext_VideoProcessorSetOutputConstriction(This,processor,enable,size) (This)->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size) #define ID3D11VideoContext_VideoProcessorSetOutputStereoMode(This,processor,enable) (This)->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable) #define ID3D11VideoContext_VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext_VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) (This)->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) #define ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext_VideoProcessorGetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext_VideoProcessorGetOutputConstriction(This,processor,enabled,size) (This)->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size) #define ID3D11VideoContext_VideoProcessorGetOutputStereoMode(This,processor,enabled) (This)->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled) #define ID3D11VideoContext_VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext_VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext_VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext_VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext_VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext_VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext_VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) (This)->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) #define ID3D11VideoContext_VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext_VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) (This)->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) #define ID3D11VideoContext_VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) (This)->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) #define ID3D11VideoContext_VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) (This)->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) #define ID3D11VideoContext_VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext_VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext_VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext_VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext_VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext_VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext_VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) (This)->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) #define ID3D11VideoContext_VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext_VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) (This)->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) #define ID3D11VideoContext_VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) (This)->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) #define ID3D11VideoContext_VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) (This)->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) #define ID3D11VideoContext_VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext_VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) (This)->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) #define ID3D11VideoContext_NegotiateCryptoSessionKeyExchange(This,session,data_size,data) (This)->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data) #define ID3D11VideoContext_EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) (This)->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) #define ID3D11VideoContext_DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) (This)->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) #define ID3D11VideoContext_StartSessionKeyRefresh(This,session,random_number_size,random_number) (This)->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number) #define ID3D11VideoContext_FinishSessionKeyRefresh(This,session) (This)->lpVtbl->FinishSessionKeyRefresh(This,session) #define ID3D11VideoContext_GetEncryptionBltKey(This,session,key_size,key) (This)->lpVtbl->GetEncryptionBltKey(This,session,key_size,key) #define ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) (This)->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) #define ID3D11VideoContext_QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) (This)->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) #define ID3D11VideoContext_ConfigureAuthenticatedChannel(This,channel,input_size,input,output) (This)->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output) #define ID3D11VideoContext_VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) #define ID3D11VideoContext_VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext_QueryInterface(ID3D11VideoContext* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoContext_AddRef(ID3D11VideoContext* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoContext_Release(ID3D11VideoContext* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoContext_GetDevice(ID3D11VideoContext* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoContext_GetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext_SetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext_SetPrivateDataInterface(ID3D11VideoContext* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoContext methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext_GetDecoderBuffer(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type,UINT *buffer_size,void **buffer) { return This->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer); } static FORCEINLINE HRESULT ID3D11VideoContext_ReleaseDecoderBuffer(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type) { return This->lpVtbl->ReleaseDecoderBuffer(This,decoder,type); } static FORCEINLINE HRESULT ID3D11VideoContext_DecoderBeginFrame(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,ID3D11VideoDecoderOutputView *view,UINT key_size,const void *key) { return This->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext_DecoderEndFrame(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder) { return This->lpVtbl->DecoderEndFrame(This,decoder); } static FORCEINLINE HRESULT ID3D11VideoContext_SubmitDecoderBuffers(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,UINT buffers_count,const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) { return This->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc); } static FORCEINLINE HRESULT ID3D11VideoContext_DecoderExtension(ID3D11VideoContext* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_DECODER_EXTENSION *extension) { return This->lpVtbl->DecoderExtension(This,decoder,extension); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputTargetRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputBackgroundColor(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL y_cb_cr,const D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputAlphaFillMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,UINT stream_idx) { This->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputConstriction(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable,SIZE size) { This->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetOutputStereoMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL enable) { This->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable); } static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorSetOutputExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputTargetRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputBackgroundColor(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *y_cb_cr,D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputAlphaFillMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,UINT *stream_idx) { This->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputConstriction(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,SIZE *size) { This->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetOutputStereoMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled); } static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorGetOutputExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamFrameFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT format) { This->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamOutputRate(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,WINBOOL repeat,const DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamSourceRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamDestRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamAlpha(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float alpha) { This->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamPalette(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,const UINT *entries) { This->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamPixelAspectRatio(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const DXGI_RATIONAL *src_aspect_ratio,const DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamLumaKey(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float lower,float upper) { This->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamStereoFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,WINBOOL left_view_frame0,WINBOOL base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,int mono_offset) { This->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamAutoProcessingMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable) { This->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamFilter(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL enable,int level) { This->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level); } static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorSetStreamExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamFrameFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT *format) { This->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamColorSpace(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamOutputRate(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,WINBOOL *repeat,DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamSourceRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamDestRect(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamAlpha(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *alpha) { This->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamPalette(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,UINT *entries) { This->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamPixelAspectRatio(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,DXGI_RATIONAL *src_aspect_ratio,DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamLumaKey(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *lower,float *upper) { This->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamStereoFormat(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,WINBOOL *left_view_frame0,WINBOOL *base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,int *mono_offset) { This->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamAutoProcessingMode(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamFilter(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL *enabled,int *level) { This->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level); } static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorGetStreamExtension(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext_VideoProcessorBlt(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,ID3D11VideoProcessorOutputView *view,UINT frame_idx,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM *streams) { return This->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams); } static FORCEINLINE HRESULT ID3D11VideoContext_NegotiateCryptoSessionKeyExchange(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT data_size,void *data) { return This->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data); } static FORCEINLINE void ID3D11VideoContext_EncryptionBlt(ID3D11VideoContext* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,UINT iv_size,void *iv) { This->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext_DecryptionBlt(ID3D11VideoContext* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,D3D11_ENCRYPTED_BLOCK_INFO *block_info,UINT key_size,const void *key,UINT iv_size,void *iv) { This->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext_StartSessionKeyRefresh(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT random_number_size,void *random_number) { This->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number); } static FORCEINLINE void ID3D11VideoContext_FinishSessionKeyRefresh(ID3D11VideoContext* This,ID3D11CryptoSession *session) { This->lpVtbl->FinishSessionKeyRefresh(This,session); } static FORCEINLINE HRESULT ID3D11VideoContext_GetEncryptionBltKey(ID3D11VideoContext* This,ID3D11CryptoSession *session,UINT key_size,void *key) { return This->lpVtbl->GetEncryptionBltKey(This,session,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext_NegotiateAuthenticatedChannelKeyExchange(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT data_size,void *data) { return This->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext_QueryAuthenticatedChannel(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,UINT output_size,void *output) { return This->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output); } static FORCEINLINE HRESULT ID3D11VideoContext_ConfigureAuthenticatedChannel(ID3D11VideoContext* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) { return This->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorSetStreamRotation(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_ROTATION rotation) { This->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation); } static FORCEINLINE void ID3D11VideoContext_VideoProcessorGetStreamRotation(ID3D11VideoContext* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enable,D3D11_VIDEO_PROCESSOR_ROTATION *rotation) { This->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation); } #endif #endif #endif #endif /* __ID3D11VideoContext_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Device interface */ #ifndef __ID3D11Device_INTERFACE_DEFINED__ #define __ID3D11Device_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device, 0xdb6f6ddb, 0xac77, 0x4e88, 0x82,0x53, 0x81,0x9d,0xf9,0xbb,0xf1,0x40); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("db6f6ddb-ac77-4e88-8253-819df9bbf140") ID3D11Device : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateBuffer( const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture1D( const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture2D( const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture3D( const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D) = 0; virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView( ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateUnorderedAccessView( ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRenderTargetView( ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilView( ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView) = 0; virtual HRESULT STDMETHODCALLTYPE CreateInputLayout( const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVertexShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGeometryShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGeometryShaderWithStreamOutput( const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePixelShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateHullShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDomainShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateComputeShader( const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader) = 0; virtual HRESULT STDMETHODCALLTYPE CreateClassLinkage( ID3D11ClassLinkage **ppLinkage) = 0; virtual HRESULT STDMETHODCALLTYPE CreateBlendState( const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDepthStencilState( const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState( const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSamplerState( const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateQuery( const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePredicate( const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCounter( const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext( UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedResource( HANDLE hResource, REFIID ReturnedInterface, void **ppResource) = 0; virtual HRESULT STDMETHODCALLTYPE CheckFormatSupport( DXGI_FORMAT Format, UINT *pFormatSupport) = 0; virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels( DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels) = 0; virtual void STDMETHODCALLTYPE CheckCounterInfo( D3D11_COUNTER_INFO *pCounterInfo) = 0; virtual HRESULT STDMETHODCALLTYPE CheckCounter( const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength) = 0; virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *pDataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *pData) = 0; virtual D3D_FEATURE_LEVEL STDMETHODCALLTYPE GetFeatureLevel( ) = 0; virtual UINT STDMETHODCALLTYPE GetCreationFlags( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason( ) = 0; virtual void STDMETHODCALLTYPE GetImmediateContext( ID3D11DeviceContext **ppImmediateContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetExceptionMode( UINT RaiseFlags) = 0; virtual UINT STDMETHODCALLTYPE GetExceptionMode( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device, 0xdb6f6ddb, 0xac77, 0x4e88, 0x82,0x53, 0x81,0x9d,0xf9,0xbb,0xf1,0x40) #endif #else typedef struct ID3D11DeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device *This); END_INTERFACE } ID3D11DeviceVtbl; interface ID3D11Device { CONST_VTBL ID3D11DeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device_QueryInterface(ID3D11Device* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device_AddRef(ID3D11Device* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device_Release(ID3D11Device* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device_CreateBuffer(ID3D11Device* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device_CreateTexture1D(ID3D11Device* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device_CreateTexture2D(ID3D11Device* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device_CreateTexture3D(ID3D11Device* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device_CreateShaderResourceView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device_CreateUnorderedAccessView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device_CreateRenderTargetView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device_CreateDepthStencilView(ID3D11Device* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device_CreateInputLayout(ID3D11Device* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device_CreateVertexShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device_CreateGeometryShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device_CreateGeometryShaderWithStreamOutput(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device_CreatePixelShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device_CreateHullShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device_CreateDomainShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device_CreateComputeShader(ID3D11Device* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device_CreateClassLinkage(ID3D11Device* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device_CreateBlendState(ID3D11Device* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device_CreateDepthStencilState(ID3D11Device* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device_CreateRasterizerState(ID3D11Device* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device_CreateSamplerState(ID3D11Device* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device_CreateQuery(ID3D11Device* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device_CreatePredicate(ID3D11Device* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device_CreateCounter(ID3D11Device* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device_CreateDeferredContext(ID3D11Device* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device_OpenSharedResource(ID3D11Device* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device_CheckFormatSupport(ID3D11Device* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device_CheckMultisampleQualityLevels(ID3D11Device* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device_CheckCounterInfo(ID3D11Device* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device_CheckCounter(ID3D11Device* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device_CheckFeatureSupport(ID3D11Device* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device_GetPrivateData(ID3D11Device* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device_SetPrivateData(ID3D11Device* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device_SetPrivateDataInterface(ID3D11Device* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device_GetFeatureLevel(ID3D11Device* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device_GetCreationFlags(ID3D11Device* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device_GetDeviceRemovedReason(ID3D11Device* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device_GetImmediateContext(ID3D11Device* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device_SetExceptionMode(ID3D11Device* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device_GetExceptionMode(ID3D11Device* This) { return This->lpVtbl->GetExceptionMode(This); } #endif #endif #endif #endif /* __ID3D11Device_INTERFACE_DEFINED__ */ typedef enum D3D11_CREATE_DEVICE_FLAG { D3D11_CREATE_DEVICE_SINGLETHREADED = 0x1, D3D11_CREATE_DEVICE_DEBUG = 0x2, D3D11_CREATE_DEVICE_SWITCH_TO_REF = 0x4, D3D11_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x8, D3D11_CREATE_DEVICE_BGRA_SUPPORT = 0x20, D3D11_CREATE_DEVICE_DEBUGGABLE = 0x40, D3D11_CREATE_DEVICE_PREVENT_ALTERING_LAYER_SETTINGS_FROM_REGISTRY = 0x80, D3D11_CREATE_DEVICE_DISABLE_GPU_TIMEOUT = 0x100, D3D11_CREATE_DEVICE_VIDEO_SUPPORT = 0x800 } D3D11_CREATE_DEVICE_FLAG; typedef enum D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT { D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_INPUT = 0x1, D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT_OUTPUT = 0x2 } D3D11_VIDEO_PROCESSOR_FORMAT_SUPPORT; #define D3D11_SDK_VERSION (7) #include #ifndef D3D11_IGNORE_SDK_LAYERS # include #endif #include #include #include #include #define _FACD3D11 (0x87c) #define MAKE_D3D11_HRESULT(code) MAKE_HRESULT(SEVERITY_ERROR, _FACD3D11, code) typedef HRESULT (WINAPI* PFN_D3D11_CREATE_DEVICE)(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT, const D3D_FEATURE_LEVEL*,UINT,UINT,ID3D11Device**,D3D_FEATURE_LEVEL*,ID3D11DeviceContext**); HRESULT WINAPI D3D11CreateDevice(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT,const D3D_FEATURE_LEVEL*, UINT,UINT,ID3D11Device**,D3D_FEATURE_LEVEL*,ID3D11DeviceContext**); typedef HRESULT (WINAPI *PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN)(IDXGIAdapter*,D3D_DRIVER_TYPE,HMODULE,UINT, const D3D_FEATURE_LEVEL*,UINT,UINT,const DXGI_SWAP_CHAIN_DESC*,IDXGISwapChain**,ID3D11Device**, D3D_FEATURE_LEVEL*,ID3D11DeviceContext**); HRESULT __stdcall D3D11CreateDeviceAndSwapChain(IDXGIAdapter *adapter,D3D_DRIVER_TYPE driver_type,HMODULE swrast,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT levels,UINT sdk_version,const DXGI_SWAP_CHAIN_DESC *swapchain_desc,IDXGISwapChain **swapchain,ID3D11Device **device,D3D_FEATURE_LEVEL *obtained_feature_level,ID3D11DeviceContext **immediate_context); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11_h__ */ dxvk-0~git20220822.9df86f2/d3d11_1.h000066400000000000000000006775301430055512200162260ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11_1.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11_1_h__ #define __d3d11_1_h__ /* Forward declarations */ #ifndef __ID3D11BlendState1_FWD_DEFINED__ #define __ID3D11BlendState1_FWD_DEFINED__ typedef interface ID3D11BlendState1 ID3D11BlendState1; #ifdef __cplusplus interface ID3D11BlendState1; #endif /* __cplusplus */ #endif #ifndef __ID3DDeviceContextState_FWD_DEFINED__ #define __ID3DDeviceContextState_FWD_DEFINED__ typedef interface ID3DDeviceContextState ID3DDeviceContextState; #ifdef __cplusplus interface ID3DDeviceContextState; #endif /* __cplusplus */ #endif #ifndef __ID3D11DeviceContext1_FWD_DEFINED__ #define __ID3D11DeviceContext1_FWD_DEFINED__ typedef interface ID3D11DeviceContext1 ID3D11DeviceContext1; #ifdef __cplusplus interface ID3D11DeviceContext1; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoContext1_FWD_DEFINED__ #define __ID3D11VideoContext1_FWD_DEFINED__ typedef interface ID3D11VideoContext1 ID3D11VideoContext1; #ifdef __cplusplus interface ID3D11VideoContext1; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoDevice1_FWD_DEFINED__ #define __ID3D11VideoDevice1_FWD_DEFINED__ typedef interface ID3D11VideoDevice1 ID3D11VideoDevice1; #ifdef __cplusplus interface ID3D11VideoDevice1; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoProcessorEnumerator1_FWD_DEFINED__ #define __ID3D11VideoProcessorEnumerator1_FWD_DEFINED__ typedef interface ID3D11VideoProcessorEnumerator1 ID3D11VideoProcessorEnumerator1; #ifdef __cplusplus interface ID3D11VideoProcessorEnumerator1; #endif /* __cplusplus */ #endif #ifndef __ID3DUserDefinedAnnotation_FWD_DEFINED__ #define __ID3DUserDefinedAnnotation_FWD_DEFINED__ typedef interface ID3DUserDefinedAnnotation ID3DUserDefinedAnnotation; #ifdef __cplusplus interface ID3DUserDefinedAnnotation; #endif /* __cplusplus */ #endif #ifndef __ID3D11RasterizerState1_FWD_DEFINED__ #define __ID3D11RasterizerState1_FWD_DEFINED__ typedef interface ID3D11RasterizerState1 ID3D11RasterizerState1; #ifdef __cplusplus interface ID3D11RasterizerState1; #endif /* __cplusplus */ #endif #ifndef __ID3D11Device1_FWD_DEFINED__ #define __ID3D11Device1_FWD_DEFINED__ typedef interface ID3D11Device1 ID3D11Device1; #ifdef __cplusplus interface ID3D11Device1; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef enum D3D11_LOGIC_OP { D3D11_LOGIC_OP_CLEAR = 0, D3D11_LOGIC_OP_SET = 1, D3D11_LOGIC_OP_COPY = 2, D3D11_LOGIC_OP_COPY_INVERTED = 3, D3D11_LOGIC_OP_NOOP = 4, D3D11_LOGIC_OP_INVERT = 5, D3D11_LOGIC_OP_AND = 6, D3D11_LOGIC_OP_NAND = 7, D3D11_LOGIC_OP_OR = 8, D3D11_LOGIC_OP_NOR = 9, D3D11_LOGIC_OP_XOR = 10, D3D11_LOGIC_OP_EQUIV = 11, D3D11_LOGIC_OP_AND_REVERSE = 12, D3D11_LOGIC_OP_AND_INVERTED = 13, D3D11_LOGIC_OP_OR_REVERSE = 14, D3D11_LOGIC_OP_OR_INVERTED = 15 } D3D11_LOGIC_OP; typedef enum D3D11_COPY_FLAGS { D3D11_COPY_NO_OVERWRITE = 0x1, D3D11_COPY_DISCARD = 0x2 } D3D11_COPY_FLAGS; typedef enum D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG { D3D11_1_CREATE_DEVICE_CONTEXT_STATE_SINGLETHREADED = 0x1 } D3D11_1_CREATE_DEVICE_CONTEXT_STATE_FLAG; typedef enum D3D11_VIDEO_DECODER_CAPS { D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE = 0x1, D3D11_VIDEO_DECODER_CAPS_NON_REAL_TIME = 0x2, D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_DYNAMIC = 0x4, D3D11_VIDEO_DECODER_CAPS_DOWNSAMPLE_REQUIRED = 0x8, D3D11_VIDEO_DECODER_CAPS_UNSUPPORTED = 0x10 } D3D11_VIDEO_DECODER_CAPS; typedef enum D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS { D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_ROTATION = 0x1, D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_RESIZE = 0x2, D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_MULTIPLANE_OVERLAY_COLOR_SPACE_CONVERSION = 0x4, D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINT_TRIPLE_BUFFER_OUTPUT = 0x8 } D3D11_VIDEO_PROCESSOR_BEHAVIOR_HINTS; typedef enum D3D11_CRYPTO_SESSION_STATUS { D3D11_CRYPTO_SESSION_STATUS_OK = 0x0, D3D11_CRYPTO_SESSION_STATUS_KEY_LOST = 0x1, D3D11_CRYPTO_SESSION_STATUS_KEY_AND_CONTENT_LOST = 0x2 } D3D11_CRYPTO_SESSION_STATUS; typedef struct D3D11_RENDER_TARGET_BLEND_DESC1 { WINBOOL BlendEnable; WINBOOL LogicOpEnable; D3D11_BLEND SrcBlend; D3D11_BLEND DestBlend; D3D11_BLEND_OP BlendOp; D3D11_BLEND SrcBlendAlpha; D3D11_BLEND DestBlendAlpha; D3D11_BLEND_OP BlendOpAlpha; D3D11_LOGIC_OP LogicOp; UINT8 RenderTargetWriteMask; } D3D11_RENDER_TARGET_BLEND_DESC1; typedef struct D3D11_BLEND_DESC1 { WINBOOL AlphaToCoverageEnable; WINBOOL IndependentBlendEnable; D3D11_RENDER_TARGET_BLEND_DESC1 RenderTarget[8]; } D3D11_BLEND_DESC1; typedef struct D3D11_RASTERIZER_DESC1 { D3D11_FILL_MODE FillMode; D3D11_CULL_MODE CullMode; WINBOOL FrontCounterClockwise; INT DepthBias; FLOAT DepthBiasClamp; FLOAT SlopeScaledDepthBias; WINBOOL DepthClipEnable; WINBOOL ScissorEnable; WINBOOL MultisampleEnable; WINBOOL AntialiasedLineEnable; UINT ForcedSampleCount; } D3D11_RASTERIZER_DESC1; typedef struct D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK { UINT ClearSize; UINT EncryptedSize; } D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK; typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC1 { D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType; UINT DataOffset; UINT DataSize; void *pIV; UINT IVSize; D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK *pSubSampleMappingBlock; UINT SubSampleMappingCount; } D3D11_VIDEO_DECODER_BUFFER_DESC1; typedef struct D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION { ID3D11CryptoSession *pCryptoSession; UINT BlobSize; void *pBlob; GUID *pKeyInfoId; UINT PrivateDataSize; void *pPrivateData; } D3D11_VIDEO_DECODER_BEGIN_FRAME_CRYPTO_SESSION; typedef struct D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT { WINBOOL Enable; UINT Width; UINT Height; DXGI_FORMAT Format; } D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT; typedef struct D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA { UINT PrivateDataSize; UINT HWProtectionDataSize; BYTE pbInput[4]; } D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA; typedef struct D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA { UINT PrivateDataSize; UINT MaxHWProtectionDataSize; UINT HWProtectionDataSize; UINT64 TransportTime; UINT64 ExecutionTime; BYTE pbOutput[4]; } D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA; typedef struct D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA { UINT HWProtectionFunctionID; D3D11_KEY_EXCHANGE_HW_PROTECTION_INPUT_DATA *pInputData; D3D11_KEY_EXCHANGE_HW_PROTECTION_OUTPUT_DATA *pOutputData; HRESULT Status; } D3D11_KEY_EXCHANGE_HW_PROTECTION_DATA; typedef struct D3D11_VIDEO_SAMPLE_DESC { UINT Width; UINT Height; DXGI_FORMAT Format; DXGI_COLOR_SPACE_TYPE ColorSpace; } D3D11_VIDEO_SAMPLE_DESC; /***************************************************************************** * ID3D11BlendState1 interface */ #ifndef __ID3D11BlendState1_INTERFACE_DEFINED__ #define __ID3D11BlendState1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11BlendState1, 0xcc86fabe, 0xda55, 0x401d, 0x85,0xe7, 0xe3,0xc9,0xde,0x28,0x77,0xe9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cc86fabe-da55-401d-85e7-e3c9de2877e9") ID3D11BlendState1 : public ID3D11BlendState { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_BLEND_DESC1 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11BlendState1, 0xcc86fabe, 0xda55, 0x401d, 0x85,0xe7, 0xe3,0xc9,0xde,0x28,0x77,0xe9) #endif #else typedef struct ID3D11BlendState1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11BlendState1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11BlendState1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11BlendState1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11BlendState1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11BlendState1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11BlendState1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11BlendState1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11BlendState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11BlendState1 *This, D3D11_BLEND_DESC *pDesc); /*** ID3D11BlendState1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11BlendState1 *This, D3D11_BLEND_DESC1 *pDesc); END_INTERFACE } ID3D11BlendState1Vtbl; interface ID3D11BlendState1 { CONST_VTBL ID3D11BlendState1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11BlendState1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11BlendState1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11BlendState1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11BlendState1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11BlendState1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11BlendState1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11BlendState1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11BlendState methods ***/ #define ID3D11BlendState1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11BlendState1 methods ***/ #define ID3D11BlendState1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11BlendState1_QueryInterface(ID3D11BlendState1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11BlendState1_AddRef(ID3D11BlendState1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11BlendState1_Release(ID3D11BlendState1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11BlendState1_GetDevice(ID3D11BlendState1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11BlendState1_GetPrivateData(ID3D11BlendState1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11BlendState1_SetPrivateData(ID3D11BlendState1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11BlendState1_SetPrivateDataInterface(ID3D11BlendState1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11BlendState methods ***/ static FORCEINLINE void ID3D11BlendState1_GetDesc(ID3D11BlendState1* This,D3D11_BLEND_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11BlendState1 methods ***/ static FORCEINLINE void ID3D11BlendState1_GetDesc1(ID3D11BlendState1* This,D3D11_BLEND_DESC1 *pDesc) { This->lpVtbl->GetDesc1(This,pDesc); } #endif #endif #endif #endif /* __ID3D11BlendState1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3DDeviceContextState interface */ #ifndef __ID3DDeviceContextState_INTERFACE_DEFINED__ #define __ID3DDeviceContextState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3DDeviceContextState, 0x5c1e0d8a, 0x7c23, 0x48f9, 0x8c,0x59, 0xa9,0x29,0x58,0xce,0xff,0x11); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5c1e0d8a-7c23-48f9-8c59-a92958ceff11") ID3DDeviceContextState : public ID3D11DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3DDeviceContextState, 0x5c1e0d8a, 0x7c23, 0x48f9, 0x8c,0x59, 0xa9,0x29,0x58,0xce,0xff,0x11) #endif #else typedef struct ID3DDeviceContextStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3DDeviceContextState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3DDeviceContextState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3DDeviceContextState *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3DDeviceContextState *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3DDeviceContextState *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3DDeviceContextState *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3DDeviceContextState *This, REFGUID guid, const IUnknown *pData); END_INTERFACE } ID3DDeviceContextStateVtbl; interface ID3DDeviceContextState { CONST_VTBL ID3DDeviceContextStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3DDeviceContextState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3DDeviceContextState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3DDeviceContextState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3DDeviceContextState_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3DDeviceContextState_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3DDeviceContextState_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3DDeviceContextState_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3DDeviceContextState_QueryInterface(ID3DDeviceContextState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3DDeviceContextState_AddRef(ID3DDeviceContextState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3DDeviceContextState_Release(ID3DDeviceContextState* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3DDeviceContextState_GetDevice(ID3DDeviceContextState* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3DDeviceContextState_GetPrivateData(ID3DDeviceContextState* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3DDeviceContextState_SetPrivateData(ID3DDeviceContextState* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3DDeviceContextState_SetPrivateDataInterface(ID3DDeviceContextState* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } #endif #endif #endif #endif /* __ID3DDeviceContextState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DeviceContext1 interface */ #ifndef __ID3D11DeviceContext1_INTERFACE_DEFINED__ #define __ID3D11DeviceContext1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceContext1, 0xbb2c6faa, 0xb5fb, 0x4082, 0x8e,0x6b, 0x38,0x8b,0x8c,0xfa,0x90,0xe1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("bb2c6faa-b5fb-4082-8e6b-388b8cfa90e1") ID3D11DeviceContext1 : public ID3D11DeviceContext { virtual void STDMETHODCALLTYPE CopySubresourceRegion1( ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox, UINT CopyFlags) = 0; virtual void STDMETHODCALLTYPE UpdateSubresource1( ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch, UINT CopyFlags) = 0; virtual void STDMETHODCALLTYPE DiscardResource( ID3D11Resource *pResource) = 0; virtual void STDMETHODCALLTYPE DiscardView( ID3D11View *pResourceView) = 0; virtual void STDMETHODCALLTYPE VSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE HSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE DSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE GSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE PSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE CSSetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE VSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE HSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE DSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE GSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE PSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE CSGetConstantBuffers1( UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants) = 0; virtual void STDMETHODCALLTYPE SwapDeviceContextState( ID3DDeviceContextState *pState, ID3DDeviceContextState **ppPreviousState) = 0; virtual void STDMETHODCALLTYPE ClearView( ID3D11View *pView, const FLOAT Color[4], const D3D11_RECT *pRect, UINT NumRects) = 0; virtual void STDMETHODCALLTYPE DiscardView1( ID3D11View *pResourceView, const D3D11_RECT *pRects, UINT NumRects) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceContext1, 0xbb2c6faa, 0xb5fb, 0x4082, 0x8e,0x6b, 0x38,0x8b,0x8c,0xfa,0x90,0xe1) #endif #else typedef struct ID3D11DeviceContext1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceContext1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceContext1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceContext1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceContext1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceContext1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceContext1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceContext1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DeviceContext methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D11DeviceContext1 *This, ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D11DeviceContext1 *This, ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D11DeviceContext1 *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D11DeviceContext1 *This, UINT VertexCount, UINT StartVertexLocation); HRESULT (STDMETHODCALLTYPE *Map)( ID3D11DeviceContext1 *This, ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); void (STDMETHODCALLTYPE *Unmap)( ID3D11DeviceContext1 *This, ID3D11Resource *pResource, UINT Subresource); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D11DeviceContext1 *This, ID3D11InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D11DeviceContext1 *This, ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D11DeviceContext1 *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D11DeviceContext1 *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D11DeviceContext1 *This, ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D11DeviceContext1 *This, D3D11_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *Begin)( ID3D11DeviceContext1 *This, ID3D11Asynchronous *pAsync); void (STDMETHODCALLTYPE *End)( ID3D11DeviceContext1 *This, ID3D11Asynchronous *pAsync); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D11DeviceContext1 *This, ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags); void (STDMETHODCALLTYPE *SetPredication)( ID3D11DeviceContext1 *This, ID3D11Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D11DeviceContext1 *This, UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext1 *This, UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D11DeviceContext1 *This, ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D11DeviceContext1 *This, ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D11DeviceContext1 *This, UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D11DeviceContext1 *This); void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)( ID3D11DeviceContext1 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *DrawInstancedIndirect)( ID3D11DeviceContext1 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *Dispatch)( ID3D11DeviceContext1 *This, UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ); void (STDMETHODCALLTYPE *DispatchIndirect)( ID3D11DeviceContext1 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *RSSetState)( ID3D11DeviceContext1 *This, ID3D11RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D11DeviceContext1 *This, UINT NumViewports, const D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D11DeviceContext1 *This, UINT NumRects, const D3D11_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *CopyStructureCount)( ID3D11DeviceContext1 *This, ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D11DeviceContext1 *This, ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D11DeviceContext1 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D11DeviceContext1 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D11DeviceContext1 *This, ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D11DeviceContext1 *This, ID3D11ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *SetResourceMinLOD)( ID3D11DeviceContext1 *This, ID3D11Resource *pResource, FLOAT MinLOD); FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)( ID3D11DeviceContext1 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *ExecuteCommandList)( ID3D11DeviceContext1 *This, ID3D11CommandList *pCommandList, WINBOOL RestoreContextState); void (STDMETHODCALLTYPE *HSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *HSSetShader)( ID3D11DeviceContext1 *This, ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *HSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *HSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *DSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *DSSetShader)( ID3D11DeviceContext1 *This, ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *DSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *CSSetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *CSSetShader)( ID3D11DeviceContext1 *This, ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *CSSetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *CSSetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D11DeviceContext1 *This, ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D11DeviceContext1 *This, ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D11DeviceContext1 *This, ID3D11InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D11DeviceContext1 *This, ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D11DeviceContext1 *This, ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D11DeviceContext1 *This, D3D11_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D11DeviceContext1 *This, ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D11DeviceContext1 *This, UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext1 *This, UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D11DeviceContext1 *This, ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D11DeviceContext1 *This, ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D11DeviceContext1 *This, UINT NumBuffers, ID3D11Buffer **ppSOTargets); void (STDMETHODCALLTYPE *RSGetState)( ID3D11DeviceContext1 *This, ID3D11RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D11DeviceContext1 *This, UINT *pNumViewports, D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D11DeviceContext1 *This, UINT *pNumRects, D3D11_RECT *pRects); void (STDMETHODCALLTYPE *HSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *HSGetShader)( ID3D11DeviceContext1 *This, ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *HSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *HSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *DSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *DSGetShader)( ID3D11DeviceContext1 *This, ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *DSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *DSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *CSGetShaderResources)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *CSGetShader)( ID3D11DeviceContext1 *This, ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *CSGetSamplers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *CSGetConstantBuffers)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *ClearState)( ID3D11DeviceContext1 *This); void (STDMETHODCALLTYPE *Flush)( ID3D11DeviceContext1 *This); D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)( ID3D11DeviceContext1 *This); UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11DeviceContext1 *This); HRESULT (STDMETHODCALLTYPE *FinishCommandList)( ID3D11DeviceContext1 *This, WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList); /*** ID3D11DeviceContext1 methods ***/ void (STDMETHODCALLTYPE *CopySubresourceRegion1)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox, UINT CopyFlags); void (STDMETHODCALLTYPE *UpdateSubresource1)( ID3D11DeviceContext1 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch, UINT CopyFlags); void (STDMETHODCALLTYPE *DiscardResource)( ID3D11DeviceContext1 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *DiscardView)( ID3D11DeviceContext1 *This, ID3D11View *pResourceView); void (STDMETHODCALLTYPE *VSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *HSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *DSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *GSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *PSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *CSSetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *VSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *HSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *DSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *GSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *PSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *CSGetConstantBuffers1)( ID3D11DeviceContext1 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *SwapDeviceContextState)( ID3D11DeviceContext1 *This, ID3DDeviceContextState *pState, ID3DDeviceContextState **ppPreviousState); void (STDMETHODCALLTYPE *ClearView)( ID3D11DeviceContext1 *This, ID3D11View *pView, const FLOAT Color[4], const D3D11_RECT *pRect, UINT NumRects); void (STDMETHODCALLTYPE *DiscardView1)( ID3D11DeviceContext1 *This, ID3D11View *pResourceView, const D3D11_RECT *pRects, UINT NumRects); END_INTERFACE } ID3D11DeviceContext1Vtbl; interface ID3D11DeviceContext1 { CONST_VTBL ID3D11DeviceContext1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceContext1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceContext1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceContext1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceContext1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceContext1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceContext1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceContext1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DeviceContext methods ***/ #define ID3D11DeviceContext1_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D11DeviceContext1_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D11DeviceContext1_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) #define ID3D11DeviceContext1_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource) #define ID3D11DeviceContext1_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D11DeviceContext1_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext1_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext1_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext1_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext1_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D11DeviceContext1_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync) #define ID3D11DeviceContext1_End(This,pAsync) (This)->lpVtbl->End(This,pAsync) #define ID3D11DeviceContext1_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags) #define ID3D11DeviceContext1_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D11DeviceContext1_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D11DeviceContext1_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext1_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D11DeviceContext1_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D11DeviceContext1_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D11DeviceContext1_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D11DeviceContext1_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext1_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext1_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) #define ID3D11DeviceContext1_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext1_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D11DeviceContext1_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D11DeviceContext1_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D11DeviceContext1_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D11DeviceContext1_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D11DeviceContext1_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D11DeviceContext1_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) #define ID3D11DeviceContext1_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D11DeviceContext1_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext1_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext1_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D11DeviceContext1_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D11DeviceContext1_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD) #define ID3D11DeviceContext1_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource) #define ID3D11DeviceContext1_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D11DeviceContext1_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState) #define ID3D11DeviceContext1_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext1_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext1_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D11DeviceContext1_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext1_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext1_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D11DeviceContext1_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D11DeviceContext1_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D11DeviceContext1_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext1_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D11DeviceContext1_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D11DeviceContext1_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets) #define ID3D11DeviceContext1_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D11DeviceContext1_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports) #define ID3D11DeviceContext1_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects) #define ID3D11DeviceContext1_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext1_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext1_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext1_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext1_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext1_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D11DeviceContext1_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D11DeviceContext1_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D11DeviceContext1_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #define ID3D11DeviceContext1_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList) /*** ID3D11DeviceContext1 methods ***/ #define ID3D11DeviceContext1_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) #define ID3D11DeviceContext1_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) #define ID3D11DeviceContext1_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource) #define ID3D11DeviceContext1_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView) #define ID3D11DeviceContext1_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext1_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState) #define ID3D11DeviceContext1_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects) #define ID3D11DeviceContext1_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext1_QueryInterface(ID3D11DeviceContext1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceContext1_AddRef(ID3D11DeviceContext1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceContext1_Release(ID3D11DeviceContext1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceContext1_GetDevice(ID3D11DeviceContext1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceContext1_GetPrivateData(ID3D11DeviceContext1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext1_SetPrivateData(ID3D11DeviceContext1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext1_SetPrivateDataInterface(ID3D11DeviceContext1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DeviceContext methods ***/ static FORCEINLINE void ID3D11DeviceContext1_VSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_PSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_PSSetShader(ID3D11DeviceContext1* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_PSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_VSSetShader(ID3D11DeviceContext1* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_DrawIndexed(ID3D11DeviceContext1* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D11DeviceContext1_Draw(ID3D11DeviceContext1* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE HRESULT ID3D11DeviceContext1_Map(ID3D11DeviceContext1* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) { return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource); } static FORCEINLINE void ID3D11DeviceContext1_Unmap(ID3D11DeviceContext1* This,ID3D11Resource *pResource,UINT Subresource) { This->lpVtbl->Unmap(This,pResource,Subresource); } static FORCEINLINE void ID3D11DeviceContext1_PSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_IASetInputLayout(ID3D11DeviceContext1* This,ID3D11InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D11DeviceContext1_IASetVertexBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext1_IASetIndexBuffer(ID3D11DeviceContext1* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext1_DrawIndexedInstanced(ID3D11DeviceContext1* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext1_DrawInstanced(ID3D11DeviceContext1* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext1_GSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_GSSetShader(ID3D11DeviceContext1* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_IASetPrimitiveTopology(ID3D11DeviceContext1* This,D3D11_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D11DeviceContext1_VSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_VSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_Begin(ID3D11DeviceContext1* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->Begin(This,pAsync); } static FORCEINLINE void ID3D11DeviceContext1_End(ID3D11DeviceContext1* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->End(This,pAsync); } static FORCEINLINE HRESULT ID3D11DeviceContext1_GetData(ID3D11DeviceContext1* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags); } static FORCEINLINE void ID3D11DeviceContext1_SetPredication(ID3D11DeviceContext1* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D11DeviceContext1_GSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_GSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_OMSetRenderTargets(ID3D11DeviceContext1* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext1_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext1* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext1_OMSetBlendState(ID3D11DeviceContext1* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D11DeviceContext1_OMSetDepthStencilState(ID3D11DeviceContext1* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D11DeviceContext1_SOSetTargets(ID3D11DeviceContext1* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D11DeviceContext1_DrawAuto(ID3D11DeviceContext1* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D11DeviceContext1_DrawIndexedInstancedIndirect(ID3D11DeviceContext1* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext1_DrawInstancedIndirect(ID3D11DeviceContext1* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext1_Dispatch(ID3D11DeviceContext1* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) { This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ); } static FORCEINLINE void ID3D11DeviceContext1_DispatchIndirect(ID3D11DeviceContext1* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext1_RSSetState(ID3D11DeviceContext1* This,ID3D11RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D11DeviceContext1_RSSetViewports(ID3D11DeviceContext1* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext1_RSSetScissorRects(ID3D11DeviceContext1* This,UINT NumRects,const D3D11_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext1_CopySubresourceRegion(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D11DeviceContext1_CopyResource(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D11DeviceContext1_UpdateSubresource(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D11DeviceContext1_CopyStructureCount(ID3D11DeviceContext1* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) { This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView); } static FORCEINLINE void ID3D11DeviceContext1_ClearRenderTargetView(ID3D11DeviceContext1* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D11DeviceContext1_ClearUnorderedAccessViewUint(ID3D11DeviceContext1* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext1_ClearUnorderedAccessViewFloat(ID3D11DeviceContext1* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext1_ClearDepthStencilView(ID3D11DeviceContext1* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D11DeviceContext1_GenerateMips(ID3D11DeviceContext1* This,ID3D11ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D11DeviceContext1_SetResourceMinLOD(ID3D11DeviceContext1* This,ID3D11Resource *pResource,FLOAT MinLOD) { This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD); } static FORCEINLINE FLOAT ID3D11DeviceContext1_GetResourceMinLOD(ID3D11DeviceContext1* This,ID3D11Resource *pResource) { return This->lpVtbl->GetResourceMinLOD(This,pResource); } static FORCEINLINE void ID3D11DeviceContext1_ResolveSubresource(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D11DeviceContext1_ExecuteCommandList(ID3D11DeviceContext1* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) { This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState); } static FORCEINLINE void ID3D11DeviceContext1_HSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_HSSetShader(ID3D11DeviceContext1* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_HSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_HSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_DSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_DSSetShader(ID3D11DeviceContext1* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_DSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_DSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_CSSetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_CSSetUnorderedAccessViews(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext1_CSSetShader(ID3D11DeviceContext1* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_CSSetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_CSSetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_VSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_PSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_PSGetShader(ID3D11DeviceContext1* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_PSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_VSGetShader(ID3D11DeviceContext1* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_PSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_IAGetInputLayout(ID3D11DeviceContext1* This,ID3D11InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D11DeviceContext1_IAGetVertexBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext1_IAGetIndexBuffer(ID3D11DeviceContext1* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext1_GSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_GSGetShader(ID3D11DeviceContext1* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_IAGetPrimitiveTopology(ID3D11DeviceContext1* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D11DeviceContext1_VSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_VSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_GetPredication(ID3D11DeviceContext1* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D11DeviceContext1_GSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_GSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_OMGetRenderTargets(ID3D11DeviceContext1* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext1_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext1* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext1_OMGetBlendState(ID3D11DeviceContext1* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D11DeviceContext1_OMGetDepthStencilState(ID3D11DeviceContext1* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D11DeviceContext1_SOGetTargets(ID3D11DeviceContext1* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets); } static FORCEINLINE void ID3D11DeviceContext1_RSGetState(ID3D11DeviceContext1* This,ID3D11RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D11DeviceContext1_RSGetViewports(ID3D11DeviceContext1* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext1_RSGetScissorRects(ID3D11DeviceContext1* This,UINT *pNumRects,D3D11_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext1_HSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_HSGetShader(ID3D11DeviceContext1* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_HSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_HSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_DSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_DSGetShader(ID3D11DeviceContext1* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_DSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_DSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_CSGetShaderResources(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext1_CSGetUnorderedAccessViews(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext1_CSGetShader(ID3D11DeviceContext1* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext1_CSGetSamplers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext1_CSGetConstantBuffers(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext1_ClearState(ID3D11DeviceContext1* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D11DeviceContext1_Flush(ID3D11DeviceContext1* This) { This->lpVtbl->Flush(This); } static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext1_GetType(ID3D11DeviceContext1* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE UINT ID3D11DeviceContext1_GetContextFlags(ID3D11DeviceContext1* This) { return This->lpVtbl->GetContextFlags(This); } static FORCEINLINE HRESULT ID3D11DeviceContext1_FinishCommandList(ID3D11DeviceContext1* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) { return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList); } /*** ID3D11DeviceContext1 methods ***/ static FORCEINLINE void ID3D11DeviceContext1_CopySubresourceRegion1(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) { This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext1_UpdateSubresource1(ID3D11DeviceContext1* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) { This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext1_DiscardResource(ID3D11DeviceContext1* This,ID3D11Resource *pResource) { This->lpVtbl->DiscardResource(This,pResource); } static FORCEINLINE void ID3D11DeviceContext1_DiscardView(ID3D11DeviceContext1* This,ID3D11View *pResourceView) { This->lpVtbl->DiscardView(This,pResourceView); } static FORCEINLINE void ID3D11DeviceContext1_VSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_HSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_DSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_GSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_PSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_CSSetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_VSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_HSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_DSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_GSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_PSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_CSGetConstantBuffers1(ID3D11DeviceContext1* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext1_SwapDeviceContextState(ID3D11DeviceContext1* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) { This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState); } static FORCEINLINE void ID3D11DeviceContext1_ClearView(ID3D11DeviceContext1* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) { This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects); } static FORCEINLINE void ID3D11DeviceContext1_DiscardView1(ID3D11DeviceContext1* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) { This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects); } #endif #endif #endif #endif /* __ID3D11DeviceContext1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoContext1 interface */ #ifndef __ID3D11VideoContext1_INTERFACE_DEFINED__ #define __ID3D11VideoContext1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoContext1, 0xa7f026da, 0xa5f8, 0x4487, 0xa5,0x64, 0x15,0xe3,0x43,0x57,0x65,0x1e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a7f026da-a5f8-4487-a564-15e34357651e") ID3D11VideoContext1 : public ID3D11VideoContext { virtual HRESULT STDMETHODCALLTYPE SubmitDecoderBuffers1( ID3D11VideoDecoder *decoder, UINT buffer_count, const D3D11_VIDEO_DECODER_BUFFER_DESC1 *buffer_desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetDataForNewHardwareKey( ID3D11CryptoSession *session, UINT input_size, const void *input_data, UINT64 *output_data) = 0; virtual HRESULT STDMETHODCALLTYPE CheckCryptoSessionStatus( ID3D11CryptoSession *session, D3D11_CRYPTO_SESSION_STATUS *status) = 0; virtual HRESULT STDMETHODCALLTYPE DecoderEnableDownsampling( ID3D11VideoDecoder *decoder, DXGI_COLOR_SPACE_TYPE colour_space, const D3D11_VIDEO_SAMPLE_DESC *output_desc, UINT reference_frame_count) = 0; virtual HRESULT STDMETHODCALLTYPE DecoderUpdateDownsampling( ID3D11VideoDecoder *decoder, const D3D11_VIDEO_SAMPLE_DESC *output_desc) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputColorSpace1( ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE colour_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetOutputShaderUsage( ID3D11VideoProcessor *processor, WINBOOL shader_usage) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputColorSpace1( ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE *colour_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputShaderUsage( ID3D11VideoProcessor *processor, WINBOOL *shader_usage) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamColorSpace1( ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE colour_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamMirror( ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL enable, WINBOOL flip_horizontal, WINBOOL flip_vertical) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamColorSpace1( ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE *colour_space) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamMirror( ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL *enable, WINBOOL *flip_horizontal, WINBOOL *flip_vertical) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessorGetBehaviorHints( ID3D11VideoProcessor *processor, UINT output_width, UINT output_height, DXGI_FORMAT output_format, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT *streams, UINT *behaviour_hints) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoContext1, 0xa7f026da, 0xa5f8, 0x4487, 0xa5,0x64, 0x15,0xe3,0x43,0x57,0x65,0x1e) #endif #else typedef struct ID3D11VideoContext1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoContext1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoContext1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoContext1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoContext1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoContext1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoContext1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoContext1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoContext methods ***/ HRESULT (STDMETHODCALLTYPE *GetDecoderBuffer)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type, UINT *buffer_size, void **buffer); HRESULT (STDMETHODCALLTYPE *ReleaseDecoderBuffer)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type); HRESULT (STDMETHODCALLTYPE *DecoderBeginFrame)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, ID3D11VideoDecoderOutputView *view, UINT key_size, const void *key); HRESULT (STDMETHODCALLTYPE *DecoderEndFrame)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder); HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, UINT buffers_count, const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc); HRESULT (STDMETHODCALLTYPE *DecoderExtension)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, const D3D11_VIDEO_DECODER_EXTENSION *extension); void (STDMETHODCALLTYPE *VideoProcessorSetOutputTargetRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetOutputBackgroundColor)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL y_cb_cr, const D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetOutputAlphaFillMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode, UINT stream_idx); void (STDMETHODCALLTYPE *VideoProcessorSetOutputConstriction)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL enable, SIZE size); void (STDMETHODCALLTYPE *VideoProcessorSetOutputStereoMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetOutputExtension)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetOutputTargetRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetOutputBackgroundColor)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL *y_cb_cr, D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetOutputAlphaFillMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode, UINT *stream_idx); void (STDMETHODCALLTYPE *VideoProcessorGetOutputConstriction)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, SIZE *size); void (STDMETHODCALLTYPE *VideoProcessorGetOutputStereoMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetOutputExtension)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFrameFormat)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT format); void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetStreamOutputRate)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate, WINBOOL repeat, const DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorSetStreamSourceRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamDestRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAlpha)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float alpha); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPalette)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, const UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPixelAspectRatio)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const DXGI_RATIONAL *src_aspect_ratio, const DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorSetStreamLumaKey)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float lower, float upper); void (STDMETHODCALLTYPE *VideoProcessorSetStreamStereoFormat)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format, WINBOOL left_view_frame0, WINBOOL base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode, int mono_offset); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAutoProcessingMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFilter)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL enable, int level); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetStreamExtension)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFrameFormat)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT *format); void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetStreamOutputRate)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate, WINBOOL *repeat, DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorGetStreamSourceRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamDestRect)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAlpha)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *alpha); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPalette)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPixelAspectRatio)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, DXGI_RATIONAL *src_aspect_ratio, DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorGetStreamLumaKey)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *lower, float *upper); void (STDMETHODCALLTYPE *VideoProcessorGetStreamStereoFormat)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format, WINBOOL *left_view_frame0, WINBOOL *base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode, int *mono_offset); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAutoProcessingMode)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFilter)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL *enabled, int *level); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetStreamExtension)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *VideoProcessorBlt)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, ID3D11VideoProcessorOutputView *view, UINT frame_idx, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM *streams); HRESULT (STDMETHODCALLTYPE *NegotiateCryptoSessionKeyExchange)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, UINT data_size, void *data); void (STDMETHODCALLTYPE *EncryptionBlt)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *DecryptionBlt)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, D3D11_ENCRYPTED_BLOCK_INFO *block_info, UINT key_size, const void *key, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *StartSessionKeyRefresh)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, UINT random_number_size, void *random_number); void (STDMETHODCALLTYPE *FinishSessionKeyRefresh)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session); HRESULT (STDMETHODCALLTYPE *GetEncryptionBltKey)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, UINT key_size, void *key); HRESULT (STDMETHODCALLTYPE *NegotiateAuthenticatedChannelKeyExchange)( ID3D11VideoContext1 *This, ID3D11AuthenticatedChannel *channel, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *QueryAuthenticatedChannel)( ID3D11VideoContext1 *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, UINT output_size, void *output); HRESULT (STDMETHODCALLTYPE *ConfigureAuthenticatedChannel)( ID3D11VideoContext1 *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output); void (STDMETHODCALLTYPE *VideoProcessorSetStreamRotation)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_ROTATION rotation); void (STDMETHODCALLTYPE *VideoProcessorGetStreamRotation)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enable, D3D11_VIDEO_PROCESSOR_ROTATION *rotation); /*** ID3D11VideoContext1 methods ***/ HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers1)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, UINT buffer_count, const D3D11_VIDEO_DECODER_BUFFER_DESC1 *buffer_desc); HRESULT (STDMETHODCALLTYPE *GetDataForNewHardwareKey)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, UINT input_size, const void *input_data, UINT64 *output_data); HRESULT (STDMETHODCALLTYPE *CheckCryptoSessionStatus)( ID3D11VideoContext1 *This, ID3D11CryptoSession *session, D3D11_CRYPTO_SESSION_STATUS *status); HRESULT (STDMETHODCALLTYPE *DecoderEnableDownsampling)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, DXGI_COLOR_SPACE_TYPE colour_space, const D3D11_VIDEO_SAMPLE_DESC *output_desc, UINT reference_frame_count); HRESULT (STDMETHODCALLTYPE *DecoderUpdateDownsampling)( ID3D11VideoContext1 *This, ID3D11VideoDecoder *decoder, const D3D11_VIDEO_SAMPLE_DESC *output_desc); void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace1)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE colour_space); void (STDMETHODCALLTYPE *VideoProcessorSetOutputShaderUsage)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL shader_usage); void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace1)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE *colour_space); void (STDMETHODCALLTYPE *VideoProcessorGetOutputShaderUsage)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, WINBOOL *shader_usage); void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace1)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE colour_space); void (STDMETHODCALLTYPE *VideoProcessorSetStreamMirror)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL enable, WINBOOL flip_horizontal, WINBOOL flip_vertical); void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace1)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE *colour_space); void (STDMETHODCALLTYPE *VideoProcessorGetStreamMirror)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL *enable, WINBOOL *flip_horizontal, WINBOOL *flip_vertical); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetBehaviorHints)( ID3D11VideoContext1 *This, ID3D11VideoProcessor *processor, UINT output_width, UINT output_height, DXGI_FORMAT output_format, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT *streams, UINT *behaviour_hints); END_INTERFACE } ID3D11VideoContext1Vtbl; interface ID3D11VideoContext1 { CONST_VTBL ID3D11VideoContext1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoContext1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoContext1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoContext1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoContext1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoContext1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoContext1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoContext1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoContext methods ***/ #define ID3D11VideoContext1_GetDecoderBuffer(This,decoder,type,buffer_size,buffer) (This)->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer) #define ID3D11VideoContext1_ReleaseDecoderBuffer(This,decoder,type) (This)->lpVtbl->ReleaseDecoderBuffer(This,decoder,type) #define ID3D11VideoContext1_DecoderBeginFrame(This,decoder,view,key_size,key) (This)->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key) #define ID3D11VideoContext1_DecoderEndFrame(This,decoder) (This)->lpVtbl->DecoderEndFrame(This,decoder) #define ID3D11VideoContext1_SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) #define ID3D11VideoContext1_DecoderExtension(This,decoder,extension) (This)->lpVtbl->DecoderExtension(This,decoder,extension) #define ID3D11VideoContext1_VideoProcessorSetOutputTargetRect(This,processor,enable,rect) (This)->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect) #define ID3D11VideoContext1_VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext1_VideoProcessorSetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext1_VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext1_VideoProcessorSetOutputConstriction(This,processor,enable,size) (This)->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size) #define ID3D11VideoContext1_VideoProcessorSetOutputStereoMode(This,processor,enable) (This)->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable) #define ID3D11VideoContext1_VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext1_VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) (This)->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) #define ID3D11VideoContext1_VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext1_VideoProcessorGetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext1_VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext1_VideoProcessorGetOutputConstriction(This,processor,enabled,size) (This)->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size) #define ID3D11VideoContext1_VideoProcessorGetOutputStereoMode(This,processor,enabled) (This)->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled) #define ID3D11VideoContext1_VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext1_VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext1_VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext1_VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext1_VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext1_VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext1_VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) (This)->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) #define ID3D11VideoContext1_VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext1_VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext1_VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) (This)->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) #define ID3D11VideoContext1_VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext1_VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) (This)->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) #define ID3D11VideoContext1_VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) (This)->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) #define ID3D11VideoContext1_VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext1_VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext1_VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext1_VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext1_VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext1_VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext1_VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) (This)->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) #define ID3D11VideoContext1_VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext1_VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext1_VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) (This)->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) #define ID3D11VideoContext1_VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext1_VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) (This)->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) #define ID3D11VideoContext1_VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) (This)->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) #define ID3D11VideoContext1_VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext1_VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) (This)->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) #define ID3D11VideoContext1_NegotiateCryptoSessionKeyExchange(This,session,data_size,data) (This)->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data) #define ID3D11VideoContext1_EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) (This)->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) #define ID3D11VideoContext1_DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) (This)->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) #define ID3D11VideoContext1_StartSessionKeyRefresh(This,session,random_number_size,random_number) (This)->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number) #define ID3D11VideoContext1_FinishSessionKeyRefresh(This,session) (This)->lpVtbl->FinishSessionKeyRefresh(This,session) #define ID3D11VideoContext1_GetEncryptionBltKey(This,session,key_size,key) (This)->lpVtbl->GetEncryptionBltKey(This,session,key_size,key) #define ID3D11VideoContext1_NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) (This)->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) #define ID3D11VideoContext1_QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) (This)->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) #define ID3D11VideoContext1_ConfigureAuthenticatedChannel(This,channel,input_size,input,output) (This)->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output) #define ID3D11VideoContext1_VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) #define ID3D11VideoContext1_VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) /*** ID3D11VideoContext1 methods ***/ #define ID3D11VideoContext1_SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc) #define ID3D11VideoContext1_GetDataForNewHardwareKey(This,session,input_size,input_data,output_data) (This)->lpVtbl->GetDataForNewHardwareKey(This,session,input_size,input_data,output_data) #define ID3D11VideoContext1_CheckCryptoSessionStatus(This,session,status) (This)->lpVtbl->CheckCryptoSessionStatus(This,session,status) #define ID3D11VideoContext1_DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count) (This)->lpVtbl->DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count) #define ID3D11VideoContext1_DecoderUpdateDownsampling(This,decoder,output_desc) (This)->lpVtbl->DecoderUpdateDownsampling(This,decoder,output_desc) #define ID3D11VideoContext1_VideoProcessorSetOutputColorSpace1(This,processor,colour_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace1(This,processor,colour_space) #define ID3D11VideoContext1_VideoProcessorSetOutputShaderUsage(This,processor,shader_usage) (This)->lpVtbl->VideoProcessorSetOutputShaderUsage(This,processor,shader_usage) #define ID3D11VideoContext1_VideoProcessorGetOutputColorSpace1(This,processor,colour_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace1(This,processor,colour_space) #define ID3D11VideoContext1_VideoProcessorGetOutputShaderUsage(This,processor,shader_usage) (This)->lpVtbl->VideoProcessorGetOutputShaderUsage(This,processor,shader_usage) #define ID3D11VideoContext1_VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space) #define ID3D11VideoContext1_VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) (This)->lpVtbl->VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) #define ID3D11VideoContext1_VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space) #define ID3D11VideoContext1_VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) (This)->lpVtbl->VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) #define ID3D11VideoContext1_VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints) (This)->lpVtbl->VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext1_QueryInterface(ID3D11VideoContext1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoContext1_AddRef(ID3D11VideoContext1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoContext1_Release(ID3D11VideoContext1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoContext1_GetDevice(ID3D11VideoContext1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoContext1_GetPrivateData(ID3D11VideoContext1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext1_SetPrivateData(ID3D11VideoContext1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext1_SetPrivateDataInterface(ID3D11VideoContext1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoContext methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext1_GetDecoderBuffer(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type,UINT *buffer_size,void **buffer) { return This->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer); } static FORCEINLINE HRESULT ID3D11VideoContext1_ReleaseDecoderBuffer(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type) { return This->lpVtbl->ReleaseDecoderBuffer(This,decoder,type); } static FORCEINLINE HRESULT ID3D11VideoContext1_DecoderBeginFrame(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,ID3D11VideoDecoderOutputView *view,UINT key_size,const void *key) { return This->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext1_DecoderEndFrame(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder) { return This->lpVtbl->DecoderEndFrame(This,decoder); } static FORCEINLINE HRESULT ID3D11VideoContext1_SubmitDecoderBuffers(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,UINT buffers_count,const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) { return This->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc); } static FORCEINLINE HRESULT ID3D11VideoContext1_DecoderExtension(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_DECODER_EXTENSION *extension) { return This->lpVtbl->DecoderExtension(This,decoder,extension); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputTargetRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputBackgroundColor(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL y_cb_cr,const D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputColorSpace(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputAlphaFillMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,UINT stream_idx) { This->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputConstriction(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL enable,SIZE size) { This->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputStereoMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL enable) { This->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorSetOutputExtension(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputTargetRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputBackgroundColor(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL *y_cb_cr,D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputColorSpace(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputAlphaFillMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,UINT *stream_idx) { This->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputConstriction(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,SIZE *size) { This->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputStereoMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorGetOutputExtension(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamFrameFormat(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT format) { This->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamColorSpace(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamOutputRate(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,WINBOOL repeat,const DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamSourceRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamDestRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamAlpha(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float alpha) { This->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamPalette(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,const UINT *entries) { This->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamPixelAspectRatio(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const DXGI_RATIONAL *src_aspect_ratio,const DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamLumaKey(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float lower,float upper) { This->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamStereoFormat(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,WINBOOL left_view_frame0,WINBOOL base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,int mono_offset) { This->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamAutoProcessingMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable) { This->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamFilter(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL enable,int level) { This->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorSetStreamExtension(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamFrameFormat(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT *format) { This->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamColorSpace(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamOutputRate(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,WINBOOL *repeat,DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamSourceRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamDestRect(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamAlpha(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *alpha) { This->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamPalette(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,UINT *entries) { This->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamPixelAspectRatio(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,DXGI_RATIONAL *src_aspect_ratio,DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamLumaKey(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *lower,float *upper) { This->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamStereoFormat(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,WINBOOL *left_view_frame0,WINBOOL *base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,int *mono_offset) { This->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamAutoProcessingMode(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamFilter(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL *enabled,int *level) { This->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorGetStreamExtension(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorBlt(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,ID3D11VideoProcessorOutputView *view,UINT frame_idx,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM *streams) { return This->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams); } static FORCEINLINE HRESULT ID3D11VideoContext1_NegotiateCryptoSessionKeyExchange(ID3D11VideoContext1* This,ID3D11CryptoSession *session,UINT data_size,void *data) { return This->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data); } static FORCEINLINE void ID3D11VideoContext1_EncryptionBlt(ID3D11VideoContext1* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,UINT iv_size,void *iv) { This->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext1_DecryptionBlt(ID3D11VideoContext1* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,D3D11_ENCRYPTED_BLOCK_INFO *block_info,UINT key_size,const void *key,UINT iv_size,void *iv) { This->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext1_StartSessionKeyRefresh(ID3D11VideoContext1* This,ID3D11CryptoSession *session,UINT random_number_size,void *random_number) { This->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number); } static FORCEINLINE void ID3D11VideoContext1_FinishSessionKeyRefresh(ID3D11VideoContext1* This,ID3D11CryptoSession *session) { This->lpVtbl->FinishSessionKeyRefresh(This,session); } static FORCEINLINE HRESULT ID3D11VideoContext1_GetEncryptionBltKey(ID3D11VideoContext1* This,ID3D11CryptoSession *session,UINT key_size,void *key) { return This->lpVtbl->GetEncryptionBltKey(This,session,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext1_NegotiateAuthenticatedChannelKeyExchange(ID3D11VideoContext1* This,ID3D11AuthenticatedChannel *channel,UINT data_size,void *data) { return This->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext1_QueryAuthenticatedChannel(ID3D11VideoContext1* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,UINT output_size,void *output) { return This->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output); } static FORCEINLINE HRESULT ID3D11VideoContext1_ConfigureAuthenticatedChannel(ID3D11VideoContext1* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) { return This->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamRotation(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_ROTATION rotation) { This->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamRotation(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enable,D3D11_VIDEO_PROCESSOR_ROTATION *rotation) { This->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation); } /*** ID3D11VideoContext1 methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext1_SubmitDecoderBuffers1(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,UINT buffer_count,const D3D11_VIDEO_DECODER_BUFFER_DESC1 *buffer_desc) { return This->lpVtbl->SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc); } static FORCEINLINE HRESULT ID3D11VideoContext1_GetDataForNewHardwareKey(ID3D11VideoContext1* This,ID3D11CryptoSession *session,UINT input_size,const void *input_data,UINT64 *output_data) { return This->lpVtbl->GetDataForNewHardwareKey(This,session,input_size,input_data,output_data); } static FORCEINLINE HRESULT ID3D11VideoContext1_CheckCryptoSessionStatus(ID3D11VideoContext1* This,ID3D11CryptoSession *session,D3D11_CRYPTO_SESSION_STATUS *status) { return This->lpVtbl->CheckCryptoSessionStatus(This,session,status); } static FORCEINLINE HRESULT ID3D11VideoContext1_DecoderEnableDownsampling(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,DXGI_COLOR_SPACE_TYPE colour_space,const D3D11_VIDEO_SAMPLE_DESC *output_desc,UINT reference_frame_count) { return This->lpVtbl->DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count); } static FORCEINLINE HRESULT ID3D11VideoContext1_DecoderUpdateDownsampling(ID3D11VideoContext1* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_SAMPLE_DESC *output_desc) { return This->lpVtbl->DecoderUpdateDownsampling(This,decoder,output_desc); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputColorSpace1(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,DXGI_COLOR_SPACE_TYPE colour_space) { This->lpVtbl->VideoProcessorSetOutputColorSpace1(This,processor,colour_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetOutputShaderUsage(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL shader_usage) { This->lpVtbl->VideoProcessorSetOutputShaderUsage(This,processor,shader_usage); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputColorSpace1(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,DXGI_COLOR_SPACE_TYPE *colour_space) { This->lpVtbl->VideoProcessorGetOutputColorSpace1(This,processor,colour_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetOutputShaderUsage(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,WINBOOL *shader_usage) { This->lpVtbl->VideoProcessorGetOutputShaderUsage(This,processor,shader_usage); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamColorSpace1(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_COLOR_SPACE_TYPE colour_space) { This->lpVtbl->VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorSetStreamMirror(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_index,WINBOOL enable,WINBOOL flip_horizontal,WINBOOL flip_vertical) { This->lpVtbl->VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamColorSpace1(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_COLOR_SPACE_TYPE *colour_space) { This->lpVtbl->VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space); } static FORCEINLINE void ID3D11VideoContext1_VideoProcessorGetStreamMirror(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT stream_index,WINBOOL *enable,WINBOOL *flip_horizontal,WINBOOL *flip_vertical) { This->lpVtbl->VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical); } static FORCEINLINE HRESULT ID3D11VideoContext1_VideoProcessorGetBehaviorHints(ID3D11VideoContext1* This,ID3D11VideoProcessor *processor,UINT output_width,UINT output_height,DXGI_FORMAT output_format,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT *streams,UINT *behaviour_hints) { return This->lpVtbl->VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints); } #endif #endif #endif #endif /* __ID3D11VideoContext1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoDevice1 interface */ #ifndef __ID3D11VideoDevice1_INTERFACE_DEFINED__ #define __ID3D11VideoDevice1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoDevice1, 0x29da1d51, 0x1321, 0x4454, 0x80,0x4b, 0xf5,0xfc,0x9f,0x86,0x1f,0x0f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("29da1d51-1321-4454-804b-f5fc9f861f0f") ID3D11VideoDevice1 : public ID3D11VideoDevice { virtual HRESULT STDMETHODCALLTYPE GetCryptoSessionPrivateDataSize( const GUID *crypto_type, const GUID *decoder_profile, const GUID *key_exchange_type, UINT *input_size, UINT *output_size) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderCaps( const GUID *decoder_profile, UINT sample_width, UINT sample_height, const DXGI_RATIONAL *framerate, UINT bitrate, const GUID *crypto_type, UINT *decoder_caps) = 0; virtual HRESULT STDMETHODCALLTYPE CheckVideoDecoderDownsampling( const D3D11_VIDEO_DECODER_DESC *input_desc, DXGI_COLOR_SPACE_TYPE input_colour_space, const D3D11_VIDEO_DECODER_CONFIG *input_config, const DXGI_RATIONAL *framerate, const D3D11_VIDEO_SAMPLE_DESC *output_desc, WINBOOL *supported, WINBOOL *real_time_hint) = 0; virtual HRESULT STDMETHODCALLTYPE RecommendVideoDecoderDownsampleParameters( const D3D11_VIDEO_DECODER_DESC *input_desc, DXGI_COLOR_SPACE_TYPE input_colour_space, const D3D11_VIDEO_DECODER_CONFIG *input_config, const DXGI_RATIONAL *framerate, D3D11_VIDEO_SAMPLE_DESC *recommended_output_desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoDevice1, 0x29da1d51, 0x1321, 0x4454, 0x80,0x4b, 0xf5,0xfc,0x9f,0x86,0x1f,0x0f) #endif #else typedef struct ID3D11VideoDevice1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoDevice1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoDevice1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoDevice1 *This); /*** ID3D11VideoDevice methods ***/ HRESULT (STDMETHODCALLTYPE *CreateVideoDecoder)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_DECODER_DESC *pVideoDesc, const D3D11_VIDEO_DECODER_CONFIG *pConfig, ID3D11VideoDecoder **ppDecoder); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessor)( ID3D11VideoDevice1 *This, ID3D11VideoProcessorEnumerator *pEnum, UINT RateConversionIndex, ID3D11VideoProcessor **ppVideoProcessor); HRESULT (STDMETHODCALLTYPE *CreateAuthenticatedChannel)( ID3D11VideoDevice1 *This, D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType, ID3D11AuthenticatedChannel **ppAuthenticatedChannel); HRESULT (STDMETHODCALLTYPE *CreateCryptoSession)( ID3D11VideoDevice1 *This, const GUID *pCryptoType, const GUID *pDecoderProfile, const GUID *pKeyExchangeType, ID3D11CryptoSession **ppCryptoSession); HRESULT (STDMETHODCALLTYPE *CreateVideoDecoderOutputView)( ID3D11VideoDevice1 *This, ID3D11Resource *pResource, const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoDecoderOutputView **ppVDOVView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorInputView)( ID3D11VideoDevice1 *This, ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorInputView **ppVPIView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorOutputView)( ID3D11VideoDevice1 *This, ID3D11Resource *pResource, ID3D11VideoProcessorEnumerator *pEnum, const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc, ID3D11VideoProcessorOutputView **ppVPOView); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessorEnumerator)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc, ID3D11VideoProcessorEnumerator **ppEnum); UINT (STDMETHODCALLTYPE *GetVideoDecoderProfileCount)( ID3D11VideoDevice1 *This); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderProfile)( ID3D11VideoDevice1 *This, UINT Index, GUID *pDecoderProfile); HRESULT (STDMETHODCALLTYPE *CheckVideoDecoderFormat)( ID3D11VideoDevice1 *This, const GUID *pDecoderProfile, DXGI_FORMAT Format, WINBOOL *pSupported); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfigCount)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_DECODER_DESC *pDesc, UINT *pCount); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfig)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_DECODER_DESC *pDesc, UINT Index, D3D11_VIDEO_DECODER_CONFIG *pConfig); HRESULT (STDMETHODCALLTYPE *GetContentProtectionCaps)( ID3D11VideoDevice1 *This, const GUID *pCryptoType, const GUID *pDecoderProfile, D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *CheckCryptoKeyExchange)( ID3D11VideoDevice1 *This, const GUID *pCryptoType, const GUID *pDecoderProfile, UINT Index, GUID *pKeyExchangeType); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoDevice1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoDevice1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoDevice1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCryptoSessionPrivateDataSize)( ID3D11VideoDevice1 *This, const GUID *crypto_type, const GUID *decoder_profile, const GUID *key_exchange_type, UINT *input_size, UINT *output_size); HRESULT (STDMETHODCALLTYPE *GetVideoDecoderCaps)( ID3D11VideoDevice1 *This, const GUID *decoder_profile, UINT sample_width, UINT sample_height, const DXGI_RATIONAL *framerate, UINT bitrate, const GUID *crypto_type, UINT *decoder_caps); HRESULT (STDMETHODCALLTYPE *CheckVideoDecoderDownsampling)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_DECODER_DESC *input_desc, DXGI_COLOR_SPACE_TYPE input_colour_space, const D3D11_VIDEO_DECODER_CONFIG *input_config, const DXGI_RATIONAL *framerate, const D3D11_VIDEO_SAMPLE_DESC *output_desc, WINBOOL *supported, WINBOOL *real_time_hint); HRESULT (STDMETHODCALLTYPE *RecommendVideoDecoderDownsampleParameters)( ID3D11VideoDevice1 *This, const D3D11_VIDEO_DECODER_DESC *input_desc, DXGI_COLOR_SPACE_TYPE input_colour_space, const D3D11_VIDEO_DECODER_CONFIG *input_config, const DXGI_RATIONAL *framerate, D3D11_VIDEO_SAMPLE_DESC *recommended_output_desc); END_INTERFACE } ID3D11VideoDevice1Vtbl; interface ID3D11VideoDevice1 { CONST_VTBL ID3D11VideoDevice1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoDevice1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoDevice1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoDevice1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11VideoDevice methods ***/ #define ID3D11VideoDevice1_CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder) (This)->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder) #define ID3D11VideoDevice1_CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor) (This)->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor) #define ID3D11VideoDevice1_CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel) (This)->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel) #define ID3D11VideoDevice1_CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession) (This)->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession) #define ID3D11VideoDevice1_CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView) (This)->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView) #define ID3D11VideoDevice1_CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView) (This)->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView) #define ID3D11VideoDevice1_CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView) (This)->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView) #define ID3D11VideoDevice1_CreateVideoProcessorEnumerator(This,pDesc,ppEnum) (This)->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum) #define ID3D11VideoDevice1_GetVideoDecoderProfileCount(This) (This)->lpVtbl->GetVideoDecoderProfileCount(This) #define ID3D11VideoDevice1_GetVideoDecoderProfile(This,Index,pDecoderProfile) (This)->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile) #define ID3D11VideoDevice1_CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported) (This)->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported) #define ID3D11VideoDevice1_GetVideoDecoderConfigCount(This,pDesc,pCount) (This)->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount) #define ID3D11VideoDevice1_GetVideoDecoderConfig(This,pDesc,Index,pConfig) (This)->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig) #define ID3D11VideoDevice1_GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps) (This)->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps) #define ID3D11VideoDevice1_CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType) (This)->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType) #define ID3D11VideoDevice1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoDevice1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoDevice1 methods ***/ #define ID3D11VideoDevice1_GetCryptoSessionPrivateDataSize(This,crypto_type,decoder_profile,key_exchange_type,input_size,output_size) (This)->lpVtbl->GetCryptoSessionPrivateDataSize(This,crypto_type,decoder_profile,key_exchange_type,input_size,output_size) #define ID3D11VideoDevice1_GetVideoDecoderCaps(This,decoder_profile,sample_width,sample_height,framerate,bitrate,crypto_type,decoder_caps) (This)->lpVtbl->GetVideoDecoderCaps(This,decoder_profile,sample_width,sample_height,framerate,bitrate,crypto_type,decoder_caps) #define ID3D11VideoDevice1_CheckVideoDecoderDownsampling(This,input_desc,input_colour_space,input_config,framerate,output_desc,supported,real_time_hint) (This)->lpVtbl->CheckVideoDecoderDownsampling(This,input_desc,input_colour_space,input_config,framerate,output_desc,supported,real_time_hint) #define ID3D11VideoDevice1_RecommendVideoDecoderDownsampleParameters(This,input_desc,input_colour_space,input_config,framerate,recommended_output_desc) (This)->lpVtbl->RecommendVideoDecoderDownsampleParameters(This,input_desc,input_colour_space,input_config,framerate,recommended_output_desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoDevice1_QueryInterface(ID3D11VideoDevice1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoDevice1_AddRef(ID3D11VideoDevice1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoDevice1_Release(ID3D11VideoDevice1* This) { return This->lpVtbl->Release(This); } /*** ID3D11VideoDevice methods ***/ static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoDecoder(ID3D11VideoDevice1* This,const D3D11_VIDEO_DECODER_DESC *pVideoDesc,const D3D11_VIDEO_DECODER_CONFIG *pConfig,ID3D11VideoDecoder **ppDecoder) { return This->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppDecoder); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoProcessor(ID3D11VideoDevice1* This,ID3D11VideoProcessorEnumerator *pEnum,UINT RateConversionIndex,ID3D11VideoProcessor **ppVideoProcessor) { return This->lpVtbl->CreateVideoProcessor(This,pEnum,RateConversionIndex,ppVideoProcessor); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateAuthenticatedChannel(ID3D11VideoDevice1* This,D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType,ID3D11AuthenticatedChannel **ppAuthenticatedChannel) { return This->lpVtbl->CreateAuthenticatedChannel(This,ChannelType,ppAuthenticatedChannel); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateCryptoSession(ID3D11VideoDevice1* This,const GUID *pCryptoType,const GUID *pDecoderProfile,const GUID *pKeyExchangeType,ID3D11CryptoSession **ppCryptoSession) { return This->lpVtbl->CreateCryptoSession(This,pCryptoType,pDecoderProfile,pKeyExchangeType,ppCryptoSession); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoDecoderOutputView(ID3D11VideoDevice1* This,ID3D11Resource *pResource,const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoDecoderOutputView **ppVDOVView) { return This->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVDOVView); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoProcessorInputView(ID3D11VideoDevice1* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_INPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorInputView **ppVPIView) { return This->lpVtbl->CreateVideoProcessorInputView(This,pResource,pEnum,pDesc,ppVPIView); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoProcessorOutputView(ID3D11VideoDevice1* This,ID3D11Resource *pResource,ID3D11VideoProcessorEnumerator *pEnum,const D3D11_VIDEO_PROCESSOR_OUTPUT_VIEW_DESC *pDesc,ID3D11VideoProcessorOutputView **ppVPOView) { return This->lpVtbl->CreateVideoProcessorOutputView(This,pResource,pEnum,pDesc,ppVPOView); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CreateVideoProcessorEnumerator(ID3D11VideoDevice1* This,const D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pDesc,ID3D11VideoProcessorEnumerator **ppEnum) { return This->lpVtbl->CreateVideoProcessorEnumerator(This,pDesc,ppEnum); } static FORCEINLINE UINT ID3D11VideoDevice1_GetVideoDecoderProfileCount(ID3D11VideoDevice1* This) { return This->lpVtbl->GetVideoDecoderProfileCount(This); } static FORCEINLINE HRESULT ID3D11VideoDevice1_GetVideoDecoderProfile(ID3D11VideoDevice1* This,UINT Index,GUID *pDecoderProfile) { return This->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CheckVideoDecoderFormat(ID3D11VideoDevice1* This,const GUID *pDecoderProfile,DXGI_FORMAT Format,WINBOOL *pSupported) { return This->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported); } static FORCEINLINE HRESULT ID3D11VideoDevice1_GetVideoDecoderConfigCount(ID3D11VideoDevice1* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT *pCount) { return This->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount); } static FORCEINLINE HRESULT ID3D11VideoDevice1_GetVideoDecoderConfig(ID3D11VideoDevice1* This,const D3D11_VIDEO_DECODER_DESC *pDesc,UINT Index,D3D11_VIDEO_DECODER_CONFIG *pConfig) { return This->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig); } static FORCEINLINE HRESULT ID3D11VideoDevice1_GetContentProtectionCaps(ID3D11VideoDevice1* This,const GUID *pCryptoType,const GUID *pDecoderProfile,D3D11_VIDEO_CONTENT_PROTECTION_CAPS *pCaps) { return This->lpVtbl->GetContentProtectionCaps(This,pCryptoType,pDecoderProfile,pCaps); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CheckCryptoKeyExchange(ID3D11VideoDevice1* This,const GUID *pCryptoType,const GUID *pDecoderProfile,UINT Index,GUID *pKeyExchangeType) { return This->lpVtbl->CheckCryptoKeyExchange(This,pCryptoType,pDecoderProfile,Index,pKeyExchangeType); } static FORCEINLINE HRESULT ID3D11VideoDevice1_SetPrivateData(ID3D11VideoDevice1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoDevice1_SetPrivateDataInterface(ID3D11VideoDevice1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoDevice1 methods ***/ static FORCEINLINE HRESULT ID3D11VideoDevice1_GetCryptoSessionPrivateDataSize(ID3D11VideoDevice1* This,const GUID *crypto_type,const GUID *decoder_profile,const GUID *key_exchange_type,UINT *input_size,UINT *output_size) { return This->lpVtbl->GetCryptoSessionPrivateDataSize(This,crypto_type,decoder_profile,key_exchange_type,input_size,output_size); } static FORCEINLINE HRESULT ID3D11VideoDevice1_GetVideoDecoderCaps(ID3D11VideoDevice1* This,const GUID *decoder_profile,UINT sample_width,UINT sample_height,const DXGI_RATIONAL *framerate,UINT bitrate,const GUID *crypto_type,UINT *decoder_caps) { return This->lpVtbl->GetVideoDecoderCaps(This,decoder_profile,sample_width,sample_height,framerate,bitrate,crypto_type,decoder_caps); } static FORCEINLINE HRESULT ID3D11VideoDevice1_CheckVideoDecoderDownsampling(ID3D11VideoDevice1* This,const D3D11_VIDEO_DECODER_DESC *input_desc,DXGI_COLOR_SPACE_TYPE input_colour_space,const D3D11_VIDEO_DECODER_CONFIG *input_config,const DXGI_RATIONAL *framerate,const D3D11_VIDEO_SAMPLE_DESC *output_desc,WINBOOL *supported,WINBOOL *real_time_hint) { return This->lpVtbl->CheckVideoDecoderDownsampling(This,input_desc,input_colour_space,input_config,framerate,output_desc,supported,real_time_hint); } static FORCEINLINE HRESULT ID3D11VideoDevice1_RecommendVideoDecoderDownsampleParameters(ID3D11VideoDevice1* This,const D3D11_VIDEO_DECODER_DESC *input_desc,DXGI_COLOR_SPACE_TYPE input_colour_space,const D3D11_VIDEO_DECODER_CONFIG *input_config,const DXGI_RATIONAL *framerate,D3D11_VIDEO_SAMPLE_DESC *recommended_output_desc) { return This->lpVtbl->RecommendVideoDecoderDownsampleParameters(This,input_desc,input_colour_space,input_config,framerate,recommended_output_desc); } #endif #endif #endif #endif /* __ID3D11VideoDevice1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoProcessorEnumerator1 interface */ #ifndef __ID3D11VideoProcessorEnumerator1_INTERFACE_DEFINED__ #define __ID3D11VideoProcessorEnumerator1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoProcessorEnumerator1, 0x465217f2, 0x5568, 0x43cf, 0xb5,0xb9, 0xf6,0x1d,0x54,0x53,0x1c,0xa1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("465217f2-5568-43cf-b5b9-f61d54531ca1") ID3D11VideoProcessorEnumerator1 : public ID3D11VideoProcessorEnumerator { virtual HRESULT STDMETHODCALLTYPE CheckVideoProcessorFormatConversion( DXGI_FORMAT input_format, DXGI_COLOR_SPACE_TYPE input_colour_space, DXGI_FORMAT output_format, DXGI_COLOR_SPACE_TYPE output_colour_space, WINBOOL *supported) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoProcessorEnumerator1, 0x465217f2, 0x5568, 0x43cf, 0xb5,0xb9, 0xf6,0x1d,0x54,0x53,0x1c,0xa1) #endif #else typedef struct ID3D11VideoProcessorEnumerator1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoProcessorEnumerator1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoProcessorEnumerator1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoProcessorEnumerator1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoProcessorEnumerator1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoProcessorEnumerator1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoProcessorEnumerator1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoProcessorEnumerator1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoProcessorEnumerator methods ***/ HRESULT (STDMETHODCALLTYPE *GetVideoProcessorContentDesc)( ID3D11VideoProcessorEnumerator1 *This, D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc); HRESULT (STDMETHODCALLTYPE *CheckVideoProcessorFormat)( ID3D11VideoProcessorEnumerator1 *This, DXGI_FORMAT Format, UINT *pFlags); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( ID3D11VideoProcessorEnumerator1 *This, D3D11_VIDEO_PROCESSOR_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorRateConversionCaps)( ID3D11VideoProcessorEnumerator1 *This, UINT TypeIndex, D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCustomRate)( ID3D11VideoProcessorEnumerator1 *This, UINT TypeIndex, UINT CustomRateIndex, D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorFilterRange)( ID3D11VideoProcessorEnumerator1 *This, D3D11_VIDEO_PROCESSOR_FILTER Filter, D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange); /*** ID3D11VideoProcessorEnumerator1 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckVideoProcessorFormatConversion)( ID3D11VideoProcessorEnumerator1 *This, DXGI_FORMAT input_format, DXGI_COLOR_SPACE_TYPE input_colour_space, DXGI_FORMAT output_format, DXGI_COLOR_SPACE_TYPE output_colour_space, WINBOOL *supported); END_INTERFACE } ID3D11VideoProcessorEnumerator1Vtbl; interface ID3D11VideoProcessorEnumerator1 { CONST_VTBL ID3D11VideoProcessorEnumerator1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoProcessorEnumerator1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoProcessorEnumerator1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoProcessorEnumerator1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoProcessorEnumerator1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoProcessorEnumerator1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoProcessorEnumerator1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoProcessorEnumerator1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoProcessorEnumerator methods ***/ #define ID3D11VideoProcessorEnumerator1_GetVideoProcessorContentDesc(This,pContentDesc) (This)->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc) #define ID3D11VideoProcessorEnumerator1_CheckVideoProcessorFormat(This,Format,pFlags) (This)->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags) #define ID3D11VideoProcessorEnumerator1_GetVideoProcessorCaps(This,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,pCaps) #define ID3D11VideoProcessorEnumerator1_GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps) (This)->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps) #define ID3D11VideoProcessorEnumerator1_GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate) (This)->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate) #define ID3D11VideoProcessorEnumerator1_GetVideoProcessorFilterRange(This,Filter,pRange) (This)->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange) /*** ID3D11VideoProcessorEnumerator1 methods ***/ #define ID3D11VideoProcessorEnumerator1_CheckVideoProcessorFormatConversion(This,input_format,input_colour_space,output_format,output_colour_space,supported) (This)->lpVtbl->CheckVideoProcessorFormatConversion(This,input_format,input_colour_space,output_format,output_colour_space,supported) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_QueryInterface(ID3D11VideoProcessorEnumerator1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator1_AddRef(ID3D11VideoProcessorEnumerator1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoProcessorEnumerator1_Release(ID3D11VideoProcessorEnumerator1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoProcessorEnumerator1_GetDevice(ID3D11VideoProcessorEnumerator1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetPrivateData(ID3D11VideoProcessorEnumerator1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_SetPrivateData(ID3D11VideoProcessorEnumerator1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_SetPrivateDataInterface(ID3D11VideoProcessorEnumerator1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoProcessorEnumerator methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetVideoProcessorContentDesc(ID3D11VideoProcessorEnumerator1* This,D3D11_VIDEO_PROCESSOR_CONTENT_DESC *pContentDesc) { return This->lpVtbl->GetVideoProcessorContentDesc(This,pContentDesc); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_CheckVideoProcessorFormat(ID3D11VideoProcessorEnumerator1* This,DXGI_FORMAT Format,UINT *pFlags) { return This->lpVtbl->CheckVideoProcessorFormat(This,Format,pFlags); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetVideoProcessorCaps(ID3D11VideoProcessorEnumerator1* This,D3D11_VIDEO_PROCESSOR_CAPS *pCaps) { return This->lpVtbl->GetVideoProcessorCaps(This,pCaps); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetVideoProcessorRateConversionCaps(ID3D11VideoProcessorEnumerator1* This,UINT TypeIndex,D3D11_VIDEO_PROCESSOR_RATE_CONVERSION_CAPS *pCaps) { return This->lpVtbl->GetVideoProcessorRateConversionCaps(This,TypeIndex,pCaps); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetVideoProcessorCustomRate(ID3D11VideoProcessorEnumerator1* This,UINT TypeIndex,UINT CustomRateIndex,D3D11_VIDEO_PROCESSOR_CUSTOM_RATE *pRate) { return This->lpVtbl->GetVideoProcessorCustomRate(This,TypeIndex,CustomRateIndex,pRate); } static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_GetVideoProcessorFilterRange(ID3D11VideoProcessorEnumerator1* This,D3D11_VIDEO_PROCESSOR_FILTER Filter,D3D11_VIDEO_PROCESSOR_FILTER_RANGE *pRange) { return This->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange); } /*** ID3D11VideoProcessorEnumerator1 methods ***/ static FORCEINLINE HRESULT ID3D11VideoProcessorEnumerator1_CheckVideoProcessorFormatConversion(ID3D11VideoProcessorEnumerator1* This,DXGI_FORMAT input_format,DXGI_COLOR_SPACE_TYPE input_colour_space,DXGI_FORMAT output_format,DXGI_COLOR_SPACE_TYPE output_colour_space,WINBOOL *supported) { return This->lpVtbl->CheckVideoProcessorFormatConversion(This,input_format,input_colour_space,output_format,output_colour_space,supported); } #endif #endif #endif #endif /* __ID3D11VideoProcessorEnumerator1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3DUserDefinedAnnotation interface */ #ifndef __ID3DUserDefinedAnnotation_INTERFACE_DEFINED__ #define __ID3DUserDefinedAnnotation_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3DUserDefinedAnnotation, 0xb2daad8b, 0x03d4, 0x4dbf, 0x95,0xeb, 0x32,0xab,0x4b,0x63,0xd0,0xab); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b2daad8b-03d4-4dbf-95eb-32ab4b63d0ab") ID3DUserDefinedAnnotation : public IUnknown { virtual INT STDMETHODCALLTYPE BeginEvent( LPCWSTR Name) = 0; virtual INT STDMETHODCALLTYPE EndEvent( ) = 0; virtual void STDMETHODCALLTYPE SetMarker( LPCWSTR Name) = 0; virtual WINBOOL STDMETHODCALLTYPE GetStatus( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3DUserDefinedAnnotation, 0xb2daad8b, 0x03d4, 0x4dbf, 0x95,0xeb, 0x32,0xab,0x4b,0x63,0xd0,0xab) #endif #else typedef struct ID3DUserDefinedAnnotationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3DUserDefinedAnnotation *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3DUserDefinedAnnotation *This); ULONG (STDMETHODCALLTYPE *Release)( ID3DUserDefinedAnnotation *This); /*** ID3DUserDefinedAnnotation methods ***/ INT (STDMETHODCALLTYPE *BeginEvent)( ID3DUserDefinedAnnotation *This, LPCWSTR Name); INT (STDMETHODCALLTYPE *EndEvent)( ID3DUserDefinedAnnotation *This); void (STDMETHODCALLTYPE *SetMarker)( ID3DUserDefinedAnnotation *This, LPCWSTR Name); WINBOOL (STDMETHODCALLTYPE *GetStatus)( ID3DUserDefinedAnnotation *This); END_INTERFACE } ID3DUserDefinedAnnotationVtbl; interface ID3DUserDefinedAnnotation { CONST_VTBL ID3DUserDefinedAnnotationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3DUserDefinedAnnotation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3DUserDefinedAnnotation_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3DUserDefinedAnnotation_Release(This) (This)->lpVtbl->Release(This) /*** ID3DUserDefinedAnnotation methods ***/ #define ID3DUserDefinedAnnotation_BeginEvent(This,Name) (This)->lpVtbl->BeginEvent(This,Name) #define ID3DUserDefinedAnnotation_EndEvent(This) (This)->lpVtbl->EndEvent(This) #define ID3DUserDefinedAnnotation_SetMarker(This,Name) (This)->lpVtbl->SetMarker(This,Name) #define ID3DUserDefinedAnnotation_GetStatus(This) (This)->lpVtbl->GetStatus(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3DUserDefinedAnnotation_QueryInterface(ID3DUserDefinedAnnotation* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3DUserDefinedAnnotation_AddRef(ID3DUserDefinedAnnotation* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3DUserDefinedAnnotation_Release(ID3DUserDefinedAnnotation* This) { return This->lpVtbl->Release(This); } /*** ID3DUserDefinedAnnotation methods ***/ static FORCEINLINE INT ID3DUserDefinedAnnotation_BeginEvent(ID3DUserDefinedAnnotation* This,LPCWSTR Name) { return This->lpVtbl->BeginEvent(This,Name); } static FORCEINLINE INT ID3DUserDefinedAnnotation_EndEvent(ID3DUserDefinedAnnotation* This) { return This->lpVtbl->EndEvent(This); } static FORCEINLINE void ID3DUserDefinedAnnotation_SetMarker(ID3DUserDefinedAnnotation* This,LPCWSTR Name) { This->lpVtbl->SetMarker(This,Name); } static FORCEINLINE WINBOOL ID3DUserDefinedAnnotation_GetStatus(ID3DUserDefinedAnnotation* This) { return This->lpVtbl->GetStatus(This); } #endif #endif #endif #endif /* __ID3DUserDefinedAnnotation_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11RasterizerState1 interface */ #ifndef __ID3D11RasterizerState1_INTERFACE_DEFINED__ #define __ID3D11RasterizerState1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11RasterizerState1, 0x1217d7a6, 0x5039, 0x418c, 0xb0,0x42, 0x9c,0xbe,0x25,0x6a,0xfd,0x6e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1217d7a6-5039-418c-b042-9cbe256afd6e") ID3D11RasterizerState1 : public ID3D11RasterizerState { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_RASTERIZER_DESC1 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11RasterizerState1, 0x1217d7a6, 0x5039, 0x418c, 0xb0,0x42, 0x9c,0xbe,0x25,0x6a,0xfd,0x6e) #endif #else typedef struct ID3D11RasterizerState1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11RasterizerState1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11RasterizerState1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11RasterizerState1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11RasterizerState1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11RasterizerState1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11RasterizerState1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11RasterizerState1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11RasterizerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11RasterizerState1 *This, D3D11_RASTERIZER_DESC *pDesc); /*** ID3D11RasterizerState1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11RasterizerState1 *This, D3D11_RASTERIZER_DESC1 *pDesc); END_INTERFACE } ID3D11RasterizerState1Vtbl; interface ID3D11RasterizerState1 { CONST_VTBL ID3D11RasterizerState1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11RasterizerState1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11RasterizerState1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11RasterizerState1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11RasterizerState1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11RasterizerState1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11RasterizerState1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11RasterizerState1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11RasterizerState methods ***/ #define ID3D11RasterizerState1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11RasterizerState1 methods ***/ #define ID3D11RasterizerState1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11RasterizerState1_QueryInterface(ID3D11RasterizerState1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11RasterizerState1_AddRef(ID3D11RasterizerState1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11RasterizerState1_Release(ID3D11RasterizerState1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11RasterizerState1_GetDevice(ID3D11RasterizerState1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11RasterizerState1_GetPrivateData(ID3D11RasterizerState1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState1_SetPrivateData(ID3D11RasterizerState1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState1_SetPrivateDataInterface(ID3D11RasterizerState1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11RasterizerState methods ***/ static FORCEINLINE void ID3D11RasterizerState1_GetDesc(ID3D11RasterizerState1* This,D3D11_RASTERIZER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11RasterizerState1 methods ***/ static FORCEINLINE void ID3D11RasterizerState1_GetDesc1(ID3D11RasterizerState1* This,D3D11_RASTERIZER_DESC1 *pDesc) { This->lpVtbl->GetDesc1(This,pDesc); } #endif #endif #endif #endif /* __ID3D11RasterizerState1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Device1 interface */ #ifndef __ID3D11Device1_INTERFACE_DEFINED__ #define __ID3D11Device1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device1, 0xa04bfb29, 0x08ef, 0x43d6, 0xa4,0x9c, 0xa9,0xbd,0xbd,0xcb,0xe6,0x86); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a04bfb29-08ef-43d6-a49c-a9bdbdcbe686") ID3D11Device1 : public ID3D11Device { virtual void STDMETHODCALLTYPE GetImmediateContext1( ID3D11DeviceContext1 **ppImmediateContext) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext1( UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext) = 0; virtual HRESULT STDMETHODCALLTYPE CreateBlendState1( const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState1( const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDeviceContextState( UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedResource1( HANDLE hResource, REFIID returnedInterface, void **ppResource) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedResourceByName( LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device1, 0xa04bfb29, 0x08ef, 0x43d6, 0xa4,0x9c, 0xa9,0xbd,0xbd,0xcb,0xe6,0x86) #endif #else typedef struct ID3D11Device1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device1 *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device1 *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device1 *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device1 *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device1 *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device1 *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device1 *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device1 *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device1 *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device1 *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device1 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device1 *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device1 *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device1 *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device1 *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device1 *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device1 *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device1 *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device1 *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device1 *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device1 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device1 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device1 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device1 *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device1 *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device1 *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device1 *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device1 *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device1 *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device1 *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device1 *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device1 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device1 *This); /*** ID3D11Device1 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext1)( ID3D11Device1 *This, ID3D11DeviceContext1 **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)( ID3D11Device1 *This, UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D11Device1 *This, const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)( ID3D11Device1 *This, const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)( ID3D11Device1 *This, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState); HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)( ID3D11Device1 *This, HANDLE hResource, REFIID returnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)( ID3D11Device1 *This, LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource); END_INTERFACE } ID3D11Device1Vtbl; interface ID3D11Device1 { CONST_VTBL ID3D11Device1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device1_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device1_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device1_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device1_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device1_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device1_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device1_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device1_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device1_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device1_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device1_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device1_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device1_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device1_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device1_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device1_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device1_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device1_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device1_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device1_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device1_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device1_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device1_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device1_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device1_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device1_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device1_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device1_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device1_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device1_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device1_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device1_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device1_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device1_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device1_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device1_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device1_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) /*** ID3D11Device1 methods ***/ #define ID3D11Device1_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext) #define ID3D11Device1_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext) #define ID3D11Device1_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D11Device1_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device1_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) #define ID3D11Device1_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource) #define ID3D11Device1_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device1_QueryInterface(ID3D11Device1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device1_AddRef(ID3D11Device1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device1_Release(ID3D11Device1* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device1_CreateBuffer(ID3D11Device1* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device1_CreateTexture1D(ID3D11Device1* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device1_CreateTexture2D(ID3D11Device1* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device1_CreateTexture3D(ID3D11Device1* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device1_CreateShaderResourceView(ID3D11Device1* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device1_CreateUnorderedAccessView(ID3D11Device1* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device1_CreateRenderTargetView(ID3D11Device1* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device1_CreateDepthStencilView(ID3D11Device1* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device1_CreateInputLayout(ID3D11Device1* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device1_CreateVertexShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateGeometryShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateGeometryShaderWithStreamOutput(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device1_CreatePixelShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateHullShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateDomainShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateComputeShader(ID3D11Device1* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device1_CreateClassLinkage(ID3D11Device1* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device1_CreateBlendState(ID3D11Device1* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device1_CreateDepthStencilState(ID3D11Device1* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device1_CreateRasterizerState(ID3D11Device1* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device1_CreateSamplerState(ID3D11Device1* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device1_CreateQuery(ID3D11Device1* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device1_CreatePredicate(ID3D11Device1* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device1_CreateCounter(ID3D11Device1* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device1_CreateDeferredContext(ID3D11Device1* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device1_OpenSharedResource(ID3D11Device1* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device1_CheckFormatSupport(ID3D11Device1* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device1_CheckMultisampleQualityLevels(ID3D11Device1* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device1_CheckCounterInfo(ID3D11Device1* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device1_CheckCounter(ID3D11Device1* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device1_CheckFeatureSupport(ID3D11Device1* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device1_GetPrivateData(ID3D11Device1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device1_SetPrivateData(ID3D11Device1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device1_SetPrivateDataInterface(ID3D11Device1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device1_GetFeatureLevel(ID3D11Device1* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device1_GetCreationFlags(ID3D11Device1* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device1_GetDeviceRemovedReason(ID3D11Device1* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device1_GetImmediateContext(ID3D11Device1* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device1_SetExceptionMode(ID3D11Device1* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device1_GetExceptionMode(ID3D11Device1* This) { return This->lpVtbl->GetExceptionMode(This); } /*** ID3D11Device1 methods ***/ static FORCEINLINE void ID3D11Device1_GetImmediateContext1(ID3D11Device1* This,ID3D11DeviceContext1 **ppImmediateContext) { This->lpVtbl->GetImmediateContext1(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device1_CreateDeferredContext1(ID3D11Device1* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device1_CreateBlendState1(ID3D11Device1* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device1_CreateRasterizerState1(ID3D11Device1* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device1_CreateDeviceContextState(ID3D11Device1* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) { return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState); } static FORCEINLINE HRESULT ID3D11Device1_OpenSharedResource1(ID3D11Device1* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device1_OpenSharedResourceByName(ID3D11Device1* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource); } #endif #endif #endif #endif /* __ID3D11Device1_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11_1_h__ */ dxvk-0~git20220822.9df86f2/d3d11_2.h000066400000000000000000003717151430055512200162230ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11_2.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11_2_h__ #define __d3d11_2_h__ /* Forward declarations */ #ifndef __ID3D11DeviceContext2_FWD_DEFINED__ #define __ID3D11DeviceContext2_FWD_DEFINED__ typedef interface ID3D11DeviceContext2 ID3D11DeviceContext2; #ifdef __cplusplus interface ID3D11DeviceContext2; #endif /* __cplusplus */ #endif #ifndef __ID3D11Device2_FWD_DEFINED__ #define __ID3D11Device2_FWD_DEFINED__ typedef interface ID3D11Device2 ID3D11Device2; #ifdef __cplusplus interface ID3D11Device2; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif #define D3D11_PACKED_TILE (0xffffffff) typedef enum D3D11_TILE_MAPPING_FLAG { D3D11_TILE_MAPPING_NO_OVERWRITE = 0x1 } D3D11_TILE_MAPPING_FLAG; typedef enum D3D11_TILE_RANGE_FLAG { D3D11_TILE_RANGE_NULL = 0x1, D3D11_TILE_RANGE_SKIP = 0x2, D3D11_TILE_RANGE_REUSE_SINGLE_TILE = 0x4 } D3D11_TILE_RANGE_FLAG; typedef enum D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG { D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_TILED_RESOURCE = 0x1 } D3D11_CHECK_MULTISAMPLE_QUALITY_LEVELS_FLAG; typedef enum D3D11_TILE_COPY_FLAG { D3D11_TILE_COPY_NO_OVERWRITE = 0x1, D3D11_TILE_COPY_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 0x2, D3D11_TILE_COPY_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 0x4 } D3D11_TILE_COPY_FLAG; typedef struct D3D11_TILED_RESOURCE_COORDINATE { UINT X; UINT Y; UINT Z; UINT Subresource; } D3D11_TILED_RESOURCE_COORDINATE; typedef struct D3D11_TILE_REGION_SIZE { UINT NumTiles; WINBOOL bUseBox; UINT Width; UINT16 Height; UINT16 Depth; } D3D11_TILE_REGION_SIZE; typedef struct D3D11_SUBRESOURCE_TILING { UINT WidthInTiles; UINT16 HeightInTiles; UINT16 DepthInTiles; UINT StartTileIndexInOverallResource; } D3D11_SUBRESOURCE_TILING; typedef struct D3D11_TILE_SHAPE { UINT WidthInTexels; UINT HeightInTexels; UINT DepthInTexels; } D3D11_TILE_SHAPE; typedef struct D3D11_PACKED_MIP_DESC { UINT8 NumStandardMips; UINT8 NumPackedMips; UINT NumTilesForPackedMips; UINT StartTileIndexInOverallResource; } D3D11_PACKED_MIP_DESC; /***************************************************************************** * ID3D11DeviceContext2 interface */ #ifndef __ID3D11DeviceContext2_INTERFACE_DEFINED__ #define __ID3D11DeviceContext2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("420d5b32-b90c-4da4-bef0-359f6a24a83a") ID3D11DeviceContext2 : public ID3D11DeviceContext1 { virtual HRESULT STDMETHODCALLTYPE UpdateTileMappings( ID3D11Resource *resource, UINT region_count, const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D11_TILE_REGION_SIZE *region_sizes, ID3D11Buffer *pool, UINT range_count, const UINT *range_flags, const UINT *pool_start_offsets, const UINT *range_tile_counts, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE CopyTileMappings( ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, ID3D11Resource *src_resource, const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate, const D3D11_TILE_REGION_SIZE *region_size, UINT flags) = 0; virtual void STDMETHODCALLTYPE CopyTiles( ID3D11Resource *resource, const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate, const D3D11_TILE_REGION_SIZE *size, ID3D11Buffer *buffer, UINT64 start_offset, UINT flags) = 0; virtual void STDMETHODCALLTYPE UpdateTiles( ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, const D3D11_TILE_REGION_SIZE *dst_region_size, const void *src_data, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeTilePool( ID3D11Buffer *pool, UINT64 size) = 0; virtual void STDMETHODCALLTYPE TiledResourceBarrier( ID3D11DeviceChild *before_barrier, ID3D11DeviceChild *after_barrier) = 0; virtual WINBOOL STDMETHODCALLTYPE IsAnnotationEnabled( ) = 0; virtual void STDMETHODCALLTYPE SetMarkerInt( const WCHAR *label, int data) = 0; virtual void STDMETHODCALLTYPE BeginEventInt( const WCHAR *label, int data) = 0; virtual void STDMETHODCALLTYPE EndEvent( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceContext2, 0x420d5b32, 0xb90c, 0x4da4, 0xbe,0xf0, 0x35,0x9f,0x6a,0x24,0xa8,0x3a) #endif #else typedef struct ID3D11DeviceContext2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceContext2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceContext2 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceContext2 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceContext2 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceContext2 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceContext2 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceContext2 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DeviceContext methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D11DeviceContext2 *This, ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D11DeviceContext2 *This, ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D11DeviceContext2 *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D11DeviceContext2 *This, UINT VertexCount, UINT StartVertexLocation); HRESULT (STDMETHODCALLTYPE *Map)( ID3D11DeviceContext2 *This, ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); void (STDMETHODCALLTYPE *Unmap)( ID3D11DeviceContext2 *This, ID3D11Resource *pResource, UINT Subresource); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D11DeviceContext2 *This, ID3D11InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D11DeviceContext2 *This, ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D11DeviceContext2 *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D11DeviceContext2 *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D11DeviceContext2 *This, ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D11DeviceContext2 *This, D3D11_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *Begin)( ID3D11DeviceContext2 *This, ID3D11Asynchronous *pAsync); void (STDMETHODCALLTYPE *End)( ID3D11DeviceContext2 *This, ID3D11Asynchronous *pAsync); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D11DeviceContext2 *This, ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags); void (STDMETHODCALLTYPE *SetPredication)( ID3D11DeviceContext2 *This, ID3D11Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D11DeviceContext2 *This, UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext2 *This, UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D11DeviceContext2 *This, ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D11DeviceContext2 *This, ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D11DeviceContext2 *This, UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D11DeviceContext2 *This); void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)( ID3D11DeviceContext2 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *DrawInstancedIndirect)( ID3D11DeviceContext2 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *Dispatch)( ID3D11DeviceContext2 *This, UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ); void (STDMETHODCALLTYPE *DispatchIndirect)( ID3D11DeviceContext2 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *RSSetState)( ID3D11DeviceContext2 *This, ID3D11RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D11DeviceContext2 *This, UINT NumViewports, const D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D11DeviceContext2 *This, UINT NumRects, const D3D11_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *CopyStructureCount)( ID3D11DeviceContext2 *This, ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D11DeviceContext2 *This, ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D11DeviceContext2 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D11DeviceContext2 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D11DeviceContext2 *This, ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D11DeviceContext2 *This, ID3D11ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *SetResourceMinLOD)( ID3D11DeviceContext2 *This, ID3D11Resource *pResource, FLOAT MinLOD); FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)( ID3D11DeviceContext2 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *ExecuteCommandList)( ID3D11DeviceContext2 *This, ID3D11CommandList *pCommandList, WINBOOL RestoreContextState); void (STDMETHODCALLTYPE *HSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *HSSetShader)( ID3D11DeviceContext2 *This, ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *HSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *HSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *DSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *DSSetShader)( ID3D11DeviceContext2 *This, ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *DSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *CSSetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *CSSetShader)( ID3D11DeviceContext2 *This, ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *CSSetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *CSSetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D11DeviceContext2 *This, ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D11DeviceContext2 *This, ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D11DeviceContext2 *This, ID3D11InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D11DeviceContext2 *This, ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D11DeviceContext2 *This, ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D11DeviceContext2 *This, D3D11_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D11DeviceContext2 *This, ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D11DeviceContext2 *This, UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext2 *This, UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D11DeviceContext2 *This, ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D11DeviceContext2 *This, ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D11DeviceContext2 *This, UINT NumBuffers, ID3D11Buffer **ppSOTargets); void (STDMETHODCALLTYPE *RSGetState)( ID3D11DeviceContext2 *This, ID3D11RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D11DeviceContext2 *This, UINT *pNumViewports, D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D11DeviceContext2 *This, UINT *pNumRects, D3D11_RECT *pRects); void (STDMETHODCALLTYPE *HSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *HSGetShader)( ID3D11DeviceContext2 *This, ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *HSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *HSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *DSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *DSGetShader)( ID3D11DeviceContext2 *This, ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *DSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *DSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *CSGetShaderResources)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *CSGetShader)( ID3D11DeviceContext2 *This, ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *CSGetSamplers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *CSGetConstantBuffers)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *ClearState)( ID3D11DeviceContext2 *This); void (STDMETHODCALLTYPE *Flush)( ID3D11DeviceContext2 *This); D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)( ID3D11DeviceContext2 *This); UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11DeviceContext2 *This); HRESULT (STDMETHODCALLTYPE *FinishCommandList)( ID3D11DeviceContext2 *This, WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList); /*** ID3D11DeviceContext1 methods ***/ void (STDMETHODCALLTYPE *CopySubresourceRegion1)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox, UINT CopyFlags); void (STDMETHODCALLTYPE *UpdateSubresource1)( ID3D11DeviceContext2 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch, UINT CopyFlags); void (STDMETHODCALLTYPE *DiscardResource)( ID3D11DeviceContext2 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *DiscardView)( ID3D11DeviceContext2 *This, ID3D11View *pResourceView); void (STDMETHODCALLTYPE *VSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *HSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *DSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *GSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *PSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *CSSetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *VSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *HSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *DSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *GSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *PSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *CSGetConstantBuffers1)( ID3D11DeviceContext2 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *SwapDeviceContextState)( ID3D11DeviceContext2 *This, ID3DDeviceContextState *pState, ID3DDeviceContextState **ppPreviousState); void (STDMETHODCALLTYPE *ClearView)( ID3D11DeviceContext2 *This, ID3D11View *pView, const FLOAT Color[4], const D3D11_RECT *pRect, UINT NumRects); void (STDMETHODCALLTYPE *DiscardView1)( ID3D11DeviceContext2 *This, ID3D11View *pResourceView, const D3D11_RECT *pRects, UINT NumRects); /*** ID3D11DeviceContext2 methods ***/ HRESULT (STDMETHODCALLTYPE *UpdateTileMappings)( ID3D11DeviceContext2 *This, ID3D11Resource *resource, UINT region_count, const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D11_TILE_REGION_SIZE *region_sizes, ID3D11Buffer *pool, UINT range_count, const UINT *range_flags, const UINT *pool_start_offsets, const UINT *range_tile_counts, UINT flags); HRESULT (STDMETHODCALLTYPE *CopyTileMappings)( ID3D11DeviceContext2 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, ID3D11Resource *src_resource, const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate, const D3D11_TILE_REGION_SIZE *region_size, UINT flags); void (STDMETHODCALLTYPE *CopyTiles)( ID3D11DeviceContext2 *This, ID3D11Resource *resource, const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate, const D3D11_TILE_REGION_SIZE *size, ID3D11Buffer *buffer, UINT64 start_offset, UINT flags); void (STDMETHODCALLTYPE *UpdateTiles)( ID3D11DeviceContext2 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, const D3D11_TILE_REGION_SIZE *dst_region_size, const void *src_data, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTilePool)( ID3D11DeviceContext2 *This, ID3D11Buffer *pool, UINT64 size); void (STDMETHODCALLTYPE *TiledResourceBarrier)( ID3D11DeviceContext2 *This, ID3D11DeviceChild *before_barrier, ID3D11DeviceChild *after_barrier); WINBOOL (STDMETHODCALLTYPE *IsAnnotationEnabled)( ID3D11DeviceContext2 *This); void (STDMETHODCALLTYPE *SetMarkerInt)( ID3D11DeviceContext2 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *BeginEventInt)( ID3D11DeviceContext2 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *EndEvent)( ID3D11DeviceContext2 *This); END_INTERFACE } ID3D11DeviceContext2Vtbl; interface ID3D11DeviceContext2 { CONST_VTBL ID3D11DeviceContext2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceContext2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceContext2_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceContext2_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceContext2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceContext2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceContext2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DeviceContext methods ***/ #define ID3D11DeviceContext2_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D11DeviceContext2_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D11DeviceContext2_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) #define ID3D11DeviceContext2_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource) #define ID3D11DeviceContext2_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D11DeviceContext2_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext2_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext2_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext2_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext2_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D11DeviceContext2_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync) #define ID3D11DeviceContext2_End(This,pAsync) (This)->lpVtbl->End(This,pAsync) #define ID3D11DeviceContext2_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags) #define ID3D11DeviceContext2_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D11DeviceContext2_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext2_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D11DeviceContext2_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D11DeviceContext2_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D11DeviceContext2_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D11DeviceContext2_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext2_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext2_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) #define ID3D11DeviceContext2_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext2_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D11DeviceContext2_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D11DeviceContext2_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D11DeviceContext2_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D11DeviceContext2_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D11DeviceContext2_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D11DeviceContext2_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) #define ID3D11DeviceContext2_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D11DeviceContext2_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext2_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D11DeviceContext2_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D11DeviceContext2_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD) #define ID3D11DeviceContext2_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource) #define ID3D11DeviceContext2_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D11DeviceContext2_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState) #define ID3D11DeviceContext2_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext2_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext2_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D11DeviceContext2_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext2_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext2_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D11DeviceContext2_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D11DeviceContext2_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext2_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D11DeviceContext2_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D11DeviceContext2_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets) #define ID3D11DeviceContext2_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D11DeviceContext2_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports) #define ID3D11DeviceContext2_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects) #define ID3D11DeviceContext2_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext2_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext2_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext2_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext2_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext2_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D11DeviceContext2_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D11DeviceContext2_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D11DeviceContext2_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #define ID3D11DeviceContext2_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList) /*** ID3D11DeviceContext1 methods ***/ #define ID3D11DeviceContext2_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) #define ID3D11DeviceContext2_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) #define ID3D11DeviceContext2_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource) #define ID3D11DeviceContext2_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView) #define ID3D11DeviceContext2_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext2_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState) #define ID3D11DeviceContext2_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects) #define ID3D11DeviceContext2_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects) /*** ID3D11DeviceContext2 methods ***/ #define ID3D11DeviceContext2_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) #define ID3D11DeviceContext2_CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) #define ID3D11DeviceContext2_CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) (This)->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) #define ID3D11DeviceContext2_UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) (This)->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) #define ID3D11DeviceContext2_ResizeTilePool(This,pool,size) (This)->lpVtbl->ResizeTilePool(This,pool,size) #define ID3D11DeviceContext2_TiledResourceBarrier(This,before_barrier,after_barrier) (This)->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier) #define ID3D11DeviceContext2_IsAnnotationEnabled(This) (This)->lpVtbl->IsAnnotationEnabled(This) #define ID3D11DeviceContext2_SetMarkerInt(This,label,data) (This)->lpVtbl->SetMarkerInt(This,label,data) #define ID3D11DeviceContext2_BeginEventInt(This,label,data) (This)->lpVtbl->BeginEventInt(This,label,data) #define ID3D11DeviceContext2_EndEvent(This) (This)->lpVtbl->EndEvent(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext2_QueryInterface(ID3D11DeviceContext2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceContext2_AddRef(ID3D11DeviceContext2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceContext2_Release(ID3D11DeviceContext2* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceContext2_GetDevice(ID3D11DeviceContext2* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceContext2_GetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateData(ID3D11DeviceContext2* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext2_SetPrivateDataInterface(ID3D11DeviceContext2* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DeviceContext methods ***/ static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_PSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_PSSetShader(ID3D11DeviceContext2* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_PSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_VSSetShader(ID3D11DeviceContext2* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_DrawIndexed(ID3D11DeviceContext2* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D11DeviceContext2_Draw(ID3D11DeviceContext2* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE HRESULT ID3D11DeviceContext2_Map(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) { return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource); } static FORCEINLINE void ID3D11DeviceContext2_Unmap(ID3D11DeviceContext2* This,ID3D11Resource *pResource,UINT Subresource) { This->lpVtbl->Unmap(This,pResource,Subresource); } static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_IASetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D11DeviceContext2_IASetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext2_IASetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstanced(ID3D11DeviceContext2* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext2_DrawInstanced(ID3D11DeviceContext2* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_GSSetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_IASetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D11DeviceContext2_VSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_VSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_Begin(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->Begin(This,pAsync); } static FORCEINLINE void ID3D11DeviceContext2_End(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->End(This,pAsync); } static FORCEINLINE HRESULT ID3D11DeviceContext2_GetData(ID3D11DeviceContext2* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags); } static FORCEINLINE void ID3D11DeviceContext2_SetPredication(ID3D11DeviceContext2* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D11DeviceContext2_GSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_GSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext2_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext2_OMSetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D11DeviceContext2_OMSetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D11DeviceContext2_SOSetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D11DeviceContext2_DrawAuto(ID3D11DeviceContext2* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D11DeviceContext2_DrawIndexedInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext2_DrawInstancedIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext2_Dispatch(ID3D11DeviceContext2* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) { This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ); } static FORCEINLINE void ID3D11DeviceContext2_DispatchIndirect(ID3D11DeviceContext2* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext2_RSSetState(ID3D11DeviceContext2* This,ID3D11RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D11DeviceContext2_RSSetViewports(ID3D11DeviceContext2* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext2_RSSetScissorRects(ID3D11DeviceContext2* This,UINT NumRects,const D3D11_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D11DeviceContext2_CopyResource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D11DeviceContext2_CopyStructureCount(ID3D11DeviceContext2* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) { This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView); } static FORCEINLINE void ID3D11DeviceContext2_ClearRenderTargetView(ID3D11DeviceContext2* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewUint(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext2_ClearUnorderedAccessViewFloat(ID3D11DeviceContext2* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext2_ClearDepthStencilView(ID3D11DeviceContext2* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D11DeviceContext2_GenerateMips(ID3D11DeviceContext2* This,ID3D11ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D11DeviceContext2_SetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource,FLOAT MinLOD) { This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD); } static FORCEINLINE FLOAT ID3D11DeviceContext2_GetResourceMinLOD(ID3D11DeviceContext2* This,ID3D11Resource *pResource) { return This->lpVtbl->GetResourceMinLOD(This,pResource); } static FORCEINLINE void ID3D11DeviceContext2_ResolveSubresource(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D11DeviceContext2_ExecuteCommandList(ID3D11DeviceContext2* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) { This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState); } static FORCEINLINE void ID3D11DeviceContext2_HSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_HSSetShader(ID3D11DeviceContext2* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_HSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_DSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_DSSetShader(ID3D11DeviceContext2* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_DSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_CSSetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_CSSetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext2_CSSetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_CSSetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_PSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_PSGetShader(ID3D11DeviceContext2* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_PSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_VSGetShader(ID3D11DeviceContext2* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_IAGetInputLayout(ID3D11DeviceContext2* This,ID3D11InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D11DeviceContext2_IAGetVertexBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext2_IAGetIndexBuffer(ID3D11DeviceContext2* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_GSGetShader(ID3D11DeviceContext2* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_IAGetPrimitiveTopology(ID3D11DeviceContext2* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D11DeviceContext2_VSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_VSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_GetPredication(ID3D11DeviceContext2* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D11DeviceContext2_GSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_GSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargets(ID3D11DeviceContext2* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext2_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext2* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext2_OMGetBlendState(ID3D11DeviceContext2* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D11DeviceContext2_OMGetDepthStencilState(ID3D11DeviceContext2* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D11DeviceContext2_SOGetTargets(ID3D11DeviceContext2* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets); } static FORCEINLINE void ID3D11DeviceContext2_RSGetState(ID3D11DeviceContext2* This,ID3D11RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D11DeviceContext2_RSGetViewports(ID3D11DeviceContext2* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext2_RSGetScissorRects(ID3D11DeviceContext2* This,UINT *pNumRects,D3D11_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext2_HSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_HSGetShader(ID3D11DeviceContext2* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_HSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_DSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_DSGetShader(ID3D11DeviceContext2* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_DSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_CSGetShaderResources(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext2_CSGetUnorderedAccessViews(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext2_CSGetShader(ID3D11DeviceContext2* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext2_CSGetSamplers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext2_ClearState(ID3D11DeviceContext2* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D11DeviceContext2_Flush(ID3D11DeviceContext2* This) { This->lpVtbl->Flush(This); } static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext2_GetType(ID3D11DeviceContext2* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE UINT ID3D11DeviceContext2_GetContextFlags(ID3D11DeviceContext2* This) { return This->lpVtbl->GetContextFlags(This); } static FORCEINLINE HRESULT ID3D11DeviceContext2_FinishCommandList(ID3D11DeviceContext2* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) { return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList); } /*** ID3D11DeviceContext1 methods ***/ static FORCEINLINE void ID3D11DeviceContext2_CopySubresourceRegion1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) { This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext2_UpdateSubresource1(ID3D11DeviceContext2* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) { This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext2_DiscardResource(ID3D11DeviceContext2* This,ID3D11Resource *pResource) { This->lpVtbl->DiscardResource(This,pResource); } static FORCEINLINE void ID3D11DeviceContext2_DiscardView(ID3D11DeviceContext2* This,ID3D11View *pResourceView) { This->lpVtbl->DiscardView(This,pResourceView); } static FORCEINLINE void ID3D11DeviceContext2_VSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_HSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_DSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_GSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_PSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_CSSetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_VSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_HSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_DSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_GSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_PSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_CSGetConstantBuffers1(ID3D11DeviceContext2* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext2_SwapDeviceContextState(ID3D11DeviceContext2* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) { This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState); } static FORCEINLINE void ID3D11DeviceContext2_ClearView(ID3D11DeviceContext2* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) { This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects); } static FORCEINLINE void ID3D11DeviceContext2_DiscardView1(ID3D11DeviceContext2* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) { This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects); } /*** ID3D11DeviceContext2 methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext2_UpdateTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *resource,UINT region_count,const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D11_TILE_REGION_SIZE *region_sizes,ID3D11Buffer *pool,UINT range_count,const UINT *range_flags,const UINT *pool_start_offsets,const UINT *range_tile_counts,UINT flags) { return This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext2_CopyTileMappings(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,ID3D11Resource *src_resource,const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,const D3D11_TILE_REGION_SIZE *region_size,UINT flags) { return This->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags); } static FORCEINLINE void ID3D11DeviceContext2_CopyTiles(ID3D11DeviceContext2* This,ID3D11Resource *resource,const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,const D3D11_TILE_REGION_SIZE *size,ID3D11Buffer *buffer,UINT64 start_offset,UINT flags) { This->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags); } static FORCEINLINE void ID3D11DeviceContext2_UpdateTiles(ID3D11DeviceContext2* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,const D3D11_TILE_REGION_SIZE *dst_region_size,const void *src_data,UINT flags) { This->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext2_ResizeTilePool(ID3D11DeviceContext2* This,ID3D11Buffer *pool,UINT64 size) { return This->lpVtbl->ResizeTilePool(This,pool,size); } static FORCEINLINE void ID3D11DeviceContext2_TiledResourceBarrier(ID3D11DeviceContext2* This,ID3D11DeviceChild *before_barrier,ID3D11DeviceChild *after_barrier) { This->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier); } static FORCEINLINE WINBOOL ID3D11DeviceContext2_IsAnnotationEnabled(ID3D11DeviceContext2* This) { return This->lpVtbl->IsAnnotationEnabled(This); } static FORCEINLINE void ID3D11DeviceContext2_SetMarkerInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) { This->lpVtbl->SetMarkerInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext2_BeginEventInt(ID3D11DeviceContext2* This,const WCHAR *label,int data) { This->lpVtbl->BeginEventInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext2_EndEvent(ID3D11DeviceContext2* This) { This->lpVtbl->EndEvent(This); } #endif #endif #endif #endif /* __ID3D11DeviceContext2_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Device2 interface */ #ifndef __ID3D11Device2_INTERFACE_DEFINED__ #define __ID3D11Device2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9d06dffa-d1e5-4d07-83a8-1bb123f2f841") ID3D11Device2 : public ID3D11Device1 { virtual void STDMETHODCALLTYPE GetImmediateContext2( ID3D11DeviceContext2 **context) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext2( UINT flags, ID3D11DeviceContext2 **context) = 0; virtual void STDMETHODCALLTYPE GetResourceTiling( ID3D11Resource *resource, UINT *tile_count, D3D11_PACKED_MIP_DESC *mip_desc, D3D11_TILE_SHAPE *tile_shape, UINT *subresource_tiling_count, UINT first_subresource_tiling, D3D11_SUBRESOURCE_TILING *subresource_tiling) = 0; virtual HRESULT STDMETHODCALLTYPE CheckMultisampleQualityLevels1( DXGI_FORMAT format, UINT sample_count, UINT flags, UINT *quality_level_count) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device2, 0x9d06dffa, 0xd1e5, 0x4d07, 0x83,0xa8, 0x1b,0xb1,0x23,0xf2,0xf8,0x41) #endif #else typedef struct ID3D11Device2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device2 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device2 *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device2 *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device2 *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device2 *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device2 *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device2 *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device2 *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device2 *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device2 *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device2 *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device2 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device2 *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device2 *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device2 *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device2 *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device2 *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device2 *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device2 *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device2 *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device2 *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device2 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device2 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device2 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device2 *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device2 *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device2 *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device2 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device2 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device2 *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device2 *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device2 *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device2 *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device2 *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device2 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device2 *This); /*** ID3D11Device1 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext1)( ID3D11Device2 *This, ID3D11DeviceContext1 **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)( ID3D11Device2 *This, UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D11Device2 *This, const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)( ID3D11Device2 *This, const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)( ID3D11Device2 *This, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState); HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)( ID3D11Device2 *This, HANDLE hResource, REFIID returnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)( ID3D11Device2 *This, LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource); /*** ID3D11Device2 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext2)( ID3D11Device2 *This, ID3D11DeviceContext2 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)( ID3D11Device2 *This, UINT flags, ID3D11DeviceContext2 **context); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D11Device2 *This, ID3D11Resource *resource, UINT *tile_count, D3D11_PACKED_MIP_DESC *mip_desc, D3D11_TILE_SHAPE *tile_shape, UINT *subresource_tiling_count, UINT first_subresource_tiling, D3D11_SUBRESOURCE_TILING *subresource_tiling); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)( ID3D11Device2 *This, DXGI_FORMAT format, UINT sample_count, UINT flags, UINT *quality_level_count); END_INTERFACE } ID3D11Device2Vtbl; interface ID3D11Device2 { CONST_VTBL ID3D11Device2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device2_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device2_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device2_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device2_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device2_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device2_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device2_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device2_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device2_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device2_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device2_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device2_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device2_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device2_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device2_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device2_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device2_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device2_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device2_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device2_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device2_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device2_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device2_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device2_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device2_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device2_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device2_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device2_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device2_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device2_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device2_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device2_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device2_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device2_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device2_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device2_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device2_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device2_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) /*** ID3D11Device1 methods ***/ #define ID3D11Device2_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext) #define ID3D11Device2_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext) #define ID3D11Device2_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D11Device2_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device2_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) #define ID3D11Device2_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource) #define ID3D11Device2_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) /*** ID3D11Device2 methods ***/ #define ID3D11Device2_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context) #define ID3D11Device2_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context) #define ID3D11Device2_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) #define ID3D11Device2_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device2_QueryInterface(ID3D11Device2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device2_AddRef(ID3D11Device2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device2_Release(ID3D11Device2* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device2_CreateBuffer(ID3D11Device2* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device2_CreateTexture1D(ID3D11Device2* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device2_CreateTexture2D(ID3D11Device2* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device2_CreateTexture3D(ID3D11Device2* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device2_CreateShaderResourceView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device2_CreateUnorderedAccessView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device2_CreateRenderTargetView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilView(ID3D11Device2* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device2_CreateInputLayout(ID3D11Device2* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device2_CreateVertexShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateGeometryShaderWithStreamOutput(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device2_CreatePixelShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateHullShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateDomainShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateComputeShader(ID3D11Device2* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device2_CreateClassLinkage(ID3D11Device2* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState(ID3D11Device2* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device2_CreateDepthStencilState(ID3D11Device2* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState(ID3D11Device2* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device2_CreateSamplerState(ID3D11Device2* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device2_CreateQuery(ID3D11Device2* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device2_CreatePredicate(ID3D11Device2* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device2_CreateCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource(ID3D11Device2* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device2_CheckFormatSupport(ID3D11Device2* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels(ID3D11Device2* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device2_CheckCounterInfo(ID3D11Device2* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device2_CheckCounter(ID3D11Device2* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device2_CheckFeatureSupport(ID3D11Device2* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device2_GetPrivateData(ID3D11Device2* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device2_SetPrivateData(ID3D11Device2* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device2_SetPrivateDataInterface(ID3D11Device2* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device2_GetFeatureLevel(ID3D11Device2* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device2_GetCreationFlags(ID3D11Device2* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device2_GetDeviceRemovedReason(ID3D11Device2* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device2_GetImmediateContext(ID3D11Device2* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device2_SetExceptionMode(ID3D11Device2* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device2_GetExceptionMode(ID3D11Device2* This) { return This->lpVtbl->GetExceptionMode(This); } /*** ID3D11Device1 methods ***/ static FORCEINLINE void ID3D11Device2_GetImmediateContext1(ID3D11Device2* This,ID3D11DeviceContext1 **ppImmediateContext) { This->lpVtbl->GetImmediateContext1(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext1(ID3D11Device2* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device2_CreateBlendState1(ID3D11Device2* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device2_CreateRasterizerState1(ID3D11Device2* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device2_CreateDeviceContextState(ID3D11Device2* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) { return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState); } static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResource1(ID3D11Device2* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device2_OpenSharedResourceByName(ID3D11Device2* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource); } /*** ID3D11Device2 methods ***/ static FORCEINLINE void ID3D11Device2_GetImmediateContext2(ID3D11Device2* This,ID3D11DeviceContext2 **context) { This->lpVtbl->GetImmediateContext2(This,context); } static FORCEINLINE HRESULT ID3D11Device2_CreateDeferredContext2(ID3D11Device2* This,UINT flags,ID3D11DeviceContext2 **context) { return This->lpVtbl->CreateDeferredContext2(This,flags,context); } static FORCEINLINE void ID3D11Device2_GetResourceTiling(ID3D11Device2* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) { This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling); } static FORCEINLINE HRESULT ID3D11Device2_CheckMultisampleQualityLevels1(ID3D11Device2* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) { return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count); } #endif #endif #endif #endif /* __ID3D11Device2_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11_2_h__ */ dxvk-0~git20220822.9df86f2/d3d11_3.h000066400000000000000000010363061430055512200162170ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11_3.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11_3_h__ #define __d3d11_3_h__ /* Forward declarations */ #ifndef __ID3D11Texture2D1_FWD_DEFINED__ #define __ID3D11Texture2D1_FWD_DEFINED__ typedef interface ID3D11Texture2D1 ID3D11Texture2D1; #ifdef __cplusplus interface ID3D11Texture2D1; #endif /* __cplusplus */ #endif #ifndef __ID3D11Texture3D1_FWD_DEFINED__ #define __ID3D11Texture3D1_FWD_DEFINED__ typedef interface ID3D11Texture3D1 ID3D11Texture3D1; #ifdef __cplusplus interface ID3D11Texture3D1; #endif /* __cplusplus */ #endif #ifndef __ID3D11RasterizerState2_FWD_DEFINED__ #define __ID3D11RasterizerState2_FWD_DEFINED__ typedef interface ID3D11RasterizerState2 ID3D11RasterizerState2; #ifdef __cplusplus interface ID3D11RasterizerState2; #endif /* __cplusplus */ #endif #ifndef __ID3D11ShaderResourceView1_FWD_DEFINED__ #define __ID3D11ShaderResourceView1_FWD_DEFINED__ typedef interface ID3D11ShaderResourceView1 ID3D11ShaderResourceView1; #ifdef __cplusplus interface ID3D11ShaderResourceView1; #endif /* __cplusplus */ #endif #ifndef __ID3D11RenderTargetView1_FWD_DEFINED__ #define __ID3D11RenderTargetView1_FWD_DEFINED__ typedef interface ID3D11RenderTargetView1 ID3D11RenderTargetView1; #ifdef __cplusplus interface ID3D11RenderTargetView1; #endif /* __cplusplus */ #endif #ifndef __ID3D11UnorderedAccessView1_FWD_DEFINED__ #define __ID3D11UnorderedAccessView1_FWD_DEFINED__ typedef interface ID3D11UnorderedAccessView1 ID3D11UnorderedAccessView1; #ifdef __cplusplus interface ID3D11UnorderedAccessView1; #endif /* __cplusplus */ #endif #ifndef __ID3D11Query1_FWD_DEFINED__ #define __ID3D11Query1_FWD_DEFINED__ typedef interface ID3D11Query1 ID3D11Query1; #ifdef __cplusplus interface ID3D11Query1; #endif /* __cplusplus */ #endif #ifndef __ID3D11DeviceContext3_FWD_DEFINED__ #define __ID3D11DeviceContext3_FWD_DEFINED__ typedef interface ID3D11DeviceContext3 ID3D11DeviceContext3; #ifdef __cplusplus interface ID3D11DeviceContext3; #endif /* __cplusplus */ #endif #ifndef __ID3D11Fence_FWD_DEFINED__ #define __ID3D11Fence_FWD_DEFINED__ typedef interface ID3D11Fence ID3D11Fence; #ifdef __cplusplus interface ID3D11Fence; #endif /* __cplusplus */ #endif #ifndef __ID3D11DeviceContext4_FWD_DEFINED__ #define __ID3D11DeviceContext4_FWD_DEFINED__ typedef interface ID3D11DeviceContext4 ID3D11DeviceContext4; #ifdef __cplusplus interface ID3D11DeviceContext4; #endif /* __cplusplus */ #endif #ifndef __ID3D11Device3_FWD_DEFINED__ #define __ID3D11Device3_FWD_DEFINED__ typedef interface ID3D11Device3 ID3D11Device3; #ifdef __cplusplus interface ID3D11Device3; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef enum D3D11_CONTEXT_TYPE { D3D11_CONTEXT_TYPE_ALL = 0x0, D3D11_CONTEXT_TYPE_3D = 0x1, D3D11_CONTEXT_TYPE_COMPUTE = 0x2, D3D11_CONTEXT_TYPE_COPY = 0x3, D3D11_CONTEXT_TYPE_VIDEO = 0x4 } D3D11_CONTEXT_TYPE; typedef enum D3D11_TEXTURE_LAYOUT { D3D11_TEXTURE_LAYOUT_UNDEFINED = 0x0, D3D11_TEXTURE_LAYOUT_ROW_MAJOR = 0x1, D3D11_TEXTURE_LAYOUT_64K_STANDARD_SWIZZLE = 0x2 } D3D11_TEXTURE_LAYOUT; typedef enum D3D11_CONSERVATIVE_RASTERIZATION_MODE { D3D11_CONSERVATIVE_RASTERIZATION_MODE_OFF = 0x0, D3D11_CONSERVATIVE_RASTERIZATION_MODE_ON = 0x1 } D3D11_CONSERVATIVE_RASTERIZATION_MODE; typedef enum D3D11_FENCE_FLAG { D3D11_FENCE_FLAG_NONE = 0x1, D3D11_FENCE_FLAG_SHARED = 0x2, D3D11_FENCE_FLAG_SHARED_CROSS_ADAPTER = 0x4, D3D11_FENCE_FLAG_NON_MONITORED = 0x8 } D3D11_FENCE_FLAG; typedef struct D3D11_TEXTURE2D_DESC1 { UINT Width; UINT Height; UINT MipLevels; UINT ArraySize; DXGI_FORMAT Format; DXGI_SAMPLE_DESC SampleDesc; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; D3D11_TEXTURE_LAYOUT TextureLayout; } D3D11_TEXTURE2D_DESC1; typedef struct D3D11_TEXTURE3D_DESC1 { UINT Width; UINT Height; UINT Depth; UINT MipLevels; DXGI_FORMAT Format; D3D11_USAGE Usage; UINT BindFlags; UINT CPUAccessFlags; UINT MiscFlags; D3D11_TEXTURE_LAYOUT TextureLayout; } D3D11_TEXTURE3D_DESC1; typedef struct D3D11_RASTERIZER_DESC2 { D3D11_FILL_MODE FillMode; D3D11_CULL_MODE CullMode; WINBOOL FrontCounterClockwise; int DepthBias; float DepthBiasClamp; float SlopeScaledDepthBias; WINBOOL DepthClipEnable; WINBOOL ScissorEnable; WINBOOL MultisampleEnable; WINBOOL AntialiasedLineEnable; UINT ForcedSampleCount; D3D11_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; } D3D11_RASTERIZER_DESC2; typedef struct D3D11_TEX2D_SRV1 { UINT MostDetailedMip; UINT MipLevels; UINT PlaneSlice; } D3D11_TEX2D_SRV1; typedef struct D3D11_TEX2D_ARRAY_SRV1 { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; } D3D11_TEX2D_ARRAY_SRV1; typedef struct D3D11_SHADER_RESOURCE_VIEW_DESC1 { DXGI_FORMAT Format; D3D11_SRV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_SRV Buffer; D3D11_TEX1D_SRV Texture1D; D3D11_TEX1D_ARRAY_SRV Texture1DArray; D3D11_TEX2D_SRV1 Texture2D; D3D11_TEX2D_ARRAY_SRV1 Texture2DArray; D3D11_TEX2DMS_SRV Texture2DMS; D3D11_TEX2DMS_ARRAY_SRV Texture2DMSArray; D3D11_TEX3D_SRV Texture3D; D3D11_TEXCUBE_SRV TextureCube; D3D11_TEXCUBE_ARRAY_SRV TextureCubeArray; D3D11_BUFFEREX_SRV BufferEx; } __C89_NAMELESSUNIONNAME; } D3D11_SHADER_RESOURCE_VIEW_DESC1; typedef struct D3D11_TEX2D_RTV1 { UINT MipSlice; UINT PlaneSlice; } D3D11_TEX2D_RTV1; typedef struct D3D11_TEX2D_ARRAY_RTV1 { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; } D3D11_TEX2D_ARRAY_RTV1; typedef struct D3D11_RENDER_TARGET_VIEW_DESC1 { DXGI_FORMAT Format; D3D11_RTV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_RTV Buffer; D3D11_TEX1D_RTV Texture1D; D3D11_TEX1D_ARRAY_RTV Texture1DArray; D3D11_TEX2D_RTV1 Texture2D; D3D11_TEX2D_ARRAY_RTV1 Texture2DArray; D3D11_TEX2DMS_RTV Texture2DMS; D3D11_TEX2DMS_ARRAY_RTV Texture2DMSArray; D3D11_TEX3D_RTV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D11_RENDER_TARGET_VIEW_DESC1; typedef struct D3D11_TEX2D_UAV1 { UINT MipSlice; UINT PlaneSlice; } D3D11_TEX2D_UAV1; typedef struct D3D11_TEX2D_ARRAY_UAV1 { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; } D3D11_TEX2D_ARRAY_UAV1; typedef struct D3D11_UNORDERED_ACCESS_VIEW_DESC1 { DXGI_FORMAT Format; D3D11_UAV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D11_BUFFER_UAV Buffer; D3D11_TEX1D_UAV Texture1D; D3D11_TEX1D_ARRAY_UAV Texture1DArray; D3D11_TEX2D_UAV1 Texture2D; D3D11_TEX2D_ARRAY_UAV1 Texture2DArray; D3D11_TEX3D_UAV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D11_UNORDERED_ACCESS_VIEW_DESC1; typedef struct D3D11_QUERY_DESC1 { D3D11_QUERY Query; UINT MiscFlags; D3D11_CONTEXT_TYPE ContextType; } D3D11_QUERY_DESC1; /***************************************************************************** * ID3D11Texture2D1 interface */ #ifndef __ID3D11Texture2D1_INTERFACE_DEFINED__ #define __ID3D11Texture2D1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Texture2D1, 0x51218251, 0x1e33, 0x4617, 0x9c,0xcb, 0x4d,0x3a,0x43,0x67,0xe7,0xbb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("51218251-1e33-4617-9ccb-4d3a4367e7bb") ID3D11Texture2D1 : public ID3D11Texture2D { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_TEXTURE2D_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Texture2D1, 0x51218251, 0x1e33, 0x4617, 0x9c,0xcb, 0x4d,0x3a,0x43,0x67,0xe7,0xbb) #endif #else typedef struct ID3D11Texture2D1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Texture2D1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Texture2D1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Texture2D1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Texture2D1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Texture2D1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Texture2D1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Texture2D1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Texture2D1 *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Texture2D1 *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Texture2D1 *This); /*** ID3D11Texture2D methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Texture2D1 *This, D3D11_TEXTURE2D_DESC *pDesc); /*** ID3D11Texture2D1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11Texture2D1 *This, D3D11_TEXTURE2D_DESC1 *desc); END_INTERFACE } ID3D11Texture2D1Vtbl; interface ID3D11Texture2D1 { CONST_VTBL ID3D11Texture2D1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Texture2D1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Texture2D1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Texture2D1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Texture2D1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Texture2D1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Texture2D1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Texture2D1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Texture2D1_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Texture2D1_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Texture2D1_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Texture2D methods ***/ #define ID3D11Texture2D1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11Texture2D1 methods ***/ #define ID3D11Texture2D1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Texture2D1_QueryInterface(ID3D11Texture2D1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Texture2D1_AddRef(ID3D11Texture2D1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Texture2D1_Release(ID3D11Texture2D1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Texture2D1_GetDevice(ID3D11Texture2D1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Texture2D1_GetPrivateData(ID3D11Texture2D1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture2D1_SetPrivateData(ID3D11Texture2D1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture2D1_SetPrivateDataInterface(ID3D11Texture2D1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Texture2D1_GetType(ID3D11Texture2D1* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Texture2D1_SetEvictionPriority(ID3D11Texture2D1* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Texture2D1_GetEvictionPriority(ID3D11Texture2D1* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Texture2D methods ***/ static FORCEINLINE void ID3D11Texture2D1_GetDesc(ID3D11Texture2D1* This,D3D11_TEXTURE2D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11Texture2D1 methods ***/ static FORCEINLINE void ID3D11Texture2D1_GetDesc1(ID3D11Texture2D1* This,D3D11_TEXTURE2D_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11Texture2D1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Texture3D1 interface */ #ifndef __ID3D11Texture3D1_INTERFACE_DEFINED__ #define __ID3D11Texture3D1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Texture3D1, 0x0c711683, 0x2853, 0x4846, 0x9b,0xb0, 0xf3,0xe6,0x06,0x39,0xe4,0x6a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0c711683-2853-4846-9bb0-f3e60639e46a") ID3D11Texture3D1 : public ID3D11Texture3D { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_TEXTURE3D_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Texture3D1, 0x0c711683, 0x2853, 0x4846, 0x9b,0xb0, 0xf3,0xe6,0x06,0x39,0xe4,0x6a) #endif #else typedef struct ID3D11Texture3D1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Texture3D1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Texture3D1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Texture3D1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Texture3D1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Texture3D1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Texture3D1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Texture3D1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Resource methods ***/ void (STDMETHODCALLTYPE *GetType)( ID3D11Texture3D1 *This, D3D11_RESOURCE_DIMENSION *pResourceDimension); void (STDMETHODCALLTYPE *SetEvictionPriority)( ID3D11Texture3D1 *This, UINT EvictionPriority); UINT (STDMETHODCALLTYPE *GetEvictionPriority)( ID3D11Texture3D1 *This); /*** ID3D11Texture3D methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Texture3D1 *This, D3D11_TEXTURE3D_DESC *pDesc); /*** ID3D11Texture3D1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11Texture3D1 *This, D3D11_TEXTURE3D_DESC1 *desc); END_INTERFACE } ID3D11Texture3D1Vtbl; interface ID3D11Texture3D1 { CONST_VTBL ID3D11Texture3D1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Texture3D1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Texture3D1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Texture3D1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Texture3D1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Texture3D1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Texture3D1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Texture3D1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Resource methods ***/ #define ID3D11Texture3D1_GetType(This,pResourceDimension) (This)->lpVtbl->GetType(This,pResourceDimension) #define ID3D11Texture3D1_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define ID3D11Texture3D1_GetEvictionPriority(This) (This)->lpVtbl->GetEvictionPriority(This) /*** ID3D11Texture3D methods ***/ #define ID3D11Texture3D1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11Texture3D1 methods ***/ #define ID3D11Texture3D1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Texture3D1_QueryInterface(ID3D11Texture3D1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Texture3D1_AddRef(ID3D11Texture3D1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Texture3D1_Release(ID3D11Texture3D1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Texture3D1_GetDevice(ID3D11Texture3D1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Texture3D1_GetPrivateData(ID3D11Texture3D1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture3D1_SetPrivateData(ID3D11Texture3D1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Texture3D1_SetPrivateDataInterface(ID3D11Texture3D1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Resource methods ***/ static FORCEINLINE void ID3D11Texture3D1_GetType(ID3D11Texture3D1* This,D3D11_RESOURCE_DIMENSION *pResourceDimension) { This->lpVtbl->GetType(This,pResourceDimension); } static FORCEINLINE void ID3D11Texture3D1_SetEvictionPriority(ID3D11Texture3D1* This,UINT EvictionPriority) { This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE UINT ID3D11Texture3D1_GetEvictionPriority(ID3D11Texture3D1* This) { return This->lpVtbl->GetEvictionPriority(This); } /*** ID3D11Texture3D methods ***/ static FORCEINLINE void ID3D11Texture3D1_GetDesc(ID3D11Texture3D1* This,D3D11_TEXTURE3D_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11Texture3D1 methods ***/ static FORCEINLINE void ID3D11Texture3D1_GetDesc1(ID3D11Texture3D1* This,D3D11_TEXTURE3D_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11Texture3D1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11RasterizerState2 interface */ #ifndef __ID3D11RasterizerState2_INTERFACE_DEFINED__ #define __ID3D11RasterizerState2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11RasterizerState2, 0x6fbd02fb, 0x209f, 0x46c4, 0xb0,0x59, 0x2e,0xd1,0x55,0x86,0xa6,0xac); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6fbd02fb-209f-46c4-b059-2ed15586a6ac") ID3D11RasterizerState2 : public ID3D11RasterizerState1 { virtual void STDMETHODCALLTYPE GetDesc2( D3D11_RASTERIZER_DESC2 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11RasterizerState2, 0x6fbd02fb, 0x209f, 0x46c4, 0xb0,0x59, 0x2e,0xd1,0x55,0x86,0xa6,0xac) #endif #else typedef struct ID3D11RasterizerState2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11RasterizerState2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11RasterizerState2 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11RasterizerState2 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11RasterizerState2 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11RasterizerState2 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11RasterizerState2 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11RasterizerState2 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11RasterizerState methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11RasterizerState2 *This, D3D11_RASTERIZER_DESC *pDesc); /*** ID3D11RasterizerState1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11RasterizerState2 *This, D3D11_RASTERIZER_DESC1 *pDesc); /*** ID3D11RasterizerState2 methods ***/ void (STDMETHODCALLTYPE *GetDesc2)( ID3D11RasterizerState2 *This, D3D11_RASTERIZER_DESC2 *desc); END_INTERFACE } ID3D11RasterizerState2Vtbl; interface ID3D11RasterizerState2 { CONST_VTBL ID3D11RasterizerState2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11RasterizerState2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11RasterizerState2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11RasterizerState2_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11RasterizerState2_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11RasterizerState2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11RasterizerState2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11RasterizerState2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11RasterizerState methods ***/ #define ID3D11RasterizerState2_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11RasterizerState1 methods ***/ #define ID3D11RasterizerState2_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) /*** ID3D11RasterizerState2 methods ***/ #define ID3D11RasterizerState2_GetDesc2(This,desc) (This)->lpVtbl->GetDesc2(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11RasterizerState2_QueryInterface(ID3D11RasterizerState2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11RasterizerState2_AddRef(ID3D11RasterizerState2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11RasterizerState2_Release(ID3D11RasterizerState2* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11RasterizerState2_GetDevice(ID3D11RasterizerState2* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11RasterizerState2_GetPrivateData(ID3D11RasterizerState2* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState2_SetPrivateData(ID3D11RasterizerState2* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11RasterizerState2_SetPrivateDataInterface(ID3D11RasterizerState2* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11RasterizerState methods ***/ static FORCEINLINE void ID3D11RasterizerState2_GetDesc(ID3D11RasterizerState2* This,D3D11_RASTERIZER_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11RasterizerState1 methods ***/ static FORCEINLINE void ID3D11RasterizerState2_GetDesc1(ID3D11RasterizerState2* This,D3D11_RASTERIZER_DESC1 *pDesc) { This->lpVtbl->GetDesc1(This,pDesc); } /*** ID3D11RasterizerState2 methods ***/ static FORCEINLINE void ID3D11RasterizerState2_GetDesc2(ID3D11RasterizerState2* This,D3D11_RASTERIZER_DESC2 *desc) { This->lpVtbl->GetDesc2(This,desc); } #endif #endif #endif #endif /* __ID3D11RasterizerState2_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11ShaderResourceView1 interface */ #ifndef __ID3D11ShaderResourceView1_INTERFACE_DEFINED__ #define __ID3D11ShaderResourceView1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11ShaderResourceView1, 0x91308b87, 0x9040, 0x411d, 0x8c,0x67, 0xc3,0x92,0x53,0xce,0x38,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("91308b87-9040-411d-8c67-c39253ce3802") ID3D11ShaderResourceView1 : public ID3D11ShaderResourceView { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11ShaderResourceView1, 0x91308b87, 0x9040, 0x411d, 0x8c,0x67, 0xc3,0x92,0x53,0xce,0x38,0x02) #endif #else typedef struct ID3D11ShaderResourceView1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11ShaderResourceView1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11ShaderResourceView1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11ShaderResourceView1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11ShaderResourceView1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11ShaderResourceView1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11ShaderResourceView1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11ShaderResourceView1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11ShaderResourceView1 *This, ID3D11Resource **ppResource); /*** ID3D11ShaderResourceView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11ShaderResourceView1 *This, D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc); /*** ID3D11ShaderResourceView1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11ShaderResourceView1 *This, D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc); END_INTERFACE } ID3D11ShaderResourceView1Vtbl; interface ID3D11ShaderResourceView1 { CONST_VTBL ID3D11ShaderResourceView1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11ShaderResourceView1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11ShaderResourceView1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11ShaderResourceView1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11ShaderResourceView1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11ShaderResourceView1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11ShaderResourceView1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11ShaderResourceView1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11ShaderResourceView1_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11ShaderResourceView methods ***/ #define ID3D11ShaderResourceView1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11ShaderResourceView1 methods ***/ #define ID3D11ShaderResourceView1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11ShaderResourceView1_QueryInterface(ID3D11ShaderResourceView1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11ShaderResourceView1_AddRef(ID3D11ShaderResourceView1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11ShaderResourceView1_Release(ID3D11ShaderResourceView1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11ShaderResourceView1_GetDevice(ID3D11ShaderResourceView1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11ShaderResourceView1_GetPrivateData(ID3D11ShaderResourceView1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11ShaderResourceView1_SetPrivateData(ID3D11ShaderResourceView1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11ShaderResourceView1_SetPrivateDataInterface(ID3D11ShaderResourceView1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11ShaderResourceView1_GetResource(ID3D11ShaderResourceView1* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11ShaderResourceView methods ***/ static FORCEINLINE void ID3D11ShaderResourceView1_GetDesc(ID3D11ShaderResourceView1* This,D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11ShaderResourceView1 methods ***/ static FORCEINLINE void ID3D11ShaderResourceView1_GetDesc1(ID3D11ShaderResourceView1* This,D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11ShaderResourceView1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11RenderTargetView1 interface */ #ifndef __ID3D11RenderTargetView1_INTERFACE_DEFINED__ #define __ID3D11RenderTargetView1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11RenderTargetView1, 0xffbe2e23, 0xf011, 0x418a, 0xac,0x56, 0x5c,0xee,0xd7,0xc5,0xb9,0x4b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ffbe2e23-f011-418a-ac56-5ceed7c5b94b") ID3D11RenderTargetView1 : public ID3D11RenderTargetView { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_RENDER_TARGET_VIEW_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11RenderTargetView1, 0xffbe2e23, 0xf011, 0x418a, 0xac,0x56, 0x5c,0xee,0xd7,0xc5,0xb9,0x4b) #endif #else typedef struct ID3D11RenderTargetView1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11RenderTargetView1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11RenderTargetView1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11RenderTargetView1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11RenderTargetView1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11RenderTargetView1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11RenderTargetView1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11RenderTargetView1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11RenderTargetView1 *This, ID3D11Resource **ppResource); /*** ID3D11RenderTargetView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11RenderTargetView1 *This, D3D11_RENDER_TARGET_VIEW_DESC *pDesc); /*** ID3D11RenderTargetView1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11RenderTargetView1 *This, D3D11_RENDER_TARGET_VIEW_DESC1 *desc); END_INTERFACE } ID3D11RenderTargetView1Vtbl; interface ID3D11RenderTargetView1 { CONST_VTBL ID3D11RenderTargetView1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11RenderTargetView1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11RenderTargetView1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11RenderTargetView1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11RenderTargetView1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11RenderTargetView1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11RenderTargetView1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11RenderTargetView1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11RenderTargetView1_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11RenderTargetView methods ***/ #define ID3D11RenderTargetView1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11RenderTargetView1 methods ***/ #define ID3D11RenderTargetView1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11RenderTargetView1_QueryInterface(ID3D11RenderTargetView1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11RenderTargetView1_AddRef(ID3D11RenderTargetView1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11RenderTargetView1_Release(ID3D11RenderTargetView1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11RenderTargetView1_GetDevice(ID3D11RenderTargetView1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11RenderTargetView1_GetPrivateData(ID3D11RenderTargetView1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11RenderTargetView1_SetPrivateData(ID3D11RenderTargetView1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11RenderTargetView1_SetPrivateDataInterface(ID3D11RenderTargetView1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11RenderTargetView1_GetResource(ID3D11RenderTargetView1* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11RenderTargetView methods ***/ static FORCEINLINE void ID3D11RenderTargetView1_GetDesc(ID3D11RenderTargetView1* This,D3D11_RENDER_TARGET_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11RenderTargetView1 methods ***/ static FORCEINLINE void ID3D11RenderTargetView1_GetDesc1(ID3D11RenderTargetView1* This,D3D11_RENDER_TARGET_VIEW_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11RenderTargetView1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11UnorderedAccessView1 interface */ #ifndef __ID3D11UnorderedAccessView1_INTERFACE_DEFINED__ #define __ID3D11UnorderedAccessView1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11UnorderedAccessView1, 0x7b3b6153, 0xa886, 0x4544, 0xab,0x37, 0x65,0x37,0xc8,0x50,0x04,0x03); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7b3b6153-a886-4544-ab37-6537c8500403") ID3D11UnorderedAccessView1 : public ID3D11UnorderedAccessView { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11UnorderedAccessView1, 0x7b3b6153, 0xa886, 0x4544, 0xab,0x37, 0x65,0x37,0xc8,0x50,0x04,0x03) #endif #else typedef struct ID3D11UnorderedAccessView1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11UnorderedAccessView1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11UnorderedAccessView1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11UnorderedAccessView1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11UnorderedAccessView1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11UnorderedAccessView1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11UnorderedAccessView1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11UnorderedAccessView1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11View methods ***/ void (STDMETHODCALLTYPE *GetResource)( ID3D11UnorderedAccessView1 *This, ID3D11Resource **ppResource); /*** ID3D11UnorderedAccessView methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11UnorderedAccessView1 *This, D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc); /*** ID3D11UnorderedAccessView1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11UnorderedAccessView1 *This, D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc); END_INTERFACE } ID3D11UnorderedAccessView1Vtbl; interface ID3D11UnorderedAccessView1 { CONST_VTBL ID3D11UnorderedAccessView1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11UnorderedAccessView1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11UnorderedAccessView1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11UnorderedAccessView1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11UnorderedAccessView1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11UnorderedAccessView1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11UnorderedAccessView1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11UnorderedAccessView1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11View methods ***/ #define ID3D11UnorderedAccessView1_GetResource(This,ppResource) (This)->lpVtbl->GetResource(This,ppResource) /*** ID3D11UnorderedAccessView methods ***/ #define ID3D11UnorderedAccessView1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11UnorderedAccessView1 methods ***/ #define ID3D11UnorderedAccessView1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11UnorderedAccessView1_QueryInterface(ID3D11UnorderedAccessView1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11UnorderedAccessView1_AddRef(ID3D11UnorderedAccessView1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11UnorderedAccessView1_Release(ID3D11UnorderedAccessView1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView1_GetDevice(ID3D11UnorderedAccessView1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView1_GetPrivateData(ID3D11UnorderedAccessView1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView1_SetPrivateData(ID3D11UnorderedAccessView1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11UnorderedAccessView1_SetPrivateDataInterface(ID3D11UnorderedAccessView1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11View methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView1_GetResource(ID3D11UnorderedAccessView1* This,ID3D11Resource **ppResource) { This->lpVtbl->GetResource(This,ppResource); } /*** ID3D11UnorderedAccessView methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView1_GetDesc(ID3D11UnorderedAccessView1* This,D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11UnorderedAccessView1 methods ***/ static FORCEINLINE void ID3D11UnorderedAccessView1_GetDesc1(ID3D11UnorderedAccessView1* This,D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11UnorderedAccessView1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Query1 interface */ #ifndef __ID3D11Query1_INTERFACE_DEFINED__ #define __ID3D11Query1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Query1, 0x631b4766, 0x36dc, 0x461d, 0x8d,0xb6, 0xc4,0x7e,0x13,0xe6,0x09,0x16); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("631b4766-36dc-461d-8db6-c47e13e60916") ID3D11Query1 : public ID3D11Query { virtual void STDMETHODCALLTYPE GetDesc1( D3D11_QUERY_DESC1 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Query1, 0x631b4766, 0x36dc, 0x461d, 0x8d,0xb6, 0xc4,0x7e,0x13,0xe6,0x09,0x16) #endif #else typedef struct ID3D11Query1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Query1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Query1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Query1 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Query1 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Query1 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Query1 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Query1 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Asynchronous methods ***/ UINT (STDMETHODCALLTYPE *GetDataSize)( ID3D11Query1 *This); /*** ID3D11Query methods ***/ void (STDMETHODCALLTYPE *GetDesc)( ID3D11Query1 *This, D3D11_QUERY_DESC *pDesc); /*** ID3D11Query1 methods ***/ void (STDMETHODCALLTYPE *GetDesc1)( ID3D11Query1 *This, D3D11_QUERY_DESC1 *desc); END_INTERFACE } ID3D11Query1Vtbl; interface ID3D11Query1 { CONST_VTBL ID3D11Query1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Query1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Query1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Query1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Query1_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Query1_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Query1_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Query1_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Asynchronous methods ***/ #define ID3D11Query1_GetDataSize(This) (This)->lpVtbl->GetDataSize(This) /*** ID3D11Query methods ***/ #define ID3D11Query1_GetDesc(This,pDesc) (This)->lpVtbl->GetDesc(This,pDesc) /*** ID3D11Query1 methods ***/ #define ID3D11Query1_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Query1_QueryInterface(ID3D11Query1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Query1_AddRef(ID3D11Query1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Query1_Release(ID3D11Query1* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Query1_GetDevice(ID3D11Query1* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Query1_GetPrivateData(ID3D11Query1* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Query1_SetPrivateData(ID3D11Query1* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Query1_SetPrivateDataInterface(ID3D11Query1* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Asynchronous methods ***/ static FORCEINLINE UINT ID3D11Query1_GetDataSize(ID3D11Query1* This) { return This->lpVtbl->GetDataSize(This); } /*** ID3D11Query methods ***/ static FORCEINLINE void ID3D11Query1_GetDesc(ID3D11Query1* This,D3D11_QUERY_DESC *pDesc) { This->lpVtbl->GetDesc(This,pDesc); } /*** ID3D11Query1 methods ***/ static FORCEINLINE void ID3D11Query1_GetDesc1(ID3D11Query1* This,D3D11_QUERY_DESC1 *desc) { This->lpVtbl->GetDesc1(This,desc); } #endif #endif #endif #endif /* __ID3D11Query1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DeviceContext3 interface */ #ifndef __ID3D11DeviceContext3_INTERFACE_DEFINED__ #define __ID3D11DeviceContext3_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceContext3, 0xb4e3c01d, 0xe79e, 0x4637, 0x91,0xb2, 0x51,0x0e,0x9f,0x4c,0x9b,0x8f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b4e3c01d-e79e-4637-91b2-510e9f4c9b8f") ID3D11DeviceContext3 : public ID3D11DeviceContext2 { virtual void STDMETHODCALLTYPE Flush1( D3D11_CONTEXT_TYPE type, HANDLE event) = 0; virtual void STDMETHODCALLTYPE SetHardwareProtectionState( WINBOOL enable) = 0; virtual void STDMETHODCALLTYPE GetHardwareProtectionState( WINBOOL *enable) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceContext3, 0xb4e3c01d, 0xe79e, 0x4637, 0x91,0xb2, 0x51,0x0e,0x9f,0x4c,0x9b,0x8f) #endif #else typedef struct ID3D11DeviceContext3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceContext3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceContext3 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceContext3 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceContext3 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceContext3 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceContext3 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceContext3 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DeviceContext methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D11DeviceContext3 *This, ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D11DeviceContext3 *This, ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D11DeviceContext3 *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D11DeviceContext3 *This, UINT VertexCount, UINT StartVertexLocation); HRESULT (STDMETHODCALLTYPE *Map)( ID3D11DeviceContext3 *This, ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); void (STDMETHODCALLTYPE *Unmap)( ID3D11DeviceContext3 *This, ID3D11Resource *pResource, UINT Subresource); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D11DeviceContext3 *This, ID3D11InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D11DeviceContext3 *This, ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D11DeviceContext3 *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D11DeviceContext3 *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D11DeviceContext3 *This, ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D11DeviceContext3 *This, D3D11_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *Begin)( ID3D11DeviceContext3 *This, ID3D11Asynchronous *pAsync); void (STDMETHODCALLTYPE *End)( ID3D11DeviceContext3 *This, ID3D11Asynchronous *pAsync); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D11DeviceContext3 *This, ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags); void (STDMETHODCALLTYPE *SetPredication)( ID3D11DeviceContext3 *This, ID3D11Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D11DeviceContext3 *This, UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext3 *This, UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D11DeviceContext3 *This, ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D11DeviceContext3 *This, ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D11DeviceContext3 *This, UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D11DeviceContext3 *This); void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)( ID3D11DeviceContext3 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *DrawInstancedIndirect)( ID3D11DeviceContext3 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *Dispatch)( ID3D11DeviceContext3 *This, UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ); void (STDMETHODCALLTYPE *DispatchIndirect)( ID3D11DeviceContext3 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *RSSetState)( ID3D11DeviceContext3 *This, ID3D11RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D11DeviceContext3 *This, UINT NumViewports, const D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D11DeviceContext3 *This, UINT NumRects, const D3D11_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *CopyStructureCount)( ID3D11DeviceContext3 *This, ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D11DeviceContext3 *This, ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D11DeviceContext3 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D11DeviceContext3 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D11DeviceContext3 *This, ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D11DeviceContext3 *This, ID3D11ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *SetResourceMinLOD)( ID3D11DeviceContext3 *This, ID3D11Resource *pResource, FLOAT MinLOD); FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)( ID3D11DeviceContext3 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *ExecuteCommandList)( ID3D11DeviceContext3 *This, ID3D11CommandList *pCommandList, WINBOOL RestoreContextState); void (STDMETHODCALLTYPE *HSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *HSSetShader)( ID3D11DeviceContext3 *This, ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *HSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *HSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *DSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *DSSetShader)( ID3D11DeviceContext3 *This, ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *DSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *CSSetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *CSSetShader)( ID3D11DeviceContext3 *This, ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *CSSetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *CSSetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D11DeviceContext3 *This, ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D11DeviceContext3 *This, ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D11DeviceContext3 *This, ID3D11InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D11DeviceContext3 *This, ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D11DeviceContext3 *This, ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D11DeviceContext3 *This, D3D11_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D11DeviceContext3 *This, ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D11DeviceContext3 *This, UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext3 *This, UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D11DeviceContext3 *This, ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D11DeviceContext3 *This, ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D11DeviceContext3 *This, UINT NumBuffers, ID3D11Buffer **ppSOTargets); void (STDMETHODCALLTYPE *RSGetState)( ID3D11DeviceContext3 *This, ID3D11RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D11DeviceContext3 *This, UINT *pNumViewports, D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D11DeviceContext3 *This, UINT *pNumRects, D3D11_RECT *pRects); void (STDMETHODCALLTYPE *HSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *HSGetShader)( ID3D11DeviceContext3 *This, ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *HSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *HSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *DSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *DSGetShader)( ID3D11DeviceContext3 *This, ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *DSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *DSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *CSGetShaderResources)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *CSGetShader)( ID3D11DeviceContext3 *This, ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *CSGetSamplers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *CSGetConstantBuffers)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *ClearState)( ID3D11DeviceContext3 *This); void (STDMETHODCALLTYPE *Flush)( ID3D11DeviceContext3 *This); D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)( ID3D11DeviceContext3 *This); UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11DeviceContext3 *This); HRESULT (STDMETHODCALLTYPE *FinishCommandList)( ID3D11DeviceContext3 *This, WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList); /*** ID3D11DeviceContext1 methods ***/ void (STDMETHODCALLTYPE *CopySubresourceRegion1)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox, UINT CopyFlags); void (STDMETHODCALLTYPE *UpdateSubresource1)( ID3D11DeviceContext3 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch, UINT CopyFlags); void (STDMETHODCALLTYPE *DiscardResource)( ID3D11DeviceContext3 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *DiscardView)( ID3D11DeviceContext3 *This, ID3D11View *pResourceView); void (STDMETHODCALLTYPE *VSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *HSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *DSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *GSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *PSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *CSSetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *VSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *HSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *DSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *GSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *PSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *CSGetConstantBuffers1)( ID3D11DeviceContext3 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *SwapDeviceContextState)( ID3D11DeviceContext3 *This, ID3DDeviceContextState *pState, ID3DDeviceContextState **ppPreviousState); void (STDMETHODCALLTYPE *ClearView)( ID3D11DeviceContext3 *This, ID3D11View *pView, const FLOAT Color[4], const D3D11_RECT *pRect, UINT NumRects); void (STDMETHODCALLTYPE *DiscardView1)( ID3D11DeviceContext3 *This, ID3D11View *pResourceView, const D3D11_RECT *pRects, UINT NumRects); /*** ID3D11DeviceContext2 methods ***/ HRESULT (STDMETHODCALLTYPE *UpdateTileMappings)( ID3D11DeviceContext3 *This, ID3D11Resource *resource, UINT region_count, const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D11_TILE_REGION_SIZE *region_sizes, ID3D11Buffer *pool, UINT range_count, const UINT *range_flags, const UINT *pool_start_offsets, const UINT *range_tile_counts, UINT flags); HRESULT (STDMETHODCALLTYPE *CopyTileMappings)( ID3D11DeviceContext3 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, ID3D11Resource *src_resource, const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate, const D3D11_TILE_REGION_SIZE *region_size, UINT flags); void (STDMETHODCALLTYPE *CopyTiles)( ID3D11DeviceContext3 *This, ID3D11Resource *resource, const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate, const D3D11_TILE_REGION_SIZE *size, ID3D11Buffer *buffer, UINT64 start_offset, UINT flags); void (STDMETHODCALLTYPE *UpdateTiles)( ID3D11DeviceContext3 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, const D3D11_TILE_REGION_SIZE *dst_region_size, const void *src_data, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTilePool)( ID3D11DeviceContext3 *This, ID3D11Buffer *pool, UINT64 size); void (STDMETHODCALLTYPE *TiledResourceBarrier)( ID3D11DeviceContext3 *This, ID3D11DeviceChild *before_barrier, ID3D11DeviceChild *after_barrier); WINBOOL (STDMETHODCALLTYPE *IsAnnotationEnabled)( ID3D11DeviceContext3 *This); void (STDMETHODCALLTYPE *SetMarkerInt)( ID3D11DeviceContext3 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *BeginEventInt)( ID3D11DeviceContext3 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *EndEvent)( ID3D11DeviceContext3 *This); /*** ID3D11DeviceContext3 methods ***/ void (STDMETHODCALLTYPE *Flush1)( ID3D11DeviceContext3 *This, D3D11_CONTEXT_TYPE type, HANDLE event); void (STDMETHODCALLTYPE *SetHardwareProtectionState)( ID3D11DeviceContext3 *This, WINBOOL enable); void (STDMETHODCALLTYPE *GetHardwareProtectionState)( ID3D11DeviceContext3 *This, WINBOOL *enable); END_INTERFACE } ID3D11DeviceContext3Vtbl; interface ID3D11DeviceContext3 { CONST_VTBL ID3D11DeviceContext3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceContext3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceContext3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceContext3_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceContext3_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceContext3_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceContext3_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceContext3_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DeviceContext methods ***/ #define ID3D11DeviceContext3_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D11DeviceContext3_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D11DeviceContext3_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) #define ID3D11DeviceContext3_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource) #define ID3D11DeviceContext3_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D11DeviceContext3_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext3_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext3_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext3_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext3_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D11DeviceContext3_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync) #define ID3D11DeviceContext3_End(This,pAsync) (This)->lpVtbl->End(This,pAsync) #define ID3D11DeviceContext3_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags) #define ID3D11DeviceContext3_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D11DeviceContext3_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D11DeviceContext3_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext3_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D11DeviceContext3_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D11DeviceContext3_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D11DeviceContext3_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D11DeviceContext3_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext3_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext3_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) #define ID3D11DeviceContext3_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext3_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D11DeviceContext3_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D11DeviceContext3_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D11DeviceContext3_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D11DeviceContext3_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D11DeviceContext3_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D11DeviceContext3_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) #define ID3D11DeviceContext3_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D11DeviceContext3_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext3_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext3_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D11DeviceContext3_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D11DeviceContext3_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD) #define ID3D11DeviceContext3_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource) #define ID3D11DeviceContext3_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D11DeviceContext3_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState) #define ID3D11DeviceContext3_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext3_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext3_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D11DeviceContext3_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext3_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext3_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D11DeviceContext3_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D11DeviceContext3_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D11DeviceContext3_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext3_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D11DeviceContext3_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D11DeviceContext3_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets) #define ID3D11DeviceContext3_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D11DeviceContext3_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports) #define ID3D11DeviceContext3_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects) #define ID3D11DeviceContext3_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext3_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext3_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext3_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext3_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext3_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D11DeviceContext3_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D11DeviceContext3_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D11DeviceContext3_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #define ID3D11DeviceContext3_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList) /*** ID3D11DeviceContext1 methods ***/ #define ID3D11DeviceContext3_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) #define ID3D11DeviceContext3_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) #define ID3D11DeviceContext3_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource) #define ID3D11DeviceContext3_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView) #define ID3D11DeviceContext3_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext3_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState) #define ID3D11DeviceContext3_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects) #define ID3D11DeviceContext3_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects) /*** ID3D11DeviceContext2 methods ***/ #define ID3D11DeviceContext3_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) #define ID3D11DeviceContext3_CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) #define ID3D11DeviceContext3_CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) (This)->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) #define ID3D11DeviceContext3_UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) (This)->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) #define ID3D11DeviceContext3_ResizeTilePool(This,pool,size) (This)->lpVtbl->ResizeTilePool(This,pool,size) #define ID3D11DeviceContext3_TiledResourceBarrier(This,before_barrier,after_barrier) (This)->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier) #define ID3D11DeviceContext3_IsAnnotationEnabled(This) (This)->lpVtbl->IsAnnotationEnabled(This) #define ID3D11DeviceContext3_SetMarkerInt(This,label,data) (This)->lpVtbl->SetMarkerInt(This,label,data) #define ID3D11DeviceContext3_BeginEventInt(This,label,data) (This)->lpVtbl->BeginEventInt(This,label,data) #define ID3D11DeviceContext3_EndEvent(This) (This)->lpVtbl->EndEvent(This) /*** ID3D11DeviceContext3 methods ***/ #define ID3D11DeviceContext3_Flush1(This,type,event) (This)->lpVtbl->Flush1(This,type,event) #define ID3D11DeviceContext3_SetHardwareProtectionState(This,enable) (This)->lpVtbl->SetHardwareProtectionState(This,enable) #define ID3D11DeviceContext3_GetHardwareProtectionState(This,enable) (This)->lpVtbl->GetHardwareProtectionState(This,enable) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext3_QueryInterface(ID3D11DeviceContext3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceContext3_AddRef(ID3D11DeviceContext3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceContext3_Release(ID3D11DeviceContext3* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceContext3_GetDevice(ID3D11DeviceContext3* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceContext3_GetPrivateData(ID3D11DeviceContext3* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext3_SetPrivateData(ID3D11DeviceContext3* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext3_SetPrivateDataInterface(ID3D11DeviceContext3* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DeviceContext methods ***/ static FORCEINLINE void ID3D11DeviceContext3_VSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_PSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_PSSetShader(ID3D11DeviceContext3* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_PSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_VSSetShader(ID3D11DeviceContext3* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_DrawIndexed(ID3D11DeviceContext3* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D11DeviceContext3_Draw(ID3D11DeviceContext3* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE HRESULT ID3D11DeviceContext3_Map(ID3D11DeviceContext3* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) { return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource); } static FORCEINLINE void ID3D11DeviceContext3_Unmap(ID3D11DeviceContext3* This,ID3D11Resource *pResource,UINT Subresource) { This->lpVtbl->Unmap(This,pResource,Subresource); } static FORCEINLINE void ID3D11DeviceContext3_PSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_IASetInputLayout(ID3D11DeviceContext3* This,ID3D11InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D11DeviceContext3_IASetVertexBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext3_IASetIndexBuffer(ID3D11DeviceContext3* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext3_DrawIndexedInstanced(ID3D11DeviceContext3* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext3_DrawInstanced(ID3D11DeviceContext3* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext3_GSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_GSSetShader(ID3D11DeviceContext3* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_IASetPrimitiveTopology(ID3D11DeviceContext3* This,D3D11_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D11DeviceContext3_VSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_VSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_Begin(ID3D11DeviceContext3* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->Begin(This,pAsync); } static FORCEINLINE void ID3D11DeviceContext3_End(ID3D11DeviceContext3* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->End(This,pAsync); } static FORCEINLINE HRESULT ID3D11DeviceContext3_GetData(ID3D11DeviceContext3* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags); } static FORCEINLINE void ID3D11DeviceContext3_SetPredication(ID3D11DeviceContext3* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D11DeviceContext3_GSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_GSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_OMSetRenderTargets(ID3D11DeviceContext3* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext3_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext3* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext3_OMSetBlendState(ID3D11DeviceContext3* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D11DeviceContext3_OMSetDepthStencilState(ID3D11DeviceContext3* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D11DeviceContext3_SOSetTargets(ID3D11DeviceContext3* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D11DeviceContext3_DrawAuto(ID3D11DeviceContext3* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D11DeviceContext3_DrawIndexedInstancedIndirect(ID3D11DeviceContext3* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext3_DrawInstancedIndirect(ID3D11DeviceContext3* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext3_Dispatch(ID3D11DeviceContext3* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) { This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ); } static FORCEINLINE void ID3D11DeviceContext3_DispatchIndirect(ID3D11DeviceContext3* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext3_RSSetState(ID3D11DeviceContext3* This,ID3D11RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D11DeviceContext3_RSSetViewports(ID3D11DeviceContext3* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext3_RSSetScissorRects(ID3D11DeviceContext3* This,UINT NumRects,const D3D11_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext3_CopySubresourceRegion(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D11DeviceContext3_CopyResource(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D11DeviceContext3_UpdateSubresource(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D11DeviceContext3_CopyStructureCount(ID3D11DeviceContext3* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) { This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView); } static FORCEINLINE void ID3D11DeviceContext3_ClearRenderTargetView(ID3D11DeviceContext3* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D11DeviceContext3_ClearUnorderedAccessViewUint(ID3D11DeviceContext3* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext3_ClearUnorderedAccessViewFloat(ID3D11DeviceContext3* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext3_ClearDepthStencilView(ID3D11DeviceContext3* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D11DeviceContext3_GenerateMips(ID3D11DeviceContext3* This,ID3D11ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D11DeviceContext3_SetResourceMinLOD(ID3D11DeviceContext3* This,ID3D11Resource *pResource,FLOAT MinLOD) { This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD); } static FORCEINLINE FLOAT ID3D11DeviceContext3_GetResourceMinLOD(ID3D11DeviceContext3* This,ID3D11Resource *pResource) { return This->lpVtbl->GetResourceMinLOD(This,pResource); } static FORCEINLINE void ID3D11DeviceContext3_ResolveSubresource(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D11DeviceContext3_ExecuteCommandList(ID3D11DeviceContext3* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) { This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState); } static FORCEINLINE void ID3D11DeviceContext3_HSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_HSSetShader(ID3D11DeviceContext3* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_HSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_HSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_DSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_DSSetShader(ID3D11DeviceContext3* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_DSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_DSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_CSSetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_CSSetUnorderedAccessViews(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext3_CSSetShader(ID3D11DeviceContext3* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_CSSetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_CSSetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_VSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_PSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_PSGetShader(ID3D11DeviceContext3* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_PSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_VSGetShader(ID3D11DeviceContext3* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_PSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_IAGetInputLayout(ID3D11DeviceContext3* This,ID3D11InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D11DeviceContext3_IAGetVertexBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext3_IAGetIndexBuffer(ID3D11DeviceContext3* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext3_GSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_GSGetShader(ID3D11DeviceContext3* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_IAGetPrimitiveTopology(ID3D11DeviceContext3* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D11DeviceContext3_VSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_VSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_GetPredication(ID3D11DeviceContext3* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D11DeviceContext3_GSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_GSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_OMGetRenderTargets(ID3D11DeviceContext3* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext3_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext3* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext3_OMGetBlendState(ID3D11DeviceContext3* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D11DeviceContext3_OMGetDepthStencilState(ID3D11DeviceContext3* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D11DeviceContext3_SOGetTargets(ID3D11DeviceContext3* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets); } static FORCEINLINE void ID3D11DeviceContext3_RSGetState(ID3D11DeviceContext3* This,ID3D11RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D11DeviceContext3_RSGetViewports(ID3D11DeviceContext3* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext3_RSGetScissorRects(ID3D11DeviceContext3* This,UINT *pNumRects,D3D11_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext3_HSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_HSGetShader(ID3D11DeviceContext3* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_HSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_HSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_DSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_DSGetShader(ID3D11DeviceContext3* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_DSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_DSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_CSGetShaderResources(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext3_CSGetUnorderedAccessViews(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext3_CSGetShader(ID3D11DeviceContext3* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext3_CSGetSamplers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext3_CSGetConstantBuffers(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext3_ClearState(ID3D11DeviceContext3* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D11DeviceContext3_Flush(ID3D11DeviceContext3* This) { This->lpVtbl->Flush(This); } static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext3_GetType(ID3D11DeviceContext3* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE UINT ID3D11DeviceContext3_GetContextFlags(ID3D11DeviceContext3* This) { return This->lpVtbl->GetContextFlags(This); } static FORCEINLINE HRESULT ID3D11DeviceContext3_FinishCommandList(ID3D11DeviceContext3* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) { return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList); } /*** ID3D11DeviceContext1 methods ***/ static FORCEINLINE void ID3D11DeviceContext3_CopySubresourceRegion1(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) { This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext3_UpdateSubresource1(ID3D11DeviceContext3* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) { This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext3_DiscardResource(ID3D11DeviceContext3* This,ID3D11Resource *pResource) { This->lpVtbl->DiscardResource(This,pResource); } static FORCEINLINE void ID3D11DeviceContext3_DiscardView(ID3D11DeviceContext3* This,ID3D11View *pResourceView) { This->lpVtbl->DiscardView(This,pResourceView); } static FORCEINLINE void ID3D11DeviceContext3_VSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_HSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_DSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_GSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_PSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_CSSetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_VSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_HSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_DSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_GSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_PSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_CSGetConstantBuffers1(ID3D11DeviceContext3* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext3_SwapDeviceContextState(ID3D11DeviceContext3* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) { This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState); } static FORCEINLINE void ID3D11DeviceContext3_ClearView(ID3D11DeviceContext3* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) { This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects); } static FORCEINLINE void ID3D11DeviceContext3_DiscardView1(ID3D11DeviceContext3* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) { This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects); } /*** ID3D11DeviceContext2 methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext3_UpdateTileMappings(ID3D11DeviceContext3* This,ID3D11Resource *resource,UINT region_count,const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D11_TILE_REGION_SIZE *region_sizes,ID3D11Buffer *pool,UINT range_count,const UINT *range_flags,const UINT *pool_start_offsets,const UINT *range_tile_counts,UINT flags) { return This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext3_CopyTileMappings(ID3D11DeviceContext3* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,ID3D11Resource *src_resource,const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,const D3D11_TILE_REGION_SIZE *region_size,UINT flags) { return This->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags); } static FORCEINLINE void ID3D11DeviceContext3_CopyTiles(ID3D11DeviceContext3* This,ID3D11Resource *resource,const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,const D3D11_TILE_REGION_SIZE *size,ID3D11Buffer *buffer,UINT64 start_offset,UINT flags) { This->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags); } static FORCEINLINE void ID3D11DeviceContext3_UpdateTiles(ID3D11DeviceContext3* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,const D3D11_TILE_REGION_SIZE *dst_region_size,const void *src_data,UINT flags) { This->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext3_ResizeTilePool(ID3D11DeviceContext3* This,ID3D11Buffer *pool,UINT64 size) { return This->lpVtbl->ResizeTilePool(This,pool,size); } static FORCEINLINE void ID3D11DeviceContext3_TiledResourceBarrier(ID3D11DeviceContext3* This,ID3D11DeviceChild *before_barrier,ID3D11DeviceChild *after_barrier) { This->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier); } static FORCEINLINE WINBOOL ID3D11DeviceContext3_IsAnnotationEnabled(ID3D11DeviceContext3* This) { return This->lpVtbl->IsAnnotationEnabled(This); } static FORCEINLINE void ID3D11DeviceContext3_SetMarkerInt(ID3D11DeviceContext3* This,const WCHAR *label,int data) { This->lpVtbl->SetMarkerInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext3_BeginEventInt(ID3D11DeviceContext3* This,const WCHAR *label,int data) { This->lpVtbl->BeginEventInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext3_EndEvent(ID3D11DeviceContext3* This) { This->lpVtbl->EndEvent(This); } /*** ID3D11DeviceContext3 methods ***/ static FORCEINLINE void ID3D11DeviceContext3_Flush1(ID3D11DeviceContext3* This,D3D11_CONTEXT_TYPE type,HANDLE event) { This->lpVtbl->Flush1(This,type,event); } static FORCEINLINE void ID3D11DeviceContext3_SetHardwareProtectionState(ID3D11DeviceContext3* This,WINBOOL enable) { This->lpVtbl->SetHardwareProtectionState(This,enable); } static FORCEINLINE void ID3D11DeviceContext3_GetHardwareProtectionState(ID3D11DeviceContext3* This,WINBOOL *enable) { This->lpVtbl->GetHardwareProtectionState(This,enable); } #endif #endif #endif #endif /* __ID3D11DeviceContext3_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Fence interface */ #ifndef __ID3D11Fence_INTERFACE_DEFINED__ #define __ID3D11Fence_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Fence, 0xaffde9d1, 0x1df7, 0x4bb7, 0x8a,0x34, 0x0f,0x46,0x25,0x1d,0xab,0x80); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("affde9d1-1df7-4bb7-8a34-0f46251dab80") ID3D11Fence : public ID3D11DeviceChild { virtual HRESULT STDMETHODCALLTYPE CreateSharedHandle( const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle) = 0; virtual UINT64 STDMETHODCALLTYPE GetCompletedValue( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetEventOnCompletion( UINT64 value, HANDLE event) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Fence, 0xaffde9d1, 0x1df7, 0x4bb7, 0x8a,0x34, 0x0f,0x46,0x25,0x1d,0xab,0x80) #endif #else typedef struct ID3D11FenceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Fence *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Fence *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Fence *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11Fence *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Fence *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Fence *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Fence *This, REFGUID guid, const IUnknown *pData); /*** ID3D11Fence methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSharedHandle)( ID3D11Fence *This, const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle); UINT64 (STDMETHODCALLTYPE *GetCompletedValue)( ID3D11Fence *This); HRESULT (STDMETHODCALLTYPE *SetEventOnCompletion)( ID3D11Fence *This, UINT64 value, HANDLE event); END_INTERFACE } ID3D11FenceVtbl; interface ID3D11Fence { CONST_VTBL ID3D11FenceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Fence_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Fence_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Fence_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11Fence_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11Fence_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Fence_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Fence_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11Fence methods ***/ #define ID3D11Fence_CreateSharedHandle(This,attributes,access,name,handle) (This)->lpVtbl->CreateSharedHandle(This,attributes,access,name,handle) #define ID3D11Fence_GetCompletedValue(This) (This)->lpVtbl->GetCompletedValue(This) #define ID3D11Fence_SetEventOnCompletion(This,value,event) (This)->lpVtbl->SetEventOnCompletion(This,value,event) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Fence_QueryInterface(ID3D11Fence* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Fence_AddRef(ID3D11Fence* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Fence_Release(ID3D11Fence* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11Fence_GetDevice(ID3D11Fence* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11Fence_GetPrivateData(ID3D11Fence* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Fence_SetPrivateData(ID3D11Fence* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Fence_SetPrivateDataInterface(ID3D11Fence* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11Fence methods ***/ static FORCEINLINE HRESULT ID3D11Fence_CreateSharedHandle(ID3D11Fence* This,const SECURITY_ATTRIBUTES *attributes,DWORD access,const WCHAR *name,HANDLE *handle) { return This->lpVtbl->CreateSharedHandle(This,attributes,access,name,handle); } static FORCEINLINE UINT64 ID3D11Fence_GetCompletedValue(ID3D11Fence* This) { return This->lpVtbl->GetCompletedValue(This); } static FORCEINLINE HRESULT ID3D11Fence_SetEventOnCompletion(ID3D11Fence* This,UINT64 value,HANDLE event) { return This->lpVtbl->SetEventOnCompletion(This,value,event); } #endif #endif #endif #endif /* __ID3D11Fence_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11DeviceContext4 interface */ #ifndef __ID3D11DeviceContext4_INTERFACE_DEFINED__ #define __ID3D11DeviceContext4_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11DeviceContext4, 0x917600da, 0xf58c, 0x4c33, 0x98,0xd8, 0x3e,0x15,0xb3,0x90,0xfa,0x24); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("917600da-f58c-4c33-98d8-3e15b390fa24") ID3D11DeviceContext4 : public ID3D11DeviceContext3 { virtual HRESULT STDMETHODCALLTYPE Signal( ID3D11Fence *fence, UINT64 value) = 0; virtual HRESULT STDMETHODCALLTYPE Wait( ID3D11Fence *fence, UINT64 value) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11DeviceContext4, 0x917600da, 0xf58c, 0x4c33, 0x98,0xd8, 0x3e,0x15,0xb3,0x90,0xfa,0x24) #endif #else typedef struct ID3D11DeviceContext4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11DeviceContext4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11DeviceContext4 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11DeviceContext4 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11DeviceContext4 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11DeviceContext4 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11DeviceContext4 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11DeviceContext4 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11DeviceContext methods ***/ void (STDMETHODCALLTYPE *VSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *PSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *PSSetShader)( ID3D11DeviceContext4 *This, ID3D11PixelShader *pPixelShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *PSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *VSSetShader)( ID3D11DeviceContext4 *This, ID3D11VertexShader *pVertexShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DrawIndexed)( ID3D11DeviceContext4 *This, UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); void (STDMETHODCALLTYPE *Draw)( ID3D11DeviceContext4 *This, UINT VertexCount, UINT StartVertexLocation); HRESULT (STDMETHODCALLTYPE *Map)( ID3D11DeviceContext4 *This, ID3D11Resource *pResource, UINT Subresource, D3D11_MAP MapType, UINT MapFlags, D3D11_MAPPED_SUBRESOURCE *pMappedResource); void (STDMETHODCALLTYPE *Unmap)( ID3D11DeviceContext4 *This, ID3D11Resource *pResource, UINT Subresource); void (STDMETHODCALLTYPE *PSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *IASetInputLayout)( ID3D11DeviceContext4 *This, ID3D11InputLayout *pInputLayout); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppVertexBuffers, const UINT *pStrides, const UINT *pOffsets); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D11DeviceContext4 *This, ID3D11Buffer *pIndexBuffer, DXGI_FORMAT Format, UINT Offset); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D11DeviceContext4 *This, UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D11DeviceContext4 *This, UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); void (STDMETHODCALLTYPE *GSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *GSSetShader)( ID3D11DeviceContext4 *This, ID3D11GeometryShader *pShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D11DeviceContext4 *This, D3D11_PRIMITIVE_TOPOLOGY Topology); void (STDMETHODCALLTYPE *VSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *VSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *Begin)( ID3D11DeviceContext4 *This, ID3D11Asynchronous *pAsync); void (STDMETHODCALLTYPE *End)( ID3D11DeviceContext4 *This, ID3D11Asynchronous *pAsync); HRESULT (STDMETHODCALLTYPE *GetData)( ID3D11DeviceContext4 *This, ID3D11Asynchronous *pAsync, void *pData, UINT DataSize, UINT GetDataFlags); void (STDMETHODCALLTYPE *SetPredication)( ID3D11DeviceContext4 *This, ID3D11Predicate *pPredicate, WINBOOL PredicateValue); void (STDMETHODCALLTYPE *GSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *GSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D11DeviceContext4 *This, UINT NumViews, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView); void (STDMETHODCALLTYPE *OMSetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext4 *This, UINT NumRTVs, ID3D11RenderTargetView *const *ppRenderTargetViews, ID3D11DepthStencilView *pDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *OMSetBlendState)( ID3D11DeviceContext4 *This, ID3D11BlendState *pBlendState, const FLOAT BlendFactor[4], UINT SampleMask); void (STDMETHODCALLTYPE *OMSetDepthStencilState)( ID3D11DeviceContext4 *This, ID3D11DepthStencilState *pDepthStencilState, UINT StencilRef); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D11DeviceContext4 *This, UINT NumBuffers, ID3D11Buffer *const *ppSOTargets, const UINT *pOffsets); void (STDMETHODCALLTYPE *DrawAuto)( ID3D11DeviceContext4 *This); void (STDMETHODCALLTYPE *DrawIndexedInstancedIndirect)( ID3D11DeviceContext4 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *DrawInstancedIndirect)( ID3D11DeviceContext4 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *Dispatch)( ID3D11DeviceContext4 *This, UINT ThreadGroupCountX, UINT ThreadGroupCountY, UINT ThreadGroupCountZ); void (STDMETHODCALLTYPE *DispatchIndirect)( ID3D11DeviceContext4 *This, ID3D11Buffer *pBufferForArgs, UINT AlignedByteOffsetForArgs); void (STDMETHODCALLTYPE *RSSetState)( ID3D11DeviceContext4 *This, ID3D11RasterizerState *pRasterizerState); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D11DeviceContext4 *This, UINT NumViewports, const D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D11DeviceContext4 *This, UINT NumRects, const D3D11_RECT *pRects); void (STDMETHODCALLTYPE *CopySubresourceRegion)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox); void (STDMETHODCALLTYPE *CopyResource)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, ID3D11Resource *pSrcResource); void (STDMETHODCALLTYPE *UpdateSubresource)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); void (STDMETHODCALLTYPE *CopyStructureCount)( ID3D11DeviceContext4 *This, ID3D11Buffer *pDstBuffer, UINT DstAlignedByteOffset, ID3D11UnorderedAccessView *pSrcView); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D11DeviceContext4 *This, ID3D11RenderTargetView *pRenderTargetView, const FLOAT ColorRGBA[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D11DeviceContext4 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const UINT Values[4]); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D11DeviceContext4 *This, ID3D11UnorderedAccessView *pUnorderedAccessView, const FLOAT Values[4]); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D11DeviceContext4 *This, ID3D11DepthStencilView *pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); void (STDMETHODCALLTYPE *GenerateMips)( ID3D11DeviceContext4 *This, ID3D11ShaderResourceView *pShaderResourceView); void (STDMETHODCALLTYPE *SetResourceMinLOD)( ID3D11DeviceContext4 *This, ID3D11Resource *pResource, FLOAT MinLOD); FLOAT (STDMETHODCALLTYPE *GetResourceMinLOD)( ID3D11DeviceContext4 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, UINT DstSubresource, ID3D11Resource *pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); void (STDMETHODCALLTYPE *ExecuteCommandList)( ID3D11DeviceContext4 *This, ID3D11CommandList *pCommandList, WINBOOL RestoreContextState); void (STDMETHODCALLTYPE *HSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *HSSetShader)( ID3D11DeviceContext4 *This, ID3D11HullShader *pHullShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *HSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *HSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *DSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *DSSetShader)( ID3D11DeviceContext4 *This, ID3D11DomainShader *pDomainShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *DSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *DSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *CSSetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView *const *ppShaderResourceViews); void (STDMETHODCALLTYPE *CSSetUnorderedAccessViews)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView *const *ppUnorderedAccessViews, const UINT *pUAVInitialCounts); void (STDMETHODCALLTYPE *CSSetShader)( ID3D11DeviceContext4 *This, ID3D11ComputeShader *pComputeShader, ID3D11ClassInstance *const *ppClassInstances, UINT NumClassInstances); void (STDMETHODCALLTYPE *CSSetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState *const *ppSamplers); void (STDMETHODCALLTYPE *CSSetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers); void (STDMETHODCALLTYPE *VSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *PSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *PSGetShader)( ID3D11DeviceContext4 *This, ID3D11PixelShader **ppPixelShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *VSGetShader)( ID3D11DeviceContext4 *This, ID3D11VertexShader **ppVertexShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *PSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *IAGetInputLayout)( ID3D11DeviceContext4 *This, ID3D11InputLayout **ppInputLayout); void (STDMETHODCALLTYPE *IAGetVertexBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppVertexBuffers, UINT *pStrides, UINT *pOffsets); void (STDMETHODCALLTYPE *IAGetIndexBuffer)( ID3D11DeviceContext4 *This, ID3D11Buffer **pIndexBuffer, DXGI_FORMAT *Format, UINT *Offset); void (STDMETHODCALLTYPE *GSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *GSGetShader)( ID3D11DeviceContext4 *This, ID3D11GeometryShader **ppGeometryShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *IAGetPrimitiveTopology)( ID3D11DeviceContext4 *This, D3D11_PRIMITIVE_TOPOLOGY *pTopology); void (STDMETHODCALLTYPE *VSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *VSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *GetPredication)( ID3D11DeviceContext4 *This, ID3D11Predicate **ppPredicate, WINBOOL *pPredicateValue); void (STDMETHODCALLTYPE *GSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *GSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *OMGetRenderTargets)( ID3D11DeviceContext4 *This, UINT NumViews, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView); void (STDMETHODCALLTYPE *OMGetRenderTargetsAndUnorderedAccessViews)( ID3D11DeviceContext4 *This, UINT NumRTVs, ID3D11RenderTargetView **ppRenderTargetViews, ID3D11DepthStencilView **ppDepthStencilView, UINT UAVStartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *OMGetBlendState)( ID3D11DeviceContext4 *This, ID3D11BlendState **ppBlendState, FLOAT BlendFactor[4], UINT *pSampleMask); void (STDMETHODCALLTYPE *OMGetDepthStencilState)( ID3D11DeviceContext4 *This, ID3D11DepthStencilState **ppDepthStencilState, UINT *pStencilRef); void (STDMETHODCALLTYPE *SOGetTargets)( ID3D11DeviceContext4 *This, UINT NumBuffers, ID3D11Buffer **ppSOTargets); void (STDMETHODCALLTYPE *RSGetState)( ID3D11DeviceContext4 *This, ID3D11RasterizerState **ppRasterizerState); void (STDMETHODCALLTYPE *RSGetViewports)( ID3D11DeviceContext4 *This, UINT *pNumViewports, D3D11_VIEWPORT *pViewports); void (STDMETHODCALLTYPE *RSGetScissorRects)( ID3D11DeviceContext4 *This, UINT *pNumRects, D3D11_RECT *pRects); void (STDMETHODCALLTYPE *HSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *HSGetShader)( ID3D11DeviceContext4 *This, ID3D11HullShader **ppHullShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *HSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *HSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *DSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *DSGetShader)( ID3D11DeviceContext4 *This, ID3D11DomainShader **ppDomainShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *DSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *DSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *CSGetShaderResources)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumViews, ID3D11ShaderResourceView **ppShaderResourceViews); void (STDMETHODCALLTYPE *CSGetUnorderedAccessViews)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumUAVs, ID3D11UnorderedAccessView **ppUnorderedAccessViews); void (STDMETHODCALLTYPE *CSGetShader)( ID3D11DeviceContext4 *This, ID3D11ComputeShader **ppComputeShader, ID3D11ClassInstance **ppClassInstances, UINT *pNumClassInstances); void (STDMETHODCALLTYPE *CSGetSamplers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumSamplers, ID3D11SamplerState **ppSamplers); void (STDMETHODCALLTYPE *CSGetConstantBuffers)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers); void (STDMETHODCALLTYPE *ClearState)( ID3D11DeviceContext4 *This); void (STDMETHODCALLTYPE *Flush)( ID3D11DeviceContext4 *This); D3D11_DEVICE_CONTEXT_TYPE (STDMETHODCALLTYPE *GetType)( ID3D11DeviceContext4 *This); UINT (STDMETHODCALLTYPE *GetContextFlags)( ID3D11DeviceContext4 *This); HRESULT (STDMETHODCALLTYPE *FinishCommandList)( ID3D11DeviceContext4 *This, WINBOOL RestoreDeferredContextState, ID3D11CommandList **ppCommandList); /*** ID3D11DeviceContext1 methods ***/ void (STDMETHODCALLTYPE *CopySubresourceRegion1)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D11Resource *pSrcResource, UINT SrcSubresource, const D3D11_BOX *pSrcBox, UINT CopyFlags); void (STDMETHODCALLTYPE *UpdateSubresource1)( ID3D11DeviceContext4 *This, ID3D11Resource *pDstResource, UINT DstSubresource, const D3D11_BOX *pDstBox, const void *pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch, UINT CopyFlags); void (STDMETHODCALLTYPE *DiscardResource)( ID3D11DeviceContext4 *This, ID3D11Resource *pResource); void (STDMETHODCALLTYPE *DiscardView)( ID3D11DeviceContext4 *This, ID3D11View *pResourceView); void (STDMETHODCALLTYPE *VSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *HSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *DSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *GSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *PSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *CSSetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer *const *ppConstantBuffers, const UINT *pFirstConstant, const UINT *pNumConstants); void (STDMETHODCALLTYPE *VSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *HSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *DSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *GSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *PSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *CSGetConstantBuffers1)( ID3D11DeviceContext4 *This, UINT StartSlot, UINT NumBuffers, ID3D11Buffer **ppConstantBuffers, UINT *pFirstConstant, UINT *pNumConstants); void (STDMETHODCALLTYPE *SwapDeviceContextState)( ID3D11DeviceContext4 *This, ID3DDeviceContextState *pState, ID3DDeviceContextState **ppPreviousState); void (STDMETHODCALLTYPE *ClearView)( ID3D11DeviceContext4 *This, ID3D11View *pView, const FLOAT Color[4], const D3D11_RECT *pRect, UINT NumRects); void (STDMETHODCALLTYPE *DiscardView1)( ID3D11DeviceContext4 *This, ID3D11View *pResourceView, const D3D11_RECT *pRects, UINT NumRects); /*** ID3D11DeviceContext2 methods ***/ HRESULT (STDMETHODCALLTYPE *UpdateTileMappings)( ID3D11DeviceContext4 *This, ID3D11Resource *resource, UINT region_count, const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D11_TILE_REGION_SIZE *region_sizes, ID3D11Buffer *pool, UINT range_count, const UINT *range_flags, const UINT *pool_start_offsets, const UINT *range_tile_counts, UINT flags); HRESULT (STDMETHODCALLTYPE *CopyTileMappings)( ID3D11DeviceContext4 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, ID3D11Resource *src_resource, const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate, const D3D11_TILE_REGION_SIZE *region_size, UINT flags); void (STDMETHODCALLTYPE *CopyTiles)( ID3D11DeviceContext4 *This, ID3D11Resource *resource, const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate, const D3D11_TILE_REGION_SIZE *size, ID3D11Buffer *buffer, UINT64 start_offset, UINT flags); void (STDMETHODCALLTYPE *UpdateTiles)( ID3D11DeviceContext4 *This, ID3D11Resource *dst_resource, const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate, const D3D11_TILE_REGION_SIZE *dst_region_size, const void *src_data, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTilePool)( ID3D11DeviceContext4 *This, ID3D11Buffer *pool, UINT64 size); void (STDMETHODCALLTYPE *TiledResourceBarrier)( ID3D11DeviceContext4 *This, ID3D11DeviceChild *before_barrier, ID3D11DeviceChild *after_barrier); WINBOOL (STDMETHODCALLTYPE *IsAnnotationEnabled)( ID3D11DeviceContext4 *This); void (STDMETHODCALLTYPE *SetMarkerInt)( ID3D11DeviceContext4 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *BeginEventInt)( ID3D11DeviceContext4 *This, const WCHAR *label, int data); void (STDMETHODCALLTYPE *EndEvent)( ID3D11DeviceContext4 *This); /*** ID3D11DeviceContext3 methods ***/ void (STDMETHODCALLTYPE *Flush1)( ID3D11DeviceContext4 *This, D3D11_CONTEXT_TYPE type, HANDLE event); void (STDMETHODCALLTYPE *SetHardwareProtectionState)( ID3D11DeviceContext4 *This, WINBOOL enable); void (STDMETHODCALLTYPE *GetHardwareProtectionState)( ID3D11DeviceContext4 *This, WINBOOL *enable); /*** ID3D11DeviceContext4 methods ***/ HRESULT (STDMETHODCALLTYPE *Signal)( ID3D11DeviceContext4 *This, ID3D11Fence *fence, UINT64 value); HRESULT (STDMETHODCALLTYPE *Wait)( ID3D11DeviceContext4 *This, ID3D11Fence *fence, UINT64 value); END_INTERFACE } ID3D11DeviceContext4Vtbl; interface ID3D11DeviceContext4 { CONST_VTBL ID3D11DeviceContext4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11DeviceContext4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11DeviceContext4_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11DeviceContext4_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11DeviceContext4_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11DeviceContext4_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11DeviceContext4_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11DeviceContext4_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11DeviceContext methods ***/ #define ID3D11DeviceContext4_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) (This)->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) #define ID3D11DeviceContext4_Draw(This,VertexCount,StartVertexLocation) (This)->lpVtbl->Draw(This,VertexCount,StartVertexLocation) #define ID3D11DeviceContext4_Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) (This)->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource) #define ID3D11DeviceContext4_Unmap(This,pResource,Subresource) (This)->lpVtbl->Unmap(This,pResource,Subresource) #define ID3D11DeviceContext4_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_IASetInputLayout(This,pInputLayout) (This)->lpVtbl->IASetInputLayout(This,pInputLayout) #define ID3D11DeviceContext4_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext4_IASetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext4_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext4_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) (This)->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) #define ID3D11DeviceContext4_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_GSSetShader(This,pShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_IASetPrimitiveTopology(This,Topology) (This)->lpVtbl->IASetPrimitiveTopology(This,Topology) #define ID3D11DeviceContext4_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_Begin(This,pAsync) (This)->lpVtbl->Begin(This,pAsync) #define ID3D11DeviceContext4_End(This,pAsync) (This)->lpVtbl->End(This,pAsync) #define ID3D11DeviceContext4_GetData(This,pAsync,pData,DataSize,GetDataFlags) (This)->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags) #define ID3D11DeviceContext4_SetPredication(This,pPredicate,PredicateValue) (This)->lpVtbl->SetPredication(This,pPredicate,PredicateValue) #define ID3D11DeviceContext4_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) (This)->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) #define ID3D11DeviceContext4_OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext4_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) (This)->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) #define ID3D11DeviceContext4_OMSetDepthStencilState(This,pDepthStencilState,StencilRef) (This)->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef) #define ID3D11DeviceContext4_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) (This)->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) #define ID3D11DeviceContext4_DrawAuto(This) (This)->lpVtbl->DrawAuto(This) #define ID3D11DeviceContext4_DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext4_DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext4_Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) (This)->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ) #define ID3D11DeviceContext4_DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) (This)->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs) #define ID3D11DeviceContext4_RSSetState(This,pRasterizerState) (This)->lpVtbl->RSSetState(This,pRasterizerState) #define ID3D11DeviceContext4_RSSetViewports(This,NumViewports,pViewports) (This)->lpVtbl->RSSetViewports(This,NumViewports,pViewports) #define ID3D11DeviceContext4_RSSetScissorRects(This,NumRects,pRects) (This)->lpVtbl->RSSetScissorRects(This,NumRects,pRects) #define ID3D11DeviceContext4_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) (This)->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) #define ID3D11DeviceContext4_CopyResource(This,pDstResource,pSrcResource) (This)->lpVtbl->CopyResource(This,pDstResource,pSrcResource) #define ID3D11DeviceContext4_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) (This)->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) #define ID3D11DeviceContext4_CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) (This)->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView) #define ID3D11DeviceContext4_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) (This)->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) #define ID3D11DeviceContext4_ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext4_ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values) #define ID3D11DeviceContext4_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) (This)->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) #define ID3D11DeviceContext4_GenerateMips(This,pShaderResourceView) (This)->lpVtbl->GenerateMips(This,pShaderResourceView) #define ID3D11DeviceContext4_SetResourceMinLOD(This,pResource,MinLOD) (This)->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD) #define ID3D11DeviceContext4_GetResourceMinLOD(This,pResource) (This)->lpVtbl->GetResourceMinLOD(This,pResource) #define ID3D11DeviceContext4_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) (This)->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) #define ID3D11DeviceContext4_ExecuteCommandList(This,pCommandList,RestoreContextState) (This)->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState) #define ID3D11DeviceContext4_HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) (This)->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts) #define ID3D11DeviceContext4_CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) (This)->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances) #define ID3D11DeviceContext4_CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_IAGetInputLayout(This,ppInputLayout) (This)->lpVtbl->IAGetInputLayout(This,ppInputLayout) #define ID3D11DeviceContext4_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) (This)->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) #define ID3D11DeviceContext4_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) (This)->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) #define ID3D11DeviceContext4_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_IAGetPrimitiveTopology(This,pTopology) (This)->lpVtbl->IAGetPrimitiveTopology(This,pTopology) #define ID3D11DeviceContext4_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_GetPredication(This,ppPredicate,pPredicateValue) (This)->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue) #define ID3D11DeviceContext4_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) (This)->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) #define ID3D11DeviceContext4_OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext4_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) (This)->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) #define ID3D11DeviceContext4_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) (This)->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) #define ID3D11DeviceContext4_SOGetTargets(This,NumBuffers,ppSOTargets) (This)->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets) #define ID3D11DeviceContext4_RSGetState(This,ppRasterizerState) (This)->lpVtbl->RSGetState(This,ppRasterizerState) #define ID3D11DeviceContext4_RSGetViewports(This,pNumViewports,pViewports) (This)->lpVtbl->RSGetViewports(This,pNumViewports,pViewports) #define ID3D11DeviceContext4_RSGetScissorRects(This,pNumRects,pRects) (This)->lpVtbl->RSGetScissorRects(This,pNumRects,pRects) #define ID3D11DeviceContext4_HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) (This)->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) #define ID3D11DeviceContext4_CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) (This)->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews) #define ID3D11DeviceContext4_CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) (This)->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances) #define ID3D11DeviceContext4_CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) (This)->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) #define ID3D11DeviceContext4_CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) (This)->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) #define ID3D11DeviceContext4_ClearState(This) (This)->lpVtbl->ClearState(This) #define ID3D11DeviceContext4_Flush(This) (This)->lpVtbl->Flush(This) #define ID3D11DeviceContext4_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D11DeviceContext4_GetContextFlags(This) (This)->lpVtbl->GetContextFlags(This) #define ID3D11DeviceContext4_FinishCommandList(This,RestoreDeferredContextState,ppCommandList) (This)->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList) /*** ID3D11DeviceContext1 methods ***/ #define ID3D11DeviceContext4_CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) (This)->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags) #define ID3D11DeviceContext4_UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) (This)->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags) #define ID3D11DeviceContext4_DiscardResource(This,pResource) (This)->lpVtbl->DiscardResource(This,pResource) #define ID3D11DeviceContext4_DiscardView(This,pResourceView) (This)->lpVtbl->DiscardView(This,pResourceView) #define ID3D11DeviceContext4_VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) (This)->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants) #define ID3D11DeviceContext4_SwapDeviceContextState(This,pState,ppPreviousState) (This)->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState) #define ID3D11DeviceContext4_ClearView(This,pView,Color,pRect,NumRects) (This)->lpVtbl->ClearView(This,pView,Color,pRect,NumRects) #define ID3D11DeviceContext4_DiscardView1(This,pResourceView,pRects,NumRects) (This)->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects) /*** ID3D11DeviceContext2 methods ***/ #define ID3D11DeviceContext4_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags) #define ID3D11DeviceContext4_CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags) #define ID3D11DeviceContext4_CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) (This)->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags) #define ID3D11DeviceContext4_UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) (This)->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags) #define ID3D11DeviceContext4_ResizeTilePool(This,pool,size) (This)->lpVtbl->ResizeTilePool(This,pool,size) #define ID3D11DeviceContext4_TiledResourceBarrier(This,before_barrier,after_barrier) (This)->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier) #define ID3D11DeviceContext4_IsAnnotationEnabled(This) (This)->lpVtbl->IsAnnotationEnabled(This) #define ID3D11DeviceContext4_SetMarkerInt(This,label,data) (This)->lpVtbl->SetMarkerInt(This,label,data) #define ID3D11DeviceContext4_BeginEventInt(This,label,data) (This)->lpVtbl->BeginEventInt(This,label,data) #define ID3D11DeviceContext4_EndEvent(This) (This)->lpVtbl->EndEvent(This) /*** ID3D11DeviceContext3 methods ***/ #define ID3D11DeviceContext4_Flush1(This,type,event) (This)->lpVtbl->Flush1(This,type,event) #define ID3D11DeviceContext4_SetHardwareProtectionState(This,enable) (This)->lpVtbl->SetHardwareProtectionState(This,enable) #define ID3D11DeviceContext4_GetHardwareProtectionState(This,enable) (This)->lpVtbl->GetHardwareProtectionState(This,enable) /*** ID3D11DeviceContext4 methods ***/ #define ID3D11DeviceContext4_Signal(This,fence,value) (This)->lpVtbl->Signal(This,fence,value) #define ID3D11DeviceContext4_Wait(This,fence,value) (This)->lpVtbl->Wait(This,fence,value) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext4_QueryInterface(ID3D11DeviceContext4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11DeviceContext4_AddRef(ID3D11DeviceContext4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11DeviceContext4_Release(ID3D11DeviceContext4* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11DeviceContext4_GetDevice(ID3D11DeviceContext4* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11DeviceContext4_GetPrivateData(ID3D11DeviceContext4* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext4_SetPrivateData(ID3D11DeviceContext4* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11DeviceContext4_SetPrivateDataInterface(ID3D11DeviceContext4* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11DeviceContext methods ***/ static FORCEINLINE void ID3D11DeviceContext4_VSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_PSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_PSSetShader(ID3D11DeviceContext4* This,ID3D11PixelShader *pPixelShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->PSSetShader(This,pPixelShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_PSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_VSSetShader(ID3D11DeviceContext4* This,ID3D11VertexShader *pVertexShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->VSSetShader(This,pVertexShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_DrawIndexed(ID3D11DeviceContext4* This,UINT IndexCount,UINT StartIndexLocation,INT BaseVertexLocation) { This->lpVtbl->DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation); } static FORCEINLINE void ID3D11DeviceContext4_Draw(ID3D11DeviceContext4* This,UINT VertexCount,UINT StartVertexLocation) { This->lpVtbl->Draw(This,VertexCount,StartVertexLocation); } static FORCEINLINE HRESULT ID3D11DeviceContext4_Map(ID3D11DeviceContext4* This,ID3D11Resource *pResource,UINT Subresource,D3D11_MAP MapType,UINT MapFlags,D3D11_MAPPED_SUBRESOURCE *pMappedResource) { return This->lpVtbl->Map(This,pResource,Subresource,MapType,MapFlags,pMappedResource); } static FORCEINLINE void ID3D11DeviceContext4_Unmap(ID3D11DeviceContext4* This,ID3D11Resource *pResource,UINT Subresource) { This->lpVtbl->Unmap(This,pResource,Subresource); } static FORCEINLINE void ID3D11DeviceContext4_PSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_IASetInputLayout(ID3D11DeviceContext4* This,ID3D11InputLayout *pInputLayout) { This->lpVtbl->IASetInputLayout(This,pInputLayout); } static FORCEINLINE void ID3D11DeviceContext4_IASetVertexBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppVertexBuffers,const UINT *pStrides,const UINT *pOffsets) { This->lpVtbl->IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext4_IASetIndexBuffer(ID3D11DeviceContext4* This,ID3D11Buffer *pIndexBuffer,DXGI_FORMAT Format,UINT Offset) { This->lpVtbl->IASetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext4_DrawIndexedInstanced(ID3D11DeviceContext4* This,UINT IndexCountPerInstance,UINT InstanceCount,UINT StartIndexLocation,INT BaseVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext4_DrawInstanced(ID3D11DeviceContext4* This,UINT VertexCountPerInstance,UINT InstanceCount,UINT StartVertexLocation,UINT StartInstanceLocation) { This->lpVtbl->DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation); } static FORCEINLINE void ID3D11DeviceContext4_GSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_GSSetShader(ID3D11DeviceContext4* This,ID3D11GeometryShader *pShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->GSSetShader(This,pShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_IASetPrimitiveTopology(ID3D11DeviceContext4* This,D3D11_PRIMITIVE_TOPOLOGY Topology) { This->lpVtbl->IASetPrimitiveTopology(This,Topology); } static FORCEINLINE void ID3D11DeviceContext4_VSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_VSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_Begin(ID3D11DeviceContext4* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->Begin(This,pAsync); } static FORCEINLINE void ID3D11DeviceContext4_End(ID3D11DeviceContext4* This,ID3D11Asynchronous *pAsync) { This->lpVtbl->End(This,pAsync); } static FORCEINLINE HRESULT ID3D11DeviceContext4_GetData(ID3D11DeviceContext4* This,ID3D11Asynchronous *pAsync,void *pData,UINT DataSize,UINT GetDataFlags) { return This->lpVtbl->GetData(This,pAsync,pData,DataSize,GetDataFlags); } static FORCEINLINE void ID3D11DeviceContext4_SetPredication(ID3D11DeviceContext4* This,ID3D11Predicate *pPredicate,WINBOOL PredicateValue) { This->lpVtbl->SetPredication(This,pPredicate,PredicateValue); } static FORCEINLINE void ID3D11DeviceContext4_GSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_GSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_OMSetRenderTargets(ID3D11DeviceContext4* This,UINT NumViews,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView) { This->lpVtbl->OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext4_OMSetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext4* This,UINT NumRTVs,ID3D11RenderTargetView *const *ppRenderTargetViews,ID3D11DepthStencilView *pDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->OMSetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,pDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext4_OMSetBlendState(ID3D11DeviceContext4* This,ID3D11BlendState *pBlendState,const FLOAT BlendFactor[4],UINT SampleMask) { This->lpVtbl->OMSetBlendState(This,pBlendState,BlendFactor,SampleMask); } static FORCEINLINE void ID3D11DeviceContext4_OMSetDepthStencilState(ID3D11DeviceContext4* This,ID3D11DepthStencilState *pDepthStencilState,UINT StencilRef) { This->lpVtbl->OMSetDepthStencilState(This,pDepthStencilState,StencilRef); } static FORCEINLINE void ID3D11DeviceContext4_SOSetTargets(ID3D11DeviceContext4* This,UINT NumBuffers,ID3D11Buffer *const *ppSOTargets,const UINT *pOffsets) { This->lpVtbl->SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets); } static FORCEINLINE void ID3D11DeviceContext4_DrawAuto(ID3D11DeviceContext4* This) { This->lpVtbl->DrawAuto(This); } static FORCEINLINE void ID3D11DeviceContext4_DrawIndexedInstancedIndirect(ID3D11DeviceContext4* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawIndexedInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext4_DrawInstancedIndirect(ID3D11DeviceContext4* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DrawInstancedIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext4_Dispatch(ID3D11DeviceContext4* This,UINT ThreadGroupCountX,UINT ThreadGroupCountY,UINT ThreadGroupCountZ) { This->lpVtbl->Dispatch(This,ThreadGroupCountX,ThreadGroupCountY,ThreadGroupCountZ); } static FORCEINLINE void ID3D11DeviceContext4_DispatchIndirect(ID3D11DeviceContext4* This,ID3D11Buffer *pBufferForArgs,UINT AlignedByteOffsetForArgs) { This->lpVtbl->DispatchIndirect(This,pBufferForArgs,AlignedByteOffsetForArgs); } static FORCEINLINE void ID3D11DeviceContext4_RSSetState(ID3D11DeviceContext4* This,ID3D11RasterizerState *pRasterizerState) { This->lpVtbl->RSSetState(This,pRasterizerState); } static FORCEINLINE void ID3D11DeviceContext4_RSSetViewports(ID3D11DeviceContext4* This,UINT NumViewports,const D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSSetViewports(This,NumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext4_RSSetScissorRects(ID3D11DeviceContext4* This,UINT NumRects,const D3D11_RECT *pRects) { This->lpVtbl->RSSetScissorRects(This,NumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext4_CopySubresourceRegion(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox) { This->lpVtbl->CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox); } static FORCEINLINE void ID3D11DeviceContext4_CopyResource(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,ID3D11Resource *pSrcResource) { This->lpVtbl->CopyResource(This,pDstResource,pSrcResource); } static FORCEINLINE void ID3D11DeviceContext4_UpdateSubresource(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch) { This->lpVtbl->UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch); } static FORCEINLINE void ID3D11DeviceContext4_CopyStructureCount(ID3D11DeviceContext4* This,ID3D11Buffer *pDstBuffer,UINT DstAlignedByteOffset,ID3D11UnorderedAccessView *pSrcView) { This->lpVtbl->CopyStructureCount(This,pDstBuffer,DstAlignedByteOffset,pSrcView); } static FORCEINLINE void ID3D11DeviceContext4_ClearRenderTargetView(ID3D11DeviceContext4* This,ID3D11RenderTargetView *pRenderTargetView,const FLOAT ColorRGBA[4]) { This->lpVtbl->ClearRenderTargetView(This,pRenderTargetView,ColorRGBA); } static FORCEINLINE void ID3D11DeviceContext4_ClearUnorderedAccessViewUint(ID3D11DeviceContext4* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const UINT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewUint(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext4_ClearUnorderedAccessViewFloat(ID3D11DeviceContext4* This,ID3D11UnorderedAccessView *pUnorderedAccessView,const FLOAT Values[4]) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,pUnorderedAccessView,Values); } static FORCEINLINE void ID3D11DeviceContext4_ClearDepthStencilView(ID3D11DeviceContext4* This,ID3D11DepthStencilView *pDepthStencilView,UINT ClearFlags,FLOAT Depth,UINT8 Stencil) { This->lpVtbl->ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil); } static FORCEINLINE void ID3D11DeviceContext4_GenerateMips(ID3D11DeviceContext4* This,ID3D11ShaderResourceView *pShaderResourceView) { This->lpVtbl->GenerateMips(This,pShaderResourceView); } static FORCEINLINE void ID3D11DeviceContext4_SetResourceMinLOD(ID3D11DeviceContext4* This,ID3D11Resource *pResource,FLOAT MinLOD) { This->lpVtbl->SetResourceMinLOD(This,pResource,MinLOD); } static FORCEINLINE FLOAT ID3D11DeviceContext4_GetResourceMinLOD(ID3D11DeviceContext4* This,ID3D11Resource *pResource) { return This->lpVtbl->GetResourceMinLOD(This,pResource); } static FORCEINLINE void ID3D11DeviceContext4_ResolveSubresource(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,UINT DstSubresource,ID3D11Resource *pSrcResource,UINT SrcSubresource,DXGI_FORMAT Format) { This->lpVtbl->ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format); } static FORCEINLINE void ID3D11DeviceContext4_ExecuteCommandList(ID3D11DeviceContext4* This,ID3D11CommandList *pCommandList,WINBOOL RestoreContextState) { This->lpVtbl->ExecuteCommandList(This,pCommandList,RestoreContextState); } static FORCEINLINE void ID3D11DeviceContext4_HSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->HSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_HSSetShader(ID3D11DeviceContext4* This,ID3D11HullShader *pHullShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->HSSetShader(This,pHullShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_HSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->HSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_HSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->HSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_DSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->DSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_DSSetShader(ID3D11DeviceContext4* This,ID3D11DomainShader *pDomainShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->DSSetShader(This,pDomainShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_DSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->DSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_DSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->DSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_CSSetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView *const *ppShaderResourceViews) { This->lpVtbl->CSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_CSSetUnorderedAccessViews(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView *const *ppUnorderedAccessViews,const UINT *pUAVInitialCounts) { This->lpVtbl->CSSetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews,pUAVInitialCounts); } static FORCEINLINE void ID3D11DeviceContext4_CSSetShader(ID3D11DeviceContext4* This,ID3D11ComputeShader *pComputeShader,ID3D11ClassInstance *const *ppClassInstances,UINT NumClassInstances) { This->lpVtbl->CSSetShader(This,pComputeShader,ppClassInstances,NumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_CSSetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState *const *ppSamplers) { This->lpVtbl->CSSetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_CSSetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers) { This->lpVtbl->CSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_VSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_PSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_PSGetShader(ID3D11DeviceContext4* This,ID3D11PixelShader **ppPixelShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->PSGetShader(This,ppPixelShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_PSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_VSGetShader(ID3D11DeviceContext4* This,ID3D11VertexShader **ppVertexShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->VSGetShader(This,ppVertexShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_PSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_IAGetInputLayout(ID3D11DeviceContext4* This,ID3D11InputLayout **ppInputLayout) { This->lpVtbl->IAGetInputLayout(This,ppInputLayout); } static FORCEINLINE void ID3D11DeviceContext4_IAGetVertexBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppVertexBuffers,UINT *pStrides,UINT *pOffsets) { This->lpVtbl->IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets); } static FORCEINLINE void ID3D11DeviceContext4_IAGetIndexBuffer(ID3D11DeviceContext4* This,ID3D11Buffer **pIndexBuffer,DXGI_FORMAT *Format,UINT *Offset) { This->lpVtbl->IAGetIndexBuffer(This,pIndexBuffer,Format,Offset); } static FORCEINLINE void ID3D11DeviceContext4_GSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_GSGetShader(ID3D11DeviceContext4* This,ID3D11GeometryShader **ppGeometryShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->GSGetShader(This,ppGeometryShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_IAGetPrimitiveTopology(ID3D11DeviceContext4* This,D3D11_PRIMITIVE_TOPOLOGY *pTopology) { This->lpVtbl->IAGetPrimitiveTopology(This,pTopology); } static FORCEINLINE void ID3D11DeviceContext4_VSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_VSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_GetPredication(ID3D11DeviceContext4* This,ID3D11Predicate **ppPredicate,WINBOOL *pPredicateValue) { This->lpVtbl->GetPredication(This,ppPredicate,pPredicateValue); } static FORCEINLINE void ID3D11DeviceContext4_GSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_GSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_OMGetRenderTargets(ID3D11DeviceContext4* This,UINT NumViews,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView) { This->lpVtbl->OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView); } static FORCEINLINE void ID3D11DeviceContext4_OMGetRenderTargetsAndUnorderedAccessViews(ID3D11DeviceContext4* This,UINT NumRTVs,ID3D11RenderTargetView **ppRenderTargetViews,ID3D11DepthStencilView **ppDepthStencilView,UINT UAVStartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->OMGetRenderTargetsAndUnorderedAccessViews(This,NumRTVs,ppRenderTargetViews,ppDepthStencilView,UAVStartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext4_OMGetBlendState(ID3D11DeviceContext4* This,ID3D11BlendState **ppBlendState,FLOAT BlendFactor[4],UINT *pSampleMask) { This->lpVtbl->OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask); } static FORCEINLINE void ID3D11DeviceContext4_OMGetDepthStencilState(ID3D11DeviceContext4* This,ID3D11DepthStencilState **ppDepthStencilState,UINT *pStencilRef) { This->lpVtbl->OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef); } static FORCEINLINE void ID3D11DeviceContext4_SOGetTargets(ID3D11DeviceContext4* This,UINT NumBuffers,ID3D11Buffer **ppSOTargets) { This->lpVtbl->SOGetTargets(This,NumBuffers,ppSOTargets); } static FORCEINLINE void ID3D11DeviceContext4_RSGetState(ID3D11DeviceContext4* This,ID3D11RasterizerState **ppRasterizerState) { This->lpVtbl->RSGetState(This,ppRasterizerState); } static FORCEINLINE void ID3D11DeviceContext4_RSGetViewports(ID3D11DeviceContext4* This,UINT *pNumViewports,D3D11_VIEWPORT *pViewports) { This->lpVtbl->RSGetViewports(This,pNumViewports,pViewports); } static FORCEINLINE void ID3D11DeviceContext4_RSGetScissorRects(ID3D11DeviceContext4* This,UINT *pNumRects,D3D11_RECT *pRects) { This->lpVtbl->RSGetScissorRects(This,pNumRects,pRects); } static FORCEINLINE void ID3D11DeviceContext4_HSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->HSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_HSGetShader(ID3D11DeviceContext4* This,ID3D11HullShader **ppHullShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->HSGetShader(This,ppHullShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_HSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->HSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_HSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->HSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_DSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->DSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_DSGetShader(ID3D11DeviceContext4* This,ID3D11DomainShader **ppDomainShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->DSGetShader(This,ppDomainShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_DSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->DSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_DSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->DSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_CSGetShaderResources(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumViews,ID3D11ShaderResourceView **ppShaderResourceViews) { This->lpVtbl->CSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews); } static FORCEINLINE void ID3D11DeviceContext4_CSGetUnorderedAccessViews(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumUAVs,ID3D11UnorderedAccessView **ppUnorderedAccessViews) { This->lpVtbl->CSGetUnorderedAccessViews(This,StartSlot,NumUAVs,ppUnorderedAccessViews); } static FORCEINLINE void ID3D11DeviceContext4_CSGetShader(ID3D11DeviceContext4* This,ID3D11ComputeShader **ppComputeShader,ID3D11ClassInstance **ppClassInstances,UINT *pNumClassInstances) { This->lpVtbl->CSGetShader(This,ppComputeShader,ppClassInstances,pNumClassInstances); } static FORCEINLINE void ID3D11DeviceContext4_CSGetSamplers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumSamplers,ID3D11SamplerState **ppSamplers) { This->lpVtbl->CSGetSamplers(This,StartSlot,NumSamplers,ppSamplers); } static FORCEINLINE void ID3D11DeviceContext4_CSGetConstantBuffers(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers) { This->lpVtbl->CSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers); } static FORCEINLINE void ID3D11DeviceContext4_ClearState(ID3D11DeviceContext4* This) { This->lpVtbl->ClearState(This); } static FORCEINLINE void ID3D11DeviceContext4_Flush(ID3D11DeviceContext4* This) { This->lpVtbl->Flush(This); } static FORCEINLINE D3D11_DEVICE_CONTEXT_TYPE ID3D11DeviceContext4_GetType(ID3D11DeviceContext4* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE UINT ID3D11DeviceContext4_GetContextFlags(ID3D11DeviceContext4* This) { return This->lpVtbl->GetContextFlags(This); } static FORCEINLINE HRESULT ID3D11DeviceContext4_FinishCommandList(ID3D11DeviceContext4* This,WINBOOL RestoreDeferredContextState,ID3D11CommandList **ppCommandList) { return This->lpVtbl->FinishCommandList(This,RestoreDeferredContextState,ppCommandList); } /*** ID3D11DeviceContext1 methods ***/ static FORCEINLINE void ID3D11DeviceContext4_CopySubresourceRegion1(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,UINT DstSubresource,UINT DstX,UINT DstY,UINT DstZ,ID3D11Resource *pSrcResource,UINT SrcSubresource,const D3D11_BOX *pSrcBox,UINT CopyFlags) { This->lpVtbl->CopySubresourceRegion1(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext4_UpdateSubresource1(ID3D11DeviceContext4* This,ID3D11Resource *pDstResource,UINT DstSubresource,const D3D11_BOX *pDstBox,const void *pSrcData,UINT SrcRowPitch,UINT SrcDepthPitch,UINT CopyFlags) { This->lpVtbl->UpdateSubresource1(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch,CopyFlags); } static FORCEINLINE void ID3D11DeviceContext4_DiscardResource(ID3D11DeviceContext4* This,ID3D11Resource *pResource) { This->lpVtbl->DiscardResource(This,pResource); } static FORCEINLINE void ID3D11DeviceContext4_DiscardView(ID3D11DeviceContext4* This,ID3D11View *pResourceView) { This->lpVtbl->DiscardView(This,pResourceView); } static FORCEINLINE void ID3D11DeviceContext4_VSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->VSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_HSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->HSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_DSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->DSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_GSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->GSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_PSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->PSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_CSSetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer *const *ppConstantBuffers,const UINT *pFirstConstant,const UINT *pNumConstants) { This->lpVtbl->CSSetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_VSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->VSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_HSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->HSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_DSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->DSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_GSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->GSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_PSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->PSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_CSGetConstantBuffers1(ID3D11DeviceContext4* This,UINT StartSlot,UINT NumBuffers,ID3D11Buffer **ppConstantBuffers,UINT *pFirstConstant,UINT *pNumConstants) { This->lpVtbl->CSGetConstantBuffers1(This,StartSlot,NumBuffers,ppConstantBuffers,pFirstConstant,pNumConstants); } static FORCEINLINE void ID3D11DeviceContext4_SwapDeviceContextState(ID3D11DeviceContext4* This,ID3DDeviceContextState *pState,ID3DDeviceContextState **ppPreviousState) { This->lpVtbl->SwapDeviceContextState(This,pState,ppPreviousState); } static FORCEINLINE void ID3D11DeviceContext4_ClearView(ID3D11DeviceContext4* This,ID3D11View *pView,const FLOAT Color[4],const D3D11_RECT *pRect,UINT NumRects) { This->lpVtbl->ClearView(This,pView,Color,pRect,NumRects); } static FORCEINLINE void ID3D11DeviceContext4_DiscardView1(ID3D11DeviceContext4* This,ID3D11View *pResourceView,const D3D11_RECT *pRects,UINT NumRects) { This->lpVtbl->DiscardView1(This,pResourceView,pRects,NumRects); } /*** ID3D11DeviceContext2 methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext4_UpdateTileMappings(ID3D11DeviceContext4* This,ID3D11Resource *resource,UINT region_count,const D3D11_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D11_TILE_REGION_SIZE *region_sizes,ID3D11Buffer *pool,UINT range_count,const UINT *range_flags,const UINT *pool_start_offsets,const UINT *range_tile_counts,UINT flags) { return This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,pool,range_count,range_flags,pool_start_offsets,range_tile_counts,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext4_CopyTileMappings(ID3D11DeviceContext4* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,ID3D11Resource *src_resource,const D3D11_TILED_RESOURCE_COORDINATE *src_start_coordinate,const D3D11_TILE_REGION_SIZE *region_size,UINT flags) { return This->lpVtbl->CopyTileMappings(This,dst_resource,dst_start_coordinate,src_resource,src_start_coordinate,region_size,flags); } static FORCEINLINE void ID3D11DeviceContext4_CopyTiles(ID3D11DeviceContext4* This,ID3D11Resource *resource,const D3D11_TILED_RESOURCE_COORDINATE *start_coordinate,const D3D11_TILE_REGION_SIZE *size,ID3D11Buffer *buffer,UINT64 start_offset,UINT flags) { This->lpVtbl->CopyTiles(This,resource,start_coordinate,size,buffer,start_offset,flags); } static FORCEINLINE void ID3D11DeviceContext4_UpdateTiles(ID3D11DeviceContext4* This,ID3D11Resource *dst_resource,const D3D11_TILED_RESOURCE_COORDINATE *dst_start_coordinate,const D3D11_TILE_REGION_SIZE *dst_region_size,const void *src_data,UINT flags) { This->lpVtbl->UpdateTiles(This,dst_resource,dst_start_coordinate,dst_region_size,src_data,flags); } static FORCEINLINE HRESULT ID3D11DeviceContext4_ResizeTilePool(ID3D11DeviceContext4* This,ID3D11Buffer *pool,UINT64 size) { return This->lpVtbl->ResizeTilePool(This,pool,size); } static FORCEINLINE void ID3D11DeviceContext4_TiledResourceBarrier(ID3D11DeviceContext4* This,ID3D11DeviceChild *before_barrier,ID3D11DeviceChild *after_barrier) { This->lpVtbl->TiledResourceBarrier(This,before_barrier,after_barrier); } static FORCEINLINE WINBOOL ID3D11DeviceContext4_IsAnnotationEnabled(ID3D11DeviceContext4* This) { return This->lpVtbl->IsAnnotationEnabled(This); } static FORCEINLINE void ID3D11DeviceContext4_SetMarkerInt(ID3D11DeviceContext4* This,const WCHAR *label,int data) { This->lpVtbl->SetMarkerInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext4_BeginEventInt(ID3D11DeviceContext4* This,const WCHAR *label,int data) { This->lpVtbl->BeginEventInt(This,label,data); } static FORCEINLINE void ID3D11DeviceContext4_EndEvent(ID3D11DeviceContext4* This) { This->lpVtbl->EndEvent(This); } /*** ID3D11DeviceContext3 methods ***/ static FORCEINLINE void ID3D11DeviceContext4_Flush1(ID3D11DeviceContext4* This,D3D11_CONTEXT_TYPE type,HANDLE event) { This->lpVtbl->Flush1(This,type,event); } static FORCEINLINE void ID3D11DeviceContext4_SetHardwareProtectionState(ID3D11DeviceContext4* This,WINBOOL enable) { This->lpVtbl->SetHardwareProtectionState(This,enable); } static FORCEINLINE void ID3D11DeviceContext4_GetHardwareProtectionState(ID3D11DeviceContext4* This,WINBOOL *enable) { This->lpVtbl->GetHardwareProtectionState(This,enable); } /*** ID3D11DeviceContext4 methods ***/ static FORCEINLINE HRESULT ID3D11DeviceContext4_Signal(ID3D11DeviceContext4* This,ID3D11Fence *fence,UINT64 value) { return This->lpVtbl->Signal(This,fence,value); } static FORCEINLINE HRESULT ID3D11DeviceContext4_Wait(ID3D11DeviceContext4* This,ID3D11Fence *fence,UINT64 value) { return This->lpVtbl->Wait(This,fence,value); } #endif #endif #endif #endif /* __ID3D11DeviceContext4_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Device3 interface */ #ifndef __ID3D11Device3_INTERFACE_DEFINED__ #define __ID3D11Device3_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device3, 0xa05c8c37, 0xd2c6, 0x4732, 0xb3,0xa0, 0x9c,0xe0,0xb0,0xdc,0x9a,0xe6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a05c8c37-d2c6-4732-b3a0-9ce0b0dc9ae6") ID3D11Device3 : public ID3D11Device2 { virtual HRESULT STDMETHODCALLTYPE CreateTexture2D1( const D3D11_TEXTURE2D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture2D1 **texture) = 0; virtual HRESULT STDMETHODCALLTYPE CreateTexture3D1( const D3D11_TEXTURE3D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture3D1 **texture) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRasterizerState2( const D3D11_RASTERIZER_DESC2 *desc, ID3D11RasterizerState2 **state) = 0; virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView1( ID3D11Resource *resource, const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc, ID3D11ShaderResourceView1 **view) = 0; virtual HRESULT STDMETHODCALLTYPE CreateUnorderedAccessView1( ID3D11Resource *resource, const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc, ID3D11UnorderedAccessView1 **view) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRenderTargetView1( ID3D11Resource *resource, const D3D11_RENDER_TARGET_VIEW_DESC1 *desc, ID3D11RenderTargetView1 **view) = 0; virtual HRESULT STDMETHODCALLTYPE CreateQuery1( const D3D11_QUERY_DESC1 *desc, ID3D11Query1 **query) = 0; virtual void STDMETHODCALLTYPE GetImmediateContext3( ID3D11DeviceContext3 **context) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDeferredContext3( UINT flags, ID3D11DeviceContext3 **context) = 0; virtual void STDMETHODCALLTYPE WriteToSubresource( ID3D11Resource *dst_resource, UINT dst_subresource, const D3D11_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_depth_pitch) = 0; virtual void STDMETHODCALLTYPE ReadFromSubresource( void *dst_data, UINT dst_row_pitch, UINT dst_depth_pitch, ID3D11Resource *src_resource, UINT src_subresource, const D3D11_BOX *src_box) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device3, 0xa05c8c37, 0xd2c6, 0x4732, 0xb3,0xa0, 0x9c,0xe0,0xb0,0xdc,0x9a,0xe6) #endif #else typedef struct ID3D11Device3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device3 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device3 *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device3 *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device3 *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device3 *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device3 *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device3 *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device3 *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device3 *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device3 *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device3 *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device3 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device3 *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device3 *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device3 *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device3 *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device3 *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device3 *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device3 *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device3 *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device3 *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device3 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device3 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device3 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device3 *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device3 *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device3 *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device3 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device3 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device3 *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device3 *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device3 *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device3 *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device3 *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device3 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device3 *This); /*** ID3D11Device1 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext1)( ID3D11Device3 *This, ID3D11DeviceContext1 **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)( ID3D11Device3 *This, UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D11Device3 *This, const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)( ID3D11Device3 *This, const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)( ID3D11Device3 *This, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState); HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)( ID3D11Device3 *This, HANDLE hResource, REFIID returnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)( ID3D11Device3 *This, LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource); /*** ID3D11Device2 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext2)( ID3D11Device3 *This, ID3D11DeviceContext2 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)( ID3D11Device3 *This, UINT flags, ID3D11DeviceContext2 **context); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D11Device3 *This, ID3D11Resource *resource, UINT *tile_count, D3D11_PACKED_MIP_DESC *mip_desc, D3D11_TILE_SHAPE *tile_shape, UINT *subresource_tiling_count, UINT first_subresource_tiling, D3D11_SUBRESOURCE_TILING *subresource_tiling); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)( ID3D11Device3 *This, DXGI_FORMAT format, UINT sample_count, UINT flags, UINT *quality_level_count); /*** ID3D11Device3 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateTexture2D1)( ID3D11Device3 *This, const D3D11_TEXTURE2D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture2D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateTexture3D1)( ID3D11Device3 *This, const D3D11_TEXTURE3D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture3D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState2)( ID3D11Device3 *This, const D3D11_RASTERIZER_DESC2 *desc, ID3D11RasterizerState2 **state); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView1)( ID3D11Device3 *This, ID3D11Resource *resource, const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc, ID3D11ShaderResourceView1 **view); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView1)( ID3D11Device3 *This, ID3D11Resource *resource, const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc, ID3D11UnorderedAccessView1 **view); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView1)( ID3D11Device3 *This, ID3D11Resource *resource, const D3D11_RENDER_TARGET_VIEW_DESC1 *desc, ID3D11RenderTargetView1 **view); HRESULT (STDMETHODCALLTYPE *CreateQuery1)( ID3D11Device3 *This, const D3D11_QUERY_DESC1 *desc, ID3D11Query1 **query); void (STDMETHODCALLTYPE *GetImmediateContext3)( ID3D11Device3 *This, ID3D11DeviceContext3 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext3)( ID3D11Device3 *This, UINT flags, ID3D11DeviceContext3 **context); void (STDMETHODCALLTYPE *WriteToSubresource)( ID3D11Device3 *This, ID3D11Resource *dst_resource, UINT dst_subresource, const D3D11_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_depth_pitch); void (STDMETHODCALLTYPE *ReadFromSubresource)( ID3D11Device3 *This, void *dst_data, UINT dst_row_pitch, UINT dst_depth_pitch, ID3D11Resource *src_resource, UINT src_subresource, const D3D11_BOX *src_box); END_INTERFACE } ID3D11Device3Vtbl; interface ID3D11Device3 { CONST_VTBL ID3D11Device3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device3_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device3_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device3_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device3_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device3_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device3_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device3_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device3_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device3_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device3_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device3_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device3_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device3_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device3_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device3_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device3_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device3_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device3_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device3_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device3_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device3_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device3_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device3_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device3_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device3_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device3_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device3_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device3_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device3_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device3_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device3_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device3_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device3_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device3_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device3_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device3_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device3_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device3_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device3_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device3_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device3_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device3_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) /*** ID3D11Device1 methods ***/ #define ID3D11Device3_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext) #define ID3D11Device3_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext) #define ID3D11Device3_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D11Device3_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device3_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) #define ID3D11Device3_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource) #define ID3D11Device3_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) /*** ID3D11Device2 methods ***/ #define ID3D11Device3_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context) #define ID3D11Device3_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context) #define ID3D11Device3_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) #define ID3D11Device3_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) /*** ID3D11Device3 methods ***/ #define ID3D11Device3_CreateTexture2D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture) #define ID3D11Device3_CreateTexture3D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture) #define ID3D11Device3_CreateRasterizerState2(This,desc,state) (This)->lpVtbl->CreateRasterizerState2(This,desc,state) #define ID3D11Device3_CreateShaderResourceView1(This,resource,desc,view) (This)->lpVtbl->CreateShaderResourceView1(This,resource,desc,view) #define ID3D11Device3_CreateUnorderedAccessView1(This,resource,desc,view) (This)->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view) #define ID3D11Device3_CreateRenderTargetView1(This,resource,desc,view) (This)->lpVtbl->CreateRenderTargetView1(This,resource,desc,view) #define ID3D11Device3_CreateQuery1(This,desc,query) (This)->lpVtbl->CreateQuery1(This,desc,query) #define ID3D11Device3_GetImmediateContext3(This,context) (This)->lpVtbl->GetImmediateContext3(This,context) #define ID3D11Device3_CreateDeferredContext3(This,flags,context) (This)->lpVtbl->CreateDeferredContext3(This,flags,context) #define ID3D11Device3_WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) (This)->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) #define ID3D11Device3_ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) (This)->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device3_QueryInterface(ID3D11Device3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device3_AddRef(ID3D11Device3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device3_Release(ID3D11Device3* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device3_CreateBuffer(ID3D11Device3* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device3_CreateTexture1D(ID3D11Device3* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device3_CreateTexture2D(ID3D11Device3* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device3_CreateTexture3D(ID3D11Device3* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device3_CreateShaderResourceView(ID3D11Device3* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device3_CreateUnorderedAccessView(ID3D11Device3* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device3_CreateRenderTargetView(ID3D11Device3* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device3_CreateDepthStencilView(ID3D11Device3* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device3_CreateInputLayout(ID3D11Device3* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device3_CreateVertexShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateGeometryShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateGeometryShaderWithStreamOutput(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device3_CreatePixelShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateHullShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateDomainShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateComputeShader(ID3D11Device3* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device3_CreateClassLinkage(ID3D11Device3* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device3_CreateBlendState(ID3D11Device3* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device3_CreateDepthStencilState(ID3D11Device3* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device3_CreateRasterizerState(ID3D11Device3* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device3_CreateSamplerState(ID3D11Device3* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device3_CreateQuery(ID3D11Device3* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device3_CreatePredicate(ID3D11Device3* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device3_CreateCounter(ID3D11Device3* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device3_CreateDeferredContext(ID3D11Device3* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device3_OpenSharedResource(ID3D11Device3* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device3_CheckFormatSupport(ID3D11Device3* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device3_CheckMultisampleQualityLevels(ID3D11Device3* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device3_CheckCounterInfo(ID3D11Device3* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device3_CheckCounter(ID3D11Device3* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device3_CheckFeatureSupport(ID3D11Device3* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device3_GetPrivateData(ID3D11Device3* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device3_SetPrivateData(ID3D11Device3* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device3_SetPrivateDataInterface(ID3D11Device3* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device3_GetFeatureLevel(ID3D11Device3* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device3_GetCreationFlags(ID3D11Device3* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device3_GetDeviceRemovedReason(ID3D11Device3* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device3_GetImmediateContext(ID3D11Device3* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device3_SetExceptionMode(ID3D11Device3* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device3_GetExceptionMode(ID3D11Device3* This) { return This->lpVtbl->GetExceptionMode(This); } /*** ID3D11Device1 methods ***/ static FORCEINLINE void ID3D11Device3_GetImmediateContext1(ID3D11Device3* This,ID3D11DeviceContext1 **ppImmediateContext) { This->lpVtbl->GetImmediateContext1(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device3_CreateDeferredContext1(ID3D11Device3* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device3_CreateBlendState1(ID3D11Device3* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device3_CreateRasterizerState1(ID3D11Device3* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device3_CreateDeviceContextState(ID3D11Device3* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) { return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState); } static FORCEINLINE HRESULT ID3D11Device3_OpenSharedResource1(ID3D11Device3* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device3_OpenSharedResourceByName(ID3D11Device3* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource); } /*** ID3D11Device2 methods ***/ static FORCEINLINE void ID3D11Device3_GetImmediateContext2(ID3D11Device3* This,ID3D11DeviceContext2 **context) { This->lpVtbl->GetImmediateContext2(This,context); } static FORCEINLINE HRESULT ID3D11Device3_CreateDeferredContext2(ID3D11Device3* This,UINT flags,ID3D11DeviceContext2 **context) { return This->lpVtbl->CreateDeferredContext2(This,flags,context); } static FORCEINLINE void ID3D11Device3_GetResourceTiling(ID3D11Device3* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) { This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling); } static FORCEINLINE HRESULT ID3D11Device3_CheckMultisampleQualityLevels1(ID3D11Device3* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) { return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count); } /*** ID3D11Device3 methods ***/ static FORCEINLINE HRESULT ID3D11Device3_CreateTexture2D1(ID3D11Device3* This,const D3D11_TEXTURE2D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture2D1 **texture) { return This->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device3_CreateTexture3D1(ID3D11Device3* This,const D3D11_TEXTURE3D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture3D1 **texture) { return This->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device3_CreateRasterizerState2(ID3D11Device3* This,const D3D11_RASTERIZER_DESC2 *desc,ID3D11RasterizerState2 **state) { return This->lpVtbl->CreateRasterizerState2(This,desc,state); } static FORCEINLINE HRESULT ID3D11Device3_CreateShaderResourceView1(ID3D11Device3* This,ID3D11Resource *resource,const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc,ID3D11ShaderResourceView1 **view) { return This->lpVtbl->CreateShaderResourceView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device3_CreateUnorderedAccessView1(ID3D11Device3* This,ID3D11Resource *resource,const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc,ID3D11UnorderedAccessView1 **view) { return This->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device3_CreateRenderTargetView1(ID3D11Device3* This,ID3D11Resource *resource,const D3D11_RENDER_TARGET_VIEW_DESC1 *desc,ID3D11RenderTargetView1 **view) { return This->lpVtbl->CreateRenderTargetView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device3_CreateQuery1(ID3D11Device3* This,const D3D11_QUERY_DESC1 *desc,ID3D11Query1 **query) { return This->lpVtbl->CreateQuery1(This,desc,query); } static FORCEINLINE void ID3D11Device3_GetImmediateContext3(ID3D11Device3* This,ID3D11DeviceContext3 **context) { This->lpVtbl->GetImmediateContext3(This,context); } static FORCEINLINE HRESULT ID3D11Device3_CreateDeferredContext3(ID3D11Device3* This,UINT flags,ID3D11DeviceContext3 **context) { return This->lpVtbl->CreateDeferredContext3(This,flags,context); } static FORCEINLINE void ID3D11Device3_WriteToSubresource(ID3D11Device3* This,ID3D11Resource *dst_resource,UINT dst_subresource,const D3D11_BOX *dst_box,const void *src_data,UINT src_row_pitch,UINT src_depth_pitch) { This->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch); } static FORCEINLINE void ID3D11Device3_ReadFromSubresource(ID3D11Device3* This,void *dst_data,UINT dst_row_pitch,UINT dst_depth_pitch,ID3D11Resource *src_resource,UINT src_subresource,const D3D11_BOX *src_box) { This->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box); } #endif #endif #endif #endif /* __ID3D11Device3_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11_3_h__ */ dxvk-0~git20220822.9df86f2/d3d11_4.h000066400000000000000000004405001430055512200162120ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11_4.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11_4_h__ #define __d3d11_4_h__ /* Forward declarations */ #ifndef __ID3D11Device4_FWD_DEFINED__ #define __ID3D11Device4_FWD_DEFINED__ typedef interface ID3D11Device4 ID3D11Device4; #ifdef __cplusplus interface ID3D11Device4; #endif /* __cplusplus */ #endif #ifndef __ID3D11Device5_FWD_DEFINED__ #define __ID3D11Device5_FWD_DEFINED__ typedef interface ID3D11Device5 ID3D11Device5; #ifdef __cplusplus interface ID3D11Device5; #endif /* __cplusplus */ #endif #ifndef __ID3D11Multithread_FWD_DEFINED__ #define __ID3D11Multithread_FWD_DEFINED__ typedef interface ID3D11Multithread ID3D11Multithread; #ifdef __cplusplus interface ID3D11Multithread; #endif /* __cplusplus */ #endif #ifndef __ID3D11VideoContext2_FWD_DEFINED__ #define __ID3D11VideoContext2_FWD_DEFINED__ typedef interface ID3D11VideoContext2 ID3D11VideoContext2; #ifdef __cplusplus interface ID3D11VideoContext2; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS4 { WINBOOL ExtendedNV12SharedTextureSupported; } D3D11_FEATURE_DATA_D3D11_OPTIONS4; /***************************************************************************** * ID3D11Device4 interface */ #ifndef __ID3D11Device4_INTERFACE_DEFINED__ #define __ID3D11Device4_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device4, 0x8992ab71, 0x02e6, 0x4b8d, 0xba,0x48, 0xb0,0x56,0xdc,0xda,0x42,0xc4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8992ab71-02e6-4b8d-ba48-b056dcda42c4") ID3D11Device4 : public ID3D11Device3 { virtual HRESULT STDMETHODCALLTYPE RegisterDeviceRemovedEvent( HANDLE event, DWORD *cookie) = 0; virtual void STDMETHODCALLTYPE UnregisterDeviceRemoved( DWORD cookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device4, 0x8992ab71, 0x02e6, 0x4b8d, 0xba,0x48, 0xb0,0x56,0xdc,0xda,0x42,0xc4) #endif #else typedef struct ID3D11Device4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device4 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device4 *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device4 *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device4 *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device4 *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device4 *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device4 *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device4 *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device4 *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device4 *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device4 *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device4 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device4 *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device4 *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device4 *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device4 *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device4 *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device4 *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device4 *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device4 *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device4 *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device4 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device4 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device4 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device4 *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device4 *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device4 *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device4 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device4 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device4 *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device4 *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device4 *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device4 *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device4 *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device4 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device4 *This); /*** ID3D11Device1 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext1)( ID3D11Device4 *This, ID3D11DeviceContext1 **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)( ID3D11Device4 *This, UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D11Device4 *This, const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)( ID3D11Device4 *This, const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)( ID3D11Device4 *This, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState); HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)( ID3D11Device4 *This, HANDLE hResource, REFIID returnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)( ID3D11Device4 *This, LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource); /*** ID3D11Device2 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext2)( ID3D11Device4 *This, ID3D11DeviceContext2 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)( ID3D11Device4 *This, UINT flags, ID3D11DeviceContext2 **context); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D11Device4 *This, ID3D11Resource *resource, UINT *tile_count, D3D11_PACKED_MIP_DESC *mip_desc, D3D11_TILE_SHAPE *tile_shape, UINT *subresource_tiling_count, UINT first_subresource_tiling, D3D11_SUBRESOURCE_TILING *subresource_tiling); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)( ID3D11Device4 *This, DXGI_FORMAT format, UINT sample_count, UINT flags, UINT *quality_level_count); /*** ID3D11Device3 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateTexture2D1)( ID3D11Device4 *This, const D3D11_TEXTURE2D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture2D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateTexture3D1)( ID3D11Device4 *This, const D3D11_TEXTURE3D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture3D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState2)( ID3D11Device4 *This, const D3D11_RASTERIZER_DESC2 *desc, ID3D11RasterizerState2 **state); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView1)( ID3D11Device4 *This, ID3D11Resource *resource, const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc, ID3D11ShaderResourceView1 **view); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView1)( ID3D11Device4 *This, ID3D11Resource *resource, const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc, ID3D11UnorderedAccessView1 **view); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView1)( ID3D11Device4 *This, ID3D11Resource *resource, const D3D11_RENDER_TARGET_VIEW_DESC1 *desc, ID3D11RenderTargetView1 **view); HRESULT (STDMETHODCALLTYPE *CreateQuery1)( ID3D11Device4 *This, const D3D11_QUERY_DESC1 *desc, ID3D11Query1 **query); void (STDMETHODCALLTYPE *GetImmediateContext3)( ID3D11Device4 *This, ID3D11DeviceContext3 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext3)( ID3D11Device4 *This, UINT flags, ID3D11DeviceContext3 **context); void (STDMETHODCALLTYPE *WriteToSubresource)( ID3D11Device4 *This, ID3D11Resource *dst_resource, UINT dst_subresource, const D3D11_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_depth_pitch); void (STDMETHODCALLTYPE *ReadFromSubresource)( ID3D11Device4 *This, void *dst_data, UINT dst_row_pitch, UINT dst_depth_pitch, ID3D11Resource *src_resource, UINT src_subresource, const D3D11_BOX *src_box); /*** ID3D11Device4 methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterDeviceRemovedEvent)( ID3D11Device4 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterDeviceRemoved)( ID3D11Device4 *This, DWORD cookie); END_INTERFACE } ID3D11Device4Vtbl; interface ID3D11Device4 { CONST_VTBL ID3D11Device4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device4_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device4_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device4_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device4_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device4_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device4_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device4_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device4_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device4_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device4_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device4_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device4_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device4_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device4_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device4_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device4_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device4_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device4_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device4_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device4_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device4_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device4_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device4_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device4_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device4_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device4_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device4_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device4_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device4_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device4_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device4_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device4_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device4_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device4_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device4_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device4_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device4_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device4_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device4_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device4_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device4_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device4_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) /*** ID3D11Device1 methods ***/ #define ID3D11Device4_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext) #define ID3D11Device4_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext) #define ID3D11Device4_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D11Device4_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device4_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) #define ID3D11Device4_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource) #define ID3D11Device4_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) /*** ID3D11Device2 methods ***/ #define ID3D11Device4_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context) #define ID3D11Device4_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context) #define ID3D11Device4_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) #define ID3D11Device4_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) /*** ID3D11Device3 methods ***/ #define ID3D11Device4_CreateTexture2D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture) #define ID3D11Device4_CreateTexture3D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture) #define ID3D11Device4_CreateRasterizerState2(This,desc,state) (This)->lpVtbl->CreateRasterizerState2(This,desc,state) #define ID3D11Device4_CreateShaderResourceView1(This,resource,desc,view) (This)->lpVtbl->CreateShaderResourceView1(This,resource,desc,view) #define ID3D11Device4_CreateUnorderedAccessView1(This,resource,desc,view) (This)->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view) #define ID3D11Device4_CreateRenderTargetView1(This,resource,desc,view) (This)->lpVtbl->CreateRenderTargetView1(This,resource,desc,view) #define ID3D11Device4_CreateQuery1(This,desc,query) (This)->lpVtbl->CreateQuery1(This,desc,query) #define ID3D11Device4_GetImmediateContext3(This,context) (This)->lpVtbl->GetImmediateContext3(This,context) #define ID3D11Device4_CreateDeferredContext3(This,flags,context) (This)->lpVtbl->CreateDeferredContext3(This,flags,context) #define ID3D11Device4_WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) (This)->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) #define ID3D11Device4_ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) (This)->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) /*** ID3D11Device4 methods ***/ #define ID3D11Device4_RegisterDeviceRemovedEvent(This,event,cookie) (This)->lpVtbl->RegisterDeviceRemovedEvent(This,event,cookie) #define ID3D11Device4_UnregisterDeviceRemoved(This,cookie) (This)->lpVtbl->UnregisterDeviceRemoved(This,cookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device4_QueryInterface(ID3D11Device4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device4_AddRef(ID3D11Device4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device4_Release(ID3D11Device4* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device4_CreateBuffer(ID3D11Device4* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device4_CreateTexture1D(ID3D11Device4* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device4_CreateTexture2D(ID3D11Device4* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device4_CreateTexture3D(ID3D11Device4* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device4_CreateShaderResourceView(ID3D11Device4* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device4_CreateUnorderedAccessView(ID3D11Device4* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device4_CreateRenderTargetView(ID3D11Device4* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device4_CreateDepthStencilView(ID3D11Device4* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device4_CreateInputLayout(ID3D11Device4* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device4_CreateVertexShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateGeometryShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateGeometryShaderWithStreamOutput(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device4_CreatePixelShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateHullShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateDomainShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateComputeShader(ID3D11Device4* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device4_CreateClassLinkage(ID3D11Device4* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device4_CreateBlendState(ID3D11Device4* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device4_CreateDepthStencilState(ID3D11Device4* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device4_CreateRasterizerState(ID3D11Device4* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device4_CreateSamplerState(ID3D11Device4* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device4_CreateQuery(ID3D11Device4* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device4_CreatePredicate(ID3D11Device4* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device4_CreateCounter(ID3D11Device4* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device4_CreateDeferredContext(ID3D11Device4* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device4_OpenSharedResource(ID3D11Device4* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device4_CheckFormatSupport(ID3D11Device4* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device4_CheckMultisampleQualityLevels(ID3D11Device4* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device4_CheckCounterInfo(ID3D11Device4* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device4_CheckCounter(ID3D11Device4* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device4_CheckFeatureSupport(ID3D11Device4* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device4_GetPrivateData(ID3D11Device4* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device4_SetPrivateData(ID3D11Device4* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device4_SetPrivateDataInterface(ID3D11Device4* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device4_GetFeatureLevel(ID3D11Device4* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device4_GetCreationFlags(ID3D11Device4* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device4_GetDeviceRemovedReason(ID3D11Device4* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device4_GetImmediateContext(ID3D11Device4* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device4_SetExceptionMode(ID3D11Device4* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device4_GetExceptionMode(ID3D11Device4* This) { return This->lpVtbl->GetExceptionMode(This); } /*** ID3D11Device1 methods ***/ static FORCEINLINE void ID3D11Device4_GetImmediateContext1(ID3D11Device4* This,ID3D11DeviceContext1 **ppImmediateContext) { This->lpVtbl->GetImmediateContext1(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device4_CreateDeferredContext1(ID3D11Device4* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device4_CreateBlendState1(ID3D11Device4* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device4_CreateRasterizerState1(ID3D11Device4* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device4_CreateDeviceContextState(ID3D11Device4* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) { return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState); } static FORCEINLINE HRESULT ID3D11Device4_OpenSharedResource1(ID3D11Device4* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device4_OpenSharedResourceByName(ID3D11Device4* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource); } /*** ID3D11Device2 methods ***/ static FORCEINLINE void ID3D11Device4_GetImmediateContext2(ID3D11Device4* This,ID3D11DeviceContext2 **context) { This->lpVtbl->GetImmediateContext2(This,context); } static FORCEINLINE HRESULT ID3D11Device4_CreateDeferredContext2(ID3D11Device4* This,UINT flags,ID3D11DeviceContext2 **context) { return This->lpVtbl->CreateDeferredContext2(This,flags,context); } static FORCEINLINE void ID3D11Device4_GetResourceTiling(ID3D11Device4* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) { This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling); } static FORCEINLINE HRESULT ID3D11Device4_CheckMultisampleQualityLevels1(ID3D11Device4* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) { return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count); } /*** ID3D11Device3 methods ***/ static FORCEINLINE HRESULT ID3D11Device4_CreateTexture2D1(ID3D11Device4* This,const D3D11_TEXTURE2D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture2D1 **texture) { return This->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device4_CreateTexture3D1(ID3D11Device4* This,const D3D11_TEXTURE3D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture3D1 **texture) { return This->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device4_CreateRasterizerState2(ID3D11Device4* This,const D3D11_RASTERIZER_DESC2 *desc,ID3D11RasterizerState2 **state) { return This->lpVtbl->CreateRasterizerState2(This,desc,state); } static FORCEINLINE HRESULT ID3D11Device4_CreateShaderResourceView1(ID3D11Device4* This,ID3D11Resource *resource,const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc,ID3D11ShaderResourceView1 **view) { return This->lpVtbl->CreateShaderResourceView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device4_CreateUnorderedAccessView1(ID3D11Device4* This,ID3D11Resource *resource,const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc,ID3D11UnorderedAccessView1 **view) { return This->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device4_CreateRenderTargetView1(ID3D11Device4* This,ID3D11Resource *resource,const D3D11_RENDER_TARGET_VIEW_DESC1 *desc,ID3D11RenderTargetView1 **view) { return This->lpVtbl->CreateRenderTargetView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device4_CreateQuery1(ID3D11Device4* This,const D3D11_QUERY_DESC1 *desc,ID3D11Query1 **query) { return This->lpVtbl->CreateQuery1(This,desc,query); } static FORCEINLINE void ID3D11Device4_GetImmediateContext3(ID3D11Device4* This,ID3D11DeviceContext3 **context) { This->lpVtbl->GetImmediateContext3(This,context); } static FORCEINLINE HRESULT ID3D11Device4_CreateDeferredContext3(ID3D11Device4* This,UINT flags,ID3D11DeviceContext3 **context) { return This->lpVtbl->CreateDeferredContext3(This,flags,context); } static FORCEINLINE void ID3D11Device4_WriteToSubresource(ID3D11Device4* This,ID3D11Resource *dst_resource,UINT dst_subresource,const D3D11_BOX *dst_box,const void *src_data,UINT src_row_pitch,UINT src_depth_pitch) { This->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch); } static FORCEINLINE void ID3D11Device4_ReadFromSubresource(ID3D11Device4* This,void *dst_data,UINT dst_row_pitch,UINT dst_depth_pitch,ID3D11Resource *src_resource,UINT src_subresource,const D3D11_BOX *src_box) { This->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box); } /*** ID3D11Device4 methods ***/ static FORCEINLINE HRESULT ID3D11Device4_RegisterDeviceRemovedEvent(ID3D11Device4* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterDeviceRemovedEvent(This,event,cookie); } static FORCEINLINE void ID3D11Device4_UnregisterDeviceRemoved(ID3D11Device4* This,DWORD cookie) { This->lpVtbl->UnregisterDeviceRemoved(This,cookie); } #endif #endif #endif #endif /* __ID3D11Device4_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Device5 interface */ #ifndef __ID3D11Device5_INTERFACE_DEFINED__ #define __ID3D11Device5_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Device5, 0x8ffde202, 0xa0e7, 0x45df, 0x9e,0x01, 0xe8,0x37,0x80,0x1b,0x5e,0xa0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8ffde202-a0e7-45df-9e01-e837801b5ea0") ID3D11Device5 : public ID3D11Device4 { virtual HRESULT STDMETHODCALLTYPE OpenSharedFence( HANDLE handle, REFIID iid, void **fence) = 0; virtual HRESULT STDMETHODCALLTYPE CreateFence( UINT64 initial_value, D3D11_FENCE_FLAG flags, REFIID iid, void **fence) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Device5, 0x8ffde202, 0xa0e7, 0x45df, 0x9e,0x01, 0xe8,0x37,0x80,0x1b,0x5e,0xa0) #endif #else typedef struct ID3D11Device5Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Device5 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Device5 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Device5 *This); /*** ID3D11Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateBuffer)( ID3D11Device5 *This, const D3D11_BUFFER_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Buffer **ppBuffer); HRESULT (STDMETHODCALLTYPE *CreateTexture1D)( ID3D11Device5 *This, const D3D11_TEXTURE1D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture1D **ppTexture1D); HRESULT (STDMETHODCALLTYPE *CreateTexture2D)( ID3D11Device5 *This, const D3D11_TEXTURE2D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture2D **ppTexture2D); HRESULT (STDMETHODCALLTYPE *CreateTexture3D)( ID3D11Device5 *This, const D3D11_TEXTURE3D_DESC *pDesc, const D3D11_SUBRESOURCE_DATA *pInitialData, ID3D11Texture3D **ppTexture3D); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D11Device5 *This, ID3D11Resource *pResource, const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc, ID3D11ShaderResourceView **ppSRView); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D11Device5 *This, ID3D11Resource *pResource, const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc, ID3D11UnorderedAccessView **ppUAView); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D11Device5 *This, ID3D11Resource *pResource, const D3D11_RENDER_TARGET_VIEW_DESC *pDesc, ID3D11RenderTargetView **ppRTView); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D11Device5 *This, ID3D11Resource *pResource, const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc, ID3D11DepthStencilView **ppDepthStencilView); HRESULT (STDMETHODCALLTYPE *CreateInputLayout)( ID3D11Device5 *This, const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs, UINT NumElements, const void *pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D11InputLayout **ppInputLayout); HRESULT (STDMETHODCALLTYPE *CreateVertexShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11VertexShader **ppVertexShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, const D3D11_SO_DECLARATION_ENTRY *pSODeclaration, UINT NumEntries, const UINT *pBufferStrides, UINT NumStrides, UINT RasterizedStream, ID3D11ClassLinkage *pClassLinkage, ID3D11GeometryShader **ppGeometryShader); HRESULT (STDMETHODCALLTYPE *CreatePixelShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11PixelShader **ppPixelShader); HRESULT (STDMETHODCALLTYPE *CreateHullShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11HullShader **ppHullShader); HRESULT (STDMETHODCALLTYPE *CreateDomainShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11DomainShader **ppDomainShader); HRESULT (STDMETHODCALLTYPE *CreateComputeShader)( ID3D11Device5 *This, const void *pShaderBytecode, SIZE_T BytecodeLength, ID3D11ClassLinkage *pClassLinkage, ID3D11ComputeShader **ppComputeShader); HRESULT (STDMETHODCALLTYPE *CreateClassLinkage)( ID3D11Device5 *This, ID3D11ClassLinkage **ppLinkage); HRESULT (STDMETHODCALLTYPE *CreateBlendState)( ID3D11Device5 *This, const D3D11_BLEND_DESC *pBlendStateDesc, ID3D11BlendState **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateDepthStencilState)( ID3D11Device5 *This, const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc, ID3D11DepthStencilState **ppDepthStencilState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState)( ID3D11Device5 *This, const D3D11_RASTERIZER_DESC *pRasterizerDesc, ID3D11RasterizerState **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateSamplerState)( ID3D11Device5 *This, const D3D11_SAMPLER_DESC *pSamplerDesc, ID3D11SamplerState **ppSamplerState); HRESULT (STDMETHODCALLTYPE *CreateQuery)( ID3D11Device5 *This, const D3D11_QUERY_DESC *pQueryDesc, ID3D11Query **ppQuery); HRESULT (STDMETHODCALLTYPE *CreatePredicate)( ID3D11Device5 *This, const D3D11_QUERY_DESC *pPredicateDesc, ID3D11Predicate **ppPredicate); HRESULT (STDMETHODCALLTYPE *CreateCounter)( ID3D11Device5 *This, const D3D11_COUNTER_DESC *pCounterDesc, ID3D11Counter **ppCounter); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext)( ID3D11Device5 *This, UINT ContextFlags, ID3D11DeviceContext **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *OpenSharedResource)( ID3D11Device5 *This, HANDLE hResource, REFIID ReturnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *CheckFormatSupport)( ID3D11Device5 *This, DXGI_FORMAT Format, UINT *pFormatSupport); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels)( ID3D11Device5 *This, DXGI_FORMAT Format, UINT SampleCount, UINT *pNumQualityLevels); void (STDMETHODCALLTYPE *CheckCounterInfo)( ID3D11Device5 *This, D3D11_COUNTER_INFO *pCounterInfo); HRESULT (STDMETHODCALLTYPE *CheckCounter)( ID3D11Device5 *This, const D3D11_COUNTER_DESC *pDesc, D3D11_COUNTER_TYPE *pType, UINT *pActiveCounters, LPSTR szName, UINT *pNameLength, LPSTR szUnits, UINT *pUnitsLength, LPSTR szDescription, UINT *pDescriptionLength); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D11Device5 *This, D3D11_FEATURE Feature, void *pFeatureSupportData, UINT FeatureSupportDataSize); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11Device5 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11Device5 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11Device5 *This, REFGUID guid, const IUnknown *pData); D3D_FEATURE_LEVEL (STDMETHODCALLTYPE *GetFeatureLevel)( ID3D11Device5 *This); UINT (STDMETHODCALLTYPE *GetCreationFlags)( ID3D11Device5 *This); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D11Device5 *This); void (STDMETHODCALLTYPE *GetImmediateContext)( ID3D11Device5 *This, ID3D11DeviceContext **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *SetExceptionMode)( ID3D11Device5 *This, UINT RaiseFlags); UINT (STDMETHODCALLTYPE *GetExceptionMode)( ID3D11Device5 *This); /*** ID3D11Device1 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext1)( ID3D11Device5 *This, ID3D11DeviceContext1 **ppImmediateContext); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext1)( ID3D11Device5 *This, UINT ContextFlags, ID3D11DeviceContext1 **ppDeferredContext); HRESULT (STDMETHODCALLTYPE *CreateBlendState1)( ID3D11Device5 *This, const D3D11_BLEND_DESC1 *pBlendStateDesc, ID3D11BlendState1 **ppBlendState); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState1)( ID3D11Device5 *This, const D3D11_RASTERIZER_DESC1 *pRasterizerDesc, ID3D11RasterizerState1 **ppRasterizerState); HRESULT (STDMETHODCALLTYPE *CreateDeviceContextState)( ID3D11Device5 *This, UINT Flags, const D3D_FEATURE_LEVEL *pFeatureLevels, UINT FeatureLevels, UINT SDKVersion, REFIID EmulatedInterface, D3D_FEATURE_LEVEL *pChosenFeatureLevel, ID3DDeviceContextState **ppContextState); HRESULT (STDMETHODCALLTYPE *OpenSharedResource1)( ID3D11Device5 *This, HANDLE hResource, REFIID returnedInterface, void **ppResource); HRESULT (STDMETHODCALLTYPE *OpenSharedResourceByName)( ID3D11Device5 *This, LPCWSTR lpName, DWORD dwDesiredAccess, REFIID returnedInterface, void **ppResource); /*** ID3D11Device2 methods ***/ void (STDMETHODCALLTYPE *GetImmediateContext2)( ID3D11Device5 *This, ID3D11DeviceContext2 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext2)( ID3D11Device5 *This, UINT flags, ID3D11DeviceContext2 **context); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D11Device5 *This, ID3D11Resource *resource, UINT *tile_count, D3D11_PACKED_MIP_DESC *mip_desc, D3D11_TILE_SHAPE *tile_shape, UINT *subresource_tiling_count, UINT first_subresource_tiling, D3D11_SUBRESOURCE_TILING *subresource_tiling); HRESULT (STDMETHODCALLTYPE *CheckMultisampleQualityLevels1)( ID3D11Device5 *This, DXGI_FORMAT format, UINT sample_count, UINT flags, UINT *quality_level_count); /*** ID3D11Device3 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateTexture2D1)( ID3D11Device5 *This, const D3D11_TEXTURE2D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture2D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateTexture3D1)( ID3D11Device5 *This, const D3D11_TEXTURE3D_DESC1 *desc, const D3D11_SUBRESOURCE_DATA *initial_data, ID3D11Texture3D1 **texture); HRESULT (STDMETHODCALLTYPE *CreateRasterizerState2)( ID3D11Device5 *This, const D3D11_RASTERIZER_DESC2 *desc, ID3D11RasterizerState2 **state); HRESULT (STDMETHODCALLTYPE *CreateShaderResourceView1)( ID3D11Device5 *This, ID3D11Resource *resource, const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc, ID3D11ShaderResourceView1 **view); HRESULT (STDMETHODCALLTYPE *CreateUnorderedAccessView1)( ID3D11Device5 *This, ID3D11Resource *resource, const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc, ID3D11UnorderedAccessView1 **view); HRESULT (STDMETHODCALLTYPE *CreateRenderTargetView1)( ID3D11Device5 *This, ID3D11Resource *resource, const D3D11_RENDER_TARGET_VIEW_DESC1 *desc, ID3D11RenderTargetView1 **view); HRESULT (STDMETHODCALLTYPE *CreateQuery1)( ID3D11Device5 *This, const D3D11_QUERY_DESC1 *desc, ID3D11Query1 **query); void (STDMETHODCALLTYPE *GetImmediateContext3)( ID3D11Device5 *This, ID3D11DeviceContext3 **context); HRESULT (STDMETHODCALLTYPE *CreateDeferredContext3)( ID3D11Device5 *This, UINT flags, ID3D11DeviceContext3 **context); void (STDMETHODCALLTYPE *WriteToSubresource)( ID3D11Device5 *This, ID3D11Resource *dst_resource, UINT dst_subresource, const D3D11_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_depth_pitch); void (STDMETHODCALLTYPE *ReadFromSubresource)( ID3D11Device5 *This, void *dst_data, UINT dst_row_pitch, UINT dst_depth_pitch, ID3D11Resource *src_resource, UINT src_subresource, const D3D11_BOX *src_box); /*** ID3D11Device4 methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterDeviceRemovedEvent)( ID3D11Device5 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterDeviceRemoved)( ID3D11Device5 *This, DWORD cookie); /*** ID3D11Device5 methods ***/ HRESULT (STDMETHODCALLTYPE *OpenSharedFence)( ID3D11Device5 *This, HANDLE handle, REFIID iid, void **fence); HRESULT (STDMETHODCALLTYPE *CreateFence)( ID3D11Device5 *This, UINT64 initial_value, D3D11_FENCE_FLAG flags, REFIID iid, void **fence); END_INTERFACE } ID3D11Device5Vtbl; interface ID3D11Device5 { CONST_VTBL ID3D11Device5Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Device5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Device5_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Device5_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Device methods ***/ #define ID3D11Device5_CreateBuffer(This,pDesc,pInitialData,ppBuffer) (This)->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer) #define ID3D11Device5_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) (This)->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) #define ID3D11Device5_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) (This)->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) #define ID3D11Device5_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) (This)->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) #define ID3D11Device5_CreateShaderResourceView(This,pResource,pDesc,ppSRView) (This)->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView) #define ID3D11Device5_CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) (This)->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView) #define ID3D11Device5_CreateRenderTargetView(This,pResource,pDesc,ppRTView) (This)->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView) #define ID3D11Device5_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) (This)->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) #define ID3D11Device5_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) (This)->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) #define ID3D11Device5_CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) (This)->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader) #define ID3D11Device5_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader) #define ID3D11Device5_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) (This)->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader) #define ID3D11Device5_CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) (This)->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader) #define ID3D11Device5_CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) (This)->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader) #define ID3D11Device5_CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) (This)->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader) #define ID3D11Device5_CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) (This)->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader) #define ID3D11Device5_CreateClassLinkage(This,ppLinkage) (This)->lpVtbl->CreateClassLinkage(This,ppLinkage) #define ID3D11Device5_CreateBlendState(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState) #define ID3D11Device5_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) (This)->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) #define ID3D11Device5_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device5_CreateSamplerState(This,pSamplerDesc,ppSamplerState) (This)->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState) #define ID3D11Device5_CreateQuery(This,pQueryDesc,ppQuery) (This)->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery) #define ID3D11Device5_CreatePredicate(This,pPredicateDesc,ppPredicate) (This)->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate) #define ID3D11Device5_CreateCounter(This,pCounterDesc,ppCounter) (This)->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter) #define ID3D11Device5_CreateDeferredContext(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext) #define ID3D11Device5_OpenSharedResource(This,hResource,ReturnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource) #define ID3D11Device5_CheckFormatSupport(This,Format,pFormatSupport) (This)->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport) #define ID3D11Device5_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) (This)->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) #define ID3D11Device5_CheckCounterInfo(This,pCounterInfo) (This)->lpVtbl->CheckCounterInfo(This,pCounterInfo) #define ID3D11Device5_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) (This)->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) #define ID3D11Device5_CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) (This)->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize) #define ID3D11Device5_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11Device5_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11Device5_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) #define ID3D11Device5_GetFeatureLevel(This) (This)->lpVtbl->GetFeatureLevel(This) #define ID3D11Device5_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #define ID3D11Device5_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D11Device5_GetImmediateContext(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext(This,ppImmediateContext) #define ID3D11Device5_SetExceptionMode(This,RaiseFlags) (This)->lpVtbl->SetExceptionMode(This,RaiseFlags) #define ID3D11Device5_GetExceptionMode(This) (This)->lpVtbl->GetExceptionMode(This) /*** ID3D11Device1 methods ***/ #define ID3D11Device5_GetImmediateContext1(This,ppImmediateContext) (This)->lpVtbl->GetImmediateContext1(This,ppImmediateContext) #define ID3D11Device5_CreateDeferredContext1(This,ContextFlags,ppDeferredContext) (This)->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext) #define ID3D11Device5_CreateBlendState1(This,pBlendStateDesc,ppBlendState) (This)->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState) #define ID3D11Device5_CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) (This)->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState) #define ID3D11Device5_CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) (This)->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState) #define ID3D11Device5_OpenSharedResource1(This,hResource,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource) #define ID3D11Device5_OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) (This)->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource) /*** ID3D11Device2 methods ***/ #define ID3D11Device5_GetImmediateContext2(This,context) (This)->lpVtbl->GetImmediateContext2(This,context) #define ID3D11Device5_CreateDeferredContext2(This,flags,context) (This)->lpVtbl->CreateDeferredContext2(This,flags,context) #define ID3D11Device5_GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) (This)->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling) #define ID3D11Device5_CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) (This)->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count) /*** ID3D11Device3 methods ***/ #define ID3D11Device5_CreateTexture2D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture) #define ID3D11Device5_CreateTexture3D1(This,desc,initial_data,texture) (This)->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture) #define ID3D11Device5_CreateRasterizerState2(This,desc,state) (This)->lpVtbl->CreateRasterizerState2(This,desc,state) #define ID3D11Device5_CreateShaderResourceView1(This,resource,desc,view) (This)->lpVtbl->CreateShaderResourceView1(This,resource,desc,view) #define ID3D11Device5_CreateUnorderedAccessView1(This,resource,desc,view) (This)->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view) #define ID3D11Device5_CreateRenderTargetView1(This,resource,desc,view) (This)->lpVtbl->CreateRenderTargetView1(This,resource,desc,view) #define ID3D11Device5_CreateQuery1(This,desc,query) (This)->lpVtbl->CreateQuery1(This,desc,query) #define ID3D11Device5_GetImmediateContext3(This,context) (This)->lpVtbl->GetImmediateContext3(This,context) #define ID3D11Device5_CreateDeferredContext3(This,flags,context) (This)->lpVtbl->CreateDeferredContext3(This,flags,context) #define ID3D11Device5_WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) (This)->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch) #define ID3D11Device5_ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) (This)->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box) /*** ID3D11Device4 methods ***/ #define ID3D11Device5_RegisterDeviceRemovedEvent(This,event,cookie) (This)->lpVtbl->RegisterDeviceRemovedEvent(This,event,cookie) #define ID3D11Device5_UnregisterDeviceRemoved(This,cookie) (This)->lpVtbl->UnregisterDeviceRemoved(This,cookie) /*** ID3D11Device5 methods ***/ #define ID3D11Device5_OpenSharedFence(This,handle,iid,fence) (This)->lpVtbl->OpenSharedFence(This,handle,iid,fence) #define ID3D11Device5_CreateFence(This,initial_value,flags,iid,fence) (This)->lpVtbl->CreateFence(This,initial_value,flags,iid,fence) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Device5_QueryInterface(ID3D11Device5* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Device5_AddRef(ID3D11Device5* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Device5_Release(ID3D11Device5* This) { return This->lpVtbl->Release(This); } /*** ID3D11Device methods ***/ static FORCEINLINE HRESULT ID3D11Device5_CreateBuffer(ID3D11Device5* This,const D3D11_BUFFER_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Buffer **ppBuffer) { return This->lpVtbl->CreateBuffer(This,pDesc,pInitialData,ppBuffer); } static FORCEINLINE HRESULT ID3D11Device5_CreateTexture1D(ID3D11Device5* This,const D3D11_TEXTURE1D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture1D **ppTexture1D) { return This->lpVtbl->CreateTexture1D(This,pDesc,pInitialData,ppTexture1D); } static FORCEINLINE HRESULT ID3D11Device5_CreateTexture2D(ID3D11Device5* This,const D3D11_TEXTURE2D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture2D **ppTexture2D) { return This->lpVtbl->CreateTexture2D(This,pDesc,pInitialData,ppTexture2D); } static FORCEINLINE HRESULT ID3D11Device5_CreateTexture3D(ID3D11Device5* This,const D3D11_TEXTURE3D_DESC *pDesc,const D3D11_SUBRESOURCE_DATA *pInitialData,ID3D11Texture3D **ppTexture3D) { return This->lpVtbl->CreateTexture3D(This,pDesc,pInitialData,ppTexture3D); } static FORCEINLINE HRESULT ID3D11Device5_CreateShaderResourceView(ID3D11Device5* This,ID3D11Resource *pResource,const D3D11_SHADER_RESOURCE_VIEW_DESC *pDesc,ID3D11ShaderResourceView **ppSRView) { return This->lpVtbl->CreateShaderResourceView(This,pResource,pDesc,ppSRView); } static FORCEINLINE HRESULT ID3D11Device5_CreateUnorderedAccessView(ID3D11Device5* This,ID3D11Resource *pResource,const D3D11_UNORDERED_ACCESS_VIEW_DESC *pDesc,ID3D11UnorderedAccessView **ppUAView) { return This->lpVtbl->CreateUnorderedAccessView(This,pResource,pDesc,ppUAView); } static FORCEINLINE HRESULT ID3D11Device5_CreateRenderTargetView(ID3D11Device5* This,ID3D11Resource *pResource,const D3D11_RENDER_TARGET_VIEW_DESC *pDesc,ID3D11RenderTargetView **ppRTView) { return This->lpVtbl->CreateRenderTargetView(This,pResource,pDesc,ppRTView); } static FORCEINLINE HRESULT ID3D11Device5_CreateDepthStencilView(ID3D11Device5* This,ID3D11Resource *pResource,const D3D11_DEPTH_STENCIL_VIEW_DESC *pDesc,ID3D11DepthStencilView **ppDepthStencilView) { return This->lpVtbl->CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView); } static FORCEINLINE HRESULT ID3D11Device5_CreateInputLayout(ID3D11Device5* This,const D3D11_INPUT_ELEMENT_DESC *pInputElementDescs,UINT NumElements,const void *pShaderBytecodeWithInputSignature,SIZE_T BytecodeLength,ID3D11InputLayout **ppInputLayout) { return This->lpVtbl->CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout); } static FORCEINLINE HRESULT ID3D11Device5_CreateVertexShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11VertexShader **ppVertexShader) { return This->lpVtbl->CreateVertexShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppVertexShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateGeometryShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateGeometryShaderWithStreamOutput(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,const D3D11_SO_DECLARATION_ENTRY *pSODeclaration,UINT NumEntries,const UINT *pBufferStrides,UINT NumStrides,UINT RasterizedStream,ID3D11ClassLinkage *pClassLinkage,ID3D11GeometryShader **ppGeometryShader) { return This->lpVtbl->CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,pBufferStrides,NumStrides,RasterizedStream,pClassLinkage,ppGeometryShader); } static FORCEINLINE HRESULT ID3D11Device5_CreatePixelShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11PixelShader **ppPixelShader) { return This->lpVtbl->CreatePixelShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppPixelShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateHullShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11HullShader **ppHullShader) { return This->lpVtbl->CreateHullShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppHullShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateDomainShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11DomainShader **ppDomainShader) { return This->lpVtbl->CreateDomainShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppDomainShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateComputeShader(ID3D11Device5* This,const void *pShaderBytecode,SIZE_T BytecodeLength,ID3D11ClassLinkage *pClassLinkage,ID3D11ComputeShader **ppComputeShader) { return This->lpVtbl->CreateComputeShader(This,pShaderBytecode,BytecodeLength,pClassLinkage,ppComputeShader); } static FORCEINLINE HRESULT ID3D11Device5_CreateClassLinkage(ID3D11Device5* This,ID3D11ClassLinkage **ppLinkage) { return This->lpVtbl->CreateClassLinkage(This,ppLinkage); } static FORCEINLINE HRESULT ID3D11Device5_CreateBlendState(ID3D11Device5* This,const D3D11_BLEND_DESC *pBlendStateDesc,ID3D11BlendState **ppBlendState) { return This->lpVtbl->CreateBlendState(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device5_CreateDepthStencilState(ID3D11Device5* This,const D3D11_DEPTH_STENCIL_DESC *pDepthStencilDesc,ID3D11DepthStencilState **ppDepthStencilState) { return This->lpVtbl->CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState); } static FORCEINLINE HRESULT ID3D11Device5_CreateRasterizerState(ID3D11Device5* This,const D3D11_RASTERIZER_DESC *pRasterizerDesc,ID3D11RasterizerState **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device5_CreateSamplerState(ID3D11Device5* This,const D3D11_SAMPLER_DESC *pSamplerDesc,ID3D11SamplerState **ppSamplerState) { return This->lpVtbl->CreateSamplerState(This,pSamplerDesc,ppSamplerState); } static FORCEINLINE HRESULT ID3D11Device5_CreateQuery(ID3D11Device5* This,const D3D11_QUERY_DESC *pQueryDesc,ID3D11Query **ppQuery) { return This->lpVtbl->CreateQuery(This,pQueryDesc,ppQuery); } static FORCEINLINE HRESULT ID3D11Device5_CreatePredicate(ID3D11Device5* This,const D3D11_QUERY_DESC *pPredicateDesc,ID3D11Predicate **ppPredicate) { return This->lpVtbl->CreatePredicate(This,pPredicateDesc,ppPredicate); } static FORCEINLINE HRESULT ID3D11Device5_CreateCounter(ID3D11Device5* This,const D3D11_COUNTER_DESC *pCounterDesc,ID3D11Counter **ppCounter) { return This->lpVtbl->CreateCounter(This,pCounterDesc,ppCounter); } static FORCEINLINE HRESULT ID3D11Device5_CreateDeferredContext(ID3D11Device5* This,UINT ContextFlags,ID3D11DeviceContext **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device5_OpenSharedResource(ID3D11Device5* This,HANDLE hResource,REFIID ReturnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource(This,hResource,ReturnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device5_CheckFormatSupport(ID3D11Device5* This,DXGI_FORMAT Format,UINT *pFormatSupport) { return This->lpVtbl->CheckFormatSupport(This,Format,pFormatSupport); } static FORCEINLINE HRESULT ID3D11Device5_CheckMultisampleQualityLevels(ID3D11Device5* This,DXGI_FORMAT Format,UINT SampleCount,UINT *pNumQualityLevels) { return This->lpVtbl->CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels); } static FORCEINLINE void ID3D11Device5_CheckCounterInfo(ID3D11Device5* This,D3D11_COUNTER_INFO *pCounterInfo) { This->lpVtbl->CheckCounterInfo(This,pCounterInfo); } static FORCEINLINE HRESULT ID3D11Device5_CheckCounter(ID3D11Device5* This,const D3D11_COUNTER_DESC *pDesc,D3D11_COUNTER_TYPE *pType,UINT *pActiveCounters,LPSTR szName,UINT *pNameLength,LPSTR szUnits,UINT *pUnitsLength,LPSTR szDescription,UINT *pDescriptionLength) { return This->lpVtbl->CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength); } static FORCEINLINE HRESULT ID3D11Device5_CheckFeatureSupport(ID3D11Device5* This,D3D11_FEATURE Feature,void *pFeatureSupportData,UINT FeatureSupportDataSize) { return This->lpVtbl->CheckFeatureSupport(This,Feature,pFeatureSupportData,FeatureSupportDataSize); } static FORCEINLINE HRESULT ID3D11Device5_GetPrivateData(ID3D11Device5* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11Device5_SetPrivateData(ID3D11Device5* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11Device5_SetPrivateDataInterface(ID3D11Device5* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } static FORCEINLINE D3D_FEATURE_LEVEL ID3D11Device5_GetFeatureLevel(ID3D11Device5* This) { return This->lpVtbl->GetFeatureLevel(This); } static FORCEINLINE UINT ID3D11Device5_GetCreationFlags(ID3D11Device5* This) { return This->lpVtbl->GetCreationFlags(This); } static FORCEINLINE HRESULT ID3D11Device5_GetDeviceRemovedReason(ID3D11Device5* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D11Device5_GetImmediateContext(ID3D11Device5* This,ID3D11DeviceContext **ppImmediateContext) { This->lpVtbl->GetImmediateContext(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device5_SetExceptionMode(ID3D11Device5* This,UINT RaiseFlags) { return This->lpVtbl->SetExceptionMode(This,RaiseFlags); } static FORCEINLINE UINT ID3D11Device5_GetExceptionMode(ID3D11Device5* This) { return This->lpVtbl->GetExceptionMode(This); } /*** ID3D11Device1 methods ***/ static FORCEINLINE void ID3D11Device5_GetImmediateContext1(ID3D11Device5* This,ID3D11DeviceContext1 **ppImmediateContext) { This->lpVtbl->GetImmediateContext1(This,ppImmediateContext); } static FORCEINLINE HRESULT ID3D11Device5_CreateDeferredContext1(ID3D11Device5* This,UINT ContextFlags,ID3D11DeviceContext1 **ppDeferredContext) { return This->lpVtbl->CreateDeferredContext1(This,ContextFlags,ppDeferredContext); } static FORCEINLINE HRESULT ID3D11Device5_CreateBlendState1(ID3D11Device5* This,const D3D11_BLEND_DESC1 *pBlendStateDesc,ID3D11BlendState1 **ppBlendState) { return This->lpVtbl->CreateBlendState1(This,pBlendStateDesc,ppBlendState); } static FORCEINLINE HRESULT ID3D11Device5_CreateRasterizerState1(ID3D11Device5* This,const D3D11_RASTERIZER_DESC1 *pRasterizerDesc,ID3D11RasterizerState1 **ppRasterizerState) { return This->lpVtbl->CreateRasterizerState1(This,pRasterizerDesc,ppRasterizerState); } static FORCEINLINE HRESULT ID3D11Device5_CreateDeviceContextState(ID3D11Device5* This,UINT Flags,const D3D_FEATURE_LEVEL *pFeatureLevels,UINT FeatureLevels,UINT SDKVersion,REFIID EmulatedInterface,D3D_FEATURE_LEVEL *pChosenFeatureLevel,ID3DDeviceContextState **ppContextState) { return This->lpVtbl->CreateDeviceContextState(This,Flags,pFeatureLevels,FeatureLevels,SDKVersion,EmulatedInterface,pChosenFeatureLevel,ppContextState); } static FORCEINLINE HRESULT ID3D11Device5_OpenSharedResource1(ID3D11Device5* This,HANDLE hResource,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResource1(This,hResource,returnedInterface,ppResource); } static FORCEINLINE HRESULT ID3D11Device5_OpenSharedResourceByName(ID3D11Device5* This,LPCWSTR lpName,DWORD dwDesiredAccess,REFIID returnedInterface,void **ppResource) { return This->lpVtbl->OpenSharedResourceByName(This,lpName,dwDesiredAccess,returnedInterface,ppResource); } /*** ID3D11Device2 methods ***/ static FORCEINLINE void ID3D11Device5_GetImmediateContext2(ID3D11Device5* This,ID3D11DeviceContext2 **context) { This->lpVtbl->GetImmediateContext2(This,context); } static FORCEINLINE HRESULT ID3D11Device5_CreateDeferredContext2(ID3D11Device5* This,UINT flags,ID3D11DeviceContext2 **context) { return This->lpVtbl->CreateDeferredContext2(This,flags,context); } static FORCEINLINE void ID3D11Device5_GetResourceTiling(ID3D11Device5* This,ID3D11Resource *resource,UINT *tile_count,D3D11_PACKED_MIP_DESC *mip_desc,D3D11_TILE_SHAPE *tile_shape,UINT *subresource_tiling_count,UINT first_subresource_tiling,D3D11_SUBRESOURCE_TILING *subresource_tiling) { This->lpVtbl->GetResourceTiling(This,resource,tile_count,mip_desc,tile_shape,subresource_tiling_count,first_subresource_tiling,subresource_tiling); } static FORCEINLINE HRESULT ID3D11Device5_CheckMultisampleQualityLevels1(ID3D11Device5* This,DXGI_FORMAT format,UINT sample_count,UINT flags,UINT *quality_level_count) { return This->lpVtbl->CheckMultisampleQualityLevels1(This,format,sample_count,flags,quality_level_count); } /*** ID3D11Device3 methods ***/ static FORCEINLINE HRESULT ID3D11Device5_CreateTexture2D1(ID3D11Device5* This,const D3D11_TEXTURE2D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture2D1 **texture) { return This->lpVtbl->CreateTexture2D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device5_CreateTexture3D1(ID3D11Device5* This,const D3D11_TEXTURE3D_DESC1 *desc,const D3D11_SUBRESOURCE_DATA *initial_data,ID3D11Texture3D1 **texture) { return This->lpVtbl->CreateTexture3D1(This,desc,initial_data,texture); } static FORCEINLINE HRESULT ID3D11Device5_CreateRasterizerState2(ID3D11Device5* This,const D3D11_RASTERIZER_DESC2 *desc,ID3D11RasterizerState2 **state) { return This->lpVtbl->CreateRasterizerState2(This,desc,state); } static FORCEINLINE HRESULT ID3D11Device5_CreateShaderResourceView1(ID3D11Device5* This,ID3D11Resource *resource,const D3D11_SHADER_RESOURCE_VIEW_DESC1 *desc,ID3D11ShaderResourceView1 **view) { return This->lpVtbl->CreateShaderResourceView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device5_CreateUnorderedAccessView1(ID3D11Device5* This,ID3D11Resource *resource,const D3D11_UNORDERED_ACCESS_VIEW_DESC1 *desc,ID3D11UnorderedAccessView1 **view) { return This->lpVtbl->CreateUnorderedAccessView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device5_CreateRenderTargetView1(ID3D11Device5* This,ID3D11Resource *resource,const D3D11_RENDER_TARGET_VIEW_DESC1 *desc,ID3D11RenderTargetView1 **view) { return This->lpVtbl->CreateRenderTargetView1(This,resource,desc,view); } static FORCEINLINE HRESULT ID3D11Device5_CreateQuery1(ID3D11Device5* This,const D3D11_QUERY_DESC1 *desc,ID3D11Query1 **query) { return This->lpVtbl->CreateQuery1(This,desc,query); } static FORCEINLINE void ID3D11Device5_GetImmediateContext3(ID3D11Device5* This,ID3D11DeviceContext3 **context) { This->lpVtbl->GetImmediateContext3(This,context); } static FORCEINLINE HRESULT ID3D11Device5_CreateDeferredContext3(ID3D11Device5* This,UINT flags,ID3D11DeviceContext3 **context) { return This->lpVtbl->CreateDeferredContext3(This,flags,context); } static FORCEINLINE void ID3D11Device5_WriteToSubresource(ID3D11Device5* This,ID3D11Resource *dst_resource,UINT dst_subresource,const D3D11_BOX *dst_box,const void *src_data,UINT src_row_pitch,UINT src_depth_pitch) { This->lpVtbl->WriteToSubresource(This,dst_resource,dst_subresource,dst_box,src_data,src_row_pitch,src_depth_pitch); } static FORCEINLINE void ID3D11Device5_ReadFromSubresource(ID3D11Device5* This,void *dst_data,UINT dst_row_pitch,UINT dst_depth_pitch,ID3D11Resource *src_resource,UINT src_subresource,const D3D11_BOX *src_box) { This->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_depth_pitch,src_resource,src_subresource,src_box); } /*** ID3D11Device4 methods ***/ static FORCEINLINE HRESULT ID3D11Device5_RegisterDeviceRemovedEvent(ID3D11Device5* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterDeviceRemovedEvent(This,event,cookie); } static FORCEINLINE void ID3D11Device5_UnregisterDeviceRemoved(ID3D11Device5* This,DWORD cookie) { This->lpVtbl->UnregisterDeviceRemoved(This,cookie); } /*** ID3D11Device5 methods ***/ static FORCEINLINE HRESULT ID3D11Device5_OpenSharedFence(ID3D11Device5* This,HANDLE handle,REFIID iid,void **fence) { return This->lpVtbl->OpenSharedFence(This,handle,iid,fence); } static FORCEINLINE HRESULT ID3D11Device5_CreateFence(ID3D11Device5* This,UINT64 initial_value,D3D11_FENCE_FLAG flags,REFIID iid,void **fence) { return This->lpVtbl->CreateFence(This,initial_value,flags,iid,fence); } #endif #endif #endif #endif /* __ID3D11Device5_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11Multithread interface */ #ifndef __ID3D11Multithread_INTERFACE_DEFINED__ #define __ID3D11Multithread_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9b7e4e00-342c-4106-a19f-4f2704f689f0") ID3D11Multithread : public IUnknown { virtual void STDMETHODCALLTYPE Enter( ) = 0; virtual void STDMETHODCALLTYPE Leave( ) = 0; virtual WINBOOL STDMETHODCALLTYPE SetMultithreadProtected( WINBOOL enable) = 0; virtual WINBOOL STDMETHODCALLTYPE GetMultithreadProtected( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Multithread, 0x9b7e4e00, 0x342c, 0x4106, 0xa1,0x9f, 0x4f,0x27,0x04,0xf6,0x89,0xf0) #endif #else typedef struct ID3D11MultithreadVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Multithread *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Multithread *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Multithread *This); /*** ID3D11Multithread methods ***/ void (STDMETHODCALLTYPE *Enter)( ID3D11Multithread *This); void (STDMETHODCALLTYPE *Leave)( ID3D11Multithread *This); WINBOOL (STDMETHODCALLTYPE *SetMultithreadProtected)( ID3D11Multithread *This, WINBOOL enable); WINBOOL (STDMETHODCALLTYPE *GetMultithreadProtected)( ID3D11Multithread *This); END_INTERFACE } ID3D11MultithreadVtbl; interface ID3D11Multithread { CONST_VTBL ID3D11MultithreadVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Multithread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Multithread_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Multithread_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Multithread methods ***/ #define ID3D11Multithread_Enter(This) (This)->lpVtbl->Enter(This) #define ID3D11Multithread_Leave(This) (This)->lpVtbl->Leave(This) #define ID3D11Multithread_SetMultithreadProtected(This,enable) (This)->lpVtbl->SetMultithreadProtected(This,enable) #define ID3D11Multithread_GetMultithreadProtected(This) (This)->lpVtbl->GetMultithreadProtected(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Multithread_QueryInterface(ID3D11Multithread* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Multithread_AddRef(ID3D11Multithread* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Multithread_Release(ID3D11Multithread* This) { return This->lpVtbl->Release(This); } /*** ID3D11Multithread methods ***/ static FORCEINLINE void ID3D11Multithread_Enter(ID3D11Multithread* This) { This->lpVtbl->Enter(This); } static FORCEINLINE void ID3D11Multithread_Leave(ID3D11Multithread* This) { This->lpVtbl->Leave(This); } static FORCEINLINE WINBOOL ID3D11Multithread_SetMultithreadProtected(ID3D11Multithread* This,WINBOOL enable) { return This->lpVtbl->SetMultithreadProtected(This,enable); } static FORCEINLINE WINBOOL ID3D11Multithread_GetMultithreadProtected(ID3D11Multithread* This) { return This->lpVtbl->GetMultithreadProtected(This); } #endif #endif #endif #endif /* __ID3D11Multithread_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11VideoContext2 interface */ #ifndef __ID3D11VideoContext2_INTERFACE_DEFINED__ #define __ID3D11VideoContext2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11VideoContext2, 0xc4e7374c, 0x6243, 0x4d1b, 0xae,0x87, 0x52,0xb4,0xf7,0x40,0xe2,0x61); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c4e7374c-6243-4d1b-ae87-52b4f740e261") ID3D11VideoContext2 : public ID3D11VideoContext1 { virtual void STDMETHODCALLTYPE VideoProcessorSetOutputHDRMetaData( ID3D11VideoProcessor *processor, DXGI_HDR_METADATA_TYPE type, UINT size, const void *meta_data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetOutputHDRMetaData( ID3D11VideoProcessor *processor, DXGI_HDR_METADATA_TYPE *type, UINT size, void *meta_data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorSetStreamHDRMetaData( ID3D11VideoProcessor *processor, UINT stream_index, DXGI_HDR_METADATA_TYPE type, UINT size, const void *meta_data) = 0; virtual void STDMETHODCALLTYPE VideoProcessorGetStreamHDRMetaData( ID3D11VideoProcessor *processor, UINT stream_index, DXGI_HDR_METADATA_TYPE *type, UINT size, void *meta_data) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11VideoContext2, 0xc4e7374c, 0x6243, 0x4d1b, 0xae,0x87, 0x52,0xb4,0xf7,0x40,0xe2,0x61) #endif #else typedef struct ID3D11VideoContext2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11VideoContext2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11VideoContext2 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11VideoContext2 *This); /*** ID3D11DeviceChild methods ***/ void (STDMETHODCALLTYPE *GetDevice)( ID3D11VideoContext2 *This, ID3D11Device **ppDevice); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D11VideoContext2 *This, REFGUID guid, UINT *pDataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D11VideoContext2 *This, REFGUID guid, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D11VideoContext2 *This, REFGUID guid, const IUnknown *pData); /*** ID3D11VideoContext methods ***/ HRESULT (STDMETHODCALLTYPE *GetDecoderBuffer)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type, UINT *buffer_size, void **buffer); HRESULT (STDMETHODCALLTYPE *ReleaseDecoderBuffer)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, D3D11_VIDEO_DECODER_BUFFER_TYPE type); HRESULT (STDMETHODCALLTYPE *DecoderBeginFrame)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, ID3D11VideoDecoderOutputView *view, UINT key_size, const void *key); HRESULT (STDMETHODCALLTYPE *DecoderEndFrame)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder); HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, UINT buffers_count, const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc); HRESULT (STDMETHODCALLTYPE *DecoderExtension)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, const D3D11_VIDEO_DECODER_EXTENSION *extension); void (STDMETHODCALLTYPE *VideoProcessorSetOutputTargetRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetOutputBackgroundColor)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL y_cb_cr, const D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetOutputAlphaFillMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode, UINT stream_idx); void (STDMETHODCALLTYPE *VideoProcessorSetOutputConstriction)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL enable, SIZE size); void (STDMETHODCALLTYPE *VideoProcessorSetOutputStereoMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetOutputExtension)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetOutputTargetRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetOutputBackgroundColor)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL *y_cb_cr, D3D11_VIDEO_COLOR *color); void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetOutputAlphaFillMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode, UINT *stream_idx); void (STDMETHODCALLTYPE *VideoProcessorGetOutputConstriction)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled, SIZE *size); void (STDMETHODCALLTYPE *VideoProcessorGetOutputStereoMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL *enabled); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetOutputExtension)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFrameFormat)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT format); void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorSetStreamOutputRate)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate, WINBOOL repeat, const DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorSetStreamSourceRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamDestRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAlpha)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float alpha); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPalette)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, const UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorSetStreamPixelAspectRatio)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, const DXGI_RATIONAL *src_aspect_ratio, const DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorSetStreamLumaKey)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, float lower, float upper); void (STDMETHODCALLTYPE *VideoProcessorSetStreamStereoFormat)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format, WINBOOL left_view_frame0, WINBOOL base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode, int mono_offset); void (STDMETHODCALLTYPE *VideoProcessorSetStreamAutoProcessingMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable); void (STDMETHODCALLTYPE *VideoProcessorSetStreamFilter)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL enable, int level); HRESULT (STDMETHODCALLTYPE *VideoProcessorSetStreamExtension)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFrameFormat)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_FRAME_FORMAT *format); void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space); void (STDMETHODCALLTYPE *VideoProcessorGetStreamOutputRate)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate, WINBOOL *repeat, DXGI_RATIONAL *custom_rate); void (STDMETHODCALLTYPE *VideoProcessorGetStreamSourceRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamDestRect)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, RECT *rect); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAlpha)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *alpha); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPalette)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, UINT entry_count, UINT *entries); void (STDMETHODCALLTYPE *VideoProcessorGetStreamPixelAspectRatio)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, DXGI_RATIONAL *src_aspect_ratio, DXGI_RATIONAL *dst_aspect_ratio); void (STDMETHODCALLTYPE *VideoProcessorGetStreamLumaKey)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, float *lower, float *upper); void (STDMETHODCALLTYPE *VideoProcessorGetStreamStereoFormat)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled, D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format, WINBOOL *left_view_frame0, WINBOOL *base_view_frame0, D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode, int *mono_offset); void (STDMETHODCALLTYPE *VideoProcessorGetStreamAutoProcessingMode)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enabled); void (STDMETHODCALLTYPE *VideoProcessorGetStreamFilter)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, D3D11_VIDEO_PROCESSOR_FILTER filter, WINBOOL *enabled, int *level); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetStreamExtension)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, const GUID *guid, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *VideoProcessorBlt)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, ID3D11VideoProcessorOutputView *view, UINT frame_idx, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM *streams); HRESULT (STDMETHODCALLTYPE *NegotiateCryptoSessionKeyExchange)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, UINT data_size, void *data); void (STDMETHODCALLTYPE *EncryptionBlt)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *DecryptionBlt)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, ID3D11Texture2D *src_surface, ID3D11Texture2D *dst_surface, D3D11_ENCRYPTED_BLOCK_INFO *block_info, UINT key_size, const void *key, UINT iv_size, void *iv); void (STDMETHODCALLTYPE *StartSessionKeyRefresh)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, UINT random_number_size, void *random_number); void (STDMETHODCALLTYPE *FinishSessionKeyRefresh)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session); HRESULT (STDMETHODCALLTYPE *GetEncryptionBltKey)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, UINT key_size, void *key); HRESULT (STDMETHODCALLTYPE *NegotiateAuthenticatedChannelKeyExchange)( ID3D11VideoContext2 *This, ID3D11AuthenticatedChannel *channel, UINT data_size, void *data); HRESULT (STDMETHODCALLTYPE *QueryAuthenticatedChannel)( ID3D11VideoContext2 *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, UINT output_size, void *output); HRESULT (STDMETHODCALLTYPE *ConfigureAuthenticatedChannel)( ID3D11VideoContext2 *This, ID3D11AuthenticatedChannel *channel, UINT input_size, const void *input, D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output); void (STDMETHODCALLTYPE *VideoProcessorSetStreamRotation)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL enable, D3D11_VIDEO_PROCESSOR_ROTATION rotation); void (STDMETHODCALLTYPE *VideoProcessorGetStreamRotation)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_idx, WINBOOL *enable, D3D11_VIDEO_PROCESSOR_ROTATION *rotation); /*** ID3D11VideoContext1 methods ***/ HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers1)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, UINT buffer_count, const D3D11_VIDEO_DECODER_BUFFER_DESC1 *buffer_desc); HRESULT (STDMETHODCALLTYPE *GetDataForNewHardwareKey)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, UINT input_size, const void *input_data, UINT64 *output_data); HRESULT (STDMETHODCALLTYPE *CheckCryptoSessionStatus)( ID3D11VideoContext2 *This, ID3D11CryptoSession *session, D3D11_CRYPTO_SESSION_STATUS *status); HRESULT (STDMETHODCALLTYPE *DecoderEnableDownsampling)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, DXGI_COLOR_SPACE_TYPE colour_space, const D3D11_VIDEO_SAMPLE_DESC *output_desc, UINT reference_frame_count); HRESULT (STDMETHODCALLTYPE *DecoderUpdateDownsampling)( ID3D11VideoContext2 *This, ID3D11VideoDecoder *decoder, const D3D11_VIDEO_SAMPLE_DESC *output_desc); void (STDMETHODCALLTYPE *VideoProcessorSetOutputColorSpace1)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE colour_space); void (STDMETHODCALLTYPE *VideoProcessorSetOutputShaderUsage)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL shader_usage); void (STDMETHODCALLTYPE *VideoProcessorGetOutputColorSpace1)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, DXGI_COLOR_SPACE_TYPE *colour_space); void (STDMETHODCALLTYPE *VideoProcessorGetOutputShaderUsage)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, WINBOOL *shader_usage); void (STDMETHODCALLTYPE *VideoProcessorSetStreamColorSpace1)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE colour_space); void (STDMETHODCALLTYPE *VideoProcessorSetStreamMirror)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL enable, WINBOOL flip_horizontal, WINBOOL flip_vertical); void (STDMETHODCALLTYPE *VideoProcessorGetStreamColorSpace1)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_COLOR_SPACE_TYPE *colour_space); void (STDMETHODCALLTYPE *VideoProcessorGetStreamMirror)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, WINBOOL *enable, WINBOOL *flip_horizontal, WINBOOL *flip_vertical); HRESULT (STDMETHODCALLTYPE *VideoProcessorGetBehaviorHints)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT output_width, UINT output_height, DXGI_FORMAT output_format, UINT stream_count, const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT *streams, UINT *behaviour_hints); /*** ID3D11VideoContext2 methods ***/ void (STDMETHODCALLTYPE *VideoProcessorSetOutputHDRMetaData)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, DXGI_HDR_METADATA_TYPE type, UINT size, const void *meta_data); void (STDMETHODCALLTYPE *VideoProcessorGetOutputHDRMetaData)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, DXGI_HDR_METADATA_TYPE *type, UINT size, void *meta_data); void (STDMETHODCALLTYPE *VideoProcessorSetStreamHDRMetaData)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_HDR_METADATA_TYPE type, UINT size, const void *meta_data); void (STDMETHODCALLTYPE *VideoProcessorGetStreamHDRMetaData)( ID3D11VideoContext2 *This, ID3D11VideoProcessor *processor, UINT stream_index, DXGI_HDR_METADATA_TYPE *type, UINT size, void *meta_data); END_INTERFACE } ID3D11VideoContext2Vtbl; interface ID3D11VideoContext2 { CONST_VTBL ID3D11VideoContext2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11VideoContext2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11VideoContext2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11VideoContext2_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11DeviceChild methods ***/ #define ID3D11VideoContext2_GetDevice(This,ppDevice) (This)->lpVtbl->GetDevice(This,ppDevice) #define ID3D11VideoContext2_GetPrivateData(This,guid,pDataSize,pData) (This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData) #define ID3D11VideoContext2_SetPrivateData(This,guid,DataSize,pData) (This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData) #define ID3D11VideoContext2_SetPrivateDataInterface(This,guid,pData) (This)->lpVtbl->SetPrivateDataInterface(This,guid,pData) /*** ID3D11VideoContext methods ***/ #define ID3D11VideoContext2_GetDecoderBuffer(This,decoder,type,buffer_size,buffer) (This)->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer) #define ID3D11VideoContext2_ReleaseDecoderBuffer(This,decoder,type) (This)->lpVtbl->ReleaseDecoderBuffer(This,decoder,type) #define ID3D11VideoContext2_DecoderBeginFrame(This,decoder,view,key_size,key) (This)->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key) #define ID3D11VideoContext2_DecoderEndFrame(This,decoder) (This)->lpVtbl->DecoderEndFrame(This,decoder) #define ID3D11VideoContext2_SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc) #define ID3D11VideoContext2_DecoderExtension(This,decoder,extension) (This)->lpVtbl->DecoderExtension(This,decoder,extension) #define ID3D11VideoContext2_VideoProcessorSetOutputTargetRect(This,processor,enable,rect) (This)->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect) #define ID3D11VideoContext2_VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext2_VideoProcessorSetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext2_VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext2_VideoProcessorSetOutputConstriction(This,processor,enable,size) (This)->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size) #define ID3D11VideoContext2_VideoProcessorSetOutputStereoMode(This,processor,enable) (This)->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable) #define ID3D11VideoContext2_VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext2_VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) (This)->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect) #define ID3D11VideoContext2_VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) (This)->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color) #define ID3D11VideoContext2_VideoProcessorGetOutputColorSpace(This,processor,color_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space) #define ID3D11VideoContext2_VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) (This)->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx) #define ID3D11VideoContext2_VideoProcessorGetOutputConstriction(This,processor,enabled,size) (This)->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size) #define ID3D11VideoContext2_VideoProcessorGetOutputStereoMode(This,processor,enabled) (This)->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled) #define ID3D11VideoContext2_VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data) #define ID3D11VideoContext2_VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext2_VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext2_VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext2_VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext2_VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) (This)->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect) #define ID3D11VideoContext2_VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) (This)->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha) #define ID3D11VideoContext2_VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext2_VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext2_VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) (This)->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper) #define ID3D11VideoContext2_VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext2_VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) (This)->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable) #define ID3D11VideoContext2_VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) (This)->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level) #define ID3D11VideoContext2_VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext2_VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) (This)->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format) #define ID3D11VideoContext2_VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space) #define ID3D11VideoContext2_VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) (This)->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate) #define ID3D11VideoContext2_VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext2_VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) (This)->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect) #define ID3D11VideoContext2_VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) (This)->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha) #define ID3D11VideoContext2_VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) (This)->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries) #define ID3D11VideoContext2_VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) (This)->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio) #define ID3D11VideoContext2_VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) (This)->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper) #define ID3D11VideoContext2_VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) (This)->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset) #define ID3D11VideoContext2_VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) (This)->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled) #define ID3D11VideoContext2_VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) (This)->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level) #define ID3D11VideoContext2_VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) (This)->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data) #define ID3D11VideoContext2_VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) (This)->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams) #define ID3D11VideoContext2_NegotiateCryptoSessionKeyExchange(This,session,data_size,data) (This)->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data) #define ID3D11VideoContext2_EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) (This)->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv) #define ID3D11VideoContext2_DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) (This)->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv) #define ID3D11VideoContext2_StartSessionKeyRefresh(This,session,random_number_size,random_number) (This)->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number) #define ID3D11VideoContext2_FinishSessionKeyRefresh(This,session) (This)->lpVtbl->FinishSessionKeyRefresh(This,session) #define ID3D11VideoContext2_GetEncryptionBltKey(This,session,key_size,key) (This)->lpVtbl->GetEncryptionBltKey(This,session,key_size,key) #define ID3D11VideoContext2_NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) (This)->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data) #define ID3D11VideoContext2_QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) (This)->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output) #define ID3D11VideoContext2_ConfigureAuthenticatedChannel(This,channel,input_size,input,output) (This)->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output) #define ID3D11VideoContext2_VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation) #define ID3D11VideoContext2_VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) (This)->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation) /*** ID3D11VideoContext1 methods ***/ #define ID3D11VideoContext2_SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc) (This)->lpVtbl->SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc) #define ID3D11VideoContext2_GetDataForNewHardwareKey(This,session,input_size,input_data,output_data) (This)->lpVtbl->GetDataForNewHardwareKey(This,session,input_size,input_data,output_data) #define ID3D11VideoContext2_CheckCryptoSessionStatus(This,session,status) (This)->lpVtbl->CheckCryptoSessionStatus(This,session,status) #define ID3D11VideoContext2_DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count) (This)->lpVtbl->DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count) #define ID3D11VideoContext2_DecoderUpdateDownsampling(This,decoder,output_desc) (This)->lpVtbl->DecoderUpdateDownsampling(This,decoder,output_desc) #define ID3D11VideoContext2_VideoProcessorSetOutputColorSpace1(This,processor,colour_space) (This)->lpVtbl->VideoProcessorSetOutputColorSpace1(This,processor,colour_space) #define ID3D11VideoContext2_VideoProcessorSetOutputShaderUsage(This,processor,shader_usage) (This)->lpVtbl->VideoProcessorSetOutputShaderUsage(This,processor,shader_usage) #define ID3D11VideoContext2_VideoProcessorGetOutputColorSpace1(This,processor,colour_space) (This)->lpVtbl->VideoProcessorGetOutputColorSpace1(This,processor,colour_space) #define ID3D11VideoContext2_VideoProcessorGetOutputShaderUsage(This,processor,shader_usage) (This)->lpVtbl->VideoProcessorGetOutputShaderUsage(This,processor,shader_usage) #define ID3D11VideoContext2_VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space) (This)->lpVtbl->VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space) #define ID3D11VideoContext2_VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) (This)->lpVtbl->VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) #define ID3D11VideoContext2_VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space) (This)->lpVtbl->VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space) #define ID3D11VideoContext2_VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) (This)->lpVtbl->VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical) #define ID3D11VideoContext2_VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints) (This)->lpVtbl->VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints) /*** ID3D11VideoContext2 methods ***/ #define ID3D11VideoContext2_VideoProcessorSetOutputHDRMetaData(This,processor,type,size,meta_data) (This)->lpVtbl->VideoProcessorSetOutputHDRMetaData(This,processor,type,size,meta_data) #define ID3D11VideoContext2_VideoProcessorGetOutputHDRMetaData(This,processor,type,size,meta_data) (This)->lpVtbl->VideoProcessorGetOutputHDRMetaData(This,processor,type,size,meta_data) #define ID3D11VideoContext2_VideoProcessorSetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data) (This)->lpVtbl->VideoProcessorSetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data) #define ID3D11VideoContext2_VideoProcessorGetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data) (This)->lpVtbl->VideoProcessorGetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext2_QueryInterface(ID3D11VideoContext2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11VideoContext2_AddRef(ID3D11VideoContext2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11VideoContext2_Release(ID3D11VideoContext2* This) { return This->lpVtbl->Release(This); } /*** ID3D11DeviceChild methods ***/ static FORCEINLINE void ID3D11VideoContext2_GetDevice(ID3D11VideoContext2* This,ID3D11Device **ppDevice) { This->lpVtbl->GetDevice(This,ppDevice); } static FORCEINLINE HRESULT ID3D11VideoContext2_GetPrivateData(ID3D11VideoContext2* This,REFGUID guid,UINT *pDataSize,void *pData) { return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext2_SetPrivateData(ID3D11VideoContext2* This,REFGUID guid,UINT DataSize,const void *pData) { return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData); } static FORCEINLINE HRESULT ID3D11VideoContext2_SetPrivateDataInterface(ID3D11VideoContext2* This,REFGUID guid,const IUnknown *pData) { return This->lpVtbl->SetPrivateDataInterface(This,guid,pData); } /*** ID3D11VideoContext methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext2_GetDecoderBuffer(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type,UINT *buffer_size,void **buffer) { return This->lpVtbl->GetDecoderBuffer(This,decoder,type,buffer_size,buffer); } static FORCEINLINE HRESULT ID3D11VideoContext2_ReleaseDecoderBuffer(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,D3D11_VIDEO_DECODER_BUFFER_TYPE type) { return This->lpVtbl->ReleaseDecoderBuffer(This,decoder,type); } static FORCEINLINE HRESULT ID3D11VideoContext2_DecoderBeginFrame(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,ID3D11VideoDecoderOutputView *view,UINT key_size,const void *key) { return This->lpVtbl->DecoderBeginFrame(This,decoder,view,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext2_DecoderEndFrame(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder) { return This->lpVtbl->DecoderEndFrame(This,decoder); } static FORCEINLINE HRESULT ID3D11VideoContext2_SubmitDecoderBuffers(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,UINT buffers_count,const D3D11_VIDEO_DECODER_BUFFER_DESC *buffer_desc) { return This->lpVtbl->SubmitDecoderBuffers(This,decoder,buffers_count,buffer_desc); } static FORCEINLINE HRESULT ID3D11VideoContext2_DecoderExtension(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_DECODER_EXTENSION *extension) { return This->lpVtbl->DecoderExtension(This,decoder,extension); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputTargetRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetOutputTargetRect(This,processor,enable,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputBackgroundColor(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL y_cb_cr,const D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorSetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputColorSpace(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputAlphaFillMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE alpha_fill_mode,UINT stream_idx) { This->lpVtbl->VideoProcessorSetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputConstriction(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL enable,SIZE size) { This->lpVtbl->VideoProcessorSetOutputConstriction(This,processor,enable,size); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputStereoMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL enable) { This->lpVtbl->VideoProcessorSetOutputStereoMode(This,processor,enable); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorSetOutputExtension(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputTargetRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetOutputTargetRect(This,processor,enabled,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputBackgroundColor(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL *y_cb_cr,D3D11_VIDEO_COLOR *color) { This->lpVtbl->VideoProcessorGetOutputBackgroundColor(This,processor,y_cb_cr,color); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputColorSpace(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetOutputColorSpace(This,processor,color_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputAlphaFillMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,D3D11_VIDEO_PROCESSOR_ALPHA_FILL_MODE *alpha_fill_mode,UINT *stream_idx) { This->lpVtbl->VideoProcessorGetOutputAlphaFillMode(This,processor,alpha_fill_mode,stream_idx); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputConstriction(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL *enabled,SIZE *size) { This->lpVtbl->VideoProcessorGetOutputConstriction(This,processor,enabled,size); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputStereoMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetOutputStereoMode(This,processor,enabled); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorGetOutputExtension(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetOutputExtension(This,processor,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamFrameFormat(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT format) { This->lpVtbl->VideoProcessorSetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamColorSpace(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,const D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorSetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamOutputRate(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE rate,WINBOOL repeat,const DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorSetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamSourceRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamSourceRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamDestRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const RECT *rect) { This->lpVtbl->VideoProcessorSetStreamDestRect(This,processor,stream_idx,enable,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamAlpha(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float alpha) { This->lpVtbl->VideoProcessorSetStreamAlpha(This,processor,stream_idx,enable,alpha); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamPalette(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,const UINT *entries) { This->lpVtbl->VideoProcessorSetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamPixelAspectRatio(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,const DXGI_RATIONAL *src_aspect_ratio,const DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorSetStreamPixelAspectRatio(This,processor,stream_idx,enable,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamLumaKey(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,float lower,float upper) { This->lpVtbl->VideoProcessorSetStreamLumaKey(This,processor,stream_idx,enable,lower,upper); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamStereoFormat(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT format,WINBOOL left_view_frame0,WINBOOL base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE flip_mode,int mono_offset) { This->lpVtbl->VideoProcessorSetStreamStereoFormat(This,processor,stream_idx,enable,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamAutoProcessingMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable) { This->lpVtbl->VideoProcessorSetStreamAutoProcessingMode(This,processor,stream_idx,enable); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamFilter(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL enable,int level) { This->lpVtbl->VideoProcessorSetStreamFilter(This,processor,stream_idx,filter,enable,level); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorSetStreamExtension(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorSetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamFrameFormat(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_FRAME_FORMAT *format) { This->lpVtbl->VideoProcessorGetStreamFrameFormat(This,processor,stream_idx,format); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamColorSpace(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_COLOR_SPACE *color_space) { This->lpVtbl->VideoProcessorGetStreamColorSpace(This,processor,stream_idx,color_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamOutputRate(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_OUTPUT_RATE *rate,WINBOOL *repeat,DXGI_RATIONAL *custom_rate) { This->lpVtbl->VideoProcessorGetStreamOutputRate(This,processor,stream_idx,rate,repeat,custom_rate); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamSourceRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamSourceRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamDestRect(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,RECT *rect) { This->lpVtbl->VideoProcessorGetStreamDestRect(This,processor,stream_idx,enabled,rect); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamAlpha(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *alpha) { This->lpVtbl->VideoProcessorGetStreamAlpha(This,processor,stream_idx,enabled,alpha); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamPalette(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,UINT entry_count,UINT *entries) { This->lpVtbl->VideoProcessorGetStreamPalette(This,processor,stream_idx,entry_count,entries); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamPixelAspectRatio(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,DXGI_RATIONAL *src_aspect_ratio,DXGI_RATIONAL *dst_aspect_ratio) { This->lpVtbl->VideoProcessorGetStreamPixelAspectRatio(This,processor,stream_idx,enabled,src_aspect_ratio,dst_aspect_ratio); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamLumaKey(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,float *lower,float *upper) { This->lpVtbl->VideoProcessorGetStreamLumaKey(This,processor,stream_idx,enabled,lower,upper); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamStereoFormat(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled,D3D11_VIDEO_PROCESSOR_STEREO_FORMAT *format,WINBOOL *left_view_frame0,WINBOOL *base_view_frame0,D3D11_VIDEO_PROCESSOR_STEREO_FLIP_MODE *flip_mode,int *mono_offset) { This->lpVtbl->VideoProcessorGetStreamStereoFormat(This,processor,stream_idx,enabled,format,left_view_frame0,base_view_frame0,flip_mode,mono_offset); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamAutoProcessingMode(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enabled) { This->lpVtbl->VideoProcessorGetStreamAutoProcessingMode(This,processor,stream_idx,enabled); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamFilter(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,D3D11_VIDEO_PROCESSOR_FILTER filter,WINBOOL *enabled,int *level) { This->lpVtbl->VideoProcessorGetStreamFilter(This,processor,stream_idx,filter,enabled,level); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorGetStreamExtension(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,const GUID *guid,UINT data_size,void *data) { return This->lpVtbl->VideoProcessorGetStreamExtension(This,processor,stream_idx,guid,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorBlt(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,ID3D11VideoProcessorOutputView *view,UINT frame_idx,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM *streams) { return This->lpVtbl->VideoProcessorBlt(This,processor,view,frame_idx,stream_count,streams); } static FORCEINLINE HRESULT ID3D11VideoContext2_NegotiateCryptoSessionKeyExchange(ID3D11VideoContext2* This,ID3D11CryptoSession *session,UINT data_size,void *data) { return This->lpVtbl->NegotiateCryptoSessionKeyExchange(This,session,data_size,data); } static FORCEINLINE void ID3D11VideoContext2_EncryptionBlt(ID3D11VideoContext2* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,UINT iv_size,void *iv) { This->lpVtbl->EncryptionBlt(This,session,src_surface,dst_surface,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext2_DecryptionBlt(ID3D11VideoContext2* This,ID3D11CryptoSession *session,ID3D11Texture2D *src_surface,ID3D11Texture2D *dst_surface,D3D11_ENCRYPTED_BLOCK_INFO *block_info,UINT key_size,const void *key,UINT iv_size,void *iv) { This->lpVtbl->DecryptionBlt(This,session,src_surface,dst_surface,block_info,key_size,key,iv_size,iv); } static FORCEINLINE void ID3D11VideoContext2_StartSessionKeyRefresh(ID3D11VideoContext2* This,ID3D11CryptoSession *session,UINT random_number_size,void *random_number) { This->lpVtbl->StartSessionKeyRefresh(This,session,random_number_size,random_number); } static FORCEINLINE void ID3D11VideoContext2_FinishSessionKeyRefresh(ID3D11VideoContext2* This,ID3D11CryptoSession *session) { This->lpVtbl->FinishSessionKeyRefresh(This,session); } static FORCEINLINE HRESULT ID3D11VideoContext2_GetEncryptionBltKey(ID3D11VideoContext2* This,ID3D11CryptoSession *session,UINT key_size,void *key) { return This->lpVtbl->GetEncryptionBltKey(This,session,key_size,key); } static FORCEINLINE HRESULT ID3D11VideoContext2_NegotiateAuthenticatedChannelKeyExchange(ID3D11VideoContext2* This,ID3D11AuthenticatedChannel *channel,UINT data_size,void *data) { return This->lpVtbl->NegotiateAuthenticatedChannelKeyExchange(This,channel,data_size,data); } static FORCEINLINE HRESULT ID3D11VideoContext2_QueryAuthenticatedChannel(ID3D11VideoContext2* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,UINT output_size,void *output) { return This->lpVtbl->QueryAuthenticatedChannel(This,channel,input_size,input,output_size,output); } static FORCEINLINE HRESULT ID3D11VideoContext2_ConfigureAuthenticatedChannel(ID3D11VideoContext2* This,ID3D11AuthenticatedChannel *channel,UINT input_size,const void *input,D3D11_AUTHENTICATED_CONFIGURE_OUTPUT *output) { return This->lpVtbl->ConfigureAuthenticatedChannel(This,channel,input_size,input,output); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamRotation(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL enable,D3D11_VIDEO_PROCESSOR_ROTATION rotation) { This->lpVtbl->VideoProcessorSetStreamRotation(This,processor,stream_idx,enable,rotation); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamRotation(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_idx,WINBOOL *enable,D3D11_VIDEO_PROCESSOR_ROTATION *rotation) { This->lpVtbl->VideoProcessorGetStreamRotation(This,processor,stream_idx,enable,rotation); } /*** ID3D11VideoContext1 methods ***/ static FORCEINLINE HRESULT ID3D11VideoContext2_SubmitDecoderBuffers1(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,UINT buffer_count,const D3D11_VIDEO_DECODER_BUFFER_DESC1 *buffer_desc) { return This->lpVtbl->SubmitDecoderBuffers1(This,decoder,buffer_count,buffer_desc); } static FORCEINLINE HRESULT ID3D11VideoContext2_GetDataForNewHardwareKey(ID3D11VideoContext2* This,ID3D11CryptoSession *session,UINT input_size,const void *input_data,UINT64 *output_data) { return This->lpVtbl->GetDataForNewHardwareKey(This,session,input_size,input_data,output_data); } static FORCEINLINE HRESULT ID3D11VideoContext2_CheckCryptoSessionStatus(ID3D11VideoContext2* This,ID3D11CryptoSession *session,D3D11_CRYPTO_SESSION_STATUS *status) { return This->lpVtbl->CheckCryptoSessionStatus(This,session,status); } static FORCEINLINE HRESULT ID3D11VideoContext2_DecoderEnableDownsampling(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,DXGI_COLOR_SPACE_TYPE colour_space,const D3D11_VIDEO_SAMPLE_DESC *output_desc,UINT reference_frame_count) { return This->lpVtbl->DecoderEnableDownsampling(This,decoder,colour_space,output_desc,reference_frame_count); } static FORCEINLINE HRESULT ID3D11VideoContext2_DecoderUpdateDownsampling(ID3D11VideoContext2* This,ID3D11VideoDecoder *decoder,const D3D11_VIDEO_SAMPLE_DESC *output_desc) { return This->lpVtbl->DecoderUpdateDownsampling(This,decoder,output_desc); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputColorSpace1(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,DXGI_COLOR_SPACE_TYPE colour_space) { This->lpVtbl->VideoProcessorSetOutputColorSpace1(This,processor,colour_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputShaderUsage(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL shader_usage) { This->lpVtbl->VideoProcessorSetOutputShaderUsage(This,processor,shader_usage); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputColorSpace1(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,DXGI_COLOR_SPACE_TYPE *colour_space) { This->lpVtbl->VideoProcessorGetOutputColorSpace1(This,processor,colour_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputShaderUsage(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,WINBOOL *shader_usage) { This->lpVtbl->VideoProcessorGetOutputShaderUsage(This,processor,shader_usage); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamColorSpace1(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_COLOR_SPACE_TYPE colour_space) { This->lpVtbl->VideoProcessorSetStreamColorSpace1(This,processor,stream_index,colour_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamMirror(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,WINBOOL enable,WINBOOL flip_horizontal,WINBOOL flip_vertical) { This->lpVtbl->VideoProcessorSetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamColorSpace1(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_COLOR_SPACE_TYPE *colour_space) { This->lpVtbl->VideoProcessorGetStreamColorSpace1(This,processor,stream_index,colour_space); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamMirror(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,WINBOOL *enable,WINBOOL *flip_horizontal,WINBOOL *flip_vertical) { This->lpVtbl->VideoProcessorGetStreamMirror(This,processor,stream_index,enable,flip_horizontal,flip_vertical); } static FORCEINLINE HRESULT ID3D11VideoContext2_VideoProcessorGetBehaviorHints(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT output_width,UINT output_height,DXGI_FORMAT output_format,UINT stream_count,const D3D11_VIDEO_PROCESSOR_STREAM_BEHAVIOR_HINT *streams,UINT *behaviour_hints) { return This->lpVtbl->VideoProcessorGetBehaviorHints(This,processor,output_width,output_height,output_format,stream_count,streams,behaviour_hints); } /*** ID3D11VideoContext2 methods ***/ static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetOutputHDRMetaData(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,DXGI_HDR_METADATA_TYPE type,UINT size,const void *meta_data) { This->lpVtbl->VideoProcessorSetOutputHDRMetaData(This,processor,type,size,meta_data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetOutputHDRMetaData(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,DXGI_HDR_METADATA_TYPE *type,UINT size,void *meta_data) { This->lpVtbl->VideoProcessorGetOutputHDRMetaData(This,processor,type,size,meta_data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorSetStreamHDRMetaData(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_HDR_METADATA_TYPE type,UINT size,const void *meta_data) { This->lpVtbl->VideoProcessorSetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data); } static FORCEINLINE void ID3D11VideoContext2_VideoProcessorGetStreamHDRMetaData(ID3D11VideoContext2* This,ID3D11VideoProcessor *processor,UINT stream_index,DXGI_HDR_METADATA_TYPE *type,UINT size,void *meta_data) { This->lpVtbl->VideoProcessorGetStreamHDRMetaData(This,processor,stream_index,type,size,meta_data); } #endif #endif #endif #endif /* __ID3D11VideoContext2_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11_4_h__ */ dxvk-0~git20220822.9df86f2/d3d11on12.h000066400000000000000000000137651430055512200165000ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11on12.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11on12_h__ #define __d3d11on12_h__ /* Forward declarations */ #ifndef __ID3D11On12Device_FWD_DEFINED__ #define __ID3D11On12Device_FWD_DEFINED__ typedef interface ID3D11On12Device ID3D11On12Device; #ifdef __cplusplus interface ID3D11On12Device; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #ifdef __cplusplus extern "C" { #endif typedef struct D3D11_RESOURCE_FLAGS { UINT BindFlags; UINT MiscFlags; UINT CPUAccessFlags; UINT StructureByteStride; } D3D11_RESOURCE_FLAGS; /***************************************************************************** * ID3D11On12Device interface */ #ifndef __ID3D11On12Device_INTERFACE_DEFINED__ #define __ID3D11On12Device_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11On12Device, 0x85611e73, 0x70a9, 0x490e, 0x96,0x14, 0xa9,0xe3,0x02,0x77,0x79,0x04); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("85611e73-70a9-490e-9614-a9e302777904") ID3D11On12Device : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateWrappedResource( IUnknown *d3d12_resource, const D3D11_RESOURCE_FLAGS *flags, D3D12_RESOURCE_STATES input_state, D3D12_RESOURCE_STATES output_state, REFIID iid, void **d3d11_resource) = 0; virtual void STDMETHODCALLTYPE ReleaseWrappedResources( ID3D11Resource *const *resources, UINT count) = 0; virtual void STDMETHODCALLTYPE AcquireWrappedResources( ID3D11Resource *const *resources, UINT count) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11On12Device, 0x85611e73, 0x70a9, 0x490e, 0x96,0x14, 0xa9,0xe3,0x02,0x77,0x79,0x04) #endif #else typedef struct ID3D11On12DeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11On12Device *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11On12Device *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11On12Device *This); /*** ID3D11On12Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateWrappedResource)( ID3D11On12Device *This, IUnknown *d3d12_resource, const D3D11_RESOURCE_FLAGS *flags, D3D12_RESOURCE_STATES input_state, D3D12_RESOURCE_STATES output_state, REFIID iid, void **d3d11_resource); void (STDMETHODCALLTYPE *ReleaseWrappedResources)( ID3D11On12Device *This, ID3D11Resource *const *resources, UINT count); void (STDMETHODCALLTYPE *AcquireWrappedResources)( ID3D11On12Device *This, ID3D11Resource *const *resources, UINT count); END_INTERFACE } ID3D11On12DeviceVtbl; interface ID3D11On12Device { CONST_VTBL ID3D11On12DeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11On12Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11On12Device_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11On12Device_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11On12Device methods ***/ #define ID3D11On12Device_CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource) (This)->lpVtbl->CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource) #define ID3D11On12Device_ReleaseWrappedResources(This,resources,count) (This)->lpVtbl->ReleaseWrappedResources(This,resources,count) #define ID3D11On12Device_AcquireWrappedResources(This,resources,count) (This)->lpVtbl->AcquireWrappedResources(This,resources,count) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11On12Device_QueryInterface(ID3D11On12Device* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11On12Device_AddRef(ID3D11On12Device* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11On12Device_Release(ID3D11On12Device* This) { return This->lpVtbl->Release(This); } /*** ID3D11On12Device methods ***/ static FORCEINLINE HRESULT ID3D11On12Device_CreateWrappedResource(ID3D11On12Device* This,IUnknown *d3d12_resource,const D3D11_RESOURCE_FLAGS *flags,D3D12_RESOURCE_STATES input_state,D3D12_RESOURCE_STATES output_state,REFIID iid,void **d3d11_resource) { return This->lpVtbl->CreateWrappedResource(This,d3d12_resource,flags,input_state,output_state,iid,d3d11_resource); } static FORCEINLINE void ID3D11On12Device_ReleaseWrappedResources(ID3D11On12Device* This,ID3D11Resource *const *resources,UINT count) { This->lpVtbl->ReleaseWrappedResources(This,resources,count); } static FORCEINLINE void ID3D11On12Device_AcquireWrappedResources(ID3D11On12Device* This,ID3D11Resource *const *resources,UINT count) { This->lpVtbl->AcquireWrappedResources(This,resources,count); } #endif #endif #endif #endif /* __ID3D11On12Device_INTERFACE_DEFINED__ */ HRESULT __stdcall D3D11On12CreateDevice(IUnknown *device,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT feature_level_count,IUnknown *const *queues,UINT queue_count,UINT node_mask,ID3D11Device **d3d11_device,ID3D11DeviceContext **d3d11_immediate_context,D3D_FEATURE_LEVEL *obtained_feature_level); typedef HRESULT (__stdcall *PFN_D3D11ON12_CREATE_DEVICE)(IUnknown *device,UINT flags,const D3D_FEATURE_LEVEL *feature_levels,UINT feature_level_count,IUnknown *const *queues,UINT queue_count,UINT node_mask,ID3D11Device **d3d11_device,ID3D11DeviceContext **d3d11_immediate_context,D3D_FEATURE_LEVEL *obtained_feature_level); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11on12_h__ */ dxvk-0~git20220822.9df86f2/d3d11sdklayers.h000066400000000000000000003253071430055512200177200ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d11sdklayers.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d11sdklayers_h__ #define __d3d11sdklayers_h__ /* Forward declarations */ #ifndef __ID3D11Debug_FWD_DEFINED__ #define __ID3D11Debug_FWD_DEFINED__ typedef interface ID3D11Debug ID3D11Debug; #ifdef __cplusplus interface ID3D11Debug; #endif /* __cplusplus */ #endif #ifndef __ID3D11SwitchToRef_FWD_DEFINED__ #define __ID3D11SwitchToRef_FWD_DEFINED__ typedef interface ID3D11SwitchToRef ID3D11SwitchToRef; #ifdef __cplusplus interface ID3D11SwitchToRef; #endif /* __cplusplus */ #endif #ifndef __ID3D11InfoQueue_FWD_DEFINED__ #define __ID3D11InfoQueue_FWD_DEFINED__ typedef interface ID3D11InfoQueue ID3D11InfoQueue; #ifdef __cplusplus interface ID3D11InfoQueue; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif #define D3D11_DEBUG_FEATURE_FLUSH_PER_RENDER_OP (0x1) #define D3D11_DEBUG_FEATURE_FINISH_PER_RENDER_OP (0x2) #define D3D11_DEBUG_FEATURE_PRESENT_PER_RENDER_OP (0x4) #define D3D11_DEBUG_FEATURE_ALWAYS_DISCARD_OFFERED_RESOURCE (0x8) #define D3D11_DEBUG_FEATURE_NEVER_DISCARD_OFFERED_RESOURCE (0x10) #define D3D11_DEBUG_FEATURE_AVOID_BEHAVIOR_CHANGING_DEBUG_AIDS (0x40) #define D3D11_DEBUG_FEATURE_DISABLE_TILED_RESOURCE_MAPPING_TRACKING_AND_VALIDATION (0x80) typedef enum D3D11_MESSAGE_CATEGORY { D3D11_MESSAGE_CATEGORY_APPLICATION_DEFINED = 0, D3D11_MESSAGE_CATEGORY_MISCELLANEOUS = 1, D3D11_MESSAGE_CATEGORY_INITIALIZATION = 2, D3D11_MESSAGE_CATEGORY_CLEANUP = 3, D3D11_MESSAGE_CATEGORY_COMPILATION = 4, D3D11_MESSAGE_CATEGORY_STATE_CREATION = 5, D3D11_MESSAGE_CATEGORY_STATE_SETTING = 6, D3D11_MESSAGE_CATEGORY_STATE_GETTING = 7, D3D11_MESSAGE_CATEGORY_RESOURCE_MANIPULATION = 8, D3D11_MESSAGE_CATEGORY_EXECUTION = 9, D3D11_MESSAGE_CATEGORY_SHADER = 10 } D3D11_MESSAGE_CATEGORY; typedef enum D3D11_MESSAGE_SEVERITY { D3D11_MESSAGE_SEVERITY_CORRUPTION = 0, D3D11_MESSAGE_SEVERITY_ERROR = 1, D3D11_MESSAGE_SEVERITY_WARNING = 2, D3D11_MESSAGE_SEVERITY_INFO = 3, D3D11_MESSAGE_SEVERITY_MESSAGE = 4 } D3D11_MESSAGE_SEVERITY; typedef enum D3D11_MESSAGE_ID { D3D11_MESSAGE_ID_UNKNOWN = 0, D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_HAZARD = 1, D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_HAZARD = 2, D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_HAZARD = 3, D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_HAZARD = 4, D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_HAZARD = 5, D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_HAZARD = 6, D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_HAZARD = 7, D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_HAZARD = 8, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETS_HAZARD = 9, D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_HAZARD = 10, D3D11_MESSAGE_ID_STRING_FROM_APPLICATION = 11, D3D11_MESSAGE_ID_CORRUPTED_THIS = 12, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER1 = 13, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER2 = 14, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER3 = 15, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER4 = 16, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER5 = 17, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER6 = 18, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER7 = 19, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER8 = 20, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER9 = 21, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER10 = 22, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER11 = 23, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER12 = 24, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER13 = 25, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER14 = 26, D3D11_MESSAGE_ID_CORRUPTED_PARAMETER15 = 27, D3D11_MESSAGE_ID_CORRUPTED_MULTITHREADING = 28, D3D11_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY = 29, D3D11_MESSAGE_ID_IASETINPUTLAYOUT_UNBINDDELETINGOBJECT = 30, D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_UNBINDDELETINGOBJECT = 31, D3D11_MESSAGE_ID_IASETINDEXBUFFER_UNBINDDELETINGOBJECT = 32, D3D11_MESSAGE_ID_VSSETSHADER_UNBINDDELETINGOBJECT = 33, D3D11_MESSAGE_ID_VSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 34, D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 35, D3D11_MESSAGE_ID_VSSETSAMPLERS_UNBINDDELETINGOBJECT = 36, D3D11_MESSAGE_ID_GSSETSHADER_UNBINDDELETINGOBJECT = 37, D3D11_MESSAGE_ID_GSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 38, D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 39, D3D11_MESSAGE_ID_GSSETSAMPLERS_UNBINDDELETINGOBJECT = 40, D3D11_MESSAGE_ID_SOSETTARGETS_UNBINDDELETINGOBJECT = 41, D3D11_MESSAGE_ID_PSSETSHADER_UNBINDDELETINGOBJECT = 42, D3D11_MESSAGE_ID_PSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 43, D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 44, D3D11_MESSAGE_ID_PSSETSAMPLERS_UNBINDDELETINGOBJECT = 45, D3D11_MESSAGE_ID_RSSETSTATE_UNBINDDELETINGOBJECT = 46, D3D11_MESSAGE_ID_OMSETBLENDSTATE_UNBINDDELETINGOBJECT = 47, D3D11_MESSAGE_ID_OMSETDEPTHSTENCILSTATE_UNBINDDELETINGOBJECT = 48, D3D11_MESSAGE_ID_OMSETRENDERTARGETS_UNBINDDELETINGOBJECT = 49, D3D11_MESSAGE_ID_SETPREDICATION_UNBINDDELETINGOBJECT = 50, D3D11_MESSAGE_ID_GETPRIVATEDATA_MOREDATA = 51, D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA = 52, D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDIUNKNOWN = 53, D3D11_MESSAGE_ID_SETPRIVATEDATA_INVALIDFLAGS = 54, D3D11_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS = 55, D3D11_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY = 56, D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDFORMAT = 57, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSAMPLES = 58, D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDUSAGE = 59, D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDBINDFLAGS = 60, D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDCPUACCESSFLAGS = 61, D3D11_MESSAGE_ID_CREATEBUFFER_UNRECOGNIZEDMISCFLAGS = 62, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCPUACCESSFLAGS = 63, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDBINDFLAGS = 64, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDINITIALDATA = 65, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDDIMENSIONS = 66, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMIPLEVELS = 67, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDMISCFLAGS = 68, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDARG_RETURN = 69, D3D11_MESSAGE_ID_CREATEBUFFER_OUTOFMEMORY_RETURN = 70, D3D11_MESSAGE_ID_CREATEBUFFER_NULLDESC = 71, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDCONSTANTBUFFERBINDINGS = 72, D3D11_MESSAGE_ID_CREATEBUFFER_LARGEALLOCATION = 73, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDFORMAT = 74, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNSUPPORTEDFORMAT = 75, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDSAMPLES = 76, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDUSAGE = 77, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDBINDFLAGS = 78, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDCPUACCESSFLAGS = 79, D3D11_MESSAGE_ID_CREATETEXTURE1D_UNRECOGNIZEDMISCFLAGS = 80, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDCPUACCESSFLAGS = 81, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDBINDFLAGS = 82, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDINITIALDATA = 83, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDDIMENSIONS = 84, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMIPLEVELS = 85, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDMISCFLAGS = 86, D3D11_MESSAGE_ID_CREATETEXTURE1D_INVALIDARG_RETURN = 87, D3D11_MESSAGE_ID_CREATETEXTURE1D_OUTOFMEMORY_RETURN = 88, D3D11_MESSAGE_ID_CREATETEXTURE1D_NULLDESC = 89, D3D11_MESSAGE_ID_CREATETEXTURE1D_LARGEALLOCATION = 90, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDFORMAT = 91, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNSUPPORTEDFORMAT = 92, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDSAMPLES = 93, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDUSAGE = 94, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDBINDFLAGS = 95, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDCPUACCESSFLAGS = 96, D3D11_MESSAGE_ID_CREATETEXTURE2D_UNRECOGNIZEDMISCFLAGS = 97, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDCPUACCESSFLAGS = 98, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDBINDFLAGS = 99, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDINITIALDATA = 100, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDDIMENSIONS = 101, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMIPLEVELS = 102, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDMISCFLAGS = 103, D3D11_MESSAGE_ID_CREATETEXTURE2D_INVALIDARG_RETURN = 104, D3D11_MESSAGE_ID_CREATETEXTURE2D_OUTOFMEMORY_RETURN = 105, D3D11_MESSAGE_ID_CREATETEXTURE2D_NULLDESC = 106, D3D11_MESSAGE_ID_CREATETEXTURE2D_LARGEALLOCATION = 107, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDFORMAT = 108, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNSUPPORTEDFORMAT = 109, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDSAMPLES = 110, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDUSAGE = 111, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDBINDFLAGS = 112, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDCPUACCESSFLAGS = 113, D3D11_MESSAGE_ID_CREATETEXTURE3D_UNRECOGNIZEDMISCFLAGS = 114, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDCPUACCESSFLAGS = 115, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDBINDFLAGS = 116, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDINITIALDATA = 117, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDDIMENSIONS = 118, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMIPLEVELS = 119, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDMISCFLAGS = 120, D3D11_MESSAGE_ID_CREATETEXTURE3D_INVALIDARG_RETURN = 121, D3D11_MESSAGE_ID_CREATETEXTURE3D_OUTOFMEMORY_RETURN = 122, D3D11_MESSAGE_ID_CREATETEXTURE3D_NULLDESC = 123, D3D11_MESSAGE_ID_CREATETEXTURE3D_LARGEALLOCATION = 124, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT = 125, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC = 126, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT = 127, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS = 128, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE = 129, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_TOOMANYOBJECTS = 130, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDARG_RETURN = 131, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_OUTOFMEMORY_RETURN = 132, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT = 133, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT = 134, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC = 135, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT = 136, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS = 137, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE = 138, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_TOOMANYOBJECTS = 139, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDARG_RETURN = 140, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_OUTOFMEMORY_RETURN = 141, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT = 142, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC = 143, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT = 144, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS = 145, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE = 146, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_TOOMANYOBJECTS = 147, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDARG_RETURN = 148, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_OUTOFMEMORY_RETURN = 149, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY = 150, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS = 151, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT = 152, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT = 153, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT = 154, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS = 155, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH = 156, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE = 157, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE = 158, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT = 159, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC = 160, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE = 161, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC = 162, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT = 163, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_NULLDESC = 164, D3D11_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY = 165, D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE = 166, D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE = 167, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY = 168, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE = 169, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE = 170, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY = 171, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE = 172, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 173, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES = 174, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED = 175, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDDECL = 176, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_EXPECTEDDECL = 177, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED = 178, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT = 179, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT = 180, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT = 181, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT = 182, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION = 183, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT = 184, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE = 185, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC = 186, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH = 187, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS = 188, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX = 189, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE = 190, D3D11_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY = 191, D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE = 192, D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE = 193, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE = 194, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE = 195, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP = 196, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS = 197, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_TOOMANYOBJECTS = 198, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_NULLDESC = 199, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK = 200, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC = 201, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP = 202, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP = 203, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP = 204, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC = 205, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP = 206, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP = 207, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP = 208, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC = 209, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_TOOMANYOBJECTS = 210, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_NULLDESC = 211, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND = 212, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND = 213, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP = 214, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA = 215, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA = 216, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA = 217, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK = 218, D3D11_MESSAGE_ID_CREATEBLENDSTATE_TOOMANYOBJECTS = 219, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NULLDESC = 220, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDFILTER = 221, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSU = 222, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSV = 223, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDADDRESSW = 224, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMIPLODBIAS = 225, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXANISOTROPY = 226, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDCOMPARISONFUNC = 227, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMINLOD = 228, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_INVALIDMAXLOD = 229, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_TOOMANYOBJECTS = 230, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NULLDESC = 231, D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDQUERY = 232, D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_INVALIDMISCFLAGS = 233, D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_UNEXPECTEDMISCFLAG = 234, D3D11_MESSAGE_ID_CREATEQUERYORPREDICATE_NULLDESC = 235, D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNRECOGNIZED = 236, D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNDEFINED = 237, D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_INVALIDBUFFER = 238, D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_OFFSET_TOO_LARGE = 239, D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_BUFFERS_EMPTY = 240, D3D11_MESSAGE_ID_IASETINDEXBUFFER_INVALIDBUFFER = 241, D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_FORMAT_INVALID = 242, D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_TOO_LARGE = 243, D3D11_MESSAGE_ID_DEVICE_IASETINDEXBUFFER_OFFSET_UNALIGNED = 244, D3D11_MESSAGE_ID_DEVICE_VSSETSHADERRESOURCES_VIEWS_EMPTY = 245, D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFER = 246, D3D11_MESSAGE_ID_DEVICE_VSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 247, D3D11_MESSAGE_ID_DEVICE_VSSETSAMPLERS_SAMPLERS_EMPTY = 248, D3D11_MESSAGE_ID_DEVICE_GSSETSHADERRESOURCES_VIEWS_EMPTY = 249, D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFER = 250, D3D11_MESSAGE_ID_DEVICE_GSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 251, D3D11_MESSAGE_ID_DEVICE_GSSETSAMPLERS_SAMPLERS_EMPTY = 252, D3D11_MESSAGE_ID_SOSETTARGETS_INVALIDBUFFER = 253, D3D11_MESSAGE_ID_DEVICE_SOSETTARGETS_OFFSET_UNALIGNED = 254, D3D11_MESSAGE_ID_DEVICE_PSSETSHADERRESOURCES_VIEWS_EMPTY = 255, D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFER = 256, D3D11_MESSAGE_ID_DEVICE_PSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 257, D3D11_MESSAGE_ID_DEVICE_PSSETSAMPLERS_SAMPLERS_EMPTY = 258, D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_INVALIDVIEWPORT = 259, D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_INVALIDSCISSOR = 260, D3D11_MESSAGE_ID_CLEARRENDERTARGETVIEW_DENORMFLUSH = 261, D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DENORMFLUSH = 262, D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID = 263, D3D11_MESSAGE_ID_DEVICE_IAGETVERTEXBUFFERS_BUFFERS_EMPTY = 264, D3D11_MESSAGE_ID_DEVICE_VSGETSHADERRESOURCES_VIEWS_EMPTY = 265, D3D11_MESSAGE_ID_DEVICE_VSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 266, D3D11_MESSAGE_ID_DEVICE_VSGETSAMPLERS_SAMPLERS_EMPTY = 267, D3D11_MESSAGE_ID_DEVICE_GSGETSHADERRESOURCES_VIEWS_EMPTY = 268, D3D11_MESSAGE_ID_DEVICE_GSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 269, D3D11_MESSAGE_ID_DEVICE_GSGETSAMPLERS_SAMPLERS_EMPTY = 270, D3D11_MESSAGE_ID_DEVICE_SOGETTARGETS_BUFFERS_EMPTY = 271, D3D11_MESSAGE_ID_DEVICE_PSGETSHADERRESOURCES_VIEWS_EMPTY = 272, D3D11_MESSAGE_ID_DEVICE_PSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 273, D3D11_MESSAGE_ID_DEVICE_PSGETSAMPLERS_SAMPLERS_EMPTY = 274, D3D11_MESSAGE_ID_DEVICE_RSGETVIEWPORTS_VIEWPORTS_EMPTY = 275, D3D11_MESSAGE_ID_DEVICE_RSGETSCISSORRECTS_RECTS_EMPTY = 276, D3D11_MESSAGE_ID_DEVICE_GENERATEMIPS_RESOURCE_INVALID = 277, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSUBRESOURCE = 278, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESUBRESOURCE = 279, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCEBOX = 280, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCE = 281, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDDESTINATIONSTATE = 282, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_INVALIDSOURCESTATE = 283, D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCE = 284, D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDDESTINATIONSTATE = 285, D3D11_MESSAGE_ID_COPYRESOURCE_INVALIDSOURCESTATE = 286, D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSUBRESOURCE = 287, D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONBOX = 288, D3D11_MESSAGE_ID_UPDATESUBRESOURCE_INVALIDDESTINATIONSTATE = 289, D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_INVALID = 290, D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_DESTINATION_SUBRESOURCE_INVALID = 291, D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_INVALID = 292, D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_SOURCE_SUBRESOURCE_INVALID = 293, D3D11_MESSAGE_ID_DEVICE_RESOLVESUBRESOURCE_FORMAT_INVALID = 294, D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDMAPTYPE = 295, D3D11_MESSAGE_ID_BUFFER_MAP_INVALIDFLAGS = 296, D3D11_MESSAGE_ID_BUFFER_MAP_ALREADYMAPPED = 297, D3D11_MESSAGE_ID_BUFFER_MAP_DEVICEREMOVED_RETURN = 298, D3D11_MESSAGE_ID_BUFFER_UNMAP_NOTMAPPED = 299, D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDMAPTYPE = 300, D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDSUBRESOURCE = 301, D3D11_MESSAGE_ID_TEXTURE1D_MAP_INVALIDFLAGS = 302, D3D11_MESSAGE_ID_TEXTURE1D_MAP_ALREADYMAPPED = 303, D3D11_MESSAGE_ID_TEXTURE1D_MAP_DEVICEREMOVED_RETURN = 304, D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_INVALIDSUBRESOURCE = 305, D3D11_MESSAGE_ID_TEXTURE1D_UNMAP_NOTMAPPED = 306, D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDMAPTYPE = 307, D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDSUBRESOURCE = 308, D3D11_MESSAGE_ID_TEXTURE2D_MAP_INVALIDFLAGS = 309, D3D11_MESSAGE_ID_TEXTURE2D_MAP_ALREADYMAPPED = 310, D3D11_MESSAGE_ID_TEXTURE2D_MAP_DEVICEREMOVED_RETURN = 311, D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_INVALIDSUBRESOURCE = 312, D3D11_MESSAGE_ID_TEXTURE2D_UNMAP_NOTMAPPED = 313, D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDMAPTYPE = 314, D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDSUBRESOURCE = 315, D3D11_MESSAGE_ID_TEXTURE3D_MAP_INVALIDFLAGS = 316, D3D11_MESSAGE_ID_TEXTURE3D_MAP_ALREADYMAPPED = 317, D3D11_MESSAGE_ID_TEXTURE3D_MAP_DEVICEREMOVED_RETURN = 318, D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_INVALIDSUBRESOURCE = 319, D3D11_MESSAGE_ID_TEXTURE3D_UNMAP_NOTMAPPED = 320, D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_DEPRECATED = 321, D3D11_MESSAGE_ID_CHECKMULTISAMPLEQUALITYLEVELS_FORMAT_DEPRECATED = 322, D3D11_MESSAGE_ID_SETEXCEPTIONMODE_UNRECOGNIZEDFLAGS = 323, D3D11_MESSAGE_ID_SETEXCEPTIONMODE_INVALIDARG_RETURN = 324, D3D11_MESSAGE_ID_SETEXCEPTIONMODE_DEVICEREMOVED_RETURN = 325, D3D11_MESSAGE_ID_REF_SIMULATING_INFINITELY_FAST_HARDWARE = 326, D3D11_MESSAGE_ID_REF_THREADING_MODE = 327, D3D11_MESSAGE_ID_REF_UMDRIVER_EXCEPTION = 328, D3D11_MESSAGE_ID_REF_KMDRIVER_EXCEPTION = 329, D3D11_MESSAGE_ID_REF_HARDWARE_EXCEPTION = 330, D3D11_MESSAGE_ID_REF_ACCESSING_INDEXABLE_TEMP_OUT_OF_RANGE = 331, D3D11_MESSAGE_ID_REF_PROBLEM_PARSING_SHADER = 332, D3D11_MESSAGE_ID_REF_OUT_OF_MEMORY = 333, D3D11_MESSAGE_ID_REF_INFO = 334, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEXPOS_OVERFLOW = 335, D3D11_MESSAGE_ID_DEVICE_DRAWINDEXED_INDEXPOS_OVERFLOW = 336, D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_VERTEXPOS_OVERFLOW = 337, D3D11_MESSAGE_ID_DEVICE_DRAWINSTANCED_INSTANCEPOS_OVERFLOW = 338, D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INSTANCEPOS_OVERFLOW = 339, D3D11_MESSAGE_ID_DEVICE_DRAWINDEXEDINSTANCED_INDEXPOS_OVERFLOW = 340, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_SHADER_NOT_SET = 341, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND = 342, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERINDEX = 343, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_COMPONENTTYPE = 344, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_REGISTERMASK = 345, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_SYSTEMVALUE = 346, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS = 347, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_NOT_SET = 348, D3D11_MESSAGE_ID_DEVICE_DRAW_INPUTLAYOUT_NOT_SET = 349, D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_NOT_SET = 350, D3D11_MESSAGE_ID_DEVICE_DRAW_CONSTANT_BUFFER_TOO_SMALL = 351, D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_NOT_SET = 352, D3D11_MESSAGE_ID_DEVICE_DRAW_SHADERRESOURCEVIEW_NOT_SET = 353, D3D11_MESSAGE_ID_DEVICE_DRAW_VIEW_DIMENSION_MISMATCH = 354, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL = 355, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_BUFFER_TOO_SMALL = 356, D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_NOT_SET = 357, D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_FORMAT_INVALID = 358, D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_BUFFER_TOO_SMALL = 359, D3D11_MESSAGE_ID_DEVICE_DRAW_GS_INPUT_PRIMITIVE_MISMATCH = 360, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_RETURN_TYPE_MISMATCH = 361, D3D11_MESSAGE_ID_DEVICE_DRAW_POSITION_NOT_PRESENT = 362, D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_NOT_SET = 363, D3D11_MESSAGE_ID_DEVICE_DRAW_BOUND_RESOURCE_MAPPED = 364, D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_PRIMITIVETOPOLOGY = 365, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_OFFSET_UNALIGNED = 366, D3D11_MESSAGE_ID_DEVICE_DRAW_VERTEX_STRIDE_UNALIGNED = 367, D3D11_MESSAGE_ID_DEVICE_DRAW_INDEX_OFFSET_UNALIGNED = 368, D3D11_MESSAGE_ID_DEVICE_DRAW_OUTPUT_STREAM_OFFSET_UNALIGNED = 369, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_LD_UNSUPPORTED = 370, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_UNSUPPORTED = 371, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_SAMPLE_C_UNSUPPORTED = 372, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_MULTISAMPLE_UNSUPPORTED = 373, D3D11_MESSAGE_ID_DEVICE_DRAW_SO_TARGETS_BOUND_WITHOUT_SOURCE = 374, D3D11_MESSAGE_ID_DEVICE_DRAW_SO_STRIDE_LARGER_THAN_BUFFER = 375, D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING = 376, D3D11_MESSAGE_ID_DEVICE_DRAW_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 = 377, D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT = 378, D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT = 379, D3D11_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT = 380, D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_INVALIDARG_RETURN = 381, D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_OUTOFMEMORY_RETURN = 382, D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BADINTERFACE_RETURN = 383, D3D11_MESSAGE_ID_DEVICE_DRAW_VIEWPORT_NOT_SET = 384, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC = 385, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC = 386, D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_DENORMFLUSH = 387, D3D11_MESSAGE_ID_OMSETRENDERTARGETS_INVALIDVIEW = 388, D3D11_MESSAGE_ID_DEVICE_SETTEXTFILTERSIZE_INVALIDDIMENSIONS = 389, D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLER_MISMATCH = 390, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH = 391, D3D11_MESSAGE_ID_BLENDSTATE_GETDESC_LEGACY = 392, D3D11_MESSAGE_ID_SHADERRESOURCEVIEW_GETDESC_LEGACY = 393, D3D11_MESSAGE_ID_CREATEQUERY_OUTOFMEMORY_RETURN = 394, D3D11_MESSAGE_ID_CREATEPREDICATE_OUTOFMEMORY_RETURN = 395, D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFRANGE_COUNTER = 396, D3D11_MESSAGE_ID_CREATECOUNTER_SIMULTANEOUS_ACTIVE_COUNTERS_EXHAUSTED = 397, D3D11_MESSAGE_ID_CREATECOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 398, D3D11_MESSAGE_ID_CREATECOUNTER_OUTOFMEMORY_RETURN = 399, D3D11_MESSAGE_ID_CREATECOUNTER_NONEXCLUSIVE_RETURN = 400, D3D11_MESSAGE_ID_CREATECOUNTER_NULLDESC = 401, D3D11_MESSAGE_ID_CHECKCOUNTER_OUTOFRANGE_COUNTER = 402, D3D11_MESSAGE_ID_CHECKCOUNTER_UNSUPPORTED_WELLKNOWN_COUNTER = 403, D3D11_MESSAGE_ID_SETPREDICATION_INVALID_PREDICATE_STATE = 404, D3D11_MESSAGE_ID_QUERY_BEGIN_UNSUPPORTED = 405, D3D11_MESSAGE_ID_PREDICATE_BEGIN_DURING_PREDICATION = 406, D3D11_MESSAGE_ID_QUERY_BEGIN_DUPLICATE = 407, D3D11_MESSAGE_ID_QUERY_BEGIN_ABANDONING_PREVIOUS_RESULTS = 408, D3D11_MESSAGE_ID_PREDICATE_END_DURING_PREDICATION = 409, D3D11_MESSAGE_ID_QUERY_END_ABANDONING_PREVIOUS_RESULTS = 410, D3D11_MESSAGE_ID_QUERY_END_WITHOUT_BEGIN = 411, D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_DATASIZE = 412, D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_FLAGS = 413, D3D11_MESSAGE_ID_QUERY_GETDATA_INVALID_CALL = 414, D3D11_MESSAGE_ID_DEVICE_DRAW_PS_OUTPUT_TYPE_MISMATCH = 415, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_FORMAT_GATHER_UNSUPPORTED = 416, D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN = 417, D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_STRIDE_TOO_LARGE = 418, D3D11_MESSAGE_ID_DEVICE_IASETVERTEXBUFFERS_INVALIDRANGE = 419, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT = 420, D3D11_MESSAGE_ID_DEVICE_DRAW_RESOURCE_SAMPLE_COUNT_MISMATCH = 421, D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY = 422, D3D11_MESSAGE_ID_LIVE_BUFFER = 423, D3D11_MESSAGE_ID_LIVE_TEXTURE1D = 424, D3D11_MESSAGE_ID_LIVE_TEXTURE2D = 425, D3D11_MESSAGE_ID_LIVE_TEXTURE3D = 426, D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW = 427, D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW = 428, D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW = 429, D3D11_MESSAGE_ID_LIVE_VERTEXSHADER = 430, D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER = 431, D3D11_MESSAGE_ID_LIVE_PIXELSHADER = 432, D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT = 433, D3D11_MESSAGE_ID_LIVE_SAMPLER = 434, D3D11_MESSAGE_ID_LIVE_BLENDSTATE = 435, D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE = 436, D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE = 437, D3D11_MESSAGE_ID_LIVE_QUERY = 438, D3D11_MESSAGE_ID_LIVE_PREDICATE = 439, D3D11_MESSAGE_ID_LIVE_COUNTER = 440, D3D11_MESSAGE_ID_LIVE_DEVICE = 441, D3D11_MESSAGE_ID_LIVE_SWAPCHAIN = 442, D3D11_MESSAGE_ID_D3D10_MESSAGES_END = 443, D3D11_MESSAGE_ID_D3D10L9_MESSAGES_START = 0x100000, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_STENCIL_NO_TWO_SIDED = 0x100001, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthBiasClamp_NOT_SUPPORTED = 0x100002, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_COMPARISON_SUPPORT = 0x100003, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_EXCESSIVE_ANISOTROPY = 0x100004, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_OUT_OF_RANGE = 0x100005, D3D11_MESSAGE_ID_VSSETSAMPLERS_NOT_SUPPORTED = 0x100006, D3D11_MESSAGE_ID_VSSETSAMPLERS_TOO_MANY_SAMPLERS = 0x100007, D3D11_MESSAGE_ID_PSSETSAMPLERS_TOO_MANY_SAMPLERS = 0x100008, D3D11_MESSAGE_ID_CREATERESOURCE_NO_ARRAYS = 0x100009, D3D11_MESSAGE_ID_CREATERESOURCE_NO_VB_AND_IB_BIND = 0x10000a, D3D11_MESSAGE_ID_CREATERESOURCE_NO_TEXTURE_1D = 0x10000b, D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_OUT_OF_RANGE = 0x10000c, D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_SHADER_RESOURCE = 0x10000d, D3D11_MESSAGE_ID_OMSETRENDERTARGETS_TOO_MANY_RENDER_TARGETS = 0x10000e, D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_DIFFERING_BIT_DEPTHS = 0x10000f, D3D11_MESSAGE_ID_IASETVERTEXBUFFERS_BAD_BUFFER_INDEX = 0x100010, D3D11_MESSAGE_ID_DEVICE_RSSETVIEWPORTS_TOO_MANY_VIEWPORTS = 0x100011, D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_ADJACENCY_UNSUPPORTED = 0x100012, D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_TOO_MANY_SCISSORS = 0x100013, D3D11_MESSAGE_ID_COPYRESOURCE_ONLY_TEXTURE_2D_WITHIN_GPU_MEMORY = 0x100014, D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_3D_READBACK = 0x100015, D3D11_MESSAGE_ID_COPYRESOURCE_NO_TEXTURE_ONLY_READBACK = 0x100016, D3D11_MESSAGE_ID_CREATEINPUTLAYOUT_UNSUPPORTED_FORMAT = 0x100017, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_ALPHA_TO_COVERAGE = 0x100018, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_DepthClipEnable_MUST_BE_TRUE = 0x100019, D3D11_MESSAGE_ID_DRAWINDEXED_STARTINDEXLOCATION_MUST_BE_POSITIVE = 0x10001a, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_MUST_USE_LOWEST_LOD = 0x10001b, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MINLOD_MUST_NOT_BE_FRACTIONAL = 0x10001c, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_MAXLOD_MUST_BE_FLT_MAX = 0x10001d, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_FIRSTARRAYSLICE_MUST_BE_ZERO = 0x10001e, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_CUBES_MUST_HAVE_6_SIDES = 0x10001f, D3D11_MESSAGE_ID_CREATERESOURCE_NOT_BINDABLE_AS_RENDER_TARGET = 0x100020, D3D11_MESSAGE_ID_CREATERESOURCE_NO_DWORD_INDEX_BUFFER = 0x100021, D3D11_MESSAGE_ID_CREATERESOURCE_MSAA_PRECLUDES_SHADER_RESOURCE = 0x100022, D3D11_MESSAGE_ID_CREATERESOURCE_PRESENTATION_PRECLUDES_SHADER_RESOURCE = 0x100023, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_BLEND_ENABLE = 0x100024, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_INDEPENDENT_WRITE_MASKS = 0x100025, D3D11_MESSAGE_ID_CREATERESOURCE_NO_STREAM_OUT = 0x100026, D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_VB_IB_FOR_BUFFERS = 0x100027, D3D11_MESSAGE_ID_CREATERESOURCE_NO_AUTOGEN_FOR_VOLUMES = 0x100028, D3D11_MESSAGE_ID_CREATERESOURCE_DXGI_FORMAT_R8G8B8A8_CANNOT_BE_SHARED = 0x100029, D3D11_MESSAGE_ID_VSSHADERRESOURCES_NOT_SUPPORTED = 0x10002a, D3D11_MESSAGE_ID_GEOMETRY_SHADER_NOT_SUPPORTED = 0x10002b, D3D11_MESSAGE_ID_STREAM_OUT_NOT_SUPPORTED = 0x10002c, D3D11_MESSAGE_ID_TEXT_FILTER_NOT_SUPPORTED = 0x10002d, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_SEPARATE_ALPHA_BLEND = 0x10002e, D3D11_MESSAGE_ID_CREATEBLENDSTATE_NO_MRT_BLEND = 0x10002f, D3D11_MESSAGE_ID_CREATEBLENDSTATE_OPERATION_NOT_SUPPORTED = 0x100030, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_NO_MIRRORONCE = 0x100031, D3D11_MESSAGE_ID_DRAWINSTANCED_NOT_SUPPORTED = 0x100032, D3D11_MESSAGE_ID_DRAWINDEXEDINSTANCED_NOT_SUPPORTED_BELOW_9_3 = 0x100033, D3D11_MESSAGE_ID_DRAWINDEXED_POINTLIST_UNSUPPORTED = 0x100034, D3D11_MESSAGE_ID_SETBLENDSTATE_SAMPLE_MASK_CANNOT_BE_ZERO = 0x100035, D3D11_MESSAGE_ID_CREATERESOURCE_DIMENSION_EXCEEDS_FEATURE_LEVEL_DEFINITION = 0x100036, D3D11_MESSAGE_ID_CREATERESOURCE_ONLY_SINGLE_MIP_LEVEL_DEPTH_STENCIL_SUPPORTED = 0x100037, D3D11_MESSAGE_ID_DEVICE_RSSETSCISSORRECTS_NEGATIVESCISSOR = 0x100038, D3D11_MESSAGE_ID_SLOT_ZERO_MUST_BE_D3D10_INPUT_PER_VERTEX_DATA = 0x100039, D3D11_MESSAGE_ID_CREATERESOURCE_NON_POW_2_MIPMAP = 0x10003a, D3D11_MESSAGE_ID_CREATESAMPLERSTATE_BORDER_NOT_SUPPORTED = 0x10003b, D3D11_MESSAGE_ID_OMSETRENDERTARGETS_NO_SRGB_MRT = 0x10003c, D3D11_MESSAGE_ID_COPYRESOURCE_NO_3D_MISMATCHED_UPDATES = 0x10003d, D3D11_MESSAGE_ID_D3D10L9_MESSAGES_END = 0x10003e, D3D11_MESSAGE_ID_D3D11_MESSAGES_START = 0x200000, D3D11_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS = 0x200001, D3D11_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE = 0x200002, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE = 0x200003, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTREAMS = 0x200004, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER = 0x200005, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTREAMS = 0x200006, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCLASSLINKAGE = 0x200007, D3D11_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE = 0x200008, D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_COMMANDLISTFLAGS = 0x200009, D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_SINGLETHREADED = 0x20000a, D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALIDARG_RETURN = 0x20000b, D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_INVALID_CALL_RETURN = 0x20000c, D3D11_MESSAGE_ID_CREATEDEFERREDCONTEXT_OUTOFMEMORY_RETURN = 0x20000d, D3D11_MESSAGE_ID_FINISHDISPLAYLIST_ONIMMEDIATECONTEXT = 0x20000e, D3D11_MESSAGE_ID_FINISHDISPLAYLIST_OUTOFMEMORY_RETURN = 0x20000f, D3D11_MESSAGE_ID_FINISHDISPLAYLIST_INVALID_CALL_RETURN = 0x200010, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM = 0x200011, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES = 0x200012, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES = 0x200013, D3D11_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES = 0x200014, D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_HAZARD = 0x200015, D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_HAZARD = 0x200016, D3D11_MESSAGE_ID_HSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 0x200017, D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 0x200018, D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCALL = 0x200019, D3D11_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY = 0x20001a, D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE = 0x20001b, D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE = 0x20001c, D3D11_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE = 0x20001d, D3D11_MESSAGE_ID_DEVICE_HSSETSHADERRESOURCES_VIEWS_EMPTY = 0x20001e, D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFER = 0x20001f, D3D11_MESSAGE_ID_DEVICE_HSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x200020, D3D11_MESSAGE_ID_DEVICE_HSSETSAMPLERS_SAMPLERS_EMPTY = 0x200021, D3D11_MESSAGE_ID_DEVICE_HSGETSHADERRESOURCES_VIEWS_EMPTY = 0x200022, D3D11_MESSAGE_ID_DEVICE_HSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x200023, D3D11_MESSAGE_ID_DEVICE_HSGETSAMPLERS_SAMPLERS_EMPTY = 0x200024, D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_HAZARD = 0x200025, D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_HAZARD = 0x200026, D3D11_MESSAGE_ID_DSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 0x200027, D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 0x200028, D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCALL = 0x200029, D3D11_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY = 0x20002a, D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE = 0x20002b, D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE = 0x20002c, D3D11_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE = 0x20002d, D3D11_MESSAGE_ID_DEVICE_DSSETSHADERRESOURCES_VIEWS_EMPTY = 0x20002e, D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFER = 0x20002f, D3D11_MESSAGE_ID_DEVICE_DSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x200030, D3D11_MESSAGE_ID_DEVICE_DSSETSAMPLERS_SAMPLERS_EMPTY = 0x200031, D3D11_MESSAGE_ID_DEVICE_DSGETSHADERRESOURCES_VIEWS_EMPTY = 0x200032, D3D11_MESSAGE_ID_DEVICE_DSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x200033, D3D11_MESSAGE_ID_DEVICE_DSGETSAMPLERS_SAMPLERS_EMPTY = 0x200034, D3D11_MESSAGE_ID_DEVICE_DRAW_HS_XOR_DS_MISMATCH = 0x200035, D3D11_MESSAGE_ID_DEFERRED_CONTEXT_REMOVAL_PROCESS_AT_FAULT = 0x200036, D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_INVALID_ARG_BUFFER = 0x200037, D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_UNALIGNED = 0x200038, D3D11_MESSAGE_ID_DEVICE_DRAWINDIRECT_OFFSET_OVERFLOW = 0x200039, D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDMAPTYPE = 0x20003a, D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDSUBRESOURCE = 0x20003b, D3D11_MESSAGE_ID_RESOURCE_MAP_INVALIDFLAGS = 0x20003c, D3D11_MESSAGE_ID_RESOURCE_MAP_ALREADYMAPPED = 0x20003d, D3D11_MESSAGE_ID_RESOURCE_MAP_DEVICEREMOVED_RETURN = 0x20003e, D3D11_MESSAGE_ID_RESOURCE_MAP_OUTOFMEMORY_RETURN = 0x20003f, D3D11_MESSAGE_ID_RESOURCE_MAP_WITHOUT_INITIAL_DISCARD = 0x200040, D3D11_MESSAGE_ID_RESOURCE_UNMAP_INVALIDSUBRESOURCE = 0x200041, D3D11_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED = 0x200042, D3D11_MESSAGE_ID_DEVICE_DRAW_RASTERIZING_CONTROL_POINTS = 0x200043, D3D11_MESSAGE_ID_DEVICE_IASETPRIMITIVETOPOLOGY_TOPOLOGY_UNSUPPORTED = 0x200044, D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_SIGNATURE_MISMATCH = 0x200045, D3D11_MESSAGE_ID_DEVICE_DRAW_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH = 0x200046, D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_CONTROL_POINT_COUNT_MISMATCH = 0x200047, D3D11_MESSAGE_ID_DEVICE_DRAW_HS_DS_TESSELLATOR_DOMAIN_MISMATCH = 0x200048, D3D11_MESSAGE_ID_CREATE_CONTEXT = 0x200049, D3D11_MESSAGE_ID_LIVE_CONTEXT = 0x20004a, D3D11_MESSAGE_ID_DESTROY_CONTEXT = 0x20004b, D3D11_MESSAGE_ID_CREATE_BUFFER = 0x20004c, D3D11_MESSAGE_ID_LIVE_BUFFER_WIN7 = 0x20004d, D3D11_MESSAGE_ID_DESTROY_BUFFER = 0x20004e, D3D11_MESSAGE_ID_CREATE_TEXTURE1D = 0x20004f, D3D11_MESSAGE_ID_LIVE_TEXTURE1D_WIN7 = 0x200050, D3D11_MESSAGE_ID_DESTROY_TEXTURE1D = 0x200051, D3D11_MESSAGE_ID_CREATE_TEXTURE2D = 0x200052, D3D11_MESSAGE_ID_LIVE_TEXTURE2D_WIN7 = 0x200053, D3D11_MESSAGE_ID_DESTROY_TEXTURE2D = 0x200054, D3D11_MESSAGE_ID_CREATE_TEXTURE3D = 0x200055, D3D11_MESSAGE_ID_LIVE_TEXTURE3D_WIN7 = 0x200056, D3D11_MESSAGE_ID_DESTROY_TEXTURE3D = 0x200057, D3D11_MESSAGE_ID_CREATE_SHADERRESOURCEVIEW = 0x200058, D3D11_MESSAGE_ID_LIVE_SHADERRESOURCEVIEW_WIN7 = 0x200059, D3D11_MESSAGE_ID_DESTROY_SHADERRESOURCEVIEW = 0x20005a, D3D11_MESSAGE_ID_CREATE_RENDERTARGETVIEW = 0x20005b, D3D11_MESSAGE_ID_LIVE_RENDERTARGETVIEW_WIN7 = 0x20005c, D3D11_MESSAGE_ID_DESTROY_RENDERTARGETVIEW = 0x20005d, D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILVIEW = 0x20005e, D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILVIEW_WIN7 = 0x20005f, D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILVIEW = 0x200060, D3D11_MESSAGE_ID_CREATE_VERTEXSHADER = 0x200061, D3D11_MESSAGE_ID_LIVE_VERTEXSHADER_WIN7 = 0x200062, D3D11_MESSAGE_ID_DESTROY_VERTEXSHADER = 0x200063, D3D11_MESSAGE_ID_CREATE_HULLSHADER = 0x200064, D3D11_MESSAGE_ID_LIVE_HULLSHADER = 0x200065, D3D11_MESSAGE_ID_DESTROY_HULLSHADER = 0x200066, D3D11_MESSAGE_ID_CREATE_DOMAINSHADER = 0x200067, D3D11_MESSAGE_ID_LIVE_DOMAINSHADER = 0x200068, D3D11_MESSAGE_ID_DESTROY_DOMAINSHADER = 0x200069, D3D11_MESSAGE_ID_CREATE_GEOMETRYSHADER = 0x20006a, D3D11_MESSAGE_ID_LIVE_GEOMETRYSHADER_WIN7 = 0x20006b, D3D11_MESSAGE_ID_DESTROY_GEOMETRYSHADER = 0x20006c, D3D11_MESSAGE_ID_CREATE_PIXELSHADER = 0x20006d, D3D11_MESSAGE_ID_LIVE_PIXELSHADER_WIN7 = 0x20006e, D3D11_MESSAGE_ID_DESTROY_PIXELSHADER = 0x20006f, D3D11_MESSAGE_ID_CREATE_INPUTLAYOUT = 0x200070, D3D11_MESSAGE_ID_LIVE_INPUTLAYOUT_WIN7 = 0x200071, D3D11_MESSAGE_ID_DESTROY_INPUTLAYOUT = 0x200072, D3D11_MESSAGE_ID_CREATE_SAMPLER = 0x200073, D3D11_MESSAGE_ID_LIVE_SAMPLER_WIN7 = 0x200074, D3D11_MESSAGE_ID_DESTROY_SAMPLER = 0x200075, D3D11_MESSAGE_ID_CREATE_BLENDSTATE = 0x200076, D3D11_MESSAGE_ID_LIVE_BLENDSTATE_WIN7 = 0x200077, D3D11_MESSAGE_ID_DESTROY_BLENDSTATE = 0x200078, D3D11_MESSAGE_ID_CREATE_DEPTHSTENCILSTATE = 0x200079, D3D11_MESSAGE_ID_LIVE_DEPTHSTENCILSTATE_WIN7 = 0x20007a, D3D11_MESSAGE_ID_DESTROY_DEPTHSTENCILSTATE = 0x20007b, D3D11_MESSAGE_ID_CREATE_RASTERIZERSTATE = 0x20007c, D3D11_MESSAGE_ID_LIVE_RASTERIZERSTATE_WIN7 = 0x20007d, D3D11_MESSAGE_ID_DESTROY_RASTERIZERSTATE = 0x20007e, D3D11_MESSAGE_ID_CREATE_QUERY = 0x20007f, D3D11_MESSAGE_ID_LIVE_QUERY_WIN7 = 0x200080, D3D11_MESSAGE_ID_DESTROY_QUERY = 0x200081, D3D11_MESSAGE_ID_CREATE_PREDICATE = 0x200082, D3D11_MESSAGE_ID_LIVE_PREDICATE_WIN7 = 0x200083, D3D11_MESSAGE_ID_DESTROY_PREDICATE = 0x200084, D3D11_MESSAGE_ID_CREATE_COUNTER = 0x200085, D3D11_MESSAGE_ID_DESTROY_COUNTER = 0x200086, D3D11_MESSAGE_ID_CREATE_COMMANDLIST = 0x200087, D3D11_MESSAGE_ID_LIVE_COMMANDLIST = 0x200088, D3D11_MESSAGE_ID_DESTROY_COMMANDLIST = 0x200089, D3D11_MESSAGE_ID_CREATE_CLASSINSTANCE = 0x20008a, D3D11_MESSAGE_ID_LIVE_CLASSINSTANCE = 0x20008b, D3D11_MESSAGE_ID_DESTROY_CLASSINSTANCE = 0x20008c, D3D11_MESSAGE_ID_CREATE_CLASSLINKAGE = 0x20008d, D3D11_MESSAGE_ID_LIVE_CLASSLINKAGE = 0x20008e, D3D11_MESSAGE_ID_DESTROY_CLASSLINKAGE = 0x20008f, D3D11_MESSAGE_ID_LIVE_DEVICE_WIN7 = 0x200090, D3D11_MESSAGE_ID_LIVE_OBJECT_SUMMARY_WIN7 = 0x200091, D3D11_MESSAGE_ID_CREATE_COMPUTESHADER = 0x200092, D3D11_MESSAGE_ID_LIVE_COMPUTESHADER = 0x200093, D3D11_MESSAGE_ID_DESTROY_COMPUTESHADER = 0x200094, D3D11_MESSAGE_ID_CREATE_UNORDEREDACCESSVIEW = 0x200095, D3D11_MESSAGE_ID_LIVE_UNORDEREDACCESSVIEW = 0x200096, D3D11_MESSAGE_ID_DESTROY_UNORDEREDACCESSVIEW = 0x200097, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACES_FEATURELEVEL = 0x200098, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INTERFACE_COUNT_MISMATCH = 0x200099, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE = 0x20009a, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_INDEX = 0x20009b, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_TYPE = 0x20009c, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INVALID_INSTANCE_DATA = 0x20009d, D3D11_MESSAGE_ID_DEVICE_SETSHADER_UNBOUND_INSTANCE_DATA = 0x20009e, D3D11_MESSAGE_ID_DEVICE_SETSHADER_INSTANCE_DATA_BINDINGS = 0x20009f, D3D11_MESSAGE_ID_DEVICE_CREATESHADER_CLASSLINKAGE_FULL = 0x2000a0, D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_UNRECOGNIZED_FEATURE = 0x2000a1, D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE = 0x2000a2, D3D11_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_INVALIDARG_RETURN = 0x2000a3, D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_HAZARD = 0x2000a4, D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_HAZARD = 0x2000a5, D3D11_MESSAGE_ID_CSSETSHADERRESOURCES_UNBINDDELETINGOBJECT = 0x2000a6, D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_UNBINDDELETINGOBJECT = 0x2000a7, D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCALL = 0x2000a8, D3D11_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY = 0x2000a9, D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE = 0x2000aa, D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERTYPE = 0x2000ab, D3D11_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE = 0x2000ac, D3D11_MESSAGE_ID_DEVICE_CSSETSHADERRESOURCES_VIEWS_EMPTY = 0x2000ad, D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFER = 0x2000ae, D3D11_MESSAGE_ID_DEVICE_CSSETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x2000af, D3D11_MESSAGE_ID_DEVICE_CSSETSAMPLERS_SAMPLERS_EMPTY = 0x2000b0, D3D11_MESSAGE_ID_DEVICE_CSGETSHADERRESOURCES_VIEWS_EMPTY = 0x2000b1, D3D11_MESSAGE_ID_DEVICE_CSGETCONSTANTBUFFERS_BUFFERS_EMPTY = 0x2000b2, D3D11_MESSAGE_ID_DEVICE_CSGETSAMPLERS_SAMPLERS_EMPTY = 0x2000b3, D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b4, D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b5, D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b6, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b7, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b8, D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000b9, D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x2000ba, D3D11_MESSAGE_ID_CREATEBUFFER_INVALIDSTRUCTURESTRIDE = 0x2000bb, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFLAGS = 0x2000bc, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE = 0x2000bd, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC = 0x2000be, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT = 0x2000bf, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS = 0x2000c0, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT = 0x2000c1, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_HAZARD = 0x2000c2, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_OVERLAPPING_OLD_SLOTS = 0x2000c3, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NO_OP = 0x2000c4, D3D11_MESSAGE_ID_CSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT = 0x2000c5, D3D11_MESSAGE_ID_PSSETUNORDEREDACCESSVIEWS_UNBINDDELETINGOBJECT = 0x2000c6, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDARG_RETURN = 0x2000c7, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_OUTOFMEMORY_RETURN = 0x2000c8, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_TOOMANYOBJECTS = 0x2000c9, D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_HAZARD = 0x2000ca, D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_DENORMFLUSH = 0x2000cb, D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSS_VIEWS_EMPTY = 0x2000cc, D3D11_MESSAGE_ID_DEVICE_CSGETUNORDEREDACCESSS_VIEWS_EMPTY = 0x2000cd, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS = 0x2000ce, D3D11_MESSAGE_ID_CREATESHADERRESESOURCEVIEW_TOOMANYOBJECTS = 0x2000cf, D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_INVALID_ARG_BUFFER = 0x2000d0, D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_UNALIGNED = 0x2000d1, D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_OFFSET_OVERFLOW = 0x2000d2, D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDCONTEXT = 0x2000d3, D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDRESOURCE = 0x2000d4, D3D11_MESSAGE_ID_DEVICE_SETRESOURCEMINLOD_INVALIDMINLOD = 0x2000d5, D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDCONTEXT = 0x2000d6, D3D11_MESSAGE_ID_DEVICE_GETRESOURCEMINLOD_INVALIDRESOURCE = 0x2000d7, D3D11_MESSAGE_ID_OMSETDEPTHSTENCIL_UNBINDDELETINGOBJECT = 0x2000d8, D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_DEPTH_READONLY = 0x2000d9, D3D11_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_STENCIL_READONLY = 0x2000da, D3D11_MESSAGE_ID_CHECKFEATURESUPPORT_FORMAT_DEPRECATED = 0x2000db, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RETURN_TYPE_MISMATCH = 0x2000dc, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET = 0x2000dd, D3D11_MESSAGE_ID_DEVICE_DRAW_UNORDEREDACCESSVIEW_RENDERTARGETVIEW_OVERLAP = 0x2000de, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_DIMENSION_MISMATCH = 0x2000df, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_APPEND_UNSUPPORTED = 0x2000e0, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMICS_UNSUPPORTED = 0x2000e1, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_STRUCTURE_STRIDE_MISMATCH = 0x2000e2, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_BUFFER_TYPE_MISMATCH = 0x2000e3, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_RAW_UNSUPPORTED = 0x2000e4, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_LD_UNSUPPORTED = 0x2000e5, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_FORMAT_STORE_UNSUPPORTED = 0x2000e6, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_ADD_UNSUPPORTED = 0x2000e7, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_BITWISE_OPS_UNSUPPORTED = 0x2000e8, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_CMPSTORE_CMPEXCHANGE_UNSUPPORTED = 0x2000e9, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_EXCHANGE_UNSUPPORTED = 0x2000ea, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_SIGNED_MINMAX_UNSUPPORTED = 0x2000eb, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_ATOMIC_UNSIGNED_MINMAX_UNSUPPORTED = 0x2000ec, D3D11_MESSAGE_ID_DEVICE_DISPATCH_BOUND_RESOURCE_MAPPED = 0x2000ed, D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_OVERFLOW = 0x2000ee, D3D11_MESSAGE_ID_DEVICE_DISPATCH_THREADGROUPCOUNT_ZERO = 0x2000ef, D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_STRUCTURE_STRIDE_MISMATCH = 0x2000f0, D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_BUFFER_TYPE_MISMATCH = 0x2000f1, D3D11_MESSAGE_ID_DEVICE_SHADERRESOURCEVIEW_RAW_UNSUPPORTED = 0x2000f2, D3D11_MESSAGE_ID_DEVICE_DISPATCH_UNSUPPORTED = 0x2000f3, D3D11_MESSAGE_ID_DEVICE_DISPATCHINDIRECT_UNSUPPORTED = 0x2000f4, D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDOFFSET = 0x2000f5, D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_LARGEOFFSET = 0x2000f6, D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDDESTINATIONSTATE = 0x2000f7, D3D11_MESSAGE_ID_COPYSTRUCTURECOUNT_INVALIDSOURCESTATE = 0x2000f8, D3D11_MESSAGE_ID_CHECKFORMATSUPPORT_FORMAT_NOT_SUPPORTED = 0x2000f9, D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDVIEW = 0x2000fa, D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_INVALIDOFFSET = 0x2000fb, D3D11_MESSAGE_ID_DEVICE_CSSETUNORDEREDACCESSVIEWS_TOOMANYVIEWS = 0x2000fc, D3D11_MESSAGE_ID_CLEARUNORDEREDACCESSVIEWFLOAT_INVALIDFORMAT = 0x2000fd, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_COUNTER_UNSUPPORTED = 0x2000fe, D3D11_MESSAGE_ID_REF_WARNING = 0x2000ff, D3D11_MESSAGE_ID_DEVICE_DRAW_PIXEL_SHADER_WITHOUT_RTV_OR_DSV = 0x200100, D3D11_MESSAGE_ID_SHADER_ABORT = 0x200101, D3D11_MESSAGE_ID_SHADER_MESSAGE = 0x200102, D3D11_MESSAGE_ID_SHADER_ERROR = 0x200103, D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDRESOURCE = 0x200104, D3D11_MESSAGE_ID_HSSETSAMPLERS_UNBINDDELETINGOBJECT = 0x200105, D3D11_MESSAGE_ID_DSSETSAMPLERS_UNBINDDELETINGOBJECT = 0x200106, D3D11_MESSAGE_ID_CSSETSAMPLERS_UNBINDDELETINGOBJECT = 0x200107, D3D11_MESSAGE_ID_HSSETSHADER_UNBINDDELETINGOBJECT = 0x200108, D3D11_MESSAGE_ID_DSSETSHADER_UNBINDDELETINGOBJECT = 0x200109, D3D11_MESSAGE_ID_CSSETSHADER_UNBINDDELETINGOBJECT = 0x20010a, D3D11_MESSAGE_ID_ENQUEUESETEVENT_INVALIDARG_RETURN = 0x20010b, D3D11_MESSAGE_ID_ENQUEUESETEVENT_OUTOFMEMORY_RETURN = 0x20010c, D3D11_MESSAGE_ID_ENQUEUESETEVENT_ACCESSDENIED_RETURN = 0x20010d, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_NUMUAVS_INVALIDRANGE = 0x20010e, D3D11_MESSAGE_ID_D3D11_MESSAGES_END = 0x20010f, D3D11_MESSAGE_ID_D3D11_1_MESSAGES_START = 0x300000, D3D11_MESSAGE_ID_CREATE_VIDEODECODER = 0x300001, D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSORENUM = 0x300002, D3D11_MESSAGE_ID_CREATE_VIDEOPROCESSOR = 0x300003, D3D11_MESSAGE_ID_CREATE_DECODEROUTPUTVIEW = 0x300004, D3D11_MESSAGE_ID_CREATE_PROCESSORINPUTVIEW = 0x300005, D3D11_MESSAGE_ID_CREATE_PROCESSOROUTPUTVIEW = 0x300006, D3D11_MESSAGE_ID_CREATE_DEVICECONTEXTSTATE = 0x300007, D3D11_MESSAGE_ID_LIVE_VIDEODECODER = 0x300008, D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSORENUM = 0x300009, D3D11_MESSAGE_ID_LIVE_VIDEOPROCESSOR = 0x30000a, D3D11_MESSAGE_ID_LIVE_DECODEROUTPUTVIEW = 0x30000b, D3D11_MESSAGE_ID_LIVE_PROCESSORINPUTVIEW = 0x30000c, D3D11_MESSAGE_ID_LIVE_PROCESSOROUTPUTVIEW = 0x30000d, D3D11_MESSAGE_ID_LIVE_DEVICECONTEXTSTATE = 0x30000e, D3D11_MESSAGE_ID_DESTROY_VIDEODECODER = 0x30000f, D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSORENUM = 0x300010, D3D11_MESSAGE_ID_DESTROY_VIDEOPROCESSOR = 0x300011, D3D11_MESSAGE_ID_DESTROY_DECODEROUTPUTVIEW = 0x300012, D3D11_MESSAGE_ID_DESTROY_PROCESSORINPUTVIEW = 0x300013, D3D11_MESSAGE_ID_DESTROY_PROCESSOROUTPUTVIEW = 0x300014, D3D11_MESSAGE_ID_DESTROY_DEVICECONTEXTSTATE = 0x300015, D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFLAGS = 0x300016, D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDFEATURELEVEL = 0x300017, D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_FEATURELEVELS_NOT_SUPPORTED = 0x300018, D3D11_MESSAGE_ID_CREATEDEVICECONTEXTSTATE_INVALIDREFIID = 0x300019, D3D11_MESSAGE_ID_DEVICE_DISCARDVIEW_INVALIDVIEW = 0x30001a, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION1_INVALIDCOPYFLAGS = 0x30001b, D3D11_MESSAGE_ID_UPDATESUBRESOURCE1_INVALIDCOPYFLAGS = 0x30001c, D3D11_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT = 0x30001d, D3D11_MESSAGE_ID_CREATEVIDEODECODER_OUTOFMEMORY_RETURN = 0x30001e, D3D11_MESSAGE_ID_CREATEVIDEODECODER_NULLPARAM = 0x30001f, D3D11_MESSAGE_ID_CREATEVIDEODECODER_INVALIDFORMAT = 0x300020, D3D11_MESSAGE_ID_CREATEVIDEODECODER_ZEROWIDTHHEIGHT = 0x300021, D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERSIZE = 0x300022, D3D11_MESSAGE_ID_CREATEVIDEODECODER_DRIVER_INVALIDBUFFERUSAGE = 0x300023, D3D11_MESSAGE_ID_GETVIDEODECODERPROFILECOUNT_OUTOFMEMORY = 0x300024, D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_NULLPARAM = 0x300025, D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_INVALIDINDEX = 0x300026, D3D11_MESSAGE_ID_GETVIDEODECODERPROFILE_OUTOFMEMORY_RETURN = 0x300027, D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_NULLPARAM = 0x300028, D3D11_MESSAGE_ID_CHECKVIDEODECODERFORMAT_OUTOFMEMORY_RETURN = 0x300029, D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_NULLPARAM = 0x30002a, D3D11_MESSAGE_ID_GETVIDEODECODERCONFIGCOUNT_OUTOFMEMORY_RETURN = 0x30002b, D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_NULLPARAM = 0x30002c, D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_INVALIDINDEX = 0x30002d, D3D11_MESSAGE_ID_GETVIDEODECODERCONFIG_OUTOFMEMORY_RETURN = 0x30002e, D3D11_MESSAGE_ID_GETDECODERCREATIONPARAMS_NULLPARAM = 0x30002f, D3D11_MESSAGE_ID_GETDECODERDRIVERHANDLE_NULLPARAM = 0x300030, D3D11_MESSAGE_ID_GETDECODERBUFFER_NULLPARAM = 0x300031, D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDBUFFER = 0x300032, D3D11_MESSAGE_ID_GETDECODERBUFFER_INVALIDTYPE = 0x300033, D3D11_MESSAGE_ID_GETDECODERBUFFER_LOCKED = 0x300034, D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NULLPARAM = 0x300035, D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_INVALIDTYPE = 0x300036, D3D11_MESSAGE_ID_RELEASEDECODERBUFFER_NOTLOCKED = 0x300037, D3D11_MESSAGE_ID_DECODERBEGINFRAME_NULLPARAM = 0x300038, D3D11_MESSAGE_ID_DECODERBEGINFRAME_HAZARD = 0x300039, D3D11_MESSAGE_ID_DECODERENDFRAME_NULLPARAM = 0x30003a, D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_NULLPARAM = 0x30003b, D3D11_MESSAGE_ID_SUBMITDECODERBUFFERS_INVALIDTYPE = 0x30003c, D3D11_MESSAGE_ID_DECODEREXTENSION_NULLPARAM = 0x30003d, D3D11_MESSAGE_ID_DECODEREXTENSION_INVALIDRESOURCE = 0x30003e, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_OUTOFMEMORY_RETURN = 0x30003f, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_NULLPARAM = 0x300040, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDFRAMEFORMAT = 0x300041, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDUSAGE = 0x300042, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDINPUTFRAMERATE = 0x300043, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDOUTPUTFRAMERATE = 0x300044, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORENUMERATOR_INVALIDWIDTHHEIGHT = 0x300045, D3D11_MESSAGE_ID_GETVIDEOPROCESSORCONTENTDESC_NULLPARAM = 0x300046, D3D11_MESSAGE_ID_CHECKVIDEOPROCESSORFORMAT_NULLPARAM = 0x300047, D3D11_MESSAGE_ID_GETVIDEOPROCESSORCAPS_NULLPARAM = 0x300048, D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_NULLPARAM = 0x300049, D3D11_MESSAGE_ID_GETVIDEOPROCESSORRATECONVERSIONCAPS_INVALIDINDEX = 0x30004a, D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_NULLPARAM = 0x30004b, D3D11_MESSAGE_ID_GETVIDEOPROCESSORCUSTOMRATE_INVALIDINDEX = 0x30004c, D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_NULLPARAM = 0x30004d, D3D11_MESSAGE_ID_GETVIDEOPROCESSORFILTERRANGE_UNSUPPORTED = 0x30004e, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_OUTOFMEMORY_RETURN = 0x30004f, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOR_NULLPARAM = 0x300050, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTTARGETRECT_NULLPARAM = 0x300051, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_NULLPARAM = 0x300052, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTBACKGROUNDCOLOR_INVALIDALPHA = 0x300053, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCOLORSPACE_NULLPARAM = 0x300054, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_NULLPARAM = 0x300055, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_UNSUPPORTED = 0x300056, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDSTREAM = 0x300057, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTALPHAFILLMODE_INVALIDFILLMODE = 0x300058, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_NULLPARAM = 0x300059, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_NULLPARAM = 0x30005a, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTSTEREOMODE_UNSUPPORTED = 0x30005b, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTEXTENSION_NULLPARAM = 0x30005c, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTTARGETRECT_NULLPARAM = 0x30005d, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTBACKGROUNDCOLOR_NULLPARAM = 0x30005e, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCOLORSPACE_NULLPARAM = 0x30005f, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTALPHAFILLMODE_NULLPARAM = 0x300060, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTCONSTRICTION_NULLPARAM = 0x300061, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_UNSUPPORTED = 0x300062, D3D11_MESSAGE_ID_VIDEOPROCESSORSETOUTPUTCONSTRICTION_INVALIDSIZE = 0x300063, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTSTEREOMODE_NULLPARAM = 0x300064, D3D11_MESSAGE_ID_VIDEOPROCESSORGETOUTPUTEXTENSION_NULLPARAM = 0x300065, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_NULLPARAM = 0x300066, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDFORMAT = 0x300067, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFRAMEFORMAT_INVALIDSTREAM = 0x300068, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_NULLPARAM = 0x300069, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMCOLORSPACE_INVALIDSTREAM = 0x30006a, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_NULLPARAM = 0x30006b, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDRATE = 0x30006c, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDFLAG = 0x30006d, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMOUTPUTRATE_INVALIDSTREAM = 0x30006e, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_NULLPARAM = 0x30006f, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDSTREAM = 0x300070, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSOURCERECT_INVALIDRECT = 0x300071, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_NULLPARAM = 0x300072, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDSTREAM = 0x300073, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMDESTRECT_INVALIDRECT = 0x300074, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_NULLPARAM = 0x300075, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDSTREAM = 0x300076, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_INVALIDALPHA = 0x300077, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_NULLPARAM = 0x300078, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDSTREAM = 0x300079, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDCOUNT = 0x30007a, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPALETTE_INVALIDALPHA = 0x30007b, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_NULLPARAM = 0x30007c, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDSTREAM = 0x30007d, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_INVALIDRATIO = 0x30007e, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_NULLPARAM = 0x30007f, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDSTREAM = 0x300080, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_INVALIDRANGE = 0x300081, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMLUMAKEY_UNSUPPORTED = 0x300082, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_NULLPARAM = 0x300083, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDSTREAM = 0x300084, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_UNSUPPORTED = 0x300085, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FLIPUNSUPPORTED = 0x300086, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_MONOOFFSETUNSUPPORTED = 0x300087, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_FORMATUNSUPPORTED = 0x300088, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMSTEREOFORMAT_INVALIDFORMAT = 0x300089, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_NULLPARAM = 0x30008a, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMAUTOPROCESSINGMODE_INVALIDSTREAM = 0x30008b, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_NULLPARAM = 0x30008c, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDSTREAM = 0x30008d, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDFILTER = 0x30008e, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_UNSUPPORTED = 0x30008f, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMFILTER_INVALIDLEVEL = 0x300090, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_NULLPARAM = 0x300091, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMEXTENSION_INVALIDSTREAM = 0x300092, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFRAMEFORMAT_NULLPARAM = 0x300093, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMCOLORSPACE_NULLPARAM = 0x300094, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMOUTPUTRATE_NULLPARAM = 0x300095, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSOURCERECT_NULLPARAM = 0x300096, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMDESTRECT_NULLPARAM = 0x300097, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMALPHA_NULLPARAM = 0x300098, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPALETTE_NULLPARAM = 0x300099, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMPIXELASPECTRATIO_NULLPARAM = 0x30009a, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMLUMAKEY_NULLPARAM = 0x30009b, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMSTEREOFORMAT_NULLPARAM = 0x30009c, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMAUTOPROCESSINGMODE_NULLPARAM = 0x30009d, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMFILTER_NULLPARAM = 0x30009e, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_NULLPARAM = 0x30009f, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMEXTENSION_INVALIDSTREAM = 0x3000a0, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NULLPARAM = 0x3000a1, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSTREAMCOUNT = 0x3000a2, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_TARGETRECT = 0x3000a3, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDOUTPUT = 0x3000a4, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDPASTFRAMES = 0x3000a5, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDFUTUREFRAMES = 0x3000a6, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDSOURCERECT = 0x3000a7, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDDESTRECT = 0x3000a8, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDINPUTRESOURCE = 0x3000a9, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAYSIZE = 0x3000aa, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDARRAY = 0x3000ab, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTEXPECTED = 0x3000ac, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_RIGHTNOTEXPECTED = 0x3000ad, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_STEREONOTENABLED = 0x3000ae, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INVALIDRIGHTRESOURCE = 0x3000af, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_NOSTEREOSTREAMS = 0x3000b0, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_INPUTHAZARD = 0x3000b1, D3D11_MESSAGE_ID_VIDEOPROCESSORBLT_OUTPUTHAZARD = 0x3000b2, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_OUTOFMEMORY_RETURN = 0x3000b3, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_NULLPARAM = 0x3000b4, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDTYPE = 0x3000b5, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDBIND = 0x3000b6, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEDFORMAT = 0x3000b7, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDMIP = 0x3000b8, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_UNSUPPORTEMIP = 0x3000b9, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAYSIZE = 0x3000ba, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDARRAY = 0x3000bb, D3D11_MESSAGE_ID_CREATEVIDEODECODEROUTPUTVIEW_INVALIDDIMENSION = 0x3000bc, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_OUTOFMEMORY_RETURN = 0x3000bd, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_NULLPARAM = 0x3000be, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDTYPE = 0x3000bf, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDBIND = 0x3000c0, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMISC = 0x3000c1, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDUSAGE = 0x3000c2, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFORMAT = 0x3000c3, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDFOURCC = 0x3000c4, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMIP = 0x3000c5, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_UNSUPPORTEDMIP = 0x3000c6, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAYSIZE = 0x3000c7, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDARRAY = 0x3000c8, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDDIMENSION = 0x3000c9, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_OUTOFMEMORY_RETURN = 0x3000ca, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_NULLPARAM = 0x3000cb, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDTYPE = 0x3000cc, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDBIND = 0x3000cd, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDFORMAT = 0x3000ce, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMIP = 0x3000cf, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDMIP = 0x3000d0, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_UNSUPPORTEDARRAY = 0x3000d1, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDARRAY = 0x3000d2, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDDIMENSION = 0x3000d3, D3D11_MESSAGE_ID_DEVICE_DRAW_INVALID_USE_OF_FORCED_SAMPLE_COUNT = 0x3000d4, D3D11_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS = 0x3000d5, D3D11_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDARRAYWITHDECODER = 0x3000d6, D3D11_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDARRAYWITHDECODER = 0x3000d7, D3D11_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDARRAYWITHDECODER = 0x3000d8, D3D11_MESSAGE_ID_DEVICE_LOCKEDOUT_INTERFACE = 0x3000d9, D3D11_MESSAGE_ID_REF_WARNING_ATOMIC_INCONSISTENT = 0x3000da, D3D11_MESSAGE_ID_REF_WARNING_READING_UNINITIALIZED_RESOURCE = 0x3000db, D3D11_MESSAGE_ID_REF_WARNING_RAW_HAZARD = 0x3000dc, D3D11_MESSAGE_ID_REF_WARNING_WAR_HAZARD = 0x3000dd, D3D11_MESSAGE_ID_REF_WARNING_WAW_HAZARD = 0x3000de, D3D11_MESSAGE_ID_CREATECRYPTOSESSION_NULLPARAM = 0x3000df, D3D11_MESSAGE_ID_CREATECRYPTOSESSION_OUTOFMEMORY_RETURN = 0x3000e0, D3D11_MESSAGE_ID_GETCRYPTOTYPE_NULLPARAM = 0x3000e1, D3D11_MESSAGE_ID_GETDECODERPROFILE_NULLPARAM = 0x3000e2, D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATESIZE_NULLPARAM = 0x3000e3, D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_NULLPARAM = 0x3000e4, D3D11_MESSAGE_ID_GETCRYPTOSESSIONCERTIFICATE_WRONGSIZE = 0x3000e5, D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_WRONGSIZE = 0x3000e6, D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_NULLPARAM = 0x3000e7, D3D11_MESSAGE_ID_ENCRYPTIONBLT_UNSUPPORTED = 0x3000e8, D3D11_MESSAGE_ID_ENCRYPTIONBLT_NULLPARAM = 0x3000e9, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_WRONGDEVICE = 0x3000ea, D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_WRONGDEVICE = 0x3000eb, D3D11_MESSAGE_ID_ENCRYPTIONBLT_FORMAT_MISMATCH = 0x3000ec, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SIZE_MISMATCH = 0x3000ed, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MULTISAMPLED = 0x3000ee, D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_NOT_STAGING = 0x3000ef, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_MAPPED = 0x3000f0, D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_MAPPED = 0x3000f1, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_OFFERED = 0x3000f2, D3D11_MESSAGE_ID_ENCRYPTIONBLT_DST_OFFERED = 0x3000f3, D3D11_MESSAGE_ID_ENCRYPTIONBLT_SRC_CONTENT_UNDEFINED = 0x3000f4, D3D11_MESSAGE_ID_DECRYPTIONBLT_UNSUPPORTED = 0x3000f5, D3D11_MESSAGE_ID_DECRYPTIONBLT_NULLPARAM = 0x3000f6, D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_WRONGDEVICE = 0x3000f7, D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_WRONGDEVICE = 0x3000f8, D3D11_MESSAGE_ID_DECRYPTIONBLT_FORMAT_MISMATCH = 0x3000f9, D3D11_MESSAGE_ID_DECRYPTIONBLT_SIZE_MISMATCH = 0x3000fa, D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MULTISAMPLED = 0x3000fb, D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_NOT_STAGING = 0x3000fc, D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_NOT_RENDER_TARGET = 0x3000fd, D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_MAPPED = 0x3000fe, D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_MAPPED = 0x3000ff, D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_OFFERED = 0x300100, D3D11_MESSAGE_ID_DECRYPTIONBLT_DST_OFFERED = 0x300101, D3D11_MESSAGE_ID_DECRYPTIONBLT_SRC_CONTENT_UNDEFINED = 0x300102, D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_NULLPARAM = 0x300103, D3D11_MESSAGE_ID_STARTSESSIONKEYREFRESH_INVALIDSIZE = 0x300104, D3D11_MESSAGE_ID_FINISHSESSIONKEYREFRESH_NULLPARAM = 0x300105, D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_NULLPARAM = 0x300106, D3D11_MESSAGE_ID_GETENCRYPTIONBLTKEY_INVALIDSIZE = 0x300107, D3D11_MESSAGE_ID_GETCONTENTPROTECTIONCAPS_NULLPARAM = 0x300108, D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_NULLPARAM = 0x300109, D3D11_MESSAGE_ID_CHECKCRYPTOKEYEXCHANGE_INVALIDINDEX = 0x30010a, D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_NULLPARAM = 0x30010b, D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_UNSUPPORTED = 0x30010c, D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_INVALIDTYPE = 0x30010d, D3D11_MESSAGE_ID_CREATEAUTHENTICATEDCHANNEL_OUTOFMEMORY_RETURN = 0x30010e, D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_INVALIDCHANNEL = 0x30010f, D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATESIZE_NULLPARAM = 0x300110, D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_INVALIDCHANNEL = 0x300111, D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_NULLPARAM = 0x300112, D3D11_MESSAGE_ID_GETAUTHENTICATEDCHANNELCERTIFICATE_WRONGSIZE = 0x300113, D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDCHANNEL = 0x300114, D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_NULLPARAM = 0x300115, D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_NULLPARAM = 0x300116, D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGCHANNEL = 0x300117, D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_UNSUPPORTEDQUERY = 0x300118, D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_WRONGSIZE = 0x300119, D3D11_MESSAGE_ID_QUERYAUTHENTICATEDCHANNEL_INVALIDPROCESSINDEX = 0x30011a, D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_NULLPARAM = 0x30011b, D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGCHANNEL = 0x30011c, D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_UNSUPPORTEDCONFIGURE = 0x30011d, D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_WRONGSIZE = 0x30011e, D3D11_MESSAGE_ID_CONFIGUREAUTHENTICATEDCHANNEL_INVALIDPROCESSIDTYPE = 0x30011f, D3D11_MESSAGE_ID_VSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300120, D3D11_MESSAGE_ID_DSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300121, D3D11_MESSAGE_ID_HSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300122, D3D11_MESSAGE_ID_GSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300123, D3D11_MESSAGE_ID_PSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300124, D3D11_MESSAGE_ID_CSSETCONSTANTBUFFERS_INVALIDBUFFEROFFSETORCOUNT = 0x300125, D3D11_MESSAGE_ID_NEGOTIATECRPYTOSESSIONKEYEXCHANGE_INVALIDSIZE = 0x300126, D3D11_MESSAGE_ID_NEGOTIATEAUTHENTICATEDCHANNELKEYEXCHANGE_INVALIDSIZE = 0x300127, D3D11_MESSAGE_ID_OFFERRESOURCES_INVALIDPRIORITY = 0x300128, D3D11_MESSAGE_ID_GETCRYPTOSESSIONHANDLE_OUTOFMEMORY = 0x300129, D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_NULLPARAM = 0x30012a, D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDTYPE = 0x30012b, D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDBIND = 0x30012c, D3D11_MESSAGE_ID_ACQUIREHANDLEFORCAPTURE_INVALIDARRAY = 0x30012d, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_NULLPARAM = 0x30012e, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALIDSTREAM = 0x30012f, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_INVALID = 0x300130, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMROTATION_UNSUPPORTED = 0x300131, D3D11_MESSAGE_ID_VIDEOPROCESSORGETSTREAMROTATION_NULLPARAM = 0x300132, D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDVIEW = 0x300133, D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x300134, D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x300135, D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x300136, D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x300137, D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x300138, D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x300139, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x30013a, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x30013b, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED = 0x30013c, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_SHADEREXTENSIONSNOTSUPPORTED = 0x30013d, D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x30013e, D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x30013f, D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x300140, D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_SHADEREXTENSIONSNOTSUPPORTED = 0x300141, D3D11_MESSAGE_ID_DEVICE_SHADER_LINKAGE_MINPRECISION = 0x300142, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMALPHA_UNSUPPORTED = 0x300143, D3D11_MESSAGE_ID_VIDEOPROCESSORSETSTREAMPIXELASPECTRATIO_UNSUPPORTED = 0x300144, D3D11_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED = 0x300145, D3D11_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED = 0x300146, D3D11_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED = 0x300147, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED = 0x300148, D3D11_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED = 0x300149, D3D11_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED = 0x30014a, D3D11_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED = 0x30014b, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_INVALIDOFFSET = 0x30014c, D3D11_MESSAGE_ID_DEVICE_OMSETRENDERTARGETSANDUNORDEREDACCESSVIEWS_TOOMANYVIEWS = 0x30014d, D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_NOTSUPPORTED = 0x30014e, D3D11_MESSAGE_ID_SWAPDEVICECONTEXTSTATE_NOTSUPPORTED = 0x30014f, D3D11_MESSAGE_ID_UPDATESUBRESOURCE_PREFERUPDATESUBRESOURCE1 = 0x300150, D3D11_MESSAGE_ID_GETDC_INACCESSIBLE = 0x300151, D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDRECT = 0x300152, D3D11_MESSAGE_ID_DEVICE_DRAW_SAMPLE_MASK_IGNORED_ON_FL9 = 0x300153, D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE1_NOT_SUPPORTED = 0x300154, D3D11_MESSAGE_ID_DEVICE_OPEN_SHARED_RESOURCE_BY_NAME_NOT_SUPPORTED = 0x300155, D3D11_MESSAGE_ID_ENQUEUESETEVENT_NOT_SUPPORTED = 0x300156, D3D11_MESSAGE_ID_OFFERRELEASE_NOT_SUPPORTED = 0x300157, D3D11_MESSAGE_ID_OFFERRESOURCES_INACCESSIBLE = 0x300158, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSORINPUTVIEW_INVALIDMSAA = 0x300159, D3D11_MESSAGE_ID_CREATEVIDEOPROCESSOROUTPUTVIEW_INVALIDMSAA = 0x30015a, D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT = 0x30015b, D3D11_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT = 0x30015c, D3D11_MESSAGE_ID_UPDATESUBRESOURCE_EMPTYDESTBOX = 0x30015d, D3D11_MESSAGE_ID_COPYSUBRESOURCEREGION_EMPTYSOURCEBOX = 0x30015e, D3D11_MESSAGE_ID_DEVICE_DRAW_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS = 0x30015f, D3D11_MESSAGE_ID_DEVICE_DRAW_DEPTHSTENCILVIEW_NOT_SET = 0x300160, D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET = 0x300161, D3D11_MESSAGE_ID_DEVICE_DRAW_RENDERTARGETVIEW_NOT_SET_DUE_TO_FLIP_PRESENT = 0x300162, D3D11_MESSAGE_ID_DEVICE_UNORDEREDACCESSVIEW_NOT_SET_DUE_TO_FLIP_PRESENT = 0x300163, D3D11_MESSAGE_ID_D3D11_1_MESSAGES_END = 0x300164 } D3D11_MESSAGE_ID; typedef enum D3D11_RLDO_FLAGS { D3D11_RLDO_SUMMARY = 1, D3D11_RLDO_DETAIL = 2 } D3D11_RLDO_FLAGS; typedef struct D3D11_MESSAGE { D3D11_MESSAGE_CATEGORY Category; D3D11_MESSAGE_SEVERITY Severity; D3D11_MESSAGE_ID ID; const char *pDescription; SIZE_T DescriptionByteLength; } D3D11_MESSAGE; typedef struct D3D11_INFO_QUEUE_FILTER_DESC { UINT NumCategories; D3D11_MESSAGE_CATEGORY *pCategoryList; UINT NumSeverities; D3D11_MESSAGE_SEVERITY *pSeverityList; UINT NumIDs; D3D11_MESSAGE_ID *pIDList; } D3D11_INFO_QUEUE_FILTER_DESC; typedef struct D3D11_INFO_QUEUE_FILTER { D3D11_INFO_QUEUE_FILTER_DESC AllowList; D3D11_INFO_QUEUE_FILTER_DESC DenyList; } D3D11_INFO_QUEUE_FILTER; #define D3D11_INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT 1024 /***************************************************************************** * ID3D11Debug interface */ #ifndef __ID3D11Debug_INTERFACE_DEFINED__ #define __ID3D11Debug_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11Debug, 0x79cf2233, 0x7536, 0x4948, 0x9d,0x36, 0x1e,0x46,0x92,0xdc,0x57,0x60); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("79cf2233-7536-4948-9d36-1e4692dc5760") ID3D11Debug : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetFeatureMask( UINT Mask) = 0; virtual UINT STDMETHODCALLTYPE GetFeatureMask( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetPresentPerRenderOpDelay( UINT Milliseconds) = 0; virtual UINT STDMETHODCALLTYPE GetPresentPerRenderOpDelay( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetSwapChain( IDXGISwapChain *pSwapChain) = 0; virtual HRESULT STDMETHODCALLTYPE GetSwapChain( IDXGISwapChain **ppSwapChain) = 0; virtual HRESULT STDMETHODCALLTYPE ValidateContext( ID3D11DeviceContext *pContext) = 0; virtual HRESULT STDMETHODCALLTYPE ReportLiveDeviceObjects( D3D11_RLDO_FLAGS Flags) = 0; virtual HRESULT STDMETHODCALLTYPE ValidateContextForDispatch( ID3D11DeviceContext *pContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11Debug, 0x79cf2233, 0x7536, 0x4948, 0x9d,0x36, 0x1e,0x46,0x92,0xdc,0x57,0x60) #endif #else typedef struct ID3D11DebugVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11Debug *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11Debug *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11Debug *This); /*** ID3D11Debug methods ***/ HRESULT (STDMETHODCALLTYPE *SetFeatureMask)( ID3D11Debug *This, UINT Mask); UINT (STDMETHODCALLTYPE *GetFeatureMask)( ID3D11Debug *This); HRESULT (STDMETHODCALLTYPE *SetPresentPerRenderOpDelay)( ID3D11Debug *This, UINT Milliseconds); UINT (STDMETHODCALLTYPE *GetPresentPerRenderOpDelay)( ID3D11Debug *This); HRESULT (STDMETHODCALLTYPE *SetSwapChain)( ID3D11Debug *This, IDXGISwapChain *pSwapChain); HRESULT (STDMETHODCALLTYPE *GetSwapChain)( ID3D11Debug *This, IDXGISwapChain **ppSwapChain); HRESULT (STDMETHODCALLTYPE *ValidateContext)( ID3D11Debug *This, ID3D11DeviceContext *pContext); HRESULT (STDMETHODCALLTYPE *ReportLiveDeviceObjects)( ID3D11Debug *This, D3D11_RLDO_FLAGS Flags); HRESULT (STDMETHODCALLTYPE *ValidateContextForDispatch)( ID3D11Debug *This, ID3D11DeviceContext *pContext); END_INTERFACE } ID3D11DebugVtbl; interface ID3D11Debug { CONST_VTBL ID3D11DebugVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11Debug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11Debug_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11Debug_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11Debug methods ***/ #define ID3D11Debug_SetFeatureMask(This,Mask) (This)->lpVtbl->SetFeatureMask(This,Mask) #define ID3D11Debug_GetFeatureMask(This) (This)->lpVtbl->GetFeatureMask(This) #define ID3D11Debug_SetPresentPerRenderOpDelay(This,Milliseconds) (This)->lpVtbl->SetPresentPerRenderOpDelay(This,Milliseconds) #define ID3D11Debug_GetPresentPerRenderOpDelay(This) (This)->lpVtbl->GetPresentPerRenderOpDelay(This) #define ID3D11Debug_SetSwapChain(This,pSwapChain) (This)->lpVtbl->SetSwapChain(This,pSwapChain) #define ID3D11Debug_GetSwapChain(This,ppSwapChain) (This)->lpVtbl->GetSwapChain(This,ppSwapChain) #define ID3D11Debug_ValidateContext(This,pContext) (This)->lpVtbl->ValidateContext(This,pContext) #define ID3D11Debug_ReportLiveDeviceObjects(This,Flags) (This)->lpVtbl->ReportLiveDeviceObjects(This,Flags) #define ID3D11Debug_ValidateContextForDispatch(This,pContext) (This)->lpVtbl->ValidateContextForDispatch(This,pContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11Debug_QueryInterface(ID3D11Debug* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11Debug_AddRef(ID3D11Debug* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11Debug_Release(ID3D11Debug* This) { return This->lpVtbl->Release(This); } /*** ID3D11Debug methods ***/ static FORCEINLINE HRESULT ID3D11Debug_SetFeatureMask(ID3D11Debug* This,UINT Mask) { return This->lpVtbl->SetFeatureMask(This,Mask); } static FORCEINLINE UINT ID3D11Debug_GetFeatureMask(ID3D11Debug* This) { return This->lpVtbl->GetFeatureMask(This); } static FORCEINLINE HRESULT ID3D11Debug_SetPresentPerRenderOpDelay(ID3D11Debug* This,UINT Milliseconds) { return This->lpVtbl->SetPresentPerRenderOpDelay(This,Milliseconds); } static FORCEINLINE UINT ID3D11Debug_GetPresentPerRenderOpDelay(ID3D11Debug* This) { return This->lpVtbl->GetPresentPerRenderOpDelay(This); } static FORCEINLINE HRESULT ID3D11Debug_SetSwapChain(ID3D11Debug* This,IDXGISwapChain *pSwapChain) { return This->lpVtbl->SetSwapChain(This,pSwapChain); } static FORCEINLINE HRESULT ID3D11Debug_GetSwapChain(ID3D11Debug* This,IDXGISwapChain **ppSwapChain) { return This->lpVtbl->GetSwapChain(This,ppSwapChain); } static FORCEINLINE HRESULT ID3D11Debug_ValidateContext(ID3D11Debug* This,ID3D11DeviceContext *pContext) { return This->lpVtbl->ValidateContext(This,pContext); } static FORCEINLINE HRESULT ID3D11Debug_ReportLiveDeviceObjects(ID3D11Debug* This,D3D11_RLDO_FLAGS Flags) { return This->lpVtbl->ReportLiveDeviceObjects(This,Flags); } static FORCEINLINE HRESULT ID3D11Debug_ValidateContextForDispatch(ID3D11Debug* This,ID3D11DeviceContext *pContext) { return This->lpVtbl->ValidateContextForDispatch(This,pContext); } #endif #endif #endif #endif /* __ID3D11Debug_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11SwitchToRef interface */ #ifndef __ID3D11SwitchToRef_INTERFACE_DEFINED__ #define __ID3D11SwitchToRef_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D11SwitchToRef, 0x1ef337e3, 0x58e7, 0x4f83, 0xa6,0x92, 0xdb,0x22,0x1f,0x5e,0xd4,0x7e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1ef337e3-58e7-4f83-a692-db221f5ed47e") ID3D11SwitchToRef : public IUnknown { virtual WINBOOL STDMETHODCALLTYPE SetUseRef( WINBOOL useref) = 0; virtual WINBOOL STDMETHODCALLTYPE GetUseRef( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11SwitchToRef, 0x1ef337e3, 0x58e7, 0x4f83, 0xa6,0x92, 0xdb,0x22,0x1f,0x5e,0xd4,0x7e) #endif #else typedef struct ID3D11SwitchToRefVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11SwitchToRef *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11SwitchToRef *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11SwitchToRef *This); /*** ID3D11SwitchToRef methods ***/ WINBOOL (STDMETHODCALLTYPE *SetUseRef)( ID3D11SwitchToRef *This, WINBOOL useref); WINBOOL (STDMETHODCALLTYPE *GetUseRef)( ID3D11SwitchToRef *This); END_INTERFACE } ID3D11SwitchToRefVtbl; interface ID3D11SwitchToRef { CONST_VTBL ID3D11SwitchToRefVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11SwitchToRef_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11SwitchToRef_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11SwitchToRef_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11SwitchToRef methods ***/ #define ID3D11SwitchToRef_SetUseRef(This,useref) (This)->lpVtbl->SetUseRef(This,useref) #define ID3D11SwitchToRef_GetUseRef(This) (This)->lpVtbl->GetUseRef(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11SwitchToRef_QueryInterface(ID3D11SwitchToRef* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11SwitchToRef_AddRef(ID3D11SwitchToRef* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11SwitchToRef_Release(ID3D11SwitchToRef* This) { return This->lpVtbl->Release(This); } /*** ID3D11SwitchToRef methods ***/ static FORCEINLINE WINBOOL ID3D11SwitchToRef_SetUseRef(ID3D11SwitchToRef* This,WINBOOL useref) { return This->lpVtbl->SetUseRef(This,useref); } static FORCEINLINE WINBOOL ID3D11SwitchToRef_GetUseRef(ID3D11SwitchToRef* This) { return This->lpVtbl->GetUseRef(This); } #endif #endif #endif #endif /* __ID3D11SwitchToRef_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D11InfoQueue interface */ #ifndef __ID3D11InfoQueue_INTERFACE_DEFINED__ #define __ID3D11InfoQueue_INTERFACE_DEFINED__ #ifdef WINE_NO_UNICODE_MACROS #undef GetMessage #endif DEFINE_GUID(IID_ID3D11InfoQueue, 0x6543dbb6, 0x1b48, 0x42f5, 0xab,0x82, 0xe9,0x7e,0xc7,0x43,0x26,0xf6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6543dbb6-1b48-42f5-ab82-e97ec74326f6") ID3D11InfoQueue : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetMessageCountLimit( UINT64 MessageCountLimit) = 0; virtual void STDMETHODCALLTYPE ClearStoredMessages( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMessage( UINT64 MessageIndex, D3D11_MESSAGE *pMessage, SIZE_T *pMessageByteLength) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesAllowedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDeniedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessages( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessagesAllowedByRetrievalFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDiscardedByMessageCountLimit( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetMessageCountLimit( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddStorageFilterEntries( D3D11_INFO_QUEUE_FILTER *pFilter) = 0; virtual HRESULT STDMETHODCALLTYPE GetStorageFilter( D3D11_INFO_QUEUE_FILTER *pFilter, SIZE_T *pFilterByteLength) = 0; virtual void STDMETHODCALLTYPE ClearStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushStorageFilter( D3D11_INFO_QUEUE_FILTER *pFilter) = 0; virtual void STDMETHODCALLTYPE PopStorageFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetStorageFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddRetrievalFilterEntries( D3D11_INFO_QUEUE_FILTER *pFilter) = 0; virtual HRESULT STDMETHODCALLTYPE GetRetrievalFilter( D3D11_INFO_QUEUE_FILTER *pFilter, SIZE_T *pFilterByteLength) = 0; virtual void STDMETHODCALLTYPE ClearRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushRetrievalFilter( D3D11_INFO_QUEUE_FILTER *pFilter) = 0; virtual void STDMETHODCALLTYPE PopRetrievalFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetRetrievalFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddMessage( D3D11_MESSAGE_CATEGORY Category, D3D11_MESSAGE_SEVERITY Severity, D3D11_MESSAGE_ID ID, LPCSTR pDescription) = 0; virtual HRESULT STDMETHODCALLTYPE AddApplicationMessage( D3D11_MESSAGE_SEVERITY Severity, LPCSTR pDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnCategory( D3D11_MESSAGE_CATEGORY Category, WINBOOL bEnable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnSeverity( D3D11_MESSAGE_SEVERITY Severity, WINBOOL bEnable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnID( D3D11_MESSAGE_ID ID, WINBOOL bEnable) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnCategory( D3D11_MESSAGE_CATEGORY Category) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnSeverity( D3D11_MESSAGE_SEVERITY Severity) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnID( D3D11_MESSAGE_ID ID) = 0; virtual void STDMETHODCALLTYPE SetMuteDebugOutput( WINBOOL bMute) = 0; virtual WINBOOL STDMETHODCALLTYPE GetMuteDebugOutput( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D11InfoQueue, 0x6543dbb6, 0x1b48, 0x42f5, 0xab,0x82, 0xe9,0x7e,0xc7,0x43,0x26,0xf6) #endif #else typedef struct ID3D11InfoQueueVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D11InfoQueue *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D11InfoQueue *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D11InfoQueue *This); /*** ID3D11InfoQueue methods ***/ HRESULT (STDMETHODCALLTYPE *SetMessageCountLimit)( ID3D11InfoQueue *This, UINT64 MessageCountLimit); void (STDMETHODCALLTYPE *ClearStoredMessages)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *GetMessage)( ID3D11InfoQueue *This, UINT64 MessageIndex, D3D11_MESSAGE *pMessage, SIZE_T *pMessageByteLength); UINT64 (STDMETHODCALLTYPE *GetNumMessagesAllowedByStorageFilter)( ID3D11InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDeniedByStorageFilter)( ID3D11InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessages)( ID3D11InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessagesAllowedByRetrievalFilter)( ID3D11InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDiscardedByMessageCountLimit)( ID3D11InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetMessageCountLimit)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddStorageFilterEntries)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter); HRESULT (STDMETHODCALLTYPE *GetStorageFilter)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter, SIZE_T *pFilterByteLength); void (STDMETHODCALLTYPE *ClearStorageFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyStorageFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfStorageFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushStorageFilter)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter); void (STDMETHODCALLTYPE *PopStorageFilter)( ID3D11InfoQueue *This); UINT (STDMETHODCALLTYPE *GetStorageFilterStackSize)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddRetrievalFilterEntries)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter); HRESULT (STDMETHODCALLTYPE *GetRetrievalFilter)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter, SIZE_T *pFilterByteLength); void (STDMETHODCALLTYPE *ClearRetrievalFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyRetrievalFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfRetrievalFilter)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushRetrievalFilter)( ID3D11InfoQueue *This, D3D11_INFO_QUEUE_FILTER *pFilter); void (STDMETHODCALLTYPE *PopRetrievalFilter)( ID3D11InfoQueue *This); UINT (STDMETHODCALLTYPE *GetRetrievalFilterStackSize)( ID3D11InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddMessage)( ID3D11InfoQueue *This, D3D11_MESSAGE_CATEGORY Category, D3D11_MESSAGE_SEVERITY Severity, D3D11_MESSAGE_ID ID, LPCSTR pDescription); HRESULT (STDMETHODCALLTYPE *AddApplicationMessage)( ID3D11InfoQueue *This, D3D11_MESSAGE_SEVERITY Severity, LPCSTR pDescription); HRESULT (STDMETHODCALLTYPE *SetBreakOnCategory)( ID3D11InfoQueue *This, D3D11_MESSAGE_CATEGORY Category, WINBOOL bEnable); HRESULT (STDMETHODCALLTYPE *SetBreakOnSeverity)( ID3D11InfoQueue *This, D3D11_MESSAGE_SEVERITY Severity, WINBOOL bEnable); HRESULT (STDMETHODCALLTYPE *SetBreakOnID)( ID3D11InfoQueue *This, D3D11_MESSAGE_ID ID, WINBOOL bEnable); WINBOOL (STDMETHODCALLTYPE *GetBreakOnCategory)( ID3D11InfoQueue *This, D3D11_MESSAGE_CATEGORY Category); WINBOOL (STDMETHODCALLTYPE *GetBreakOnSeverity)( ID3D11InfoQueue *This, D3D11_MESSAGE_SEVERITY Severity); WINBOOL (STDMETHODCALLTYPE *GetBreakOnID)( ID3D11InfoQueue *This, D3D11_MESSAGE_ID ID); void (STDMETHODCALLTYPE *SetMuteDebugOutput)( ID3D11InfoQueue *This, WINBOOL bMute); WINBOOL (STDMETHODCALLTYPE *GetMuteDebugOutput)( ID3D11InfoQueue *This); END_INTERFACE } ID3D11InfoQueueVtbl; interface ID3D11InfoQueue { CONST_VTBL ID3D11InfoQueueVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D11InfoQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D11InfoQueue_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D11InfoQueue_Release(This) (This)->lpVtbl->Release(This) /*** ID3D11InfoQueue methods ***/ #define ID3D11InfoQueue_SetMessageCountLimit(This,MessageCountLimit) (This)->lpVtbl->SetMessageCountLimit(This,MessageCountLimit) #define ID3D11InfoQueue_ClearStoredMessages(This) (This)->lpVtbl->ClearStoredMessages(This) #define ID3D11InfoQueue_GetMessage(This,MessageIndex,pMessage,pMessageByteLength) (This)->lpVtbl->GetMessage(This,MessageIndex,pMessage,pMessageByteLength) #define ID3D11InfoQueue_GetNumMessagesAllowedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesAllowedByStorageFilter(This) #define ID3D11InfoQueue_GetNumMessagesDeniedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesDeniedByStorageFilter(This) #define ID3D11InfoQueue_GetNumStoredMessages(This) (This)->lpVtbl->GetNumStoredMessages(This) #define ID3D11InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(This) (This)->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This) #define ID3D11InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(This) (This)->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This) #define ID3D11InfoQueue_GetMessageCountLimit(This) (This)->lpVtbl->GetMessageCountLimit(This) #define ID3D11InfoQueue_AddStorageFilterEntries(This,pFilter) (This)->lpVtbl->AddStorageFilterEntries(This,pFilter) #define ID3D11InfoQueue_GetStorageFilter(This,pFilter,pFilterByteLength) (This)->lpVtbl->GetStorageFilter(This,pFilter,pFilterByteLength) #define ID3D11InfoQueue_ClearStorageFilter(This) (This)->lpVtbl->ClearStorageFilter(This) #define ID3D11InfoQueue_PushEmptyStorageFilter(This) (This)->lpVtbl->PushEmptyStorageFilter(This) #define ID3D11InfoQueue_PushCopyOfStorageFilter(This) (This)->lpVtbl->PushCopyOfStorageFilter(This) #define ID3D11InfoQueue_PushStorageFilter(This,pFilter) (This)->lpVtbl->PushStorageFilter(This,pFilter) #define ID3D11InfoQueue_PopStorageFilter(This) (This)->lpVtbl->PopStorageFilter(This) #define ID3D11InfoQueue_GetStorageFilterStackSize(This) (This)->lpVtbl->GetStorageFilterStackSize(This) #define ID3D11InfoQueue_AddRetrievalFilterEntries(This,pFilter) (This)->lpVtbl->AddRetrievalFilterEntries(This,pFilter) #define ID3D11InfoQueue_GetRetrievalFilter(This,pFilter,pFilterByteLength) (This)->lpVtbl->GetRetrievalFilter(This,pFilter,pFilterByteLength) #define ID3D11InfoQueue_ClearRetrievalFilter(This) (This)->lpVtbl->ClearRetrievalFilter(This) #define ID3D11InfoQueue_PushEmptyRetrievalFilter(This) (This)->lpVtbl->PushEmptyRetrievalFilter(This) #define ID3D11InfoQueue_PushCopyOfRetrievalFilter(This) (This)->lpVtbl->PushCopyOfRetrievalFilter(This) #define ID3D11InfoQueue_PushRetrievalFilter(This,pFilter) (This)->lpVtbl->PushRetrievalFilter(This,pFilter) #define ID3D11InfoQueue_PopRetrievalFilter(This) (This)->lpVtbl->PopRetrievalFilter(This) #define ID3D11InfoQueue_GetRetrievalFilterStackSize(This) (This)->lpVtbl->GetRetrievalFilterStackSize(This) #define ID3D11InfoQueue_AddMessage(This,Category,Severity,ID,pDescription) (This)->lpVtbl->AddMessage(This,Category,Severity,ID,pDescription) #define ID3D11InfoQueue_AddApplicationMessage(This,Severity,pDescription) (This)->lpVtbl->AddApplicationMessage(This,Severity,pDescription) #define ID3D11InfoQueue_SetBreakOnCategory(This,Category,bEnable) (This)->lpVtbl->SetBreakOnCategory(This,Category,bEnable) #define ID3D11InfoQueue_SetBreakOnSeverity(This,Severity,bEnable) (This)->lpVtbl->SetBreakOnSeverity(This,Severity,bEnable) #define ID3D11InfoQueue_SetBreakOnID(This,ID,bEnable) (This)->lpVtbl->SetBreakOnID(This,ID,bEnable) #define ID3D11InfoQueue_GetBreakOnCategory(This,Category) (This)->lpVtbl->GetBreakOnCategory(This,Category) #define ID3D11InfoQueue_GetBreakOnSeverity(This,Severity) (This)->lpVtbl->GetBreakOnSeverity(This,Severity) #define ID3D11InfoQueue_GetBreakOnID(This,ID) (This)->lpVtbl->GetBreakOnID(This,ID) #define ID3D11InfoQueue_SetMuteDebugOutput(This,bMute) (This)->lpVtbl->SetMuteDebugOutput(This,bMute) #define ID3D11InfoQueue_GetMuteDebugOutput(This) (This)->lpVtbl->GetMuteDebugOutput(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D11InfoQueue_QueryInterface(ID3D11InfoQueue* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D11InfoQueue_AddRef(ID3D11InfoQueue* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D11InfoQueue_Release(ID3D11InfoQueue* This) { return This->lpVtbl->Release(This); } /*** ID3D11InfoQueue methods ***/ static FORCEINLINE HRESULT ID3D11InfoQueue_SetMessageCountLimit(ID3D11InfoQueue* This,UINT64 MessageCountLimit) { return This->lpVtbl->SetMessageCountLimit(This,MessageCountLimit); } static FORCEINLINE void ID3D11InfoQueue_ClearStoredMessages(ID3D11InfoQueue* This) { This->lpVtbl->ClearStoredMessages(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_GetMessage(ID3D11InfoQueue* This,UINT64 MessageIndex,D3D11_MESSAGE *pMessage,SIZE_T *pMessageByteLength) { return This->lpVtbl->GetMessage(This,MessageIndex,pMessage,pMessageByteLength); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetNumMessagesAllowedByStorageFilter(ID3D11InfoQueue* This) { return This->lpVtbl->GetNumMessagesAllowedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetNumMessagesDeniedByStorageFilter(ID3D11InfoQueue* This) { return This->lpVtbl->GetNumMessagesDeniedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetNumStoredMessages(ID3D11InfoQueue* This) { return This->lpVtbl->GetNumStoredMessages(This); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(ID3D11InfoQueue* This) { return This->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(ID3D11InfoQueue* This) { return This->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This); } static FORCEINLINE UINT64 ID3D11InfoQueue_GetMessageCountLimit(ID3D11InfoQueue* This) { return This->lpVtbl->GetMessageCountLimit(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_AddStorageFilterEntries(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter) { return This->lpVtbl->AddStorageFilterEntries(This,pFilter); } static FORCEINLINE HRESULT ID3D11InfoQueue_GetStorageFilter(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter,SIZE_T *pFilterByteLength) { return This->lpVtbl->GetStorageFilter(This,pFilter,pFilterByteLength); } static FORCEINLINE void ID3D11InfoQueue_ClearStorageFilter(ID3D11InfoQueue* This) { This->lpVtbl->ClearStorageFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushEmptyStorageFilter(ID3D11InfoQueue* This) { return This->lpVtbl->PushEmptyStorageFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushCopyOfStorageFilter(ID3D11InfoQueue* This) { return This->lpVtbl->PushCopyOfStorageFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushStorageFilter(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter) { return This->lpVtbl->PushStorageFilter(This,pFilter); } static FORCEINLINE void ID3D11InfoQueue_PopStorageFilter(ID3D11InfoQueue* This) { This->lpVtbl->PopStorageFilter(This); } static FORCEINLINE UINT ID3D11InfoQueue_GetStorageFilterStackSize(ID3D11InfoQueue* This) { return This->lpVtbl->GetStorageFilterStackSize(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_AddRetrievalFilterEntries(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter) { return This->lpVtbl->AddRetrievalFilterEntries(This,pFilter); } static FORCEINLINE HRESULT ID3D11InfoQueue_GetRetrievalFilter(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter,SIZE_T *pFilterByteLength) { return This->lpVtbl->GetRetrievalFilter(This,pFilter,pFilterByteLength); } static FORCEINLINE void ID3D11InfoQueue_ClearRetrievalFilter(ID3D11InfoQueue* This) { This->lpVtbl->ClearRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushEmptyRetrievalFilter(ID3D11InfoQueue* This) { return This->lpVtbl->PushEmptyRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushCopyOfRetrievalFilter(ID3D11InfoQueue* This) { return This->lpVtbl->PushCopyOfRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_PushRetrievalFilter(ID3D11InfoQueue* This,D3D11_INFO_QUEUE_FILTER *pFilter) { return This->lpVtbl->PushRetrievalFilter(This,pFilter); } static FORCEINLINE void ID3D11InfoQueue_PopRetrievalFilter(ID3D11InfoQueue* This) { This->lpVtbl->PopRetrievalFilter(This); } static FORCEINLINE UINT ID3D11InfoQueue_GetRetrievalFilterStackSize(ID3D11InfoQueue* This) { return This->lpVtbl->GetRetrievalFilterStackSize(This); } static FORCEINLINE HRESULT ID3D11InfoQueue_AddMessage(ID3D11InfoQueue* This,D3D11_MESSAGE_CATEGORY Category,D3D11_MESSAGE_SEVERITY Severity,D3D11_MESSAGE_ID ID,LPCSTR pDescription) { return This->lpVtbl->AddMessage(This,Category,Severity,ID,pDescription); } static FORCEINLINE HRESULT ID3D11InfoQueue_AddApplicationMessage(ID3D11InfoQueue* This,D3D11_MESSAGE_SEVERITY Severity,LPCSTR pDescription) { return This->lpVtbl->AddApplicationMessage(This,Severity,pDescription); } static FORCEINLINE HRESULT ID3D11InfoQueue_SetBreakOnCategory(ID3D11InfoQueue* This,D3D11_MESSAGE_CATEGORY Category,WINBOOL bEnable) { return This->lpVtbl->SetBreakOnCategory(This,Category,bEnable); } static FORCEINLINE HRESULT ID3D11InfoQueue_SetBreakOnSeverity(ID3D11InfoQueue* This,D3D11_MESSAGE_SEVERITY Severity,WINBOOL bEnable) { return This->lpVtbl->SetBreakOnSeverity(This,Severity,bEnable); } static FORCEINLINE HRESULT ID3D11InfoQueue_SetBreakOnID(ID3D11InfoQueue* This,D3D11_MESSAGE_ID ID,WINBOOL bEnable) { return This->lpVtbl->SetBreakOnID(This,ID,bEnable); } static FORCEINLINE WINBOOL ID3D11InfoQueue_GetBreakOnCategory(ID3D11InfoQueue* This,D3D11_MESSAGE_CATEGORY Category) { return This->lpVtbl->GetBreakOnCategory(This,Category); } static FORCEINLINE WINBOOL ID3D11InfoQueue_GetBreakOnSeverity(ID3D11InfoQueue* This,D3D11_MESSAGE_SEVERITY Severity) { return This->lpVtbl->GetBreakOnSeverity(This,Severity); } static FORCEINLINE WINBOOL ID3D11InfoQueue_GetBreakOnID(ID3D11InfoQueue* This,D3D11_MESSAGE_ID ID) { return This->lpVtbl->GetBreakOnID(This,ID); } static FORCEINLINE void ID3D11InfoQueue_SetMuteDebugOutput(ID3D11InfoQueue* This,WINBOOL bMute) { This->lpVtbl->SetMuteDebugOutput(This,bMute); } static FORCEINLINE WINBOOL ID3D11InfoQueue_GetMuteDebugOutput(ID3D11InfoQueue* This) { return This->lpVtbl->GetMuteDebugOutput(This); } #endif #endif #endif #endif /* __ID3D11InfoQueue_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d11sdklayers_h__ */ dxvk-0~git20220822.9df86f2/d3d11shader.h000066400000000000000000000241351430055512200171600ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2010 Matteo Bruni for CodeWeavers * * 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 */ #ifndef __D3D11SHADER_H__ #define __D3D11SHADER_H__ #include "d3dcommon.h" /* If not defined set d3dcompiler_47 by default. */ #ifndef D3D_COMPILER_VERSION #define D3D_COMPILER_VERSION 47 #endif /* These are defined as version-neutral in d3dcommon.h */ typedef D3D_CBUFFER_TYPE D3D11_CBUFFER_TYPE; typedef D3D_RESOURCE_RETURN_TYPE D3D11_RESOURCE_RETURN_TYPE; typedef D3D_TESSELLATOR_DOMAIN D3D11_TESSELLATOR_DOMAIN; typedef D3D_TESSELLATOR_PARTITIONING D3D11_TESSELLATOR_PARTITIONING; typedef D3D_TESSELLATOR_OUTPUT_PRIMITIVE D3D11_TESSELLATOR_OUTPUT_PRIMITIVE; typedef struct _D3D11_SHADER_DESC { UINT Version; const char *Creator; UINT Flags; UINT ConstantBuffers; UINT BoundResources; UINT InputParameters; UINT OutputParameters; UINT InstructionCount; UINT TempRegisterCount; UINT TempArrayCount; UINT DefCount; UINT DclCount; UINT TextureNormalInstructions; UINT TextureLoadInstructions; UINT TextureCompInstructions; UINT TextureBiasInstructions; UINT TextureGradientInstructions; UINT FloatInstructionCount; UINT IntInstructionCount; UINT UintInstructionCount; UINT StaticFlowControlCount; UINT DynamicFlowControlCount; UINT MacroInstructionCount; UINT ArrayInstructionCount; UINT CutInstructionCount; UINT EmitInstructionCount; D3D_PRIMITIVE_TOPOLOGY GSOutputTopology; UINT GSMaxOutputVertexCount; D3D_PRIMITIVE InputPrimitive; UINT PatchConstantParameters; UINT cGSInstanceCount; UINT cControlPoints; D3D_TESSELLATOR_OUTPUT_PRIMITIVE HSOutputPrimitive; D3D_TESSELLATOR_PARTITIONING HSPartitioning; D3D_TESSELLATOR_DOMAIN TessellatorDomain; UINT cBarrierInstructions; UINT cInterlockedInstructions; UINT cTextureStoreInstructions; } D3D11_SHADER_DESC; typedef struct _D3D11_SHADER_VARIABLE_DESC { const char *Name; UINT StartOffset; UINT Size; UINT uFlags; void *DefaultValue; UINT StartTexture; UINT TextureSize; UINT StartSampler; UINT SamplerSize; } D3D11_SHADER_VARIABLE_DESC; typedef struct _D3D11_SHADER_TYPE_DESC { D3D_SHADER_VARIABLE_CLASS Class; D3D_SHADER_VARIABLE_TYPE Type; UINT Rows; UINT Columns; UINT Elements; UINT Members; UINT Offset; const char *Name; } D3D11_SHADER_TYPE_DESC; typedef struct _D3D11_SHADER_BUFFER_DESC { const char *Name; D3D_CBUFFER_TYPE Type; UINT Variables; UINT Size; UINT uFlags; } D3D11_SHADER_BUFFER_DESC; typedef struct _D3D11_SHADER_INPUT_BIND_DESC { const char *Name; D3D_SHADER_INPUT_TYPE Type; UINT BindPoint; UINT BindCount; UINT uFlags; D3D_RESOURCE_RETURN_TYPE ReturnType; D3D_SRV_DIMENSION Dimension; UINT NumSamples; } D3D11_SHADER_INPUT_BIND_DESC; typedef struct _D3D11_SIGNATURE_PARAMETER_DESC { const char *SemanticName; UINT SemanticIndex; UINT Register; D3D_NAME SystemValueType; D3D_REGISTER_COMPONENT_TYPE ComponentType; BYTE Mask; BYTE ReadWriteMask; UINT Stream; #if D3D_COMPILER_VERSION >= 46 D3D_MIN_PRECISION MinPrecision; #endif } D3D11_SIGNATURE_PARAMETER_DESC; DEFINE_GUID(IID_ID3D11ShaderReflectionType, 0x6e6ffa6a, 0x9bae, 0x4613, 0xa5, 0x1e, 0x91, 0x65, 0x2d, 0x50, 0x8c, 0x21); #define INTERFACE ID3D11ShaderReflectionType DECLARE_INTERFACE(ID3D11ShaderReflectionType) { STDMETHOD(GetDesc)(THIS_ D3D11_SHADER_TYPE_DESC *desc) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetMemberTypeByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetMemberTypeByName)(THIS_ const char *name) PURE; STDMETHOD_(const char *, GetMemberTypeName)(THIS_ UINT index) PURE; STDMETHOD(IsEqual)(THIS_ struct ID3D11ShaderReflectionType *type) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetSubType)(THIS) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetBaseClass)(THIS) PURE; STDMETHOD_(UINT, GetNumInterfaces)(THIS) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetInterfaceByIndex)(THIS_ UINT index) PURE; STDMETHOD(IsOfType)(THIS_ struct ID3D11ShaderReflectionType *type) PURE; STDMETHOD(ImplementsInterface)(THIS_ ID3D11ShaderReflectionType *base) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D11ShaderReflectionVariable, 0x51f23923, 0xf3e5, 0x4bd1, 0x91, 0xcb, 0x60, 0x61, 0x77, 0xd8, 0xdb, 0x4c); #define INTERFACE ID3D11ShaderReflectionVariable DECLARE_INTERFACE(ID3D11ShaderReflectionVariable) { STDMETHOD(GetDesc)(THIS_ D3D11_SHADER_VARIABLE_DESC *desc) PURE; STDMETHOD_(struct ID3D11ShaderReflectionType *, GetType)(THIS) PURE; STDMETHOD_(struct ID3D11ShaderReflectionConstantBuffer *, GetBuffer)(THIS) PURE; STDMETHOD_(UINT, GetInterfaceSlot)(THIS_ UINT index) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D11ShaderReflectionConstantBuffer, 0xeb62d63d, 0x93dd, 0x4318, 0x8a, 0xe8, 0xc6, 0xf8, 0x3a, 0xd3, 0x71, 0xb8); #define INTERFACE ID3D11ShaderReflectionConstantBuffer DECLARE_INTERFACE(ID3D11ShaderReflectionConstantBuffer) { STDMETHOD(GetDesc)(THIS_ D3D11_SHADER_BUFFER_DESC *desc) PURE; STDMETHOD_(struct ID3D11ShaderReflectionVariable *, GetVariableByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D11ShaderReflectionVariable *, GetVariableByName)(THIS_ const char *name) PURE; }; #undef INTERFACE #if D3D_COMPILER_VERSION <= 42 DEFINE_GUID(IID_ID3D11ShaderReflection, 0x17f27486, 0xa342, 0x4d10, 0x88, 0x42, 0xab, 0x08, 0x74, 0xe7, 0xf6, 0x70); #elif D3D_COMPILER_VERSION == 43 DEFINE_GUID(IID_ID3D11ShaderReflection, 0x0a233719, 0x3960, 0x4578, 0x9d, 0x7c, 0x20, 0x3b, 0x8b, 0x1d, 0x9c, 0xc1); #else DEFINE_GUID(IID_ID3D11ShaderReflection, 0x8d536ca1, 0x0cca, 0x4956, 0xa8, 0x37, 0x78, 0x69, 0x63, 0x75, 0x55, 0x84); #endif #define INTERFACE ID3D11ShaderReflection DECLARE_INTERFACE_(ID3D11ShaderReflection, IUnknown) { /* IUnknown methods */ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D11ShaderReflection methods */ STDMETHOD(GetDesc)(THIS_ D3D11_SHADER_DESC *desc) PURE; STDMETHOD_(struct ID3D11ShaderReflectionConstantBuffer *, GetConstantBufferByIndex)(THIS_ UINT index) PURE; STDMETHOD_(struct ID3D11ShaderReflectionConstantBuffer *, GetConstantBufferByName)(THIS_ const char *name) PURE; STDMETHOD(GetResourceBindingDesc)(THIS_ UINT index, D3D11_SHADER_INPUT_BIND_DESC *desc) PURE; STDMETHOD(GetInputParameterDesc)(THIS_ UINT index, D3D11_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD(GetOutputParameterDesc)(THIS_ UINT index, D3D11_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD(GetPatchConstantParameterDesc)(THIS_ UINT index, D3D11_SIGNATURE_PARAMETER_DESC *desc) PURE; STDMETHOD_(struct ID3D11ShaderReflectionVariable *, GetVariableByName)(THIS_ const char *name) PURE; STDMETHOD(GetResourceBindingDescByName)(THIS_ const char *name, D3D11_SHADER_INPUT_BIND_DESC *desc) PURE; STDMETHOD_(UINT, GetMovInstructionCount)(THIS) PURE; STDMETHOD_(UINT, GetMovcInstructionCount)(THIS) PURE; STDMETHOD_(UINT, GetConversionInstructionCount)(THIS) PURE; STDMETHOD_(UINT, GetBitwiseInstructionCount)(THIS) PURE; STDMETHOD_(D3D_PRIMITIVE, GetGSInputPrimitive)(THIS) PURE; STDMETHOD_(WINBOOL, IsSampleFrequencyShader)(THIS) PURE; STDMETHOD_(UINT, GetNumInterfaceSlots)(THIS) PURE; STDMETHOD(GetMinFeatureLevel)(THIS_ enum D3D_FEATURE_LEVEL *level) PURE; STDMETHOD_(UINT, GetThreadGroupSize)(THIS_ UINT *sizex, UINT *sizey, UINT *sizez) PURE; STDMETHOD_(UINT64, GetRequiresFlags)(THIS) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D11ModuleInstance, 0x469e07f7, 0x45a, 0x48d5, 0xaa, 0x12, 0x68, 0xa4, 0x78, 0xcd, 0xf7, 0x5d); #define INTERFACE ID3D11ModuleInstance DECLARE_INTERFACE_(ID3D11ModuleInstance, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D11ModuleInstance methods */ STDMETHOD(BindConstantBuffer)(THIS_ UINT srcslot, UINT dstslot, UINT dstoffset) PURE; STDMETHOD(BindConstantBufferByName)(THIS_ const char *name, UINT dstslot, UINT dstoffset) PURE; STDMETHOD(BindResource)(THIS_ UINT srcslot, UINT dstslot, UINT count) PURE; STDMETHOD(BindResourceByName)(THIS_ const char *name, UINT dstslot, UINT count) PURE; STDMETHOD(BindSampler)(THIS_ UINT srcslot, UINT dstslot, UINT count) PURE; STDMETHOD(BindSamplerByName)(THIS_ const char *name, UINT dstslot, UINT count) PURE; STDMETHOD(BindUnorderedAccessView)(THIS_ UINT srcslot, UINT dstslot, UINT count) PURE; STDMETHOD(BindUnorderedAccessViewByName)(THIS_ const char *name, UINT dstslot, UINT count) PURE; STDMETHOD(BindResourceAsUnorderedAccessView)(THIS_ UINT srcslot, UINT dstslot, UINT count) PURE; STDMETHOD(BindResourceAsUnorderedAccessViewByName)(THIS_ const char *name, UINT dstslot, UINT count) PURE; }; #undef INTERFACE DEFINE_GUID(IID_ID3D11Module, 0xcac701ee, 0x80fc, 0x4122, 0x82, 0x42, 0x10, 0xb3, 0x9c, 0x8c, 0xec, 0x34); #define INTERFACE ID3D11Module DECLARE_INTERFACE_(ID3D11Module, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* ID3D11Module methods */ STDMETHOD(CreateInstance)(THIS_ const char *instnamespace, ID3D11ModuleInstance **moduleinstance) PURE; }; #undef INTERFACE #endif dxvk-0~git20220822.9df86f2/d3d12.h000066400000000000000000012704011430055512200157720ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d12.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d12_h__ #define __d3d12_h__ /* Forward declarations */ #ifndef __ID3D12Object_FWD_DEFINED__ #define __ID3D12Object_FWD_DEFINED__ typedef interface ID3D12Object ID3D12Object; #ifdef __cplusplus interface ID3D12Object; #endif /* __cplusplus */ #endif #ifndef __ID3D12DeviceChild_FWD_DEFINED__ #define __ID3D12DeviceChild_FWD_DEFINED__ typedef interface ID3D12DeviceChild ID3D12DeviceChild; #ifdef __cplusplus interface ID3D12DeviceChild; #endif /* __cplusplus */ #endif #ifndef __ID3D12Pageable_FWD_DEFINED__ #define __ID3D12Pageable_FWD_DEFINED__ typedef interface ID3D12Pageable ID3D12Pageable; #ifdef __cplusplus interface ID3D12Pageable; #endif /* __cplusplus */ #endif #ifndef __ID3D12Heap_FWD_DEFINED__ #define __ID3D12Heap_FWD_DEFINED__ typedef interface ID3D12Heap ID3D12Heap; #ifdef __cplusplus interface ID3D12Heap; #endif /* __cplusplus */ #endif #ifndef __ID3D12Resource_FWD_DEFINED__ #define __ID3D12Resource_FWD_DEFINED__ typedef interface ID3D12Resource ID3D12Resource; #ifdef __cplusplus interface ID3D12Resource; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandList_FWD_DEFINED__ #define __ID3D12CommandList_FWD_DEFINED__ typedef interface ID3D12CommandList ID3D12CommandList; #ifdef __cplusplus interface ID3D12CommandList; #endif /* __cplusplus */ #endif #ifndef __ID3D12DescriptorHeap_FWD_DEFINED__ #define __ID3D12DescriptorHeap_FWD_DEFINED__ typedef interface ID3D12DescriptorHeap ID3D12DescriptorHeap; #ifdef __cplusplus interface ID3D12DescriptorHeap; #endif /* __cplusplus */ #endif #ifndef __ID3D12QueryHeap_FWD_DEFINED__ #define __ID3D12QueryHeap_FWD_DEFINED__ typedef interface ID3D12QueryHeap ID3D12QueryHeap; #ifdef __cplusplus interface ID3D12QueryHeap; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandSignature_FWD_DEFINED__ #define __ID3D12CommandSignature_FWD_DEFINED__ typedef interface ID3D12CommandSignature ID3D12CommandSignature; #ifdef __cplusplus interface ID3D12CommandSignature; #endif /* __cplusplus */ #endif #ifndef __ID3D12GraphicsCommandList_FWD_DEFINED__ #define __ID3D12GraphicsCommandList_FWD_DEFINED__ typedef interface ID3D12GraphicsCommandList ID3D12GraphicsCommandList; #ifdef __cplusplus interface ID3D12GraphicsCommandList; #endif /* __cplusplus */ #endif #ifndef __ID3D12GraphicsCommandList1_FWD_DEFINED__ #define __ID3D12GraphicsCommandList1_FWD_DEFINED__ typedef interface ID3D12GraphicsCommandList1 ID3D12GraphicsCommandList1; #ifdef __cplusplus interface ID3D12GraphicsCommandList1; #endif /* __cplusplus */ #endif #ifndef __ID3D12GraphicsCommandList2_FWD_DEFINED__ #define __ID3D12GraphicsCommandList2_FWD_DEFINED__ typedef interface ID3D12GraphicsCommandList2 ID3D12GraphicsCommandList2; #ifdef __cplusplus interface ID3D12GraphicsCommandList2; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandQueue_FWD_DEFINED__ #define __ID3D12CommandQueue_FWD_DEFINED__ typedef interface ID3D12CommandQueue ID3D12CommandQueue; #ifdef __cplusplus interface ID3D12CommandQueue; #endif /* __cplusplus */ #endif #ifndef __ID3D12RootSignature_FWD_DEFINED__ #define __ID3D12RootSignature_FWD_DEFINED__ typedef interface ID3D12RootSignature ID3D12RootSignature; #ifdef __cplusplus interface ID3D12RootSignature; #endif /* __cplusplus */ #endif #ifndef __ID3D12PipelineState_FWD_DEFINED__ #define __ID3D12PipelineState_FWD_DEFINED__ typedef interface ID3D12PipelineState ID3D12PipelineState; #ifdef __cplusplus interface ID3D12PipelineState; #endif /* __cplusplus */ #endif #ifndef __ID3D12Fence_FWD_DEFINED__ #define __ID3D12Fence_FWD_DEFINED__ typedef interface ID3D12Fence ID3D12Fence; #ifdef __cplusplus interface ID3D12Fence; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandAllocator_FWD_DEFINED__ #define __ID3D12CommandAllocator_FWD_DEFINED__ typedef interface ID3D12CommandAllocator ID3D12CommandAllocator; #ifdef __cplusplus interface ID3D12CommandAllocator; #endif /* __cplusplus */ #endif #ifndef __ID3D12Device_FWD_DEFINED__ #define __ID3D12Device_FWD_DEFINED__ typedef interface ID3D12Device ID3D12Device; #ifdef __cplusplus interface ID3D12Device; #endif /* __cplusplus */ #endif #ifndef __ID3D12Device1_FWD_DEFINED__ #define __ID3D12Device1_FWD_DEFINED__ typedef interface ID3D12Device1 ID3D12Device1; #ifdef __cplusplus interface ID3D12Device1; #endif /* __cplusplus */ #endif #ifndef __ID3D12RootSignatureDeserializer_FWD_DEFINED__ #define __ID3D12RootSignatureDeserializer_FWD_DEFINED__ typedef interface ID3D12RootSignatureDeserializer ID3D12RootSignatureDeserializer; #ifdef __cplusplus interface ID3D12RootSignatureDeserializer; #endif /* __cplusplus */ #endif #ifndef __ID3D12VersionedRootSignatureDeserializer_FWD_DEFINED__ #define __ID3D12VersionedRootSignatureDeserializer_FWD_DEFINED__ typedef interface ID3D12VersionedRootSignatureDeserializer ID3D12VersionedRootSignatureDeserializer; #ifdef __cplusplus interface ID3D12VersionedRootSignatureDeserializer; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #include #ifdef __cplusplus extern "C" { #endif #ifndef _D3D12_CONSTANTS #define _D3D12_CONSTANTS #define D3D12_CS_TGSM_REGISTER_COUNT (8192) #define D3D12_MAX_ROOT_COST (64) #define D3D12_VIEWPORT_BOUNDS_MAX (32767) #define D3D12_VIEWPORT_BOUNDS_MIN (-32768) #define D3D12_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT (15) #define D3D12_APPEND_ALIGNED_ELEMENT (0xffffffff) #define D3D12_DEFAULT_BLEND_FACTOR_ALPHA (1.0f) #define D3D12_DEFAULT_BLEND_FACTOR_BLUE (1.0f) #define D3D12_DEFAULT_BLEND_FACTOR_GREEN (1.0f) #define D3D12_DEFAULT_BLEND_FACTOR_RED (1.0f) #define D3D12_DEFAULT_DEPTH_BIAS (0) #define D3D12_DEFAULT_DEPTH_BIAS_CLAMP (0.0f) #define D3D12_DEFAULT_SLOPE_SCALED_DEPTH_BIAS (0.0f) #define D3D12_DEFAULT_STENCIL_READ_MASK (0xff) #define D3D12_DEFAULT_STENCIL_WRITE_MASK (0xff) #define D3D12_DESCRIPTOR_RANGE_OFFSET_APPEND (0xffffffff) #define D3D12_FLOAT32_MAX (3.402823466e+38f) #define D3D12_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT (32) #define D3D12_UAV_SLOT_COUNT (64) #define D3D12_REQ_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D12_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT (4096) #define D3D12_REQ_MIP_LEVELS (15) #define D3D12_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION (2048) #define D3D12_REQ_TEXTURE1D_U_DIMENSION (16384) #define D3D12_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION (2048) #define D3D12_REQ_TEXTURE2D_U_OR_V_DIMENSION (16384) #define D3D12_REQ_TEXTURE3D_U_V_OR_W_DIMENSION (2048) #define D3D12_REQ_TEXTURECUBE_DIMENSION (16384) #define D3D12_RESOURCE_BARRIER_ALL_SUBRESOURCES (0xffffffff) #define D3D12_SIMULTANEOUS_RENDER_TARGET_COUNT (8) #define D3D12_SO_BUFFER_MAX_STRIDE_IN_BYTES (2048) #define D3D12_SO_BUFFER_SLOT_COUNT (4) #define D3D12_SO_DDI_REGISTER_INDEX_DENOTING_GAP (0xffffffff) #define D3D12_SO_NO_RASTERIZED_STREAM (0xffffffff) #define D3D12_SO_OUTPUT_COMPONENT_COUNT (128) #define D3D12_SO_STREAM_COUNT (4) #define D3D12_CONSTANT_BUFFER_DATA_PLACEMENT_ALIGNMENT (256) #define D3D12_DEFAULT_MSAA_RESOURCE_PLACEMENT_ALIGNMENT (4194304) #define D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT (65536) #define D3D12_RAW_UAV_SRV_BYTE_ALIGNMENT (16) #define D3D12_SMALL_MSAA_RESOURCE_PLACEMENT_ALIGNMENT (65536) #define D3D12_SMALL_RESOURCE_PLACEMENT_ALIGNMENT (4096) #define D3D12_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE (4) #define D3D12_TEXTURE_DATA_PITCH_ALIGNMENT (256) #define D3D12_TEXTURE_DATA_PLACEMENT_ALIGNMENT (512) #define D3D12_UAV_COUNTER_PLACEMENT_ALIGNMENT (4096) #define D3D12_VS_INPUT_REGISTER_COUNT (32) #define D3D12_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE (16) #endif #define D3D12_SHADER_COMPONENT_MAPPING_MASK (0x7) #define D3D12_SHADER_COMPONENT_MAPPING_SHIFT (3) #define D3D12_SHADER_COMPONENT_MAPPING_ALWAYS_SET_BIT_AVOIDING_ZEROMEM_MISTAKES (1 << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 4)) typedef enum D3D12_SHADER_MIN_PRECISION_SUPPORT { D3D12_SHADER_MIN_PRECISION_SUPPORT_NONE = 0x0, D3D12_SHADER_MIN_PRECISION_SUPPORT_10_BIT = 0x1, D3D12_SHADER_MIN_PRECISION_SUPPORT_16_BIT = 0x2 } D3D12_SHADER_MIN_PRECISION_SUPPORT; DEFINE_ENUM_FLAG_OPERATORS(D3D12_SHADER_MIN_PRECISION_SUPPORT); typedef enum D3D12_TILED_RESOURCES_TIER { D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0, D3D12_TILED_RESOURCES_TIER_1 = 1, D3D12_TILED_RESOURCES_TIER_2 = 2, D3D12_TILED_RESOURCES_TIER_3 = 3 } D3D12_TILED_RESOURCES_TIER; typedef enum D3D12_RESOURCE_BINDING_TIER { D3D12_RESOURCE_BINDING_TIER_1 = 1, D3D12_RESOURCE_BINDING_TIER_2 = 2, D3D12_RESOURCE_BINDING_TIER_3 = 3 } D3D12_RESOURCE_BINDING_TIER; typedef enum D3D12_CONSERVATIVE_RASTERIZATION_TIER { D3D12_CONSERVATIVE_RASTERIZATION_TIER_NOT_SUPPORTED = 0, D3D12_CONSERVATIVE_RASTERIZATION_TIER_1 = 1, D3D12_CONSERVATIVE_RASTERIZATION_TIER_2 = 2, D3D12_CONSERVATIVE_RASTERIZATION_TIER_3 = 3 } D3D12_CONSERVATIVE_RASTERIZATION_TIER; typedef enum D3D12_CROSS_NODE_SHARING_TIER { D3D12_CROSS_NODE_SHARING_TIER_NOT_SUPPORTED = 0, D3D12_CROSS_NODE_SHARING_TIER_1_EMULATED = 1, D3D12_CROSS_NODE_SHARING_TIER_1 = 2, D3D12_CROSS_NODE_SHARING_TIER_2 = 3 } D3D12_CROSS_NODE_SHARING_TIER; typedef enum D3D12_RESOURCE_HEAP_TIER { D3D12_RESOURCE_HEAP_TIER_1 = 1, D3D12_RESOURCE_HEAP_TIER_2 = 2 } D3D12_RESOURCE_HEAP_TIER; typedef enum D3D12_FORMAT_SUPPORT1 { D3D12_FORMAT_SUPPORT1_NONE = 0x0, D3D12_FORMAT_SUPPORT1_BUFFER = 0x1, D3D12_FORMAT_SUPPORT1_IA_VERTEX_BUFFER = 0x2, D3D12_FORMAT_SUPPORT1_IA_INDEX_BUFFER = 0x4, D3D12_FORMAT_SUPPORT1_SO_BUFFER = 0x8, D3D12_FORMAT_SUPPORT1_TEXTURE1D = 0x10, D3D12_FORMAT_SUPPORT1_TEXTURE2D = 0x20, D3D12_FORMAT_SUPPORT1_TEXTURE3D = 0x40, D3D12_FORMAT_SUPPORT1_TEXTURECUBE = 0x80, D3D12_FORMAT_SUPPORT1_SHADER_LOAD = 0x100, D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE = 0x200, D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_COMPARISON = 0x400, D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_MONO_TEXT = 0x800, D3D12_FORMAT_SUPPORT1_MIP = 0x1000, D3D12_FORMAT_SUPPORT1_RENDER_TARGET = 0x4000, D3D12_FORMAT_SUPPORT1_BLENDABLE = 0x8000, D3D12_FORMAT_SUPPORT1_DEPTH_STENCIL = 0x10000, D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RESOLVE = 0x40000, D3D12_FORMAT_SUPPORT1_DISPLAY = 0x80000, D3D12_FORMAT_SUPPORT1_CAST_WITHIN_BIT_LAYOUT = 0x100000, D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET = 0x200000, D3D12_FORMAT_SUPPORT1_MULTISAMPLE_LOAD = 0x400000, D3D12_FORMAT_SUPPORT1_SHADER_GATHER = 0x800000, D3D12_FORMAT_SUPPORT1_BACK_BUFFER_CAST = 0x1000000, D3D12_FORMAT_SUPPORT1_TYPED_UNORDERED_ACCESS_VIEW = 0x2000000, D3D12_FORMAT_SUPPORT1_SHADER_GATHER_COMPARISON = 0x4000000, D3D12_FORMAT_SUPPORT1_DECODER_OUTPUT = 0x8000000, D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_OUTPUT = 0x10000000, D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_INPUT = 0x20000000, D3D12_FORMAT_SUPPORT1_VIDEO_ENCODER = 0x40000000 } D3D12_FORMAT_SUPPORT1; DEFINE_ENUM_FLAG_OPERATORS(D3D12_FORMAT_SUPPORT1); typedef enum D3D12_FORMAT_SUPPORT2 { D3D12_FORMAT_SUPPORT2_NONE = 0x0, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_ADD = 0x1, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS = 0x2, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 0x4, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE = 0x8, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX = 0x10, D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 0x20, D3D12_FORMAT_SUPPORT2_UAV_TYPED_LOAD = 0x40, D3D12_FORMAT_SUPPORT2_UAV_TYPED_STORE = 0x80, D3D12_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP = 0x100, D3D12_FORMAT_SUPPORT2_TILED = 0x200, D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x4000 } D3D12_FORMAT_SUPPORT2; DEFINE_ENUM_FLAG_OPERATORS(D3D12_FORMAT_SUPPORT2); typedef enum D3D12_WRITEBUFFERIMMEDIATE_MODE { D3D12_WRITEBUFFERIMMEDIATE_MODE_DEFAULT = 0x0, D3D12_WRITEBUFFERIMMEDIATE_MODE_MARKER_IN = 0x1, D3D12_WRITEBUFFERIMMEDIATE_MODE_MARKER_OUT = 0x2 } D3D12_WRITEBUFFERIMMEDIATE_MODE; typedef enum D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER { D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_NOT_SUPPORTED = 0x0, D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_1 = 0x1, D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER_2 = 0x2 } D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER; typedef enum D3D12_SHADER_CACHE_SUPPORT_FLAGS { D3D12_SHADER_CACHE_SUPPORT_NONE = 0x0, D3D12_SHADER_CACHE_SUPPORT_SINGLE_PSO = 0x1, D3D12_SHADER_CACHE_SUPPORT_LIBRARY = 0x2, D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE = 0x4, D3D12_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE = 0x8 } D3D12_SHADER_CACHE_SUPPORT_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_SHADER_CACHE_SUPPORT_FLAGS); typedef enum D3D12_COMMAND_LIST_SUPPORT_FLAGS { D3D12_COMMAND_LIST_SUPPORT_FLAG_NONE = 0x0, D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT = 0x1, D3D12_COMMAND_LIST_SUPPORT_FLAG_BUNDLE = 0x2, D3D12_COMMAND_LIST_SUPPORT_FLAG_COMPUTE = 0x4, D3D12_COMMAND_LIST_SUPPORT_FLAG_COPY = 0x8, D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_DECODE = 0x10, D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_PROCESS = 0x20, D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE = 0x40 } D3D12_COMMAND_LIST_SUPPORT_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_LIST_SUPPORT_FLAGS); typedef enum D3D12_VIEW_INSTANCING_TIER { D3D12_VIEW_INSTANCING_TIER_NOT_SUPPORTED = 0x0, D3D12_VIEW_INSTANCING_TIER_1 = 0x1, D3D12_VIEW_INSTANCING_TIER_2 = 0x2, D3D12_VIEW_INSTANCING_TIER_3 = 0x3 } D3D12_VIEW_INSTANCING_TIER; typedef enum D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER { D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_0 = 0x0, D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER_1 = 0x1 } D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER; typedef enum D3D12_HEAP_SERIALIZATION_TIER { D3D12_HEAP_SERIALIZATION_TIER_0 = 0x0, D3D12_HEAP_SERIALIZATION_TIER_10 = 0xa } D3D12_HEAP_SERIALIZATION_TIER; typedef enum D3D12_RENDER_PASS_TIER { D3D12_RENDER_PASS_TIER_0 = 0x0, D3D12_RENDER_PASS_TIER_1 = 0x1, D3D12_RENDER_PASS_TIER_2 = 0x2 } D3D12_RENDER_PASS_TIER; typedef enum D3D12_RAYTRACING_TIER { D3D12_RAYTRACING_TIER_NOT_SUPPORTED = 0x0, D3D12_RAYTRACING_TIER_1_0 = 0xa } D3D12_RAYTRACING_TIER; #ifndef __ID3D12Fence_FWD_DEFINED__ #define __ID3D12Fence_FWD_DEFINED__ typedef interface ID3D12Fence ID3D12Fence; #ifdef __cplusplus interface ID3D12Fence; #endif /* __cplusplus */ #endif #ifndef __ID3D12RootSignature_FWD_DEFINED__ #define __ID3D12RootSignature_FWD_DEFINED__ typedef interface ID3D12RootSignature ID3D12RootSignature; #ifdef __cplusplus interface ID3D12RootSignature; #endif /* __cplusplus */ #endif #ifndef __ID3D12Heap_FWD_DEFINED__ #define __ID3D12Heap_FWD_DEFINED__ typedef interface ID3D12Heap ID3D12Heap; #ifdef __cplusplus interface ID3D12Heap; #endif /* __cplusplus */ #endif #ifndef __ID3D12DescriptorHeap_FWD_DEFINED__ #define __ID3D12DescriptorHeap_FWD_DEFINED__ typedef interface ID3D12DescriptorHeap ID3D12DescriptorHeap; #ifdef __cplusplus interface ID3D12DescriptorHeap; #endif /* __cplusplus */ #endif #ifndef __ID3D12Resource_FWD_DEFINED__ #define __ID3D12Resource_FWD_DEFINED__ typedef interface ID3D12Resource ID3D12Resource; #ifdef __cplusplus interface ID3D12Resource; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandAllocator_FWD_DEFINED__ #define __ID3D12CommandAllocator_FWD_DEFINED__ typedef interface ID3D12CommandAllocator ID3D12CommandAllocator; #ifdef __cplusplus interface ID3D12CommandAllocator; #endif /* __cplusplus */ #endif #ifndef __ID3D12GraphicsCommandList_FWD_DEFINED__ #define __ID3D12GraphicsCommandList_FWD_DEFINED__ typedef interface ID3D12GraphicsCommandList ID3D12GraphicsCommandList; #ifdef __cplusplus interface ID3D12GraphicsCommandList; #endif /* __cplusplus */ #endif #ifndef __ID3D12CommandQueue_FWD_DEFINED__ #define __ID3D12CommandQueue_FWD_DEFINED__ typedef interface ID3D12CommandQueue ID3D12CommandQueue; #ifdef __cplusplus interface ID3D12CommandQueue; #endif /* __cplusplus */ #endif #ifndef __ID3D12PipelineState_FWD_DEFINED__ #define __ID3D12PipelineState_FWD_DEFINED__ typedef interface ID3D12PipelineState ID3D12PipelineState; #ifdef __cplusplus interface ID3D12PipelineState; #endif /* __cplusplus */ #endif #ifndef __ID3D12Device_FWD_DEFINED__ #define __ID3D12Device_FWD_DEFINED__ typedef interface ID3D12Device ID3D12Device; #ifdef __cplusplus interface ID3D12Device; #endif /* __cplusplus */ #endif typedef RECT D3D12_RECT; typedef struct D3D12_BOX { UINT left; UINT top; UINT front; UINT right; UINT bottom; UINT back; } D3D12_BOX; typedef struct D3D12_VIEWPORT { FLOAT TopLeftX; FLOAT TopLeftY; FLOAT Width; FLOAT Height; FLOAT MinDepth; FLOAT MaxDepth; } D3D12_VIEWPORT; typedef struct D3D12_RANGE { SIZE_T Begin; SIZE_T End; } D3D12_RANGE; typedef struct D3D12_RANGE_UINT64 { UINT64 Begin; UINT64 End; } D3D12_RANGE_UINT64; typedef struct D3D12_SUBRESOURCE_RANGE_UINT64 { UINT Subresource; D3D12_RANGE_UINT64 Range; } D3D12_SUBRESOURCE_RANGE_UINT64; typedef struct D3D12_RESOURCE_ALLOCATION_INFO { UINT64 SizeInBytes; UINT64 Alignment; } D3D12_RESOURCE_ALLOCATION_INFO; typedef struct D3D12_DRAW_ARGUMENTS { UINT VertexCountPerInstance; UINT InstanceCount; UINT StartVertexLocation; UINT StartInstanceLocation; } D3D12_DRAW_ARGUMENTS; typedef struct D3D12_DRAW_INDEXED_ARGUMENTS { UINT IndexCountPerInstance; UINT InstanceCount; UINT StartIndexLocation; INT BaseVertexLocation; UINT StartInstanceLocation; } D3D12_DRAW_INDEXED_ARGUMENTS; typedef struct D3D12_DISPATCH_ARGUMENTS { UINT ThreadGroupCountX; UINT ThreadGroupCountY; UINT ThreadGroupCountZ; } D3D12_DISPATCH_ARGUMENTS; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS { WINBOOL DoublePrecisionFloatShaderOps; WINBOOL OutputMergerLogicOp; D3D12_SHADER_MIN_PRECISION_SUPPORT MinPrecisionSupport; D3D12_TILED_RESOURCES_TIER TiledResourcesTier; D3D12_RESOURCE_BINDING_TIER ResourceBindingTier; WINBOOL PSSpecifiedStencilRefSupported; WINBOOL TypedUAVLoadAdditionalFormats; WINBOOL ROVsSupported; D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; UINT MaxGPUVirtualAddressBitsPerResource; WINBOOL StandardSwizzle64KBSupported; D3D12_CROSS_NODE_SHARING_TIER CrossNodeSharingTier; WINBOOL CrossAdapterRowMajorTextureSupported; WINBOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation; D3D12_RESOURCE_HEAP_TIER ResourceHeapTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS; typedef struct D3D12_FEATURE_DATA_FORMAT_SUPPORT { DXGI_FORMAT Format; D3D12_FORMAT_SUPPORT1 Support1; D3D12_FORMAT_SUPPORT2 Support2; } D3D12_FEATURE_DATA_FORMAT_SUPPORT; typedef enum D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS { D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_NONE = 0x0, D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG_TILED_RESOURCE = 0x1 } D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS); typedef struct D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS { DXGI_FORMAT Format; UINT SampleCount; D3D12_MULTISAMPLE_QUALITY_LEVEL_FLAGS Flags; UINT NumQualityLevels; } D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS; typedef enum D3D12_HEAP_TYPE { D3D12_HEAP_TYPE_DEFAULT = 1, D3D12_HEAP_TYPE_UPLOAD = 2, D3D12_HEAP_TYPE_READBACK = 3, D3D12_HEAP_TYPE_CUSTOM = 4 } D3D12_HEAP_TYPE; typedef enum D3D12_CPU_PAGE_PROPERTY { D3D12_CPU_PAGE_PROPERTY_UNKNOWN = 0, D3D12_CPU_PAGE_PROPERTY_NOT_AVAILABLE = 1, D3D12_CPU_PAGE_PROPERTY_WRITE_COMBINE = 2, D3D12_CPU_PAGE_PROPERTY_WRITE_BACK = 3 } D3D12_CPU_PAGE_PROPERTY; typedef enum D3D12_MEMORY_POOL { D3D12_MEMORY_POOL_UNKNOWN = 0, D3D12_MEMORY_POOL_L0 = 1, D3D12_MEMORY_POOL_L1 = 2 } D3D12_MEMORY_POOL; typedef struct D3D12_HEAP_PROPERTIES { D3D12_HEAP_TYPE Type; D3D12_CPU_PAGE_PROPERTY CPUPageProperty; D3D12_MEMORY_POOL MemoryPoolPreference; UINT CreationNodeMask; UINT VisibleNodeMask; } D3D12_HEAP_PROPERTIES; typedef enum D3D12_HEAP_FLAGS { D3D12_HEAP_FLAG_NONE = 0x0, D3D12_HEAP_FLAG_SHARED = 0x1, D3D12_HEAP_FLAG_DENY_BUFFERS = 0x4, D3D12_HEAP_FLAG_ALLOW_DISPLAY = 0x8, D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER = 0x20, D3D12_HEAP_FLAG_DENY_RT_DS_TEXTURES = 0x40, D3D12_HEAP_FLAG_DENY_NON_RT_DS_TEXTURES = 0x80, D3D12_HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES = 0x0, D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS = 0xc0, D3D12_HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES = 0x44, D3D12_HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES = 0x84 } D3D12_HEAP_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_HEAP_FLAGS); typedef struct D3D12_HEAP_DESC { UINT64 SizeInBytes; D3D12_HEAP_PROPERTIES Properties; UINT64 Alignment; D3D12_HEAP_FLAGS Flags; } D3D12_HEAP_DESC; typedef struct D3D12_TILED_RESOURCE_COORDINATE { UINT X; UINT Y; UINT Z; UINT Subresource; } D3D12_TILED_RESOURCE_COORDINATE; typedef struct D3D12_TILE_REGION_SIZE { UINT NumTiles; WINBOOL UseBox; UINT Width; UINT16 Height; UINT16 Depth; } D3D12_TILE_REGION_SIZE; typedef struct D3D12_SUBRESOURCE_TILING { UINT WidthInTiles; UINT16 HeightInTiles; UINT16 DepthInTiles; UINT StartTileIndexInOverallResource; } D3D12_SUBRESOURCE_TILING; typedef struct D3D12_TILE_SHAPE { UINT WidthInTexels; UINT HeightInTexels; UINT DepthInTexels; } D3D12_TILE_SHAPE; typedef struct D3D12_SHADER_BYTECODE { const void *pShaderBytecode; SIZE_T BytecodeLength; } D3D12_SHADER_BYTECODE; typedef struct D3D12_DEPTH_STENCIL_VALUE { FLOAT Depth; UINT8 Stencil; } D3D12_DEPTH_STENCIL_VALUE; typedef struct D3D12_CLEAR_VALUE { DXGI_FORMAT Format; __C89_NAMELESS union { FLOAT Color[4]; D3D12_DEPTH_STENCIL_VALUE DepthStencil; } __C89_NAMELESSUNIONNAME; } D3D12_CLEAR_VALUE; typedef struct D3D12_PACKED_MIP_INFO { UINT8 NumStandardMips; UINT8 NumPackedMips; UINT NumTilesForPackedMips; UINT StartTileIndexInOverallResource; } D3D12_PACKED_MIP_INFO; typedef enum D3D12_RESOURCE_STATES { D3D12_RESOURCE_STATE_COMMON = 0, D3D12_RESOURCE_STATE_VERTEX_AND_CONSTANT_BUFFER = 0x1, D3D12_RESOURCE_STATE_INDEX_BUFFER = 0x2, D3D12_RESOURCE_STATE_RENDER_TARGET = 0x4, D3D12_RESOURCE_STATE_UNORDERED_ACCESS = 0x8, D3D12_RESOURCE_STATE_DEPTH_WRITE = 0x10, D3D12_RESOURCE_STATE_DEPTH_READ = 0x20, D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE = 0x40, D3D12_RESOURCE_STATE_PIXEL_SHADER_RESOURCE = 0x80, D3D12_RESOURCE_STATE_STREAM_OUT = 0x100, D3D12_RESOURCE_STATE_INDIRECT_ARGUMENT = 0x200, D3D12_RESOURCE_STATE_COPY_DEST = 0x400, D3D12_RESOURCE_STATE_COPY_SOURCE = 0x800, D3D12_RESOURCE_STATE_RESOLVE_DEST = 0x1000, D3D12_RESOURCE_STATE_RESOLVE_SOURCE = 0x2000, D3D12_RESOURCE_STATE_GENERIC_READ = ((((0x1 | 0x2) | 0x40) | 0x80) | 0x200) | 0x800, D3D12_RESOURCE_STATE_PRESENT = 0x0, D3D12_RESOURCE_STATE_PREDICATION = 0x200, D3D12_RESOURCE_STATE_VIDEO_DECODE_READ = 0x10000, D3D12_RESOURCE_STATE_VIDEO_DECODE_WRITE = 0x20000, D3D12_RESOURCE_STATE_VIDEO_PROCESS_READ = 0x40000, D3D12_RESOURCE_STATE_VIDEO_PROCESS_WRITE = 0x80000, D3D12_RESOURCE_STATE_VIDEO_ENCODE_READ = 0x200000, D3D12_RESOURCE_STATE_VIDEO_ENCODE_WRITE = 0x800000 } D3D12_RESOURCE_STATES; DEFINE_ENUM_FLAG_OPERATORS(D3D12_RESOURCE_STATES); typedef enum D3D12_RESOURCE_BARRIER_TYPE { D3D12_RESOURCE_BARRIER_TYPE_TRANSITION = 0, D3D12_RESOURCE_BARRIER_TYPE_ALIASING = 1, D3D12_RESOURCE_BARRIER_TYPE_UAV = 2 } D3D12_RESOURCE_BARRIER_TYPE; typedef enum D3D12_RESOURCE_BARRIER_FLAGS { D3D12_RESOURCE_BARRIER_FLAG_NONE = 0x0, D3D12_RESOURCE_BARRIER_FLAG_BEGIN_ONLY = 0x1, D3D12_RESOURCE_BARRIER_FLAG_END_ONLY = 0x2 } D3D12_RESOURCE_BARRIER_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_RESOURCE_BARRIER_FLAGS); typedef struct D3D12_RESOURCE_TRANSITION_BARRIER { ID3D12Resource *pResource; UINT Subresource; D3D12_RESOURCE_STATES StateBefore; D3D12_RESOURCE_STATES StateAfter; } D3D12_RESOURCE_TRANSITION_BARRIER; typedef struct D3D12_RESOURCE_ALIASING_BARRIER_ALIASING { ID3D12Resource *pResourceBefore; ID3D12Resource *pResourceAfter; } D3D12_RESOURCE_ALIASING_BARRIER; typedef struct D3D12_RESOURCE_UAV_BARRIER { ID3D12Resource *pResource; } D3D12_RESOURCE_UAV_BARRIER; typedef struct D3D12_RESOURCE_BARRIER { D3D12_RESOURCE_BARRIER_TYPE Type; D3D12_RESOURCE_BARRIER_FLAGS Flags; __C89_NAMELESS union { D3D12_RESOURCE_TRANSITION_BARRIER Transition; D3D12_RESOURCE_ALIASING_BARRIER Aliasing; D3D12_RESOURCE_UAV_BARRIER UAV; } __C89_NAMELESSUNIONNAME; } D3D12_RESOURCE_BARRIER; typedef enum D3D12_RESOURCE_DIMENSION { D3D12_RESOURCE_DIMENSION_UNKNOWN = 0, D3D12_RESOURCE_DIMENSION_BUFFER = 1, D3D12_RESOURCE_DIMENSION_TEXTURE1D = 2, D3D12_RESOURCE_DIMENSION_TEXTURE2D = 3, D3D12_RESOURCE_DIMENSION_TEXTURE3D = 4 } D3D12_RESOURCE_DIMENSION; typedef enum D3D12_TEXTURE_LAYOUT { D3D12_TEXTURE_LAYOUT_UNKNOWN = 0, D3D12_TEXTURE_LAYOUT_ROW_MAJOR = 1, D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE = 2, D3D12_TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE = 3 } D3D12_TEXTURE_LAYOUT; typedef enum D3D12_RESOURCE_FLAGS { D3D12_RESOURCE_FLAG_NONE = 0x0, D3D12_RESOURCE_FLAG_ALLOW_RENDER_TARGET = 0x1, D3D12_RESOURCE_FLAG_ALLOW_DEPTH_STENCIL = 0x2, D3D12_RESOURCE_FLAG_ALLOW_UNORDERED_ACCESS = 0x4, D3D12_RESOURCE_FLAG_DENY_SHADER_RESOURCE = 0x8, D3D12_RESOURCE_FLAG_ALLOW_CROSS_ADAPTER = 0x10, D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS = 0x20 } D3D12_RESOURCE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_RESOURCE_FLAGS); typedef struct D3D12_RESOURCE_DESC { D3D12_RESOURCE_DIMENSION Dimension; UINT64 Alignment; UINT64 Width; UINT Height; UINT16 DepthOrArraySize; UINT16 MipLevels; DXGI_FORMAT Format; DXGI_SAMPLE_DESC SampleDesc; D3D12_TEXTURE_LAYOUT Layout; D3D12_RESOURCE_FLAGS Flags; } D3D12_RESOURCE_DESC; typedef enum D3D12_RESOLVE_MODE { D3D12_RESOLVE_MODE_DECOMPRESS = 0, D3D12_RESOLVE_MODE_MIN = 1, D3D12_RESOLVE_MODE_MAX = 2, D3D12_RESOLVE_MODE_AVERAGE = 3 } D3D12_RESOLVE_MODE; typedef struct D3D12_SAMPLE_POSITION { INT8 X; INT8 Y; } D3D12_SAMPLE_POSITION; typedef enum D3D12_TEXTURE_COPY_TYPE { D3D12_TEXTURE_COPY_TYPE_SUBRESOURCE_INDEX = 0, D3D12_TEXTURE_COPY_TYPE_PLACED_FOOTPRINT = 1 } D3D12_TEXTURE_COPY_TYPE; typedef struct D3D12_SUBRESOURCE_FOOTPRINT { DXGI_FORMAT Format; UINT Width; UINT Height; UINT Depth; UINT RowPitch; } D3D12_SUBRESOURCE_FOOTPRINT; typedef struct D3D12_PLACED_SUBRESOURCE_FOOTPRINT { UINT64 Offset; D3D12_SUBRESOURCE_FOOTPRINT Footprint; } D3D12_PLACED_SUBRESOURCE_FOOTPRINT; typedef struct D3D12_TEXTURE_COPY_LOCATION { ID3D12Resource *pResource; D3D12_TEXTURE_COPY_TYPE Type; __C89_NAMELESS union { D3D12_PLACED_SUBRESOURCE_FOOTPRINT PlacedFootprint; UINT SubresourceIndex; } __C89_NAMELESSUNIONNAME; } D3D12_TEXTURE_COPY_LOCATION; typedef enum D3D12_DESCRIPTOR_RANGE_TYPE { D3D12_DESCRIPTOR_RANGE_TYPE_SRV = 0, D3D12_DESCRIPTOR_RANGE_TYPE_UAV = 1, D3D12_DESCRIPTOR_RANGE_TYPE_CBV = 2, D3D12_DESCRIPTOR_RANGE_TYPE_SAMPLER = 3 } D3D12_DESCRIPTOR_RANGE_TYPE; typedef struct D3D12_DESCRIPTOR_RANGE { D3D12_DESCRIPTOR_RANGE_TYPE RangeType; UINT NumDescriptors; UINT BaseShaderRegister; UINT RegisterSpace; UINT OffsetInDescriptorsFromTableStart; } D3D12_DESCRIPTOR_RANGE; typedef enum D3D12_DESCRIPTOR_RANGE_FLAGS { D3D12_DESCRIPTOR_RANGE_FLAG_NONE = 0x0, D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_VOLATILE = 0x1, D3D12_DESCRIPTOR_RANGE_FLAG_DATA_VOLATILE = 0x2, D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE = 0x4, D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC = 0x8 } D3D12_DESCRIPTOR_RANGE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_DESCRIPTOR_RANGE_FLAGS); typedef struct D3D12_DESCRIPTOR_RANGE1 { D3D12_DESCRIPTOR_RANGE_TYPE RangeType; UINT NumDescriptors; UINT BaseShaderRegister; UINT RegisterSpace; D3D12_DESCRIPTOR_RANGE_FLAGS Flags; UINT OffsetInDescriptorsFromTableStart; } D3D12_DESCRIPTOR_RANGE1; typedef struct D3D12_ROOT_DESCRIPTOR_TABLE { UINT NumDescriptorRanges; const D3D12_DESCRIPTOR_RANGE *pDescriptorRanges; } D3D12_ROOT_DESCRIPTOR_TABLE; typedef struct D3D12_ROOT_DESCRIPTOR_TABLE1 { UINT NumDescriptorRanges; const D3D12_DESCRIPTOR_RANGE1 *pDescriptorRanges; } D3D12_ROOT_DESCRIPTOR_TABLE1; typedef struct D3D12_ROOT_CONSTANTS { UINT ShaderRegister; UINT RegisterSpace; UINT Num32BitValues; } D3D12_ROOT_CONSTANTS; typedef struct D3D12_ROOT_DESCRIPTOR { UINT ShaderRegister; UINT RegisterSpace; } D3D12_ROOT_DESCRIPTOR; typedef enum D3D12_ROOT_DESCRIPTOR_FLAGS { D3D12_ROOT_DESCRIPTOR_FLAG_NONE = 0x0, D3D12_ROOT_DESCRIPTOR_FLAG_DATA_VOLATILE = 0x2, D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE = 0x4, D3D12_ROOT_DESCRIPTOR_FLAG_DATA_STATIC = 0x8 } D3D12_ROOT_DESCRIPTOR_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_ROOT_DESCRIPTOR_FLAGS); typedef struct D3D12_ROOT_DESCRIPTOR1 { UINT ShaderRegister; UINT RegisterSpace; D3D12_ROOT_DESCRIPTOR_FLAGS Flags; } D3D12_ROOT_DESCRIPTOR1; typedef enum D3D12_ROOT_PARAMETER_TYPE { D3D12_ROOT_PARAMETER_TYPE_DESCRIPTOR_TABLE = 0, D3D12_ROOT_PARAMETER_TYPE_32BIT_CONSTANTS = 1, D3D12_ROOT_PARAMETER_TYPE_CBV = 2, D3D12_ROOT_PARAMETER_TYPE_SRV = 3, D3D12_ROOT_PARAMETER_TYPE_UAV = 4 } D3D12_ROOT_PARAMETER_TYPE; typedef enum D3D12_SHADER_VISIBILITY { D3D12_SHADER_VISIBILITY_ALL = 0, D3D12_SHADER_VISIBILITY_VERTEX = 1, D3D12_SHADER_VISIBILITY_HULL = 2, D3D12_SHADER_VISIBILITY_DOMAIN = 3, D3D12_SHADER_VISIBILITY_GEOMETRY = 4, D3D12_SHADER_VISIBILITY_PIXEL = 5 } D3D12_SHADER_VISIBILITY; typedef struct D3D12_ROOT_PARAMETER { D3D12_ROOT_PARAMETER_TYPE ParameterType; __C89_NAMELESS union { D3D12_ROOT_DESCRIPTOR_TABLE DescriptorTable; D3D12_ROOT_CONSTANTS Constants; D3D12_ROOT_DESCRIPTOR Descriptor; } __C89_NAMELESSUNIONNAME; D3D12_SHADER_VISIBILITY ShaderVisibility; } D3D12_ROOT_PARAMETER; typedef struct D3D12_ROOT_PARAMETER1 { D3D12_ROOT_PARAMETER_TYPE ParameterType; __C89_NAMELESS union { D3D12_ROOT_DESCRIPTOR_TABLE1 DescriptorTable; D3D12_ROOT_CONSTANTS Constants; D3D12_ROOT_DESCRIPTOR1 Descriptor; } __C89_NAMELESSUNIONNAME; D3D12_SHADER_VISIBILITY ShaderVisibility; } D3D12_ROOT_PARAMETER1; typedef enum D3D12_STATIC_BORDER_COLOR { D3D12_STATIC_BORDER_COLOR_TRANSPARENT_BLACK = 0, D3D12_STATIC_BORDER_COLOR_OPAQUE_BLACK = 1, D3D12_STATIC_BORDER_COLOR_OPAQUE_WHITE = 2 } D3D12_STATIC_BORDER_COLOR; typedef enum D3D12_FILTER { D3D12_FILTER_MIN_MAG_MIP_POINT = 0x0, D3D12_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1, D3D12_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4, D3D12_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5, D3D12_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, D3D12_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, D3D12_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, D3D12_FILTER_MIN_MAG_MIP_LINEAR = 0x15, D3D12_FILTER_ANISOTROPIC = 0x55, D3D12_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80, D3D12_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81, D3D12_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84, D3D12_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85, D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90, D3D12_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91, D3D12_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94, D3D12_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95, D3D12_FILTER_COMPARISON_ANISOTROPIC = 0xd5, D3D12_FILTER_MINIMUM_MIN_MAG_MIP_POINT = 0x100, D3D12_FILTER_MINIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x101, D3D12_FILTER_MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x104, D3D12_FILTER_MINIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x105, D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x110, D3D12_FILTER_MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x111, D3D12_FILTER_MINIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x114, D3D12_FILTER_MINIMUM_MIN_MAG_MIP_LINEAR = 0x115, D3D12_FILTER_MINIMUM_ANISOTROPIC = 0x155, D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_POINT = 0x180, D3D12_FILTER_MAXIMUM_MIN_MAG_POINT_MIP_LINEAR = 0x181, D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x184, D3D12_FILTER_MAXIMUM_MIN_POINT_MAG_MIP_LINEAR = 0x185, D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_MIP_POINT = 0x190, D3D12_FILTER_MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x191, D3D12_FILTER_MAXIMUM_MIN_MAG_LINEAR_MIP_POINT = 0x194, D3D12_FILTER_MAXIMUM_MIN_MAG_MIP_LINEAR = 0x195, D3D12_FILTER_MAXIMUM_ANISOTROPIC = 0x1d5 } D3D12_FILTER; typedef enum D3D12_FILTER_TYPE { D3D12_FILTER_TYPE_POINT = 0, D3D12_FILTER_TYPE_LINEAR = 1 } D3D12_FILTER_TYPE; #define D3D12_MIP_FILTER_SHIFT (0) #define D3D12_MAG_FILTER_SHIFT (2) #define D3D12_MIN_FILTER_SHIFT (4) #define D3D12_FILTER_TYPE_MASK (0x3) #define D3D12_ANISOTROPIC_FILTERING_BIT (0x40) typedef enum D3D12_FILTER_REDUCTION_TYPE { D3D12_FILTER_REDUCTION_TYPE_STANDARD = 0, D3D12_FILTER_REDUCTION_TYPE_COMPARISON = 1, D3D12_FILTER_REDUCTION_TYPE_MINIMUM = 2, D3D12_FILTER_REDUCTION_TYPE_MAXIMUM = 3 } D3D12_FILTER_REDUCTION_TYPE; #define D3D12_FILTER_REDUCTION_TYPE_MASK (0x3) #define D3D12_FILTER_REDUCTION_TYPE_SHIFT (7) #define D3D12_DECODE_MAG_FILTER(filter) \ ((D3D12_FILTER_TYPE)(((filter) >> D3D12_MAG_FILTER_SHIFT) & D3D12_FILTER_TYPE_MASK)) #define D3D12_DECODE_MIN_FILTER(filter) \ ((D3D12_FILTER_TYPE)(((filter) >> D3D12_MIN_FILTER_SHIFT) & D3D12_FILTER_TYPE_MASK)) #define D3D12_DECODE_MIP_FILTER(filter) \ ((D3D12_FILTER_TYPE)(((filter) >> D3D12_MIP_FILTER_SHIFT) & D3D12_FILTER_TYPE_MASK)) #define D3D12_DECODE_IS_ANISOTROPIC_FILTER(filter) \ (((filter) & D3D12_ANISOTROPIC_FILTERING_BIT) \ && (D3D12_DECODE_MIN_FILTER(filter) == D3D12_FILTER_TYPE_LINEAR) \ && (D3D12_DECODE_MAG_FILTER(filter) == D3D12_FILTER_TYPE_LINEAR) \ && (D3D12_DECODE_MIP_FILTER(filter) == D3D12_FILTER_TYPE_LINEAR)) #define D3D12_DECODE_FILTER_REDUCTION(filter) \ ((D3D12_FILTER_REDUCTION_TYPE)(((filter) >> D3D12_FILTER_REDUCTION_TYPE_SHIFT) \ & D3D12_FILTER_REDUCTION_TYPE_MASK)) #define D3D12_DECODE_IS_COMPARISON_FILTER(filter) \ (D3D12_DECODE_FILTER_REDUCTION(filter) == D3D12_FILTER_REDUCTION_TYPE_COMPARISON) typedef enum D3D12_TEXTURE_ADDRESS_MODE { D3D12_TEXTURE_ADDRESS_MODE_WRAP = 1, D3D12_TEXTURE_ADDRESS_MODE_MIRROR = 2, D3D12_TEXTURE_ADDRESS_MODE_CLAMP = 3, D3D12_TEXTURE_ADDRESS_MODE_BORDER = 4, D3D12_TEXTURE_ADDRESS_MODE_MIRROR_ONCE = 5 } D3D12_TEXTURE_ADDRESS_MODE; typedef enum D3D12_COMPARISON_FUNC { D3D12_COMPARISON_FUNC_NEVER = 1, D3D12_COMPARISON_FUNC_LESS = 2, D3D12_COMPARISON_FUNC_EQUAL = 3, D3D12_COMPARISON_FUNC_LESS_EQUAL = 4, D3D12_COMPARISON_FUNC_GREATER = 5, D3D12_COMPARISON_FUNC_NOT_EQUAL = 6, D3D12_COMPARISON_FUNC_GREATER_EQUAL = 7, D3D12_COMPARISON_FUNC_ALWAYS = 8 } D3D12_COMPARISON_FUNC; typedef struct D3D12_STATIC_SAMPLER_DESC { D3D12_FILTER Filter; D3D12_TEXTURE_ADDRESS_MODE AddressU; D3D12_TEXTURE_ADDRESS_MODE AddressV; D3D12_TEXTURE_ADDRESS_MODE AddressW; FLOAT MipLODBias; UINT MaxAnisotropy; D3D12_COMPARISON_FUNC ComparisonFunc; D3D12_STATIC_BORDER_COLOR BorderColor; FLOAT MinLOD; FLOAT MaxLOD; UINT ShaderRegister; UINT RegisterSpace; D3D12_SHADER_VISIBILITY ShaderVisibility; } D3D12_STATIC_SAMPLER_DESC; typedef enum D3D12_ROOT_SIGNATURE_FLAGS { D3D12_ROOT_SIGNATURE_FLAG_NONE = 0x0, D3D12_ROOT_SIGNATURE_FLAG_ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT = 0x1, D3D12_ROOT_SIGNATURE_FLAG_DENY_VERTEX_SHADER_ROOT_ACCESS = 0x2, D3D12_ROOT_SIGNATURE_FLAG_DENY_HULL_SHADER_ROOT_ACCESS = 0x4, D3D12_ROOT_SIGNATURE_FLAG_DENY_DOMAIN_SHADER_ROOT_ACCESS = 0x8, D3D12_ROOT_SIGNATURE_FLAG_DENY_GEOMETRY_SHADER_ROOT_ACCESS = 0x10, D3D12_ROOT_SIGNATURE_FLAG_DENY_PIXEL_SHADER_ROOT_ACCESS = 0x20, D3D12_ROOT_SIGNATURE_FLAG_ALLOW_STREAM_OUTPUT = 0x40 } D3D12_ROOT_SIGNATURE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_ROOT_SIGNATURE_FLAGS); typedef struct D3D12_ROOT_SIGNATURE_DESC { UINT NumParameters; const D3D12_ROOT_PARAMETER *pParameters; UINT NumStaticSamplers; const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers; D3D12_ROOT_SIGNATURE_FLAGS Flags; } D3D12_ROOT_SIGNATURE_DESC; typedef struct D3D12_ROOT_SIGNATURE_DESC1 { UINT NumParameters; const D3D12_ROOT_PARAMETER1 *pParameters; UINT NumStaticSamplers; const D3D12_STATIC_SAMPLER_DESC *pStaticSamplers; D3D12_ROOT_SIGNATURE_FLAGS Flags; } D3D12_ROOT_SIGNATURE_DESC1; typedef enum D3D_ROOT_SIGNATURE_VERSION { D3D_ROOT_SIGNATURE_VERSION_1 = 0x1, D3D_ROOT_SIGNATURE_VERSION_1_0 = 0x1, D3D_ROOT_SIGNATURE_VERSION_1_1 = 0x2 } D3D_ROOT_SIGNATURE_VERSION; typedef struct D3D12_VERSIONED_ROOT_SIGNATURE_DESC { D3D_ROOT_SIGNATURE_VERSION Version; __C89_NAMELESS union { D3D12_ROOT_SIGNATURE_DESC Desc_1_0; D3D12_ROOT_SIGNATURE_DESC1 Desc_1_1; } __C89_NAMELESSUNIONNAME; } D3D12_VERSIONED_ROOT_SIGNATURE_DESC; typedef enum D3D12_DESCRIPTOR_HEAP_TYPE { D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV = 0, D3D12_DESCRIPTOR_HEAP_TYPE_SAMPLER = 1, D3D12_DESCRIPTOR_HEAP_TYPE_RTV = 2, D3D12_DESCRIPTOR_HEAP_TYPE_DSV = 3, D3D12_DESCRIPTOR_HEAP_TYPE_NUM_TYPES = 4 } D3D12_DESCRIPTOR_HEAP_TYPE; typedef enum D3D12_DESCRIPTOR_HEAP_FLAGS { D3D12_DESCRIPTOR_HEAP_FLAG_NONE = 0x0, D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE = 0x1 } D3D12_DESCRIPTOR_HEAP_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_DESCRIPTOR_HEAP_FLAGS); typedef struct D3D12_DESCRIPTOR_HEAP_DESC { D3D12_DESCRIPTOR_HEAP_TYPE Type; UINT NumDescriptors; D3D12_DESCRIPTOR_HEAP_FLAGS Flags; UINT NodeMask; } D3D12_DESCRIPTOR_HEAP_DESC; typedef UINT64 D3D12_GPU_VIRTUAL_ADDRESS; typedef struct D3D12_CONSTANT_BUFFER_VIEW_DESC { D3D12_GPU_VIRTUAL_ADDRESS BufferLocation; UINT SizeInBytes; } D3D12_CONSTANT_BUFFER_VIEW_DESC; typedef enum D3D12_SRV_DIMENSION { D3D12_SRV_DIMENSION_UNKNOWN = 0, D3D12_SRV_DIMENSION_BUFFER = 1, D3D12_SRV_DIMENSION_TEXTURE1D = 2, D3D12_SRV_DIMENSION_TEXTURE1DARRAY = 3, D3D12_SRV_DIMENSION_TEXTURE2D = 4, D3D12_SRV_DIMENSION_TEXTURE2DARRAY = 5, D3D12_SRV_DIMENSION_TEXTURE2DMS = 6, D3D12_SRV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D12_SRV_DIMENSION_TEXTURE3D = 8, D3D12_SRV_DIMENSION_TEXTURECUBE = 9, D3D12_SRV_DIMENSION_TEXTURECUBEARRAY = 10 } D3D12_SRV_DIMENSION; typedef enum D3D12_BUFFER_SRV_FLAGS { D3D12_BUFFER_SRV_FLAG_NONE = 0x0, D3D12_BUFFER_SRV_FLAG_RAW = 0x1 } D3D12_BUFFER_SRV_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_BUFFER_SRV_FLAGS); typedef enum D3D12_SHADER_COMPONENT_MAPPING { D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_0 = 0, D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_1 = 1, D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_2 = 2, D3D12_SHADER_COMPONENT_MAPPING_FROM_MEMORY_COMPONENT_3 = 3, D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_0 = 4, D3D12_SHADER_COMPONENT_MAPPING_FORCE_VALUE_1 = 5 } D3D12_SHADER_COMPONENT_MAPPING; #define D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING(x, y, z, w) \ (((x) & D3D12_SHADER_COMPONENT_MAPPING_MASK) \ | (((y) & D3D12_SHADER_COMPONENT_MAPPING_MASK) << D3D12_SHADER_COMPONENT_MAPPING_SHIFT) \ | (((z) & D3D12_SHADER_COMPONENT_MAPPING_MASK) << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 2)) \ | (((w) & D3D12_SHADER_COMPONENT_MAPPING_MASK) << (D3D12_SHADER_COMPONENT_MAPPING_SHIFT * 3)) \ | D3D12_SHADER_COMPONENT_MAPPING_ALWAYS_SET_BIT_AVOIDING_ZEROMEM_MISTAKES) #define D3D12_DEFAULT_SHADER_4_COMPONENT_MAPPING D3D12_ENCODE_SHADER_4_COMPONENT_MAPPING(0, 1, 2, 3) #define D3D12_DECODE_SHADER_4_COMPONENT_MAPPING(i, mapping) \ ((D3D12_SHADER_COMPONENT_MAPPING)(mapping >> (i * D3D12_SHADER_COMPONENT_MAPPING_SHIFT) \ & D3D12_SHADER_COMPONENT_MAPPING_MASK)) typedef struct D3D12_BUFFER_SRV { UINT64 FirstElement; UINT NumElements; UINT StructureByteStride; D3D12_BUFFER_SRV_FLAGS Flags; } D3D12_BUFFER_SRV; typedef struct D3D12_TEX1D_SRV { UINT MostDetailedMip; UINT MipLevels; FLOAT ResourceMinLODClamp; } D3D12_TEX1D_SRV; typedef struct D3D12_TEX1D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; FLOAT ResourceMinLODClamp; } D3D12_TEX1D_ARRAY_SRV; typedef struct D3D12_TEX2D_SRV { UINT MostDetailedMip; UINT MipLevels; UINT PlaneSlice; FLOAT ResourceMinLODClamp; } D3D12_TEX2D_SRV; typedef struct D3D12_TEX2D_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; FLOAT ResourceMinLODClamp; } D3D12_TEX2D_ARRAY_SRV; typedef struct D3D12_TEX2DMS_SRV { UINT UnusedField_NothingToDefine; } D3D12_TEX2DMS_SRV; typedef struct D3D12_TEX2DMS_ARRAY_SRV { UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX2DMS_ARRAY_SRV; typedef struct D3D12_TEX3D_SRV { UINT MostDetailedMip; UINT MipLevels; FLOAT ResourceMinLODClamp; } D3D12_TEX3D_SRV; typedef struct D3D12_TEXCUBE_SRV { UINT MostDetailedMip; UINT MipLevels; FLOAT ResourceMinLODClamp; } D3D12_TEXCUBE_SRV; typedef struct D3D12_TEXCUBE_ARRAY_SRV { UINT MostDetailedMip; UINT MipLevels; UINT First2DArrayFace; UINT NumCubes; FLOAT ResourceMinLODClamp; } D3D12_TEXCUBE_ARRAY_SRV; typedef struct D3D12_SHADER_RESOURCE_VIEW_DESC { DXGI_FORMAT Format; D3D12_SRV_DIMENSION ViewDimension; UINT Shader4ComponentMapping; __C89_NAMELESS union { D3D12_BUFFER_SRV Buffer; D3D12_TEX1D_SRV Texture1D; D3D12_TEX1D_ARRAY_SRV Texture1DArray; D3D12_TEX2D_SRV Texture2D; D3D12_TEX2D_ARRAY_SRV Texture2DArray; D3D12_TEX2DMS_SRV Texture2DMS; D3D12_TEX2DMS_ARRAY_SRV Texture2DMSArray; D3D12_TEX3D_SRV Texture3D; D3D12_TEXCUBE_SRV TextureCube; D3D12_TEXCUBE_ARRAY_SRV TextureCubeArray; } __C89_NAMELESSUNIONNAME; } D3D12_SHADER_RESOURCE_VIEW_DESC; typedef enum D3D12_UAV_DIMENSION { D3D12_UAV_DIMENSION_UNKNOWN = 0, D3D12_UAV_DIMENSION_BUFFER = 1, D3D12_UAV_DIMENSION_TEXTURE1D = 2, D3D12_UAV_DIMENSION_TEXTURE1DARRAY = 3, D3D12_UAV_DIMENSION_TEXTURE2D = 4, D3D12_UAV_DIMENSION_TEXTURE2DARRAY = 5, D3D12_UAV_DIMENSION_TEXTURE3D = 8 } D3D12_UAV_DIMENSION; typedef enum D3D12_BUFFER_UAV_FLAGS { D3D12_BUFFER_UAV_FLAG_NONE = 0x0, D3D12_BUFFER_UAV_FLAG_RAW = 0x1 } D3D12_BUFFER_UAV_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_BUFFER_UAV_FLAGS); typedef struct D3D12_BUFFER_UAV { UINT64 FirstElement; UINT NumElements; UINT StructureByteStride; UINT64 CounterOffsetInBytes; D3D12_BUFFER_UAV_FLAGS Flags; } D3D12_BUFFER_UAV; typedef struct D3D12_TEX1D_UAV { UINT MipSlice; } D3D12_TEX1D_UAV; typedef struct D3D12_TEX1D_ARRAY_UAV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX1D_ARRAY_UAV; typedef struct D3D12_TEX2D_UAV { UINT MipSlice; UINT PlaneSlice; } D3D12_TEX2D_UAV; typedef struct D3D12_TEX2D_ARRAY_UAV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; } D3D12_TEX2D_ARRAY_UAV; typedef struct D3D12_TEX3D_UAV { UINT MipSlice; UINT FirstWSlice; UINT WSize; } D3D12_TEX3D_UAV; typedef struct D3D12_UNORDERED_ACCESS_VIEW_DESC { DXGI_FORMAT Format; D3D12_UAV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D12_BUFFER_UAV Buffer; D3D12_TEX1D_UAV Texture1D; D3D12_TEX1D_ARRAY_UAV Texture1DArray; D3D12_TEX2D_UAV Texture2D; D3D12_TEX2D_ARRAY_UAV Texture2DArray; D3D12_TEX3D_UAV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D12_UNORDERED_ACCESS_VIEW_DESC; typedef enum D3D12_RTV_DIMENSION { D3D12_RTV_DIMENSION_UNKNOWN = 0, D3D12_RTV_DIMENSION_BUFFER = 1, D3D12_RTV_DIMENSION_TEXTURE1D = 2, D3D12_RTV_DIMENSION_TEXTURE1DARRAY = 3, D3D12_RTV_DIMENSION_TEXTURE2D = 4, D3D12_RTV_DIMENSION_TEXTURE2DARRAY = 5, D3D12_RTV_DIMENSION_TEXTURE2DMS = 6, D3D12_RTV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D12_RTV_DIMENSION_TEXTURE3D = 8 } D3D12_RTV_DIMENSION; typedef struct D3D12_BUFFER_RTV { UINT64 FirstElement; UINT NumElements; } D3D12_BUFFER_RTV; typedef struct D3D12_TEX1D_RTV { UINT MipSlice; } D3D12_TEX1D_RTV; typedef struct D3D12_TEX1D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX1D_ARRAY_RTV; typedef struct D3D12_TEX2D_RTV { UINT MipSlice; UINT PlaneSlice; } D3D12_TEX2D_RTV; typedef struct D3D12_TEX2D_ARRAY_RTV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; UINT PlaneSlice; } D3D12_TEX2D_ARRAY_RTV; typedef struct D3D12_TEX2DMS_RTV { UINT UnusedField_NothingToDefine; } D3D12_TEX2DMS_RTV; typedef struct D3D12_TEX2DMS_ARRAY_RTV { UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX2DMS_ARRAY_RTV; typedef struct D3D12_TEX3D_RTV { UINT MipSlice; UINT FirstWSlice; UINT WSize; } D3D12_TEX3D_RTV; typedef struct D3D12_RENDER_TARGET_VIEW_DESC { DXGI_FORMAT Format; D3D12_RTV_DIMENSION ViewDimension; __C89_NAMELESS union { D3D12_BUFFER_RTV Buffer; D3D12_TEX1D_RTV Texture1D; D3D12_TEX1D_ARRAY_RTV Texture1DArray; D3D12_TEX2D_RTV Texture2D; D3D12_TEX2D_ARRAY_RTV Texture2DArray; D3D12_TEX2DMS_RTV Texture2DMS; D3D12_TEX2DMS_ARRAY_RTV Texture2DMSArray; D3D12_TEX3D_RTV Texture3D; } __C89_NAMELESSUNIONNAME; } D3D12_RENDER_TARGET_VIEW_DESC; typedef enum D3D12_DSV_DIMENSION { D3D12_DSV_DIMENSION_UNKNOWN = 0, D3D12_DSV_DIMENSION_TEXTURE1D = 1, D3D12_DSV_DIMENSION_TEXTURE1DARRAY = 2, D3D12_DSV_DIMENSION_TEXTURE2D = 3, D3D12_DSV_DIMENSION_TEXTURE2DARRAY = 4, D3D12_DSV_DIMENSION_TEXTURE2DMS = 5, D3D12_DSV_DIMENSION_TEXTURE2DMSARRAY = 6 } D3D12_DSV_DIMENSION; typedef enum D3D12_DSV_FLAGS { D3D12_DSV_FLAG_NONE = 0x0, D3D12_DSV_FLAG_READ_ONLY_DEPTH = 0x1, D3D12_DSV_FLAG_READ_ONLY_STENCIL = 0x2 } D3D12_DSV_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_DSV_FLAGS); typedef struct D3D12_TEX1D_DSV { UINT MipSlice; } D3D12_TEX1D_DSV; typedef struct D3D12_TEX1D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX1D_ARRAY_DSV; typedef struct D3D12_TEX2D_DSV { UINT MipSlice; } D3D12_TEX2D_DSV; typedef struct D3D12_TEX2D_ARRAY_DSV { UINT MipSlice; UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX2D_ARRAY_DSV; typedef struct D3D12_TEX2DMS_DSV { UINT UnusedField_NothingToDefine; } D3D12_TEX2DMS_DSV; typedef struct D3D12_TEX2DMS_ARRAY_DSV { UINT FirstArraySlice; UINT ArraySize; } D3D12_TEX2DMS_ARRAY_DSV; typedef struct D3D12_DEPTH_STENCIL_VIEW_DESC { DXGI_FORMAT Format; D3D12_DSV_DIMENSION ViewDimension; D3D12_DSV_FLAGS Flags; __C89_NAMELESS union { D3D12_TEX1D_DSV Texture1D; D3D12_TEX1D_ARRAY_DSV Texture1DArray; D3D12_TEX2D_DSV Texture2D; D3D12_TEX2D_ARRAY_DSV Texture2DArray; D3D12_TEX2DMS_DSV Texture2DMS; D3D12_TEX2DMS_ARRAY_DSV Texture2DMSArray; } __C89_NAMELESSUNIONNAME; } D3D12_DEPTH_STENCIL_VIEW_DESC; typedef struct D3D12_SAMPLER_DESC { D3D12_FILTER Filter; D3D12_TEXTURE_ADDRESS_MODE AddressU; D3D12_TEXTURE_ADDRESS_MODE AddressV; D3D12_TEXTURE_ADDRESS_MODE AddressW; FLOAT MipLODBias; UINT MaxAnisotropy; D3D12_COMPARISON_FUNC ComparisonFunc; FLOAT BorderColor[4]; FLOAT MinLOD; FLOAT MaxLOD; } D3D12_SAMPLER_DESC; typedef struct D3D12_CPU_DESCRIPTOR_HANDLE { SIZE_T ptr; } D3D12_CPU_DESCRIPTOR_HANDLE; typedef struct D3D12_GPU_DESCRIPTOR_HANDLE { UINT64 ptr; } D3D12_GPU_DESCRIPTOR_HANDLE; typedef enum D3D12_STENCIL_OP { D3D12_STENCIL_OP_KEEP = 1, D3D12_STENCIL_OP_ZERO = 2, D3D12_STENCIL_OP_REPLACE = 3, D3D12_STENCIL_OP_INCR_SAT = 4, D3D12_STENCIL_OP_DECR_SAT = 5, D3D12_STENCIL_OP_INVERT = 6, D3D12_STENCIL_OP_INCR = 7, D3D12_STENCIL_OP_DECR = 8 } D3D12_STENCIL_OP; typedef struct D3D12_DEPTH_STENCILOP_DESC { D3D12_STENCIL_OP StencilFailOp; D3D12_STENCIL_OP StencilDepthFailOp; D3D12_STENCIL_OP StencilPassOp; D3D12_COMPARISON_FUNC StencilFunc; } D3D12_DEPTH_STENCILOP_DESC; typedef enum D3D12_DEPTH_WRITE_MASK { D3D12_DEPTH_WRITE_MASK_ZERO = 0, D3D12_DEPTH_WRITE_MASK_ALL = 1 } D3D12_DEPTH_WRITE_MASK; typedef struct D3D12_DEPTH_STENCIL_DESC { WINBOOL DepthEnable; D3D12_DEPTH_WRITE_MASK DepthWriteMask; D3D12_COMPARISON_FUNC DepthFunc; WINBOOL StencilEnable; UINT8 StencilReadMask; UINT8 StencilWriteMask; D3D12_DEPTH_STENCILOP_DESC FrontFace; D3D12_DEPTH_STENCILOP_DESC BackFace; } D3D12_DEPTH_STENCIL_DESC; typedef enum D3D12_BLEND { D3D12_BLEND_ZERO = 1, D3D12_BLEND_ONE = 2, D3D12_BLEND_SRC_COLOR = 3, D3D12_BLEND_INV_SRC_COLOR = 4, D3D12_BLEND_SRC_ALPHA = 5, D3D12_BLEND_INV_SRC_ALPHA = 6, D3D12_BLEND_DEST_ALPHA = 7, D3D12_BLEND_INV_DEST_ALPHA = 8, D3D12_BLEND_DEST_COLOR = 9, D3D12_BLEND_INV_DEST_COLOR = 10, D3D12_BLEND_SRC_ALPHA_SAT = 11, D3D12_BLEND_BLEND_FACTOR = 14, D3D12_BLEND_INV_BLEND_FACTOR = 15, D3D12_BLEND_SRC1_COLOR = 16, D3D12_BLEND_INV_SRC1_COLOR = 17, D3D12_BLEND_SRC1_ALPHA = 18, D3D12_BLEND_INV_SRC1_ALPHA = 19 } D3D12_BLEND; typedef enum D3D12_BLEND_OP { D3D12_BLEND_OP_ADD = 1, D3D12_BLEND_OP_SUBTRACT = 2, D3D12_BLEND_OP_REV_SUBTRACT = 3, D3D12_BLEND_OP_MIN = 4, D3D12_BLEND_OP_MAX = 5 } D3D12_BLEND_OP; typedef enum D3D12_LOGIC_OP { D3D12_LOGIC_OP_CLEAR = 0, D3D12_LOGIC_OP_SET = 1, D3D12_LOGIC_OP_COPY = 2, D3D12_LOGIC_OP_COPY_INVERTED = 3, D3D12_LOGIC_OP_NOOP = 4, D3D12_LOGIC_OP_INVERT = 5, D3D12_LOGIC_OP_AND = 6, D3D12_LOGIC_OP_NAND = 7, D3D12_LOGIC_OP_OR = 8, D3D12_LOGIC_OP_NOR = 9, D3D12_LOGIC_OP_XOR = 10, D3D12_LOGIC_OP_EQUIV = 11, D3D12_LOGIC_OP_AND_REVERSE = 12, D3D12_LOGIC_OP_AND_INVERTED = 13, D3D12_LOGIC_OP_OR_REVERSE = 14, D3D12_LOGIC_OP_OR_INVERTED = 15 } D3D12_LOGIC_OP; typedef enum D3D12_COLOR_WRITE_ENABLE { D3D12_COLOR_WRITE_ENABLE_RED = 0x1, D3D12_COLOR_WRITE_ENABLE_GREEN = 0x2, D3D12_COLOR_WRITE_ENABLE_BLUE = 0x4, D3D12_COLOR_WRITE_ENABLE_ALPHA = 0x8, D3D12_COLOR_WRITE_ENABLE_ALL = ((D3D12_COLOR_WRITE_ENABLE_RED | D3D12_COLOR_WRITE_ENABLE_GREEN) | D3D12_COLOR_WRITE_ENABLE_BLUE) | D3D12_COLOR_WRITE_ENABLE_ALPHA } D3D12_COLOR_WRITE_ENABLE; typedef struct D3D12_RENDER_TARGET_BLEND_DESC { WINBOOL BlendEnable; WINBOOL LogicOpEnable; D3D12_BLEND SrcBlend; D3D12_BLEND DestBlend; D3D12_BLEND_OP BlendOp; D3D12_BLEND SrcBlendAlpha; D3D12_BLEND DestBlendAlpha; D3D12_BLEND_OP BlendOpAlpha; D3D12_LOGIC_OP LogicOp; UINT8 RenderTargetWriteMask; } D3D12_RENDER_TARGET_BLEND_DESC; typedef struct D3D12_BLEND_DESC { WINBOOL AlphaToCoverageEnable; WINBOOL IndependentBlendEnable; D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8]; } D3D12_BLEND_DESC; typedef enum D3D12_FILL_MODE { D3D12_FILL_MODE_WIREFRAME = 2, D3D12_FILL_MODE_SOLID = 3 } D3D12_FILL_MODE; typedef enum D3D12_CULL_MODE { D3D12_CULL_MODE_NONE = 1, D3D12_CULL_MODE_FRONT = 2, D3D12_CULL_MODE_BACK = 3 } D3D12_CULL_MODE; typedef enum D3D12_CONSERVATIVE_RASTERIZATION_MODE { D3D12_CONSERVATIVE_RASTERIZATION_MODE_OFF = 0, D3D12_CONSERVATIVE_RASTERIZATION_MODE_ON = 1 } D3D12_CONSERVATIVE_RASTERIZATION_MODE; typedef struct D3D12_RASTERIZER_DESC { D3D12_FILL_MODE FillMode; D3D12_CULL_MODE CullMode; WINBOOL FrontCounterClockwise; INT DepthBias; FLOAT DepthBiasClamp; FLOAT SlopeScaledDepthBias; WINBOOL DepthClipEnable; WINBOOL MultisampleEnable; WINBOOL AntialiasedLineEnable; UINT ForcedSampleCount; D3D12_CONSERVATIVE_RASTERIZATION_MODE ConservativeRaster; } D3D12_RASTERIZER_DESC; typedef struct D3D12_SO_DECLARATION_ENTRY { UINT Stream; const char *SemanticName; UINT SemanticIndex; BYTE StartComponent; BYTE ComponentCount; BYTE OutputSlot; } D3D12_SO_DECLARATION_ENTRY; typedef struct D3D12_STREAM_OUTPUT_DESC { const D3D12_SO_DECLARATION_ENTRY *pSODeclaration; UINT NumEntries; const UINT *pBufferStrides; UINT NumStrides; UINT RasterizedStream; } D3D12_STREAM_OUTPUT_DESC; typedef enum D3D12_INPUT_CLASSIFICATION { D3D12_INPUT_CLASSIFICATION_PER_VERTEX_DATA = 0, D3D12_INPUT_CLASSIFICATION_PER_INSTANCE_DATA = 1 } D3D12_INPUT_CLASSIFICATION; typedef struct D3D12_INPUT_ELEMENT_DESC { const char *SemanticName; UINT SemanticIndex; DXGI_FORMAT Format; UINT InputSlot; UINT AlignedByteOffset; D3D12_INPUT_CLASSIFICATION InputSlotClass; UINT InstanceDataStepRate; } D3D12_INPUT_ELEMENT_DESC; typedef struct D3D12_INPUT_LAYOUT_DESC { const D3D12_INPUT_ELEMENT_DESC *pInputElementDescs; UINT NumElements; } D3D12_INPUT_LAYOUT_DESC; typedef enum D3D12_INDEX_BUFFER_STRIP_CUT_VALUE { D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_DISABLED = 0, D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFF = 1, D3D12_INDEX_BUFFER_STRIP_CUT_VALUE_0xFFFFFFFF = 2 } D3D12_INDEX_BUFFER_STRIP_CUT_VALUE; typedef D3D_PRIMITIVE_TOPOLOGY D3D12_PRIMITIVE_TOPOLOGY; typedef enum D3D12_PRIMITIVE_TOPOLOGY_TYPE { D3D12_PRIMITIVE_TOPOLOGY_TYPE_UNDEFINED = 0, D3D12_PRIMITIVE_TOPOLOGY_TYPE_POINT = 1, D3D12_PRIMITIVE_TOPOLOGY_TYPE_LINE = 2, D3D12_PRIMITIVE_TOPOLOGY_TYPE_TRIANGLE = 3, D3D12_PRIMITIVE_TOPOLOGY_TYPE_PATCH = 4 } D3D12_PRIMITIVE_TOPOLOGY_TYPE; typedef struct D3D12_CACHED_PIPELINE_STATE { const void *pCachedBlob; SIZE_T CachedBlobSizeInBytes; } D3D12_CACHED_PIPELINE_STATE; typedef enum D3D12_PIPELINE_STATE_FLAGS { D3D12_PIPELINE_STATE_FLAG_NONE = 0x0, D3D12_PIPELINE_STATE_FLAG_DEBUG = 0x1 } D3D12_PIPELINE_STATE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_PIPELINE_STATE_FLAGS); typedef struct D3D12_GRAPHICS_PIPELINE_STATE_DESC { ID3D12RootSignature *pRootSignature; D3D12_SHADER_BYTECODE VS; D3D12_SHADER_BYTECODE PS; D3D12_SHADER_BYTECODE DS; D3D12_SHADER_BYTECODE HS; D3D12_SHADER_BYTECODE GS; D3D12_STREAM_OUTPUT_DESC StreamOutput; D3D12_BLEND_DESC BlendState; UINT SampleMask; D3D12_RASTERIZER_DESC RasterizerState; D3D12_DEPTH_STENCIL_DESC DepthStencilState; D3D12_INPUT_LAYOUT_DESC InputLayout; D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue; D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType; UINT NumRenderTargets; DXGI_FORMAT RTVFormats[8]; DXGI_FORMAT DSVFormat; DXGI_SAMPLE_DESC SampleDesc; UINT NodeMask; D3D12_CACHED_PIPELINE_STATE CachedPSO; D3D12_PIPELINE_STATE_FLAGS Flags; } D3D12_GRAPHICS_PIPELINE_STATE_DESC; typedef struct D3D12_COMPUTE_PIPELINE_STATE_DESC { ID3D12RootSignature *pRootSignature; D3D12_SHADER_BYTECODE CS; UINT NodeMask; D3D12_CACHED_PIPELINE_STATE CachedPSO; D3D12_PIPELINE_STATE_FLAGS Flags; } D3D12_COMPUTE_PIPELINE_STATE_DESC; typedef enum D3D12_COMMAND_LIST_TYPE { D3D12_COMMAND_LIST_TYPE_DIRECT = 0, D3D12_COMMAND_LIST_TYPE_BUNDLE = 1, D3D12_COMMAND_LIST_TYPE_COMPUTE = 2, D3D12_COMMAND_LIST_TYPE_COPY = 3 } D3D12_COMMAND_LIST_TYPE; typedef enum D3D12_COMMAND_QUEUE_PRIORITY { D3D12_COMMAND_QUEUE_PRIORITY_NORMAL = 0, D3D12_COMMAND_QUEUE_PRIORITY_HIGH = 100, D3D12_COMMAND_QUEUE_PRIORITY_GLOBAL_REALTIME = 10000 } D3D12_COMMAND_QUEUE_PRIORITY; typedef enum D3D12_COMMAND_QUEUE_FLAGS { D3D12_COMMAND_QUEUE_FLAG_NONE = 0x0, D3D12_COMMAND_QUEUE_FLAG_DISABLE_GPU_TIMEOUT = 0x1 } D3D12_COMMAND_QUEUE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_COMMAND_QUEUE_FLAGS); typedef struct D3D12_COMMAND_QUEUE_DESC { D3D12_COMMAND_LIST_TYPE Type; INT Priority; D3D12_COMMAND_QUEUE_FLAGS Flags; UINT NodeMask; } D3D12_COMMAND_QUEUE_DESC; typedef struct D3D12_FEATURE_DATA_ARCHITECTURE { UINT NodeIndex; WINBOOL TileBasedRenderer; WINBOOL UMA; WINBOOL CacheCoherentUMA; } D3D12_FEATURE_DATA_ARCHITECTURE; typedef struct D3D12_FEATURE_DATA_FORMAT_INFO { DXGI_FORMAT Format; UINT8 PlaneCount; } D3D12_FEATURE_DATA_FORMAT_INFO; typedef struct D3D12_FEATURE_DATA_FEATURE_LEVELS { UINT NumFeatureLevels; const D3D_FEATURE_LEVEL *pFeatureLevelsRequested; D3D_FEATURE_LEVEL MaxSupportedFeatureLevel; } D3D12_FEATURE_DATA_FEATURE_LEVELS; typedef struct D3D12_FEATURE_DATA_ROOT_SIGNATURE { D3D_ROOT_SIGNATURE_VERSION HighestVersion; } D3D12_FEATURE_DATA_ROOT_SIGNATURE; typedef struct D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT { UINT MaxGPUVirtualAddressBitsPerResource; UINT MaxGPUVirtualAddressBitsPerProcess; } D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT; typedef enum D3D_SHADER_MODEL { D3D_SHADER_MODEL_5_1 = 0x51, D3D_SHADER_MODEL_6_0 = 0x60 } D3D_SHADER_MODEL; typedef struct D3D12_FEATURE_DATA_SHADER_MODEL { D3D_SHADER_MODEL HighestShaderModel; } D3D12_FEATURE_DATA_SHADER_MODEL; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS1 { WINBOOL WaveOps; UINT WaveLaneCountMin; UINT WaveLaneCountMax; UINT TotalLaneCount; WINBOOL ExpandedComputeResourceStates; WINBOOL Int64ShaderOps; } D3D12_FEATURE_DATA_D3D12_OPTIONS1; typedef struct D3D12_FEATURE_DATA_ARCHITECTURE1 { UINT NodeIndex; WINBOOL TileBasedRenderer; WINBOOL UMA; WINBOOL CacheCoherentUMA; WINBOOL IsolatedMMU; } D3D12_FEATURE_DATA_ARCHITECTURE1; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS2 { WINBOOL DepthBoundsTestSupported; D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER ProgrammableSamplePositionsTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS2; typedef struct D3D12_FEATURE_DATA_SHADER_CACHE { D3D12_SHADER_CACHE_SUPPORT_FLAGS SupportFlags; } D3D12_FEATURE_DATA_SHADER_CACHE; typedef struct D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY { D3D12_COMMAND_LIST_TYPE CommandListType; UINT Priority; WINBOOL PriorityForTypeIsSupported; } D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS3 { WINBOOL CopyQueueTimestampQueriesSupported; WINBOOL CastingFullyTypedFormatSupported; D3D12_COMMAND_LIST_SUPPORT_FLAGS WriteBufferImmediateSupportFlags; D3D12_VIEW_INSTANCING_TIER ViewInstancingTier; WINBOOL BarycentricsSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS3; typedef struct D3D12_FEATURE_DATA_EXISTING_HEAPS { WINBOOL Supported; } D3D12_FEATURE_DATA_EXISTING_HEAPS; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS4 { WINBOOL MSAA64KBAlignedTextureSupported; D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER SharedResourceCompatibilityTier; WINBOOL Native16BitShaderOpsSupported; } D3D12_FEATURE_DATA_D3D12_OPTIONS4; typedef struct D3D12_FEATURE_DATA_SERIALIZATION { UINT NodeIndex; D3D12_HEAP_SERIALIZATION_TIER HeapSerializationTier; } D3D12_FEATURE_DATA_SERIALIZATION; typedef struct D3D12_FEATURE_DATA_CROSS_NODE { D3D12_CROSS_NODE_SHARING_TIER SharingTier; WINBOOL AtomicShaderInstructions; } D3D12_FEATURE_DATA_CROSS_NODE; typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS5 { WINBOOL SRVOnlyTiledResourceTier3; D3D12_RENDER_PASS_TIER RenderPassesTier; D3D12_RAYTRACING_TIER RaytracingTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS5; typedef enum D3D12_FEATURE { D3D12_FEATURE_D3D12_OPTIONS = 0, D3D12_FEATURE_ARCHITECTURE = 1, D3D12_FEATURE_FEATURE_LEVELS = 2, D3D12_FEATURE_FORMAT_SUPPORT = 3, D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS = 4, D3D12_FEATURE_FORMAT_INFO = 5, D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT = 6, D3D12_FEATURE_SHADER_MODEL = 7, D3D12_FEATURE_D3D12_OPTIONS1 = 8, D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_SUPPORT = 10, D3D12_FEATURE_ROOT_SIGNATURE = 12, D3D12_FEATURE_ARCHITECTURE1 = 16, D3D12_FEATURE_D3D12_OPTIONS2 = 18, D3D12_FEATURE_SHADER_CACHE = 19, D3D12_FEATURE_COMMAND_QUEUE_PRIORITY = 20, D3D12_FEATURE_D3D12_OPTIONS3 = 21, D3D12_FEATURE_EXISTING_HEAPS = 22, D3D12_FEATURE_D3D12_OPTIONS4 = 23, D3D12_FEATURE_SERIALIZATION = 24, D3D12_FEATURE_CROSS_NODE = 25, D3D12_FEATURE_D3D12_OPTIONS5 = 27, D3D12_FEATURE_D3D12_OPTIONS6 = 30, D3D12_FEATURE_QUERY_META_COMMAND = 31, D3D12_FEATURE_D3D12_OPTIONS7 = 32, D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPE_COUNT = 33, D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPES = 34 } D3D12_FEATURE; typedef struct D3D12_MEMCPY_DEST { void *pData; SIZE_T RowPitch; SIZE_T SlicePitch; } D3D12_MEMCPY_DEST; typedef struct D3D12_SUBRESOURCE_DATA { const void *pData; LONG_PTR RowPitch; LONG_PTR SlicePitch; } D3D12_SUBRESOURCE_DATA; typedef enum D3D12_MULTIPLE_FENCE_WAIT_FLAGS { D3D12_MULTIPLE_FENCE_WAIT_FLAG_NONE = 0x0, D3D12_MULTIPLE_FENCE_WAIT_FLAG_ANY = 0x1, D3D12_MULTIPLE_FENCE_WAIT_FLAG_ALL = 0x0 } D3D12_MULTIPLE_FENCE_WAIT_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_MULTIPLE_FENCE_WAIT_FLAGS); typedef enum D3D12_RESIDENCY_PRIORITY { D3D12_RESIDENCY_PRIORITY_MINIMUM = 0x28000000, D3D12_RESIDENCY_PRIORITY_LOW = 0x50000000, D3D12_RESIDENCY_PRIORITY_NORMAL = 0x78000000, D3D12_RESIDENCY_PRIORITY_HIGH = 0xa0010000, D3D12_RESIDENCY_PRIORITY_MAXIMUM = 0xc8000000 } D3D12_RESIDENCY_PRIORITY; typedef struct D3D12_WRITEBUFFERIMMEDIATE_PARAMETER { D3D12_GPU_VIRTUAL_ADDRESS Dest; UINT32 Value; } D3D12_WRITEBUFFERIMMEDIATE_PARAMETER; /***************************************************************************** * ID3D12Object interface */ #ifndef __ID3D12Object_INTERFACE_DEFINED__ #define __ID3D12Object_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Object, 0xc4fec28f, 0x7966, 0x4e95, 0x9f,0x94, 0xf4,0x31,0xcb,0x56,0xc3,0xb8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c4fec28f-7966-4e95-9f94-f431cb56c3b8") ID3D12Object : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *data_size, void *data) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT data_size, const void *data) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *data) = 0; virtual HRESULT STDMETHODCALLTYPE SetName( const WCHAR *name) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Object, 0xc4fec28f, 0x7966, 0x4e95, 0x9f,0x94, 0xf4,0x31,0xcb,0x56,0xc3,0xb8) #endif #else typedef struct ID3D12ObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Object *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Object *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Object *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Object *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Object *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Object *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Object *This, const WCHAR *name); END_INTERFACE } ID3D12ObjectVtbl; interface ID3D12Object { CONST_VTBL ID3D12ObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Object_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Object_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Object_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Object_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Object_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Object_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Object_SetName(This,name) (This)->lpVtbl->SetName(This,name) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Object_QueryInterface(ID3D12Object* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Object_AddRef(ID3D12Object* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Object_Release(ID3D12Object* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Object_GetPrivateData(ID3D12Object* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Object_SetPrivateData(ID3D12Object* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Object_SetPrivateDataInterface(ID3D12Object* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Object_SetName(ID3D12Object* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } #endif #endif #endif #endif /* __ID3D12Object_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12DeviceChild interface */ #ifndef __ID3D12DeviceChild_INTERFACE_DEFINED__ #define __ID3D12DeviceChild_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12DeviceChild, 0x905db94b, 0xa00c, 0x4140, 0x9d,0xf5, 0x2b,0x64,0xca,0x9e,0xa3,0x57); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("905db94b-a00c-4140-9df5-2b64ca9ea357") ID3D12DeviceChild : public ID3D12Object { virtual HRESULT STDMETHODCALLTYPE GetDevice( REFIID riid, void **device) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12DeviceChild, 0x905db94b, 0xa00c, 0x4140, 0x9d,0xf5, 0x2b,0x64,0xca,0x9e,0xa3,0x57) #endif #else typedef struct ID3D12DeviceChildVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12DeviceChild *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12DeviceChild *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12DeviceChild *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12DeviceChild *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12DeviceChild *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12DeviceChild *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12DeviceChild *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12DeviceChild *This, REFIID riid, void **device); END_INTERFACE } ID3D12DeviceChildVtbl; interface ID3D12DeviceChild { CONST_VTBL ID3D12DeviceChildVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12DeviceChild_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12DeviceChild_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12DeviceChild_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12DeviceChild_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12DeviceChild_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12DeviceChild_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12DeviceChild_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12DeviceChild_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12DeviceChild_QueryInterface(ID3D12DeviceChild* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12DeviceChild_AddRef(ID3D12DeviceChild* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12DeviceChild_Release(ID3D12DeviceChild* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12DeviceChild_GetPrivateData(ID3D12DeviceChild* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12DeviceChild_SetPrivateData(ID3D12DeviceChild* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12DeviceChild_SetPrivateDataInterface(ID3D12DeviceChild* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12DeviceChild_SetName(ID3D12DeviceChild* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12DeviceChild_GetDevice(ID3D12DeviceChild* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __ID3D12DeviceChild_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Pageable interface */ #ifndef __ID3D12Pageable_INTERFACE_DEFINED__ #define __ID3D12Pageable_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Pageable, 0x63ee58fb, 0x1268, 0x4835, 0x86,0xda, 0xf0,0x08,0xce,0x62,0xf0,0xd6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("63ee58fb-1268-4835-86da-f008ce62f0d6") ID3D12Pageable : public ID3D12DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Pageable, 0x63ee58fb, 0x1268, 0x4835, 0x86,0xda, 0xf0,0x08,0xce,0x62,0xf0,0xd6) #endif #else typedef struct ID3D12PageableVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Pageable *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Pageable *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Pageable *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Pageable *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Pageable *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Pageable *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Pageable *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12Pageable *This, REFIID riid, void **device); END_INTERFACE } ID3D12PageableVtbl; interface ID3D12Pageable { CONST_VTBL ID3D12PageableVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Pageable_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Pageable_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Pageable_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Pageable_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Pageable_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Pageable_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Pageable_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12Pageable_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Pageable_QueryInterface(ID3D12Pageable* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Pageable_AddRef(ID3D12Pageable* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Pageable_Release(ID3D12Pageable* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Pageable_GetPrivateData(ID3D12Pageable* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Pageable_SetPrivateData(ID3D12Pageable* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Pageable_SetPrivateDataInterface(ID3D12Pageable* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Pageable_SetName(ID3D12Pageable* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12Pageable_GetDevice(ID3D12Pageable* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __ID3D12Pageable_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Heap interface */ #ifndef __ID3D12Heap_INTERFACE_DEFINED__ #define __ID3D12Heap_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Heap, 0x6b3b2502, 0x6e51, 0x45b3, 0x90,0xee, 0x98,0x84,0x26,0x5e,0x8d,0xf3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6b3b2502-6e51-45b3-90ee-9884265e8df3") ID3D12Heap : public ID3D12Pageable { #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_HEAP_DESC* STDMETHODCALLTYPE GetDesc( D3D12_HEAP_DESC *__ret) = 0; D3D12_HEAP_DESC STDMETHODCALLTYPE GetDesc( ) { D3D12_HEAP_DESC __ret; return *GetDesc(&__ret); } #else virtual D3D12_HEAP_DESC STDMETHODCALLTYPE GetDesc( ) = 0; #endif }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Heap, 0x6b3b2502, 0x6e51, 0x45b3, 0x90,0xee, 0x98,0x84,0x26,0x5e,0x8d,0xf3) #endif #else typedef struct ID3D12HeapVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Heap *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Heap *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Heap *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Heap *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Heap *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Heap *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Heap *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12Heap *This, REFIID riid, void **device); /*** ID3D12Heap methods ***/ D3D12_HEAP_DESC * (STDMETHODCALLTYPE *GetDesc)( ID3D12Heap *This, D3D12_HEAP_DESC *__ret); END_INTERFACE } ID3D12HeapVtbl; interface ID3D12Heap { CONST_VTBL ID3D12HeapVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Heap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Heap_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Heap_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Heap_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Heap_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Heap_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Heap_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12Heap_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12Heap methods ***/ #define ID3D12Heap_GetDesc(This) ID3D12Heap_GetDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Heap_QueryInterface(ID3D12Heap* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Heap_AddRef(ID3D12Heap* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Heap_Release(ID3D12Heap* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Heap_GetPrivateData(ID3D12Heap* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Heap_SetPrivateData(ID3D12Heap* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Heap_SetPrivateDataInterface(ID3D12Heap* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Heap_SetName(ID3D12Heap* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12Heap_GetDevice(ID3D12Heap* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12Heap methods ***/ static FORCEINLINE D3D12_HEAP_DESC ID3D12Heap_GetDesc(ID3D12Heap* This) { D3D12_HEAP_DESC __ret; return *This->lpVtbl->GetDesc(This,&__ret); } #endif #endif #endif #endif /* __ID3D12Heap_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Resource interface */ #ifndef __ID3D12Resource_INTERFACE_DEFINED__ #define __ID3D12Resource_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Resource, 0x696442be, 0xa72e, 0x4059, 0xbc,0x79, 0x5b,0x5c,0x98,0x04,0x0f,0xad); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("696442be-a72e-4059-bc79-5b5c98040fad") ID3D12Resource : public ID3D12Pageable { virtual HRESULT STDMETHODCALLTYPE Map( UINT sub_resource, const D3D12_RANGE *read_range, void **data) = 0; virtual void STDMETHODCALLTYPE Unmap( UINT sub_resource, const D3D12_RANGE *written_range) = 0; #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_RESOURCE_DESC* STDMETHODCALLTYPE GetDesc( D3D12_RESOURCE_DESC *__ret) = 0; D3D12_RESOURCE_DESC STDMETHODCALLTYPE GetDesc( ) { D3D12_RESOURCE_DESC __ret; return *GetDesc(&__ret); } #else virtual D3D12_RESOURCE_DESC STDMETHODCALLTYPE GetDesc( ) = 0; #endif virtual D3D12_GPU_VIRTUAL_ADDRESS STDMETHODCALLTYPE GetGPUVirtualAddress( ) = 0; virtual HRESULT STDMETHODCALLTYPE WriteToSubresource( UINT dst_sub_resource, const D3D12_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_slice_pitch) = 0; virtual HRESULT STDMETHODCALLTYPE ReadFromSubresource( void *dst_data, UINT dst_row_pitch, UINT dst_slice_pitch, UINT src_sub_resource, const D3D12_BOX *src_box) = 0; virtual HRESULT STDMETHODCALLTYPE GetHeapProperties( D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS *flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Resource, 0x696442be, 0xa72e, 0x4059, 0xbc,0x79, 0x5b,0x5c,0x98,0x04,0x0f,0xad) #endif #else typedef struct ID3D12ResourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Resource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Resource *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Resource *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Resource *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Resource *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Resource *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Resource *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12Resource *This, REFIID riid, void **device); /*** ID3D12Resource methods ***/ HRESULT (STDMETHODCALLTYPE *Map)( ID3D12Resource *This, UINT sub_resource, const D3D12_RANGE *read_range, void **data); void (STDMETHODCALLTYPE *Unmap)( ID3D12Resource *This, UINT sub_resource, const D3D12_RANGE *written_range); D3D12_RESOURCE_DESC * (STDMETHODCALLTYPE *GetDesc)( ID3D12Resource *This, D3D12_RESOURCE_DESC *__ret); D3D12_GPU_VIRTUAL_ADDRESS (STDMETHODCALLTYPE *GetGPUVirtualAddress)( ID3D12Resource *This); HRESULT (STDMETHODCALLTYPE *WriteToSubresource)( ID3D12Resource *This, UINT dst_sub_resource, const D3D12_BOX *dst_box, const void *src_data, UINT src_row_pitch, UINT src_slice_pitch); HRESULT (STDMETHODCALLTYPE *ReadFromSubresource)( ID3D12Resource *This, void *dst_data, UINT dst_row_pitch, UINT dst_slice_pitch, UINT src_sub_resource, const D3D12_BOX *src_box); HRESULT (STDMETHODCALLTYPE *GetHeapProperties)( ID3D12Resource *This, D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS *flags); END_INTERFACE } ID3D12ResourceVtbl; interface ID3D12Resource { CONST_VTBL ID3D12ResourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Resource_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Resource_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Resource_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Resource_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Resource_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Resource_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12Resource_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12Resource methods ***/ #define ID3D12Resource_Map(This,sub_resource,read_range,data) (This)->lpVtbl->Map(This,sub_resource,read_range,data) #define ID3D12Resource_Unmap(This,sub_resource,written_range) (This)->lpVtbl->Unmap(This,sub_resource,written_range) #define ID3D12Resource_GetDesc(This) ID3D12Resource_GetDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12Resource_GetGPUVirtualAddress(This) (This)->lpVtbl->GetGPUVirtualAddress(This) #define ID3D12Resource_WriteToSubresource(This,dst_sub_resource,dst_box,src_data,src_row_pitch,src_slice_pitch) (This)->lpVtbl->WriteToSubresource(This,dst_sub_resource,dst_box,src_data,src_row_pitch,src_slice_pitch) #define ID3D12Resource_ReadFromSubresource(This,dst_data,dst_row_pitch,dst_slice_pitch,src_sub_resource,src_box) (This)->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_slice_pitch,src_sub_resource,src_box) #define ID3D12Resource_GetHeapProperties(This,heap_properties,flags) (This)->lpVtbl->GetHeapProperties(This,heap_properties,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Resource_QueryInterface(ID3D12Resource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Resource_AddRef(ID3D12Resource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Resource_Release(ID3D12Resource* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Resource_GetPrivateData(ID3D12Resource* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Resource_SetPrivateData(ID3D12Resource* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Resource_SetPrivateDataInterface(ID3D12Resource* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Resource_SetName(ID3D12Resource* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12Resource_GetDevice(ID3D12Resource* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12Resource methods ***/ static FORCEINLINE HRESULT ID3D12Resource_Map(ID3D12Resource* This,UINT sub_resource,const D3D12_RANGE *read_range,void **data) { return This->lpVtbl->Map(This,sub_resource,read_range,data); } static FORCEINLINE void ID3D12Resource_Unmap(ID3D12Resource* This,UINT sub_resource,const D3D12_RANGE *written_range) { This->lpVtbl->Unmap(This,sub_resource,written_range); } static FORCEINLINE D3D12_RESOURCE_DESC ID3D12Resource_GetDesc(ID3D12Resource* This) { D3D12_RESOURCE_DESC __ret; return *This->lpVtbl->GetDesc(This,&__ret); } static FORCEINLINE D3D12_GPU_VIRTUAL_ADDRESS ID3D12Resource_GetGPUVirtualAddress(ID3D12Resource* This) { return This->lpVtbl->GetGPUVirtualAddress(This); } static FORCEINLINE HRESULT ID3D12Resource_WriteToSubresource(ID3D12Resource* This,UINT dst_sub_resource,const D3D12_BOX *dst_box,const void *src_data,UINT src_row_pitch,UINT src_slice_pitch) { return This->lpVtbl->WriteToSubresource(This,dst_sub_resource,dst_box,src_data,src_row_pitch,src_slice_pitch); } static FORCEINLINE HRESULT ID3D12Resource_ReadFromSubresource(ID3D12Resource* This,void *dst_data,UINT dst_row_pitch,UINT dst_slice_pitch,UINT src_sub_resource,const D3D12_BOX *src_box) { return This->lpVtbl->ReadFromSubresource(This,dst_data,dst_row_pitch,dst_slice_pitch,src_sub_resource,src_box); } static FORCEINLINE HRESULT ID3D12Resource_GetHeapProperties(ID3D12Resource* This,D3D12_HEAP_PROPERTIES *heap_properties,D3D12_HEAP_FLAGS *flags) { return This->lpVtbl->GetHeapProperties(This,heap_properties,flags); } #endif #endif #endif #endif /* __ID3D12Resource_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12CommandList interface */ #ifndef __ID3D12CommandList_INTERFACE_DEFINED__ #define __ID3D12CommandList_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12CommandList, 0x7116d91c, 0xe7e4, 0x47ce, 0xb8,0xc6, 0xec,0x81,0x68,0xf4,0x37,0xe5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7116d91c-e7e4-47ce-b8c6-ec8168f437e5") ID3D12CommandList : public ID3D12DeviceChild { virtual D3D12_COMMAND_LIST_TYPE STDMETHODCALLTYPE GetType( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12CommandList, 0x7116d91c, 0xe7e4, 0x47ce, 0xb8,0xc6, 0xec,0x81,0x68,0xf4,0x37,0xe5) #endif #else typedef struct ID3D12CommandListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12CommandList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12CommandList *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12CommandList *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12CommandList *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12CommandList *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12CommandList *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12CommandList *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12CommandList *This, REFIID riid, void **device); /*** ID3D12CommandList methods ***/ D3D12_COMMAND_LIST_TYPE (STDMETHODCALLTYPE *GetType)( ID3D12CommandList *This); END_INTERFACE } ID3D12CommandListVtbl; interface ID3D12CommandList { CONST_VTBL ID3D12CommandListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12CommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12CommandList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12CommandList_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12CommandList_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12CommandList_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12CommandList_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12CommandList_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12CommandList_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandList methods ***/ #define ID3D12CommandList_GetType(This) (This)->lpVtbl->GetType(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12CommandList_QueryInterface(ID3D12CommandList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12CommandList_AddRef(ID3D12CommandList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12CommandList_Release(ID3D12CommandList* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12CommandList_GetPrivateData(ID3D12CommandList* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandList_SetPrivateData(ID3D12CommandList* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandList_SetPrivateDataInterface(ID3D12CommandList* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12CommandList_SetName(ID3D12CommandList* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12CommandList_GetDevice(ID3D12CommandList* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandList methods ***/ static FORCEINLINE D3D12_COMMAND_LIST_TYPE ID3D12CommandList_GetType(ID3D12CommandList* This) { return This->lpVtbl->GetType(This); } #endif #endif #endif #endif /* __ID3D12CommandList_INTERFACE_DEFINED__ */ typedef enum D3D12_TILE_COPY_FLAGS { D3D12_TILE_COPY_FLAG_NONE = 0x0, D3D12_TILE_COPY_FLAG_NO_HAZARD = 0x1, D3D12_TILE_COPY_FLAG_LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 0x2, D3D12_TILE_COPY_FLAG_SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 0x4 } D3D12_TILE_COPY_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_TILE_COPY_FLAGS); typedef struct D3D12_INDEX_BUFFER_VIEW { D3D12_GPU_VIRTUAL_ADDRESS BufferLocation; UINT SizeInBytes; DXGI_FORMAT Format; } D3D12_INDEX_BUFFER_VIEW; typedef struct D3D12_VERTEX_BUFFER_VIEW { D3D12_GPU_VIRTUAL_ADDRESS BufferLocation; UINT SizeInBytes; UINT StrideInBytes; } D3D12_VERTEX_BUFFER_VIEW; typedef struct D3D12_STREAM_OUTPUT_BUFFER_VIEW { D3D12_GPU_VIRTUAL_ADDRESS BufferLocation; UINT64 SizeInBytes; D3D12_GPU_VIRTUAL_ADDRESS BufferFilledSizeLocation; } D3D12_STREAM_OUTPUT_BUFFER_VIEW; typedef enum D3D12_CLEAR_FLAGS { D3D12_CLEAR_FLAG_DEPTH = 0x1, D3D12_CLEAR_FLAG_STENCIL = 0x2 } D3D12_CLEAR_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_CLEAR_FLAGS); typedef struct D3D12_DISCARD_REGION { UINT NumRects; const D3D12_RECT *pRects; UINT FirstSubresource; UINT NumSubresources; } D3D12_DISCARD_REGION; typedef enum D3D12_QUERY_TYPE { D3D12_QUERY_TYPE_OCCLUSION = 0, D3D12_QUERY_TYPE_BINARY_OCCLUSION = 1, D3D12_QUERY_TYPE_TIMESTAMP = 2, D3D12_QUERY_TYPE_PIPELINE_STATISTICS = 3, D3D12_QUERY_TYPE_SO_STATISTICS_STREAM0 = 4, D3D12_QUERY_TYPE_SO_STATISTICS_STREAM1 = 5, D3D12_QUERY_TYPE_SO_STATISTICS_STREAM2 = 6, D3D12_QUERY_TYPE_SO_STATISTICS_STREAM3 = 7 } D3D12_QUERY_TYPE; typedef struct D3D12_QUERY_DATA_PIPELINE_STATISTICS { UINT64 IAVertices; UINT64 IAPrimitives; UINT64 VSInvocations; UINT64 GSInvocations; UINT64 GSPrimitives; UINT64 CInvocations; UINT64 CPrimitives; UINT64 PSInvocations; UINT64 HSInvocations; UINT64 DSInvocations; UINT64 CSInvocations; } D3D12_QUERY_DATA_PIPELINE_STATISTICS; typedef struct D3D12_QUERY_DATA_SO_STATISTICS { UINT64 NumPrimitivesWritten; UINT64 PrimitivesStorageNeeded; } D3D12_QUERY_DATA_SO_STATISTICS; typedef enum D3D12_PREDICATION_OP { D3D12_PREDICATION_OP_EQUAL_ZERO = 0, D3D12_PREDICATION_OP_NOT_EQUAL_ZERO = 1 } D3D12_PREDICATION_OP; /***************************************************************************** * ID3D12DescriptorHeap interface */ #ifndef __ID3D12DescriptorHeap_INTERFACE_DEFINED__ #define __ID3D12DescriptorHeap_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12DescriptorHeap, 0x8efb471d, 0x616c, 0x4f49, 0x90,0xf7, 0x12,0x7b,0xb7,0x63,0xfa,0x51); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8efb471d-616c-4f49-90f7-127bb763fa51") ID3D12DescriptorHeap : public ID3D12Pageable { #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_DESCRIPTOR_HEAP_DESC* STDMETHODCALLTYPE GetDesc( D3D12_DESCRIPTOR_HEAP_DESC *__ret) = 0; D3D12_DESCRIPTOR_HEAP_DESC STDMETHODCALLTYPE GetDesc( ) { D3D12_DESCRIPTOR_HEAP_DESC __ret; return *GetDesc(&__ret); } #else virtual D3D12_DESCRIPTOR_HEAP_DESC STDMETHODCALLTYPE GetDesc( ) = 0; #endif #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_CPU_DESCRIPTOR_HANDLE* STDMETHODCALLTYPE GetCPUDescriptorHandleForHeapStart( D3D12_CPU_DESCRIPTOR_HANDLE *__ret) = 0; D3D12_CPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetCPUDescriptorHandleForHeapStart( ) { D3D12_CPU_DESCRIPTOR_HANDLE __ret; return *GetCPUDescriptorHandleForHeapStart(&__ret); } #else virtual D3D12_CPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetCPUDescriptorHandleForHeapStart( ) = 0; #endif #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_GPU_DESCRIPTOR_HANDLE* STDMETHODCALLTYPE GetGPUDescriptorHandleForHeapStart( D3D12_GPU_DESCRIPTOR_HANDLE *__ret) = 0; D3D12_GPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetGPUDescriptorHandleForHeapStart( ) { D3D12_GPU_DESCRIPTOR_HANDLE __ret; return *GetGPUDescriptorHandleForHeapStart(&__ret); } #else virtual D3D12_GPU_DESCRIPTOR_HANDLE STDMETHODCALLTYPE GetGPUDescriptorHandleForHeapStart( ) = 0; #endif }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12DescriptorHeap, 0x8efb471d, 0x616c, 0x4f49, 0x90,0xf7, 0x12,0x7b,0xb7,0x63,0xfa,0x51) #endif #else typedef struct ID3D12DescriptorHeapVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12DescriptorHeap *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12DescriptorHeap *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12DescriptorHeap *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12DescriptorHeap *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12DescriptorHeap *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12DescriptorHeap *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12DescriptorHeap *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12DescriptorHeap *This, REFIID riid, void **device); /*** ID3D12DescriptorHeap methods ***/ D3D12_DESCRIPTOR_HEAP_DESC * (STDMETHODCALLTYPE *GetDesc)( ID3D12DescriptorHeap *This, D3D12_DESCRIPTOR_HEAP_DESC *__ret); D3D12_CPU_DESCRIPTOR_HANDLE * (STDMETHODCALLTYPE *GetCPUDescriptorHandleForHeapStart)( ID3D12DescriptorHeap *This, D3D12_CPU_DESCRIPTOR_HANDLE *__ret); D3D12_GPU_DESCRIPTOR_HANDLE * (STDMETHODCALLTYPE *GetGPUDescriptorHandleForHeapStart)( ID3D12DescriptorHeap *This, D3D12_GPU_DESCRIPTOR_HANDLE *__ret); END_INTERFACE } ID3D12DescriptorHeapVtbl; interface ID3D12DescriptorHeap { CONST_VTBL ID3D12DescriptorHeapVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12DescriptorHeap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12DescriptorHeap_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12DescriptorHeap_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12DescriptorHeap_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12DescriptorHeap_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12DescriptorHeap_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12DescriptorHeap_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12DescriptorHeap_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12DescriptorHeap methods ***/ #define ID3D12DescriptorHeap_GetDesc(This) ID3D12DescriptorHeap_GetDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(This) ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(This) ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12DescriptorHeap_QueryInterface(ID3D12DescriptorHeap* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12DescriptorHeap_AddRef(ID3D12DescriptorHeap* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12DescriptorHeap_Release(ID3D12DescriptorHeap* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12DescriptorHeap_GetPrivateData(ID3D12DescriptorHeap* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12DescriptorHeap_SetPrivateData(ID3D12DescriptorHeap* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12DescriptorHeap_SetPrivateDataInterface(ID3D12DescriptorHeap* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12DescriptorHeap_SetName(ID3D12DescriptorHeap* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12DescriptorHeap_GetDevice(ID3D12DescriptorHeap* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12DescriptorHeap methods ***/ static FORCEINLINE D3D12_DESCRIPTOR_HEAP_DESC ID3D12DescriptorHeap_GetDesc(ID3D12DescriptorHeap* This) { D3D12_DESCRIPTOR_HEAP_DESC __ret; return *This->lpVtbl->GetDesc(This,&__ret); } static FORCEINLINE D3D12_CPU_DESCRIPTOR_HANDLE ID3D12DescriptorHeap_GetCPUDescriptorHandleForHeapStart(ID3D12DescriptorHeap* This) { D3D12_CPU_DESCRIPTOR_HANDLE __ret; return *This->lpVtbl->GetCPUDescriptorHandleForHeapStart(This,&__ret); } static FORCEINLINE D3D12_GPU_DESCRIPTOR_HANDLE ID3D12DescriptorHeap_GetGPUDescriptorHandleForHeapStart(ID3D12DescriptorHeap* This) { D3D12_GPU_DESCRIPTOR_HANDLE __ret; return *This->lpVtbl->GetGPUDescriptorHandleForHeapStart(This,&__ret); } #endif #endif #endif #endif /* __ID3D12DescriptorHeap_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12QueryHeap interface */ #ifndef __ID3D12QueryHeap_INTERFACE_DEFINED__ #define __ID3D12QueryHeap_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12QueryHeap, 0x0d9658ae, 0xed45, 0x469e, 0xa6,0x1d, 0x97,0x0e,0xc5,0x83,0xca,0xb4); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0d9658ae-ed45-469e-a61d-970ec583cab4") ID3D12QueryHeap : public ID3D12Pageable { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12QueryHeap, 0x0d9658ae, 0xed45, 0x469e, 0xa6,0x1d, 0x97,0x0e,0xc5,0x83,0xca,0xb4) #endif #else typedef struct ID3D12QueryHeapVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12QueryHeap *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12QueryHeap *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12QueryHeap *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12QueryHeap *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12QueryHeap *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12QueryHeap *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12QueryHeap *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12QueryHeap *This, REFIID riid, void **device); END_INTERFACE } ID3D12QueryHeapVtbl; interface ID3D12QueryHeap { CONST_VTBL ID3D12QueryHeapVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12QueryHeap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12QueryHeap_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12QueryHeap_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12QueryHeap_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12QueryHeap_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12QueryHeap_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12QueryHeap_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12QueryHeap_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12QueryHeap_QueryInterface(ID3D12QueryHeap* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12QueryHeap_AddRef(ID3D12QueryHeap* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12QueryHeap_Release(ID3D12QueryHeap* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12QueryHeap_GetPrivateData(ID3D12QueryHeap* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12QueryHeap_SetPrivateData(ID3D12QueryHeap* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12QueryHeap_SetPrivateDataInterface(ID3D12QueryHeap* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12QueryHeap_SetName(ID3D12QueryHeap* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12QueryHeap_GetDevice(ID3D12QueryHeap* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __ID3D12QueryHeap_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12CommandSignature interface */ #ifndef __ID3D12CommandSignature_INTERFACE_DEFINED__ #define __ID3D12CommandSignature_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12CommandSignature, 0xc36a797c, 0xec80, 0x4f0a, 0x89,0x85, 0xa7,0xb2,0x47,0x50,0x82,0xd1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c36a797c-ec80-4f0a-8985-a7b2475082d1") ID3D12CommandSignature : public ID3D12Pageable { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12CommandSignature, 0xc36a797c, 0xec80, 0x4f0a, 0x89,0x85, 0xa7,0xb2,0x47,0x50,0x82,0xd1) #endif #else typedef struct ID3D12CommandSignatureVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12CommandSignature *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12CommandSignature *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12CommandSignature *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12CommandSignature *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12CommandSignature *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12CommandSignature *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12CommandSignature *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12CommandSignature *This, REFIID riid, void **device); END_INTERFACE } ID3D12CommandSignatureVtbl; interface ID3D12CommandSignature { CONST_VTBL ID3D12CommandSignatureVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12CommandSignature_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12CommandSignature_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12CommandSignature_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12CommandSignature_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12CommandSignature_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12CommandSignature_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12CommandSignature_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12CommandSignature_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12CommandSignature_QueryInterface(ID3D12CommandSignature* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12CommandSignature_AddRef(ID3D12CommandSignature* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12CommandSignature_Release(ID3D12CommandSignature* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12CommandSignature_GetPrivateData(ID3D12CommandSignature* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandSignature_SetPrivateData(ID3D12CommandSignature* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandSignature_SetPrivateDataInterface(ID3D12CommandSignature* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12CommandSignature_SetName(ID3D12CommandSignature* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12CommandSignature_GetDevice(ID3D12CommandSignature* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __ID3D12CommandSignature_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12GraphicsCommandList interface */ #ifndef __ID3D12GraphicsCommandList_INTERFACE_DEFINED__ #define __ID3D12GraphicsCommandList_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12GraphicsCommandList, 0x5b160d0f, 0xac1b, 0x4185, 0x8b,0xa8, 0xb3,0xae,0x42,0xa5,0xa4,0x55); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5b160d0f-ac1b-4185-8ba8-b3ae42a5a455") ID3D12GraphicsCommandList : public ID3D12CommandList { virtual HRESULT STDMETHODCALLTYPE Close( ) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ID3D12CommandAllocator *allocator, ID3D12PipelineState *initial_state) = 0; virtual void STDMETHODCALLTYPE ClearState( ID3D12PipelineState *pipeline_state) = 0; virtual void STDMETHODCALLTYPE DrawInstanced( UINT vertex_count_per_instance, UINT instance_count, UINT start_vertex_location, UINT start_instance_location) = 0; virtual void STDMETHODCALLTYPE DrawIndexedInstanced( UINT index_count_per_instance, UINT instance_count, UINT start_vertex_location, INT base_vertex_location, UINT start_instance_location) = 0; virtual void STDMETHODCALLTYPE Dispatch( UINT x, UINT u, UINT z) = 0; virtual void STDMETHODCALLTYPE CopyBufferRegion( ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT64 byte_count) = 0; virtual void STDMETHODCALLTYPE CopyTextureRegion( const D3D12_TEXTURE_COPY_LOCATION *dst, UINT dst_x, UINT dst_y, UINT dst_z, const D3D12_TEXTURE_COPY_LOCATION *src, const D3D12_BOX *src_box) = 0; virtual void STDMETHODCALLTYPE CopyResource( ID3D12Resource *dst_resource, ID3D12Resource *src_resource) = 0; virtual void STDMETHODCALLTYPE CopyTiles( ID3D12Resource *tiled_resource, const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate, const D3D12_TILE_REGION_SIZE *tile_region_size, ID3D12Resource *buffer, UINT64 buffer_offset, D3D12_TILE_COPY_FLAGS flags) = 0; virtual void STDMETHODCALLTYPE ResolveSubresource( ID3D12Resource *dst_resource, UINT dst_sub_resource, ID3D12Resource *src_resource, UINT src_sub_resource, DXGI_FORMAT format) = 0; virtual void STDMETHODCALLTYPE IASetPrimitiveTopology( D3D12_PRIMITIVE_TOPOLOGY primitive_topology) = 0; virtual void STDMETHODCALLTYPE RSSetViewports( UINT viewport_count, const D3D12_VIEWPORT *viewports) = 0; virtual void STDMETHODCALLTYPE RSSetScissorRects( UINT rect_count, const D3D12_RECT *rects) = 0; virtual void STDMETHODCALLTYPE OMSetBlendFactor( const FLOAT blend_factor[4]) = 0; virtual void STDMETHODCALLTYPE OMSetStencilRef( UINT stencil_ref) = 0; virtual void STDMETHODCALLTYPE SetPipelineState( ID3D12PipelineState *pipeline_state) = 0; virtual void STDMETHODCALLTYPE ResourceBarrier( UINT barrier_count, const D3D12_RESOURCE_BARRIER *barriers) = 0; virtual void STDMETHODCALLTYPE ExecuteBundle( ID3D12GraphicsCommandList *command_list) = 0; virtual void STDMETHODCALLTYPE SetDescriptorHeaps( UINT heap_count, ID3D12DescriptorHeap *const *heaps) = 0; virtual void STDMETHODCALLTYPE SetComputeRootSignature( ID3D12RootSignature *root_signature) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootSignature( ID3D12RootSignature *root_signature) = 0; virtual void STDMETHODCALLTYPE SetComputeRootDescriptorTable( UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootDescriptorTable( UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) = 0; virtual void STDMETHODCALLTYPE SetComputeRoot32BitConstant( UINT root_parameter_index, UINT data, UINT dst_offset) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRoot32BitConstant( UINT root_parameter_index, UINT data, UINT dst_offset) = 0; virtual void STDMETHODCALLTYPE SetComputeRoot32BitConstants( UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRoot32BitConstants( UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset) = 0; virtual void STDMETHODCALLTYPE SetComputeRootConstantBufferView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootConstantBufferView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE SetComputeRootShaderResourceView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootShaderResourceView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE SetComputeRootUnorderedAccessView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE SetGraphicsRootUnorderedAccessView( UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address) = 0; virtual void STDMETHODCALLTYPE IASetIndexBuffer( const D3D12_INDEX_BUFFER_VIEW *view) = 0; virtual void STDMETHODCALLTYPE IASetVertexBuffers( UINT start_slot, UINT view_count, const D3D12_VERTEX_BUFFER_VIEW *views) = 0; virtual void STDMETHODCALLTYPE SOSetTargets( UINT start_slot, UINT view_count, const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views) = 0; virtual void STDMETHODCALLTYPE OMSetRenderTargets( UINT render_target_descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors, WINBOOL single_descriptor_handle, const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor) = 0; virtual void STDMETHODCALLTYPE ClearDepthStencilView( D3D12_CPU_DESCRIPTOR_HANDLE dsv, D3D12_CLEAR_FLAGS flags, FLOAT depth, UINT8 stencil, UINT rect_count, const D3D12_RECT *rects) = 0; virtual void STDMETHODCALLTYPE ClearRenderTargetView( D3D12_CPU_DESCRIPTOR_HANDLE rtv, const FLOAT color[4], UINT rect_count, const D3D12_RECT *rects) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewUint( D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const UINT values[4], UINT rect_count, const D3D12_RECT *rects) = 0; virtual void STDMETHODCALLTYPE ClearUnorderedAccessViewFloat( D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const float values[4], UINT rect_count, const D3D12_RECT *rects) = 0; virtual void STDMETHODCALLTYPE DiscardResource( ID3D12Resource *resource, const D3D12_DISCARD_REGION *region) = 0; virtual void STDMETHODCALLTYPE BeginQuery( ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index) = 0; virtual void STDMETHODCALLTYPE EndQuery( ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index) = 0; virtual void STDMETHODCALLTYPE ResolveQueryData( ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT start_index, UINT query_count, ID3D12Resource *dst_buffer, UINT64 aligned_dst_buffer_offset) = 0; virtual void STDMETHODCALLTYPE SetPredication( ID3D12Resource *buffer, UINT64 aligned_buffer_offset, D3D12_PREDICATION_OP operation) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT metadata, const void *data, UINT size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT metadata, const void *data, UINT size) = 0; virtual void STDMETHODCALLTYPE EndEvent( ) = 0; virtual void STDMETHODCALLTYPE ExecuteIndirect( ID3D12CommandSignature *command_signature, UINT max_command_count, ID3D12Resource *arg_buffer, UINT64 arg_buffer_offset, ID3D12Resource *count_buffer, UINT64 count_buffer_offset) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12GraphicsCommandList, 0x5b160d0f, 0xac1b, 0x4185, 0x8b,0xa8, 0xb3,0xae,0x42,0xa5,0xa4,0x55) #endif #else typedef struct ID3D12GraphicsCommandListVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12GraphicsCommandList *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12GraphicsCommandList *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12GraphicsCommandList *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12GraphicsCommandList *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12GraphicsCommandList *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12GraphicsCommandList *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12GraphicsCommandList *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12GraphicsCommandList *This, REFIID riid, void **device); /*** ID3D12CommandList methods ***/ D3D12_COMMAND_LIST_TYPE (STDMETHODCALLTYPE *GetType)( ID3D12GraphicsCommandList *This); /*** ID3D12GraphicsCommandList methods ***/ HRESULT (STDMETHODCALLTYPE *Close)( ID3D12GraphicsCommandList *This); HRESULT (STDMETHODCALLTYPE *Reset)( ID3D12GraphicsCommandList *This, ID3D12CommandAllocator *allocator, ID3D12PipelineState *initial_state); void (STDMETHODCALLTYPE *ClearState)( ID3D12GraphicsCommandList *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D12GraphicsCommandList *This, UINT vertex_count_per_instance, UINT instance_count, UINT start_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D12GraphicsCommandList *This, UINT index_count_per_instance, UINT instance_count, UINT start_vertex_location, INT base_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *Dispatch)( ID3D12GraphicsCommandList *This, UINT x, UINT u, UINT z); void (STDMETHODCALLTYPE *CopyBufferRegion)( ID3D12GraphicsCommandList *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT64 byte_count); void (STDMETHODCALLTYPE *CopyTextureRegion)( ID3D12GraphicsCommandList *This, const D3D12_TEXTURE_COPY_LOCATION *dst, UINT dst_x, UINT dst_y, UINT dst_z, const D3D12_TEXTURE_COPY_LOCATION *src, const D3D12_BOX *src_box); void (STDMETHODCALLTYPE *CopyResource)( ID3D12GraphicsCommandList *This, ID3D12Resource *dst_resource, ID3D12Resource *src_resource); void (STDMETHODCALLTYPE *CopyTiles)( ID3D12GraphicsCommandList *This, ID3D12Resource *tiled_resource, const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate, const D3D12_TILE_REGION_SIZE *tile_region_size, ID3D12Resource *buffer, UINT64 buffer_offset, D3D12_TILE_COPY_FLAGS flags); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D12GraphicsCommandList *This, ID3D12Resource *dst_resource, UINT dst_sub_resource, ID3D12Resource *src_resource, UINT src_sub_resource, DXGI_FORMAT format); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D12GraphicsCommandList *This, D3D12_PRIMITIVE_TOPOLOGY primitive_topology); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D12GraphicsCommandList *This, UINT viewport_count, const D3D12_VIEWPORT *viewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D12GraphicsCommandList *This, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *OMSetBlendFactor)( ID3D12GraphicsCommandList *This, const FLOAT blend_factor[4]); void (STDMETHODCALLTYPE *OMSetStencilRef)( ID3D12GraphicsCommandList *This, UINT stencil_ref); void (STDMETHODCALLTYPE *SetPipelineState)( ID3D12GraphicsCommandList *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *ResourceBarrier)( ID3D12GraphicsCommandList *This, UINT barrier_count, const D3D12_RESOURCE_BARRIER *barriers); void (STDMETHODCALLTYPE *ExecuteBundle)( ID3D12GraphicsCommandList *This, ID3D12GraphicsCommandList *command_list); void (STDMETHODCALLTYPE *SetDescriptorHeaps)( ID3D12GraphicsCommandList *This, UINT heap_count, ID3D12DescriptorHeap *const *heaps); void (STDMETHODCALLTYPE *SetComputeRootSignature)( ID3D12GraphicsCommandList *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetGraphicsRootSignature)( ID3D12GraphicsCommandList *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetComputeRootDescriptorTable)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstant)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstants)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRootConstantBufferView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootShaderResourceView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView)( ID3D12GraphicsCommandList *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D12GraphicsCommandList *This, const D3D12_INDEX_BUFFER_VIEW *view); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D12GraphicsCommandList *This, UINT start_slot, UINT view_count, const D3D12_VERTEX_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D12GraphicsCommandList *This, UINT start_slot, UINT view_count, const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D12GraphicsCommandList *This, UINT render_target_descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors, WINBOOL single_descriptor_handle, const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D12GraphicsCommandList *This, D3D12_CPU_DESCRIPTOR_HANDLE dsv, D3D12_CLEAR_FLAGS flags, FLOAT depth, UINT8 stencil, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D12GraphicsCommandList *This, D3D12_CPU_DESCRIPTOR_HANDLE rtv, const FLOAT color[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D12GraphicsCommandList *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const UINT values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D12GraphicsCommandList *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const float values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *DiscardResource)( ID3D12GraphicsCommandList *This, ID3D12Resource *resource, const D3D12_DISCARD_REGION *region); void (STDMETHODCALLTYPE *BeginQuery)( ID3D12GraphicsCommandList *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *EndQuery)( ID3D12GraphicsCommandList *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *ResolveQueryData)( ID3D12GraphicsCommandList *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT start_index, UINT query_count, ID3D12Resource *dst_buffer, UINT64 aligned_dst_buffer_offset); void (STDMETHODCALLTYPE *SetPredication)( ID3D12GraphicsCommandList *This, ID3D12Resource *buffer, UINT64 aligned_buffer_offset, D3D12_PREDICATION_OP operation); void (STDMETHODCALLTYPE *SetMarker)( ID3D12GraphicsCommandList *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *BeginEvent)( ID3D12GraphicsCommandList *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *EndEvent)( ID3D12GraphicsCommandList *This); void (STDMETHODCALLTYPE *ExecuteIndirect)( ID3D12GraphicsCommandList *This, ID3D12CommandSignature *command_signature, UINT max_command_count, ID3D12Resource *arg_buffer, UINT64 arg_buffer_offset, ID3D12Resource *count_buffer, UINT64 count_buffer_offset); END_INTERFACE } ID3D12GraphicsCommandListVtbl; interface ID3D12GraphicsCommandList { CONST_VTBL ID3D12GraphicsCommandListVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12GraphicsCommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12GraphicsCommandList_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12GraphicsCommandList_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12GraphicsCommandList_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12GraphicsCommandList_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12GraphicsCommandList_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandList methods ***/ #define ID3D12GraphicsCommandList_GetType(This) (This)->lpVtbl->GetType(This) /*** ID3D12GraphicsCommandList methods ***/ #define ID3D12GraphicsCommandList_Close(This) (This)->lpVtbl->Close(This) #define ID3D12GraphicsCommandList_Reset(This,allocator,initial_state) (This)->lpVtbl->Reset(This,allocator,initial_state) #define ID3D12GraphicsCommandList_ClearState(This,pipeline_state) (This)->lpVtbl->ClearState(This,pipeline_state) #define ID3D12GraphicsCommandList_DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) (This)->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList_DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) (This)->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList_Dispatch(This,x,u,z) (This)->lpVtbl->Dispatch(This,x,u,z) #define ID3D12GraphicsCommandList_CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) (This)->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) #define ID3D12GraphicsCommandList_CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) (This)->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) #define ID3D12GraphicsCommandList_CopyResource(This,dst_resource,src_resource) (This)->lpVtbl->CopyResource(This,dst_resource,src_resource) #define ID3D12GraphicsCommandList_CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) (This)->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) #define ID3D12GraphicsCommandList_ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) (This)->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) #define ID3D12GraphicsCommandList_IASetPrimitiveTopology(This,primitive_topology) (This)->lpVtbl->IASetPrimitiveTopology(This,primitive_topology) #define ID3D12GraphicsCommandList_RSSetViewports(This,viewport_count,viewports) (This)->lpVtbl->RSSetViewports(This,viewport_count,viewports) #define ID3D12GraphicsCommandList_RSSetScissorRects(This,rect_count,rects) (This)->lpVtbl->RSSetScissorRects(This,rect_count,rects) #define ID3D12GraphicsCommandList_OMSetBlendFactor(This,blend_factor) (This)->lpVtbl->OMSetBlendFactor(This,blend_factor) #define ID3D12GraphicsCommandList_OMSetStencilRef(This,stencil_ref) (This)->lpVtbl->OMSetStencilRef(This,stencil_ref) #define ID3D12GraphicsCommandList_SetPipelineState(This,pipeline_state) (This)->lpVtbl->SetPipelineState(This,pipeline_state) #define ID3D12GraphicsCommandList_ResourceBarrier(This,barrier_count,barriers) (This)->lpVtbl->ResourceBarrier(This,barrier_count,barriers) #define ID3D12GraphicsCommandList_ExecuteBundle(This,command_list) (This)->lpVtbl->ExecuteBundle(This,command_list) #define ID3D12GraphicsCommandList_SetDescriptorHeaps(This,heap_count,heaps) (This)->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps) #define ID3D12GraphicsCommandList_SetComputeRootSignature(This,root_signature) (This)->lpVtbl->SetComputeRootSignature(This,root_signature) #define ID3D12GraphicsCommandList_SetGraphicsRootSignature(This,root_signature) (This)->lpVtbl->SetGraphicsRootSignature(This,root_signature) #define ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList_SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList_SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList_SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList_SetComputeRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_SetGraphicsRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_SetComputeRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_SetGraphicsRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList_IASetIndexBuffer(This,view) (This)->lpVtbl->IASetIndexBuffer(This,view) #define ID3D12GraphicsCommandList_IASetVertexBuffers(This,start_slot,view_count,views) (This)->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList_SOSetTargets(This,start_slot,view_count,views) (This)->lpVtbl->SOSetTargets(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList_OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) (This)->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) #define ID3D12GraphicsCommandList_ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) (This)->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) #define ID3D12GraphicsCommandList_ClearRenderTargetView(This,rtv,color,rect_count,rects) (This)->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects) #define ID3D12GraphicsCommandList_ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList_ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList_DiscardResource(This,resource,region) (This)->lpVtbl->DiscardResource(This,resource,region) #define ID3D12GraphicsCommandList_BeginQuery(This,heap,type,index) (This)->lpVtbl->BeginQuery(This,heap,type,index) #define ID3D12GraphicsCommandList_EndQuery(This,heap,type,index) (This)->lpVtbl->EndQuery(This,heap,type,index) #define ID3D12GraphicsCommandList_ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) (This)->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) #define ID3D12GraphicsCommandList_SetPredication(This,buffer,aligned_buffer_offset,operation) (This)->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation) #define ID3D12GraphicsCommandList_SetMarker(This,metadata,data,size) (This)->lpVtbl->SetMarker(This,metadata,data,size) #define ID3D12GraphicsCommandList_BeginEvent(This,metadata,data,size) (This)->lpVtbl->BeginEvent(This,metadata,data,size) #define ID3D12GraphicsCommandList_EndEvent(This) (This)->lpVtbl->EndEvent(This) #define ID3D12GraphicsCommandList_ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) (This)->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList_QueryInterface(ID3D12GraphicsCommandList* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12GraphicsCommandList_AddRef(ID3D12GraphicsCommandList* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12GraphicsCommandList_Release(ID3D12GraphicsCommandList* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList_GetPrivateData(ID3D12GraphicsCommandList* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList_SetPrivateData(ID3D12GraphicsCommandList* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList_SetPrivateDataInterface(ID3D12GraphicsCommandList* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList_SetName(ID3D12GraphicsCommandList* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList_GetDevice(ID3D12GraphicsCommandList* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandList methods ***/ static FORCEINLINE D3D12_COMMAND_LIST_TYPE ID3D12GraphicsCommandList_GetType(ID3D12GraphicsCommandList* This) { return This->lpVtbl->GetType(This); } /*** ID3D12GraphicsCommandList methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList_Close(ID3D12GraphicsCommandList* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList_Reset(ID3D12GraphicsCommandList* This,ID3D12CommandAllocator *allocator,ID3D12PipelineState *initial_state) { return This->lpVtbl->Reset(This,allocator,initial_state); } static FORCEINLINE void ID3D12GraphicsCommandList_ClearState(ID3D12GraphicsCommandList* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->ClearState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList_DrawInstanced(ID3D12GraphicsCommandList* This,UINT vertex_count_per_instance,UINT instance_count,UINT start_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList_DrawIndexedInstanced(ID3D12GraphicsCommandList* This,UINT index_count_per_instance,UINT instance_count,UINT start_vertex_location,INT base_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList_Dispatch(ID3D12GraphicsCommandList* This,UINT x,UINT u,UINT z) { This->lpVtbl->Dispatch(This,x,u,z); } static FORCEINLINE void ID3D12GraphicsCommandList_CopyBufferRegion(ID3D12GraphicsCommandList* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT64 byte_count) { This->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count); } static FORCEINLINE void ID3D12GraphicsCommandList_CopyTextureRegion(ID3D12GraphicsCommandList* This,const D3D12_TEXTURE_COPY_LOCATION *dst,UINT dst_x,UINT dst_y,UINT dst_z,const D3D12_TEXTURE_COPY_LOCATION *src,const D3D12_BOX *src_box) { This->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box); } static FORCEINLINE void ID3D12GraphicsCommandList_CopyResource(ID3D12GraphicsCommandList* This,ID3D12Resource *dst_resource,ID3D12Resource *src_resource) { This->lpVtbl->CopyResource(This,dst_resource,src_resource); } static FORCEINLINE void ID3D12GraphicsCommandList_CopyTiles(ID3D12GraphicsCommandList* This,ID3D12Resource *tiled_resource,const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate,const D3D12_TILE_REGION_SIZE *tile_region_size,ID3D12Resource *buffer,UINT64 buffer_offset,D3D12_TILE_COPY_FLAGS flags) { This->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags); } static FORCEINLINE void ID3D12GraphicsCommandList_ResolveSubresource(ID3D12GraphicsCommandList* This,ID3D12Resource *dst_resource,UINT dst_sub_resource,ID3D12Resource *src_resource,UINT src_sub_resource,DXGI_FORMAT format) { This->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format); } static FORCEINLINE void ID3D12GraphicsCommandList_IASetPrimitiveTopology(ID3D12GraphicsCommandList* This,D3D12_PRIMITIVE_TOPOLOGY primitive_topology) { This->lpVtbl->IASetPrimitiveTopology(This,primitive_topology); } static FORCEINLINE void ID3D12GraphicsCommandList_RSSetViewports(ID3D12GraphicsCommandList* This,UINT viewport_count,const D3D12_VIEWPORT *viewports) { This->lpVtbl->RSSetViewports(This,viewport_count,viewports); } static FORCEINLINE void ID3D12GraphicsCommandList_RSSetScissorRects(ID3D12GraphicsCommandList* This,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->RSSetScissorRects(This,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList_OMSetBlendFactor(ID3D12GraphicsCommandList* This,const FLOAT blend_factor[4]) { This->lpVtbl->OMSetBlendFactor(This,blend_factor); } static FORCEINLINE void ID3D12GraphicsCommandList_OMSetStencilRef(ID3D12GraphicsCommandList* This,UINT stencil_ref) { This->lpVtbl->OMSetStencilRef(This,stencil_ref); } static FORCEINLINE void ID3D12GraphicsCommandList_SetPipelineState(ID3D12GraphicsCommandList* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->SetPipelineState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList_ResourceBarrier(ID3D12GraphicsCommandList* This,UINT barrier_count,const D3D12_RESOURCE_BARRIER *barriers) { This->lpVtbl->ResourceBarrier(This,barrier_count,barriers); } static FORCEINLINE void ID3D12GraphicsCommandList_ExecuteBundle(ID3D12GraphicsCommandList* This,ID3D12GraphicsCommandList *command_list) { This->lpVtbl->ExecuteBundle(This,command_list); } static FORCEINLINE void ID3D12GraphicsCommandList_SetDescriptorHeaps(ID3D12GraphicsCommandList* This,UINT heap_count,ID3D12DescriptorHeap *const *heaps) { This->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRootSignature(ID3D12GraphicsCommandList* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetComputeRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRootSignature(ID3D12GraphicsCommandList* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetGraphicsRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRootDescriptorTable(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRootDescriptorTable(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRoot32BitConstant(ID3D12GraphicsCommandList* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstant(ID3D12GraphicsCommandList* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRoot32BitConstants(ID3D12GraphicsCommandList* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRoot32BitConstants(ID3D12GraphicsCommandList* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRootConstantBufferView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRootConstantBufferView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRootShaderResourceView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRootShaderResourceView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_SetComputeRootUnorderedAccessView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_SetGraphicsRootUnorderedAccessView(ID3D12GraphicsCommandList* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList_IASetIndexBuffer(ID3D12GraphicsCommandList* This,const D3D12_INDEX_BUFFER_VIEW *view) { This->lpVtbl->IASetIndexBuffer(This,view); } static FORCEINLINE void ID3D12GraphicsCommandList_IASetVertexBuffers(ID3D12GraphicsCommandList* This,UINT start_slot,UINT view_count,const D3D12_VERTEX_BUFFER_VIEW *views) { This->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList_SOSetTargets(ID3D12GraphicsCommandList* This,UINT start_slot,UINT view_count,const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views) { This->lpVtbl->SOSetTargets(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList_OMSetRenderTargets(ID3D12GraphicsCommandList* This,UINT render_target_descriptor_count,const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors,WINBOOL single_descriptor_handle,const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor) { This->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList_ClearDepthStencilView(ID3D12GraphicsCommandList* This,D3D12_CPU_DESCRIPTOR_HANDLE dsv,D3D12_CLEAR_FLAGS flags,FLOAT depth,UINT8 stencil,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList_ClearRenderTargetView(ID3D12GraphicsCommandList* This,D3D12_CPU_DESCRIPTOR_HANDLE rtv,const FLOAT color[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList_ClearUnorderedAccessViewUint(ID3D12GraphicsCommandList* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const UINT values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList_ClearUnorderedAccessViewFloat(ID3D12GraphicsCommandList* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const float values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList_DiscardResource(ID3D12GraphicsCommandList* This,ID3D12Resource *resource,const D3D12_DISCARD_REGION *region) { This->lpVtbl->DiscardResource(This,resource,region); } static FORCEINLINE void ID3D12GraphicsCommandList_BeginQuery(ID3D12GraphicsCommandList* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->BeginQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList_EndQuery(ID3D12GraphicsCommandList* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->EndQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList_ResolveQueryData(ID3D12GraphicsCommandList* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT start_index,UINT query_count,ID3D12Resource *dst_buffer,UINT64 aligned_dst_buffer_offset) { This->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset); } static FORCEINLINE void ID3D12GraphicsCommandList_SetPredication(ID3D12GraphicsCommandList* This,ID3D12Resource *buffer,UINT64 aligned_buffer_offset,D3D12_PREDICATION_OP operation) { This->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation); } static FORCEINLINE void ID3D12GraphicsCommandList_SetMarker(ID3D12GraphicsCommandList* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->SetMarker(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList_BeginEvent(ID3D12GraphicsCommandList* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->BeginEvent(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList_EndEvent(ID3D12GraphicsCommandList* This) { This->lpVtbl->EndEvent(This); } static FORCEINLINE void ID3D12GraphicsCommandList_ExecuteIndirect(ID3D12GraphicsCommandList* This,ID3D12CommandSignature *command_signature,UINT max_command_count,ID3D12Resource *arg_buffer,UINT64 arg_buffer_offset,ID3D12Resource *count_buffer,UINT64 count_buffer_offset) { This->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset); } #endif #endif #endif #endif /* __ID3D12GraphicsCommandList_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12GraphicsCommandList1 interface */ #ifndef __ID3D12GraphicsCommandList1_INTERFACE_DEFINED__ #define __ID3D12GraphicsCommandList1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12GraphicsCommandList1, 0x553103fb, 0x1fe7, 0x4557, 0xbb,0x38, 0x94,0x6d,0x7d,0x0e,0x7c,0xa7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("553103fb-1fe7-4557-bb38-946d7d0e7ca7") ID3D12GraphicsCommandList1 : public ID3D12GraphicsCommandList { virtual void STDMETHODCALLTYPE AtomicCopyBufferUINT( ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) = 0; virtual void STDMETHODCALLTYPE AtomicCopyBufferUINT64( ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) = 0; virtual void STDMETHODCALLTYPE OMSetDepthBounds( FLOAT min, FLOAT max) = 0; virtual void STDMETHODCALLTYPE SetSamplePositions( UINT sample_count, UINT pixel_count, D3D12_SAMPLE_POSITION *sample_positions) = 0; virtual void STDMETHODCALLTYPE ResolveSubresourceRegion( ID3D12Resource *dst_resource, UINT dst_sub_resource_idx, UINT dst_x, UINT dst_y, ID3D12Resource *src_resource, UINT src_sub_resource_idx, D3D12_RECT *src_rect, DXGI_FORMAT format, D3D12_RESOLVE_MODE mode) = 0; virtual void STDMETHODCALLTYPE SetViewInstanceMask( UINT mask) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12GraphicsCommandList1, 0x553103fb, 0x1fe7, 0x4557, 0xbb,0x38, 0x94,0x6d,0x7d,0x0e,0x7c,0xa7) #endif #else typedef struct ID3D12GraphicsCommandList1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12GraphicsCommandList1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12GraphicsCommandList1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12GraphicsCommandList1 *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12GraphicsCommandList1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12GraphicsCommandList1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12GraphicsCommandList1 *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12GraphicsCommandList1 *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12GraphicsCommandList1 *This, REFIID riid, void **device); /*** ID3D12CommandList methods ***/ D3D12_COMMAND_LIST_TYPE (STDMETHODCALLTYPE *GetType)( ID3D12GraphicsCommandList1 *This); /*** ID3D12GraphicsCommandList methods ***/ HRESULT (STDMETHODCALLTYPE *Close)( ID3D12GraphicsCommandList1 *This); HRESULT (STDMETHODCALLTYPE *Reset)( ID3D12GraphicsCommandList1 *This, ID3D12CommandAllocator *allocator, ID3D12PipelineState *initial_state); void (STDMETHODCALLTYPE *ClearState)( ID3D12GraphicsCommandList1 *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D12GraphicsCommandList1 *This, UINT vertex_count_per_instance, UINT instance_count, UINT start_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D12GraphicsCommandList1 *This, UINT index_count_per_instance, UINT instance_count, UINT start_vertex_location, INT base_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *Dispatch)( ID3D12GraphicsCommandList1 *This, UINT x, UINT u, UINT z); void (STDMETHODCALLTYPE *CopyBufferRegion)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT64 byte_count); void (STDMETHODCALLTYPE *CopyTextureRegion)( ID3D12GraphicsCommandList1 *This, const D3D12_TEXTURE_COPY_LOCATION *dst, UINT dst_x, UINT dst_y, UINT dst_z, const D3D12_TEXTURE_COPY_LOCATION *src, const D3D12_BOX *src_box); void (STDMETHODCALLTYPE *CopyResource)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_resource, ID3D12Resource *src_resource); void (STDMETHODCALLTYPE *CopyTiles)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *tiled_resource, const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate, const D3D12_TILE_REGION_SIZE *tile_region_size, ID3D12Resource *buffer, UINT64 buffer_offset, D3D12_TILE_COPY_FLAGS flags); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_resource, UINT dst_sub_resource, ID3D12Resource *src_resource, UINT src_sub_resource, DXGI_FORMAT format); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D12GraphicsCommandList1 *This, D3D12_PRIMITIVE_TOPOLOGY primitive_topology); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D12GraphicsCommandList1 *This, UINT viewport_count, const D3D12_VIEWPORT *viewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D12GraphicsCommandList1 *This, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *OMSetBlendFactor)( ID3D12GraphicsCommandList1 *This, const FLOAT blend_factor[4]); void (STDMETHODCALLTYPE *OMSetStencilRef)( ID3D12GraphicsCommandList1 *This, UINT stencil_ref); void (STDMETHODCALLTYPE *SetPipelineState)( ID3D12GraphicsCommandList1 *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *ResourceBarrier)( ID3D12GraphicsCommandList1 *This, UINT barrier_count, const D3D12_RESOURCE_BARRIER *barriers); void (STDMETHODCALLTYPE *ExecuteBundle)( ID3D12GraphicsCommandList1 *This, ID3D12GraphicsCommandList *command_list); void (STDMETHODCALLTYPE *SetDescriptorHeaps)( ID3D12GraphicsCommandList1 *This, UINT heap_count, ID3D12DescriptorHeap *const *heaps); void (STDMETHODCALLTYPE *SetComputeRootSignature)( ID3D12GraphicsCommandList1 *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetGraphicsRootSignature)( ID3D12GraphicsCommandList1 *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetComputeRootDescriptorTable)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstant)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstants)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRootConstantBufferView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootShaderResourceView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView)( ID3D12GraphicsCommandList1 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D12GraphicsCommandList1 *This, const D3D12_INDEX_BUFFER_VIEW *view); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D12GraphicsCommandList1 *This, UINT start_slot, UINT view_count, const D3D12_VERTEX_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D12GraphicsCommandList1 *This, UINT start_slot, UINT view_count, const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D12GraphicsCommandList1 *This, UINT render_target_descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors, WINBOOL single_descriptor_handle, const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D12GraphicsCommandList1 *This, D3D12_CPU_DESCRIPTOR_HANDLE dsv, D3D12_CLEAR_FLAGS flags, FLOAT depth, UINT8 stencil, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D12GraphicsCommandList1 *This, D3D12_CPU_DESCRIPTOR_HANDLE rtv, const FLOAT color[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D12GraphicsCommandList1 *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const UINT values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D12GraphicsCommandList1 *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const float values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *DiscardResource)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *resource, const D3D12_DISCARD_REGION *region); void (STDMETHODCALLTYPE *BeginQuery)( ID3D12GraphicsCommandList1 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *EndQuery)( ID3D12GraphicsCommandList1 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *ResolveQueryData)( ID3D12GraphicsCommandList1 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT start_index, UINT query_count, ID3D12Resource *dst_buffer, UINT64 aligned_dst_buffer_offset); void (STDMETHODCALLTYPE *SetPredication)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *buffer, UINT64 aligned_buffer_offset, D3D12_PREDICATION_OP operation); void (STDMETHODCALLTYPE *SetMarker)( ID3D12GraphicsCommandList1 *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *BeginEvent)( ID3D12GraphicsCommandList1 *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *EndEvent)( ID3D12GraphicsCommandList1 *This); void (STDMETHODCALLTYPE *ExecuteIndirect)( ID3D12GraphicsCommandList1 *This, ID3D12CommandSignature *command_signature, UINT max_command_count, ID3D12Resource *arg_buffer, UINT64 arg_buffer_offset, ID3D12Resource *count_buffer, UINT64 count_buffer_offset); /*** ID3D12GraphicsCommandList1 methods ***/ void (STDMETHODCALLTYPE *AtomicCopyBufferUINT)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges); void (STDMETHODCALLTYPE *AtomicCopyBufferUINT64)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges); void (STDMETHODCALLTYPE *OMSetDepthBounds)( ID3D12GraphicsCommandList1 *This, FLOAT min, FLOAT max); void (STDMETHODCALLTYPE *SetSamplePositions)( ID3D12GraphicsCommandList1 *This, UINT sample_count, UINT pixel_count, D3D12_SAMPLE_POSITION *sample_positions); void (STDMETHODCALLTYPE *ResolveSubresourceRegion)( ID3D12GraphicsCommandList1 *This, ID3D12Resource *dst_resource, UINT dst_sub_resource_idx, UINT dst_x, UINT dst_y, ID3D12Resource *src_resource, UINT src_sub_resource_idx, D3D12_RECT *src_rect, DXGI_FORMAT format, D3D12_RESOLVE_MODE mode); void (STDMETHODCALLTYPE *SetViewInstanceMask)( ID3D12GraphicsCommandList1 *This, UINT mask); END_INTERFACE } ID3D12GraphicsCommandList1Vtbl; interface ID3D12GraphicsCommandList1 { CONST_VTBL ID3D12GraphicsCommandList1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12GraphicsCommandList1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12GraphicsCommandList1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12GraphicsCommandList1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12GraphicsCommandList1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList1_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12GraphicsCommandList1_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12GraphicsCommandList1_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandList methods ***/ #define ID3D12GraphicsCommandList1_GetType(This) (This)->lpVtbl->GetType(This) /*** ID3D12GraphicsCommandList methods ***/ #define ID3D12GraphicsCommandList1_Close(This) (This)->lpVtbl->Close(This) #define ID3D12GraphicsCommandList1_Reset(This,allocator,initial_state) (This)->lpVtbl->Reset(This,allocator,initial_state) #define ID3D12GraphicsCommandList1_ClearState(This,pipeline_state) (This)->lpVtbl->ClearState(This,pipeline_state) #define ID3D12GraphicsCommandList1_DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) (This)->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList1_DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) (This)->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList1_Dispatch(This,x,u,z) (This)->lpVtbl->Dispatch(This,x,u,z) #define ID3D12GraphicsCommandList1_CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) (This)->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) #define ID3D12GraphicsCommandList1_CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) (This)->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) #define ID3D12GraphicsCommandList1_CopyResource(This,dst_resource,src_resource) (This)->lpVtbl->CopyResource(This,dst_resource,src_resource) #define ID3D12GraphicsCommandList1_CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) (This)->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) #define ID3D12GraphicsCommandList1_ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) (This)->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) #define ID3D12GraphicsCommandList1_IASetPrimitiveTopology(This,primitive_topology) (This)->lpVtbl->IASetPrimitiveTopology(This,primitive_topology) #define ID3D12GraphicsCommandList1_RSSetViewports(This,viewport_count,viewports) (This)->lpVtbl->RSSetViewports(This,viewport_count,viewports) #define ID3D12GraphicsCommandList1_RSSetScissorRects(This,rect_count,rects) (This)->lpVtbl->RSSetScissorRects(This,rect_count,rects) #define ID3D12GraphicsCommandList1_OMSetBlendFactor(This,blend_factor) (This)->lpVtbl->OMSetBlendFactor(This,blend_factor) #define ID3D12GraphicsCommandList1_OMSetStencilRef(This,stencil_ref) (This)->lpVtbl->OMSetStencilRef(This,stencil_ref) #define ID3D12GraphicsCommandList1_SetPipelineState(This,pipeline_state) (This)->lpVtbl->SetPipelineState(This,pipeline_state) #define ID3D12GraphicsCommandList1_ResourceBarrier(This,barrier_count,barriers) (This)->lpVtbl->ResourceBarrier(This,barrier_count,barriers) #define ID3D12GraphicsCommandList1_ExecuteBundle(This,command_list) (This)->lpVtbl->ExecuteBundle(This,command_list) #define ID3D12GraphicsCommandList1_SetDescriptorHeaps(This,heap_count,heaps) (This)->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps) #define ID3D12GraphicsCommandList1_SetComputeRootSignature(This,root_signature) (This)->lpVtbl->SetComputeRootSignature(This,root_signature) #define ID3D12GraphicsCommandList1_SetGraphicsRootSignature(This,root_signature) (This)->lpVtbl->SetGraphicsRootSignature(This,root_signature) #define ID3D12GraphicsCommandList1_SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList1_SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList1_SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList1_SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList1_SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList1_SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList1_SetComputeRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_SetGraphicsRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_SetComputeRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_SetGraphicsRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_SetComputeRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList1_IASetIndexBuffer(This,view) (This)->lpVtbl->IASetIndexBuffer(This,view) #define ID3D12GraphicsCommandList1_IASetVertexBuffers(This,start_slot,view_count,views) (This)->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList1_SOSetTargets(This,start_slot,view_count,views) (This)->lpVtbl->SOSetTargets(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList1_OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) (This)->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) #define ID3D12GraphicsCommandList1_ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) (This)->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) #define ID3D12GraphicsCommandList1_ClearRenderTargetView(This,rtv,color,rect_count,rects) (This)->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects) #define ID3D12GraphicsCommandList1_ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList1_ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList1_DiscardResource(This,resource,region) (This)->lpVtbl->DiscardResource(This,resource,region) #define ID3D12GraphicsCommandList1_BeginQuery(This,heap,type,index) (This)->lpVtbl->BeginQuery(This,heap,type,index) #define ID3D12GraphicsCommandList1_EndQuery(This,heap,type,index) (This)->lpVtbl->EndQuery(This,heap,type,index) #define ID3D12GraphicsCommandList1_ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) (This)->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) #define ID3D12GraphicsCommandList1_SetPredication(This,buffer,aligned_buffer_offset,operation) (This)->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation) #define ID3D12GraphicsCommandList1_SetMarker(This,metadata,data,size) (This)->lpVtbl->SetMarker(This,metadata,data,size) #define ID3D12GraphicsCommandList1_BeginEvent(This,metadata,data,size) (This)->lpVtbl->BeginEvent(This,metadata,data,size) #define ID3D12GraphicsCommandList1_EndEvent(This) (This)->lpVtbl->EndEvent(This) #define ID3D12GraphicsCommandList1_ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) (This)->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) /*** ID3D12GraphicsCommandList1 methods ***/ #define ID3D12GraphicsCommandList1_AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) (This)->lpVtbl->AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) #define ID3D12GraphicsCommandList1_AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) (This)->lpVtbl->AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) #define ID3D12GraphicsCommandList1_OMSetDepthBounds(This,min,max) (This)->lpVtbl->OMSetDepthBounds(This,min,max) #define ID3D12GraphicsCommandList1_SetSamplePositions(This,sample_count,pixel_count,sample_positions) (This)->lpVtbl->SetSamplePositions(This,sample_count,pixel_count,sample_positions) #define ID3D12GraphicsCommandList1_ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode) (This)->lpVtbl->ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode) #define ID3D12GraphicsCommandList1_SetViewInstanceMask(This,mask) (This)->lpVtbl->SetViewInstanceMask(This,mask) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_QueryInterface(ID3D12GraphicsCommandList1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12GraphicsCommandList1_AddRef(ID3D12GraphicsCommandList1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12GraphicsCommandList1_Release(ID3D12GraphicsCommandList1* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_GetPrivateData(ID3D12GraphicsCommandList1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_SetPrivateData(ID3D12GraphicsCommandList1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_SetPrivateDataInterface(ID3D12GraphicsCommandList1* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_SetName(ID3D12GraphicsCommandList1* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_GetDevice(ID3D12GraphicsCommandList1* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandList methods ***/ static FORCEINLINE D3D12_COMMAND_LIST_TYPE ID3D12GraphicsCommandList1_GetType(ID3D12GraphicsCommandList1* This) { return This->lpVtbl->GetType(This); } /*** ID3D12GraphicsCommandList methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_Close(ID3D12GraphicsCommandList1* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList1_Reset(ID3D12GraphicsCommandList1* This,ID3D12CommandAllocator *allocator,ID3D12PipelineState *initial_state) { return This->lpVtbl->Reset(This,allocator,initial_state); } static FORCEINLINE void ID3D12GraphicsCommandList1_ClearState(ID3D12GraphicsCommandList1* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->ClearState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList1_DrawInstanced(ID3D12GraphicsCommandList1* This,UINT vertex_count_per_instance,UINT instance_count,UINT start_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList1_DrawIndexedInstanced(ID3D12GraphicsCommandList1* This,UINT index_count_per_instance,UINT instance_count,UINT start_vertex_location,INT base_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList1_Dispatch(ID3D12GraphicsCommandList1* This,UINT x,UINT u,UINT z) { This->lpVtbl->Dispatch(This,x,u,z); } static FORCEINLINE void ID3D12GraphicsCommandList1_CopyBufferRegion(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT64 byte_count) { This->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count); } static FORCEINLINE void ID3D12GraphicsCommandList1_CopyTextureRegion(ID3D12GraphicsCommandList1* This,const D3D12_TEXTURE_COPY_LOCATION *dst,UINT dst_x,UINT dst_y,UINT dst_z,const D3D12_TEXTURE_COPY_LOCATION *src,const D3D12_BOX *src_box) { This->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box); } static FORCEINLINE void ID3D12GraphicsCommandList1_CopyResource(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_resource,ID3D12Resource *src_resource) { This->lpVtbl->CopyResource(This,dst_resource,src_resource); } static FORCEINLINE void ID3D12GraphicsCommandList1_CopyTiles(ID3D12GraphicsCommandList1* This,ID3D12Resource *tiled_resource,const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate,const D3D12_TILE_REGION_SIZE *tile_region_size,ID3D12Resource *buffer,UINT64 buffer_offset,D3D12_TILE_COPY_FLAGS flags) { This->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags); } static FORCEINLINE void ID3D12GraphicsCommandList1_ResolveSubresource(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_resource,UINT dst_sub_resource,ID3D12Resource *src_resource,UINT src_sub_resource,DXGI_FORMAT format) { This->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format); } static FORCEINLINE void ID3D12GraphicsCommandList1_IASetPrimitiveTopology(ID3D12GraphicsCommandList1* This,D3D12_PRIMITIVE_TOPOLOGY primitive_topology) { This->lpVtbl->IASetPrimitiveTopology(This,primitive_topology); } static FORCEINLINE void ID3D12GraphicsCommandList1_RSSetViewports(ID3D12GraphicsCommandList1* This,UINT viewport_count,const D3D12_VIEWPORT *viewports) { This->lpVtbl->RSSetViewports(This,viewport_count,viewports); } static FORCEINLINE void ID3D12GraphicsCommandList1_RSSetScissorRects(ID3D12GraphicsCommandList1* This,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->RSSetScissorRects(This,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList1_OMSetBlendFactor(ID3D12GraphicsCommandList1* This,const FLOAT blend_factor[4]) { This->lpVtbl->OMSetBlendFactor(This,blend_factor); } static FORCEINLINE void ID3D12GraphicsCommandList1_OMSetStencilRef(ID3D12GraphicsCommandList1* This,UINT stencil_ref) { This->lpVtbl->OMSetStencilRef(This,stencil_ref); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetPipelineState(ID3D12GraphicsCommandList1* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->SetPipelineState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList1_ResourceBarrier(ID3D12GraphicsCommandList1* This,UINT barrier_count,const D3D12_RESOURCE_BARRIER *barriers) { This->lpVtbl->ResourceBarrier(This,barrier_count,barriers); } static FORCEINLINE void ID3D12GraphicsCommandList1_ExecuteBundle(ID3D12GraphicsCommandList1* This,ID3D12GraphicsCommandList *command_list) { This->lpVtbl->ExecuteBundle(This,command_list); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetDescriptorHeaps(ID3D12GraphicsCommandList1* This,UINT heap_count,ID3D12DescriptorHeap *const *heaps) { This->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRootSignature(ID3D12GraphicsCommandList1* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetComputeRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRootSignature(ID3D12GraphicsCommandList1* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetGraphicsRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRootDescriptorTable(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRootDescriptorTable(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRoot32BitConstant(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRoot32BitConstant(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRoot32BitConstants(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRoot32BitConstants(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRootConstantBufferView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRootConstantBufferView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRootShaderResourceView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRootShaderResourceView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetComputeRootUnorderedAccessView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetGraphicsRootUnorderedAccessView(ID3D12GraphicsCommandList1* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList1_IASetIndexBuffer(ID3D12GraphicsCommandList1* This,const D3D12_INDEX_BUFFER_VIEW *view) { This->lpVtbl->IASetIndexBuffer(This,view); } static FORCEINLINE void ID3D12GraphicsCommandList1_IASetVertexBuffers(ID3D12GraphicsCommandList1* This,UINT start_slot,UINT view_count,const D3D12_VERTEX_BUFFER_VIEW *views) { This->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList1_SOSetTargets(ID3D12GraphicsCommandList1* This,UINT start_slot,UINT view_count,const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views) { This->lpVtbl->SOSetTargets(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList1_OMSetRenderTargets(ID3D12GraphicsCommandList1* This,UINT render_target_descriptor_count,const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors,WINBOOL single_descriptor_handle,const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor) { This->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList1_ClearDepthStencilView(ID3D12GraphicsCommandList1* This,D3D12_CPU_DESCRIPTOR_HANDLE dsv,D3D12_CLEAR_FLAGS flags,FLOAT depth,UINT8 stencil,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList1_ClearRenderTargetView(ID3D12GraphicsCommandList1* This,D3D12_CPU_DESCRIPTOR_HANDLE rtv,const FLOAT color[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList1_ClearUnorderedAccessViewUint(ID3D12GraphicsCommandList1* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const UINT values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList1_ClearUnorderedAccessViewFloat(ID3D12GraphicsCommandList1* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const float values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList1_DiscardResource(ID3D12GraphicsCommandList1* This,ID3D12Resource *resource,const D3D12_DISCARD_REGION *region) { This->lpVtbl->DiscardResource(This,resource,region); } static FORCEINLINE void ID3D12GraphicsCommandList1_BeginQuery(ID3D12GraphicsCommandList1* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->BeginQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList1_EndQuery(ID3D12GraphicsCommandList1* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->EndQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList1_ResolveQueryData(ID3D12GraphicsCommandList1* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT start_index,UINT query_count,ID3D12Resource *dst_buffer,UINT64 aligned_dst_buffer_offset) { This->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetPredication(ID3D12GraphicsCommandList1* This,ID3D12Resource *buffer,UINT64 aligned_buffer_offset,D3D12_PREDICATION_OP operation) { This->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetMarker(ID3D12GraphicsCommandList1* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->SetMarker(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList1_BeginEvent(ID3D12GraphicsCommandList1* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->BeginEvent(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList1_EndEvent(ID3D12GraphicsCommandList1* This) { This->lpVtbl->EndEvent(This); } static FORCEINLINE void ID3D12GraphicsCommandList1_ExecuteIndirect(ID3D12GraphicsCommandList1* This,ID3D12CommandSignature *command_signature,UINT max_command_count,ID3D12Resource *arg_buffer,UINT64 arg_buffer_offset,ID3D12Resource *count_buffer,UINT64 count_buffer_offset) { This->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset); } /*** ID3D12GraphicsCommandList1 methods ***/ static FORCEINLINE void ID3D12GraphicsCommandList1_AtomicCopyBufferUINT(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT dependent_resource_count,ID3D12Resource *const *dependent_resources,const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) { This->lpVtbl->AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges); } static FORCEINLINE void ID3D12GraphicsCommandList1_AtomicCopyBufferUINT64(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT dependent_resource_count,ID3D12Resource *const *dependent_resources,const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) { This->lpVtbl->AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges); } static FORCEINLINE void ID3D12GraphicsCommandList1_OMSetDepthBounds(ID3D12GraphicsCommandList1* This,FLOAT min,FLOAT max) { This->lpVtbl->OMSetDepthBounds(This,min,max); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetSamplePositions(ID3D12GraphicsCommandList1* This,UINT sample_count,UINT pixel_count,D3D12_SAMPLE_POSITION *sample_positions) { This->lpVtbl->SetSamplePositions(This,sample_count,pixel_count,sample_positions); } static FORCEINLINE void ID3D12GraphicsCommandList1_ResolveSubresourceRegion(ID3D12GraphicsCommandList1* This,ID3D12Resource *dst_resource,UINT dst_sub_resource_idx,UINT dst_x,UINT dst_y,ID3D12Resource *src_resource,UINT src_sub_resource_idx,D3D12_RECT *src_rect,DXGI_FORMAT format,D3D12_RESOLVE_MODE mode) { This->lpVtbl->ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode); } static FORCEINLINE void ID3D12GraphicsCommandList1_SetViewInstanceMask(ID3D12GraphicsCommandList1* This,UINT mask) { This->lpVtbl->SetViewInstanceMask(This,mask); } #endif #endif #endif #endif /* __ID3D12GraphicsCommandList1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12GraphicsCommandList2 interface */ #ifndef __ID3D12GraphicsCommandList2_INTERFACE_DEFINED__ #define __ID3D12GraphicsCommandList2_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12GraphicsCommandList2, 0x38c3e585, 0xff17, 0x412c, 0x91,0x50, 0x4f,0xc6,0xf9,0xd7,0x2a,0x28); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("38c3e585-ff17-412c-9150-4fc6f9d72a28") ID3D12GraphicsCommandList2 : public ID3D12GraphicsCommandList1 { virtual void STDMETHODCALLTYPE WriteBufferImmediate( UINT count, const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *parameters, const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12GraphicsCommandList2, 0x38c3e585, 0xff17, 0x412c, 0x91,0x50, 0x4f,0xc6,0xf9,0xd7,0x2a,0x28) #endif #else typedef struct ID3D12GraphicsCommandList2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12GraphicsCommandList2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12GraphicsCommandList2 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12GraphicsCommandList2 *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12GraphicsCommandList2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12GraphicsCommandList2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12GraphicsCommandList2 *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12GraphicsCommandList2 *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12GraphicsCommandList2 *This, REFIID riid, void **device); /*** ID3D12CommandList methods ***/ D3D12_COMMAND_LIST_TYPE (STDMETHODCALLTYPE *GetType)( ID3D12GraphicsCommandList2 *This); /*** ID3D12GraphicsCommandList methods ***/ HRESULT (STDMETHODCALLTYPE *Close)( ID3D12GraphicsCommandList2 *This); HRESULT (STDMETHODCALLTYPE *Reset)( ID3D12GraphicsCommandList2 *This, ID3D12CommandAllocator *allocator, ID3D12PipelineState *initial_state); void (STDMETHODCALLTYPE *ClearState)( ID3D12GraphicsCommandList2 *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *DrawInstanced)( ID3D12GraphicsCommandList2 *This, UINT vertex_count_per_instance, UINT instance_count, UINT start_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *DrawIndexedInstanced)( ID3D12GraphicsCommandList2 *This, UINT index_count_per_instance, UINT instance_count, UINT start_vertex_location, INT base_vertex_location, UINT start_instance_location); void (STDMETHODCALLTYPE *Dispatch)( ID3D12GraphicsCommandList2 *This, UINT x, UINT u, UINT z); void (STDMETHODCALLTYPE *CopyBufferRegion)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT64 byte_count); void (STDMETHODCALLTYPE *CopyTextureRegion)( ID3D12GraphicsCommandList2 *This, const D3D12_TEXTURE_COPY_LOCATION *dst, UINT dst_x, UINT dst_y, UINT dst_z, const D3D12_TEXTURE_COPY_LOCATION *src, const D3D12_BOX *src_box); void (STDMETHODCALLTYPE *CopyResource)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_resource, ID3D12Resource *src_resource); void (STDMETHODCALLTYPE *CopyTiles)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *tiled_resource, const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate, const D3D12_TILE_REGION_SIZE *tile_region_size, ID3D12Resource *buffer, UINT64 buffer_offset, D3D12_TILE_COPY_FLAGS flags); void (STDMETHODCALLTYPE *ResolveSubresource)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_resource, UINT dst_sub_resource, ID3D12Resource *src_resource, UINT src_sub_resource, DXGI_FORMAT format); void (STDMETHODCALLTYPE *IASetPrimitiveTopology)( ID3D12GraphicsCommandList2 *This, D3D12_PRIMITIVE_TOPOLOGY primitive_topology); void (STDMETHODCALLTYPE *RSSetViewports)( ID3D12GraphicsCommandList2 *This, UINT viewport_count, const D3D12_VIEWPORT *viewports); void (STDMETHODCALLTYPE *RSSetScissorRects)( ID3D12GraphicsCommandList2 *This, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *OMSetBlendFactor)( ID3D12GraphicsCommandList2 *This, const FLOAT blend_factor[4]); void (STDMETHODCALLTYPE *OMSetStencilRef)( ID3D12GraphicsCommandList2 *This, UINT stencil_ref); void (STDMETHODCALLTYPE *SetPipelineState)( ID3D12GraphicsCommandList2 *This, ID3D12PipelineState *pipeline_state); void (STDMETHODCALLTYPE *ResourceBarrier)( ID3D12GraphicsCommandList2 *This, UINT barrier_count, const D3D12_RESOURCE_BARRIER *barriers); void (STDMETHODCALLTYPE *ExecuteBundle)( ID3D12GraphicsCommandList2 *This, ID3D12GraphicsCommandList *command_list); void (STDMETHODCALLTYPE *SetDescriptorHeaps)( ID3D12GraphicsCommandList2 *This, UINT heap_count, ID3D12DescriptorHeap *const *heaps); void (STDMETHODCALLTYPE *SetComputeRootSignature)( ID3D12GraphicsCommandList2 *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetGraphicsRootSignature)( ID3D12GraphicsCommandList2 *This, ID3D12RootSignature *root_signature); void (STDMETHODCALLTYPE *SetComputeRootDescriptorTable)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetGraphicsRootDescriptorTable)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstant)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstant)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, UINT data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRoot32BitConstants)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetGraphicsRoot32BitConstants)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, UINT constant_count, const void *data, UINT dst_offset); void (STDMETHODCALLTYPE *SetComputeRootConstantBufferView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootConstantBufferView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootShaderResourceView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootShaderResourceView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetComputeRootUnorderedAccessView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *SetGraphicsRootUnorderedAccessView)( ID3D12GraphicsCommandList2 *This, UINT root_parameter_index, D3D12_GPU_VIRTUAL_ADDRESS address); void (STDMETHODCALLTYPE *IASetIndexBuffer)( ID3D12GraphicsCommandList2 *This, const D3D12_INDEX_BUFFER_VIEW *view); void (STDMETHODCALLTYPE *IASetVertexBuffers)( ID3D12GraphicsCommandList2 *This, UINT start_slot, UINT view_count, const D3D12_VERTEX_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *SOSetTargets)( ID3D12GraphicsCommandList2 *This, UINT start_slot, UINT view_count, const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views); void (STDMETHODCALLTYPE *OMSetRenderTargets)( ID3D12GraphicsCommandList2 *This, UINT render_target_descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors, WINBOOL single_descriptor_handle, const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor); void (STDMETHODCALLTYPE *ClearDepthStencilView)( ID3D12GraphicsCommandList2 *This, D3D12_CPU_DESCRIPTOR_HANDLE dsv, D3D12_CLEAR_FLAGS flags, FLOAT depth, UINT8 stencil, UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearRenderTargetView)( ID3D12GraphicsCommandList2 *This, D3D12_CPU_DESCRIPTOR_HANDLE rtv, const FLOAT color[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewUint)( ID3D12GraphicsCommandList2 *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const UINT values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *ClearUnorderedAccessViewFloat)( ID3D12GraphicsCommandList2 *This, D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle, D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle, ID3D12Resource *resource, const float values[4], UINT rect_count, const D3D12_RECT *rects); void (STDMETHODCALLTYPE *DiscardResource)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *resource, const D3D12_DISCARD_REGION *region); void (STDMETHODCALLTYPE *BeginQuery)( ID3D12GraphicsCommandList2 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *EndQuery)( ID3D12GraphicsCommandList2 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT index); void (STDMETHODCALLTYPE *ResolveQueryData)( ID3D12GraphicsCommandList2 *This, ID3D12QueryHeap *heap, D3D12_QUERY_TYPE type, UINT start_index, UINT query_count, ID3D12Resource *dst_buffer, UINT64 aligned_dst_buffer_offset); void (STDMETHODCALLTYPE *SetPredication)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *buffer, UINT64 aligned_buffer_offset, D3D12_PREDICATION_OP operation); void (STDMETHODCALLTYPE *SetMarker)( ID3D12GraphicsCommandList2 *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *BeginEvent)( ID3D12GraphicsCommandList2 *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *EndEvent)( ID3D12GraphicsCommandList2 *This); void (STDMETHODCALLTYPE *ExecuteIndirect)( ID3D12GraphicsCommandList2 *This, ID3D12CommandSignature *command_signature, UINT max_command_count, ID3D12Resource *arg_buffer, UINT64 arg_buffer_offset, ID3D12Resource *count_buffer, UINT64 count_buffer_offset); /*** ID3D12GraphicsCommandList1 methods ***/ void (STDMETHODCALLTYPE *AtomicCopyBufferUINT)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges); void (STDMETHODCALLTYPE *AtomicCopyBufferUINT64)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_buffer, UINT64 dst_offset, ID3D12Resource *src_buffer, UINT64 src_offset, UINT dependent_resource_count, ID3D12Resource *const *dependent_resources, const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges); void (STDMETHODCALLTYPE *OMSetDepthBounds)( ID3D12GraphicsCommandList2 *This, FLOAT min, FLOAT max); void (STDMETHODCALLTYPE *SetSamplePositions)( ID3D12GraphicsCommandList2 *This, UINT sample_count, UINT pixel_count, D3D12_SAMPLE_POSITION *sample_positions); void (STDMETHODCALLTYPE *ResolveSubresourceRegion)( ID3D12GraphicsCommandList2 *This, ID3D12Resource *dst_resource, UINT dst_sub_resource_idx, UINT dst_x, UINT dst_y, ID3D12Resource *src_resource, UINT src_sub_resource_idx, D3D12_RECT *src_rect, DXGI_FORMAT format, D3D12_RESOLVE_MODE mode); void (STDMETHODCALLTYPE *SetViewInstanceMask)( ID3D12GraphicsCommandList2 *This, UINT mask); /*** ID3D12GraphicsCommandList2 methods ***/ void (STDMETHODCALLTYPE *WriteBufferImmediate)( ID3D12GraphicsCommandList2 *This, UINT count, const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *parameters, const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes); END_INTERFACE } ID3D12GraphicsCommandList2Vtbl; interface ID3D12GraphicsCommandList2 { CONST_VTBL ID3D12GraphicsCommandList2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12GraphicsCommandList2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12GraphicsCommandList2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12GraphicsCommandList2_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12GraphicsCommandList2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12GraphicsCommandList2_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12GraphicsCommandList2_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12GraphicsCommandList2_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandList methods ***/ #define ID3D12GraphicsCommandList2_GetType(This) (This)->lpVtbl->GetType(This) /*** ID3D12GraphicsCommandList methods ***/ #define ID3D12GraphicsCommandList2_Close(This) (This)->lpVtbl->Close(This) #define ID3D12GraphicsCommandList2_Reset(This,allocator,initial_state) (This)->lpVtbl->Reset(This,allocator,initial_state) #define ID3D12GraphicsCommandList2_ClearState(This,pipeline_state) (This)->lpVtbl->ClearState(This,pipeline_state) #define ID3D12GraphicsCommandList2_DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) (This)->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList2_DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) (This)->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location) #define ID3D12GraphicsCommandList2_Dispatch(This,x,u,z) (This)->lpVtbl->Dispatch(This,x,u,z) #define ID3D12GraphicsCommandList2_CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) (This)->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count) #define ID3D12GraphicsCommandList2_CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) (This)->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box) #define ID3D12GraphicsCommandList2_CopyResource(This,dst_resource,src_resource) (This)->lpVtbl->CopyResource(This,dst_resource,src_resource) #define ID3D12GraphicsCommandList2_CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) (This)->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags) #define ID3D12GraphicsCommandList2_ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) (This)->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format) #define ID3D12GraphicsCommandList2_IASetPrimitiveTopology(This,primitive_topology) (This)->lpVtbl->IASetPrimitiveTopology(This,primitive_topology) #define ID3D12GraphicsCommandList2_RSSetViewports(This,viewport_count,viewports) (This)->lpVtbl->RSSetViewports(This,viewport_count,viewports) #define ID3D12GraphicsCommandList2_RSSetScissorRects(This,rect_count,rects) (This)->lpVtbl->RSSetScissorRects(This,rect_count,rects) #define ID3D12GraphicsCommandList2_OMSetBlendFactor(This,blend_factor) (This)->lpVtbl->OMSetBlendFactor(This,blend_factor) #define ID3D12GraphicsCommandList2_OMSetStencilRef(This,stencil_ref) (This)->lpVtbl->OMSetStencilRef(This,stencil_ref) #define ID3D12GraphicsCommandList2_SetPipelineState(This,pipeline_state) (This)->lpVtbl->SetPipelineState(This,pipeline_state) #define ID3D12GraphicsCommandList2_ResourceBarrier(This,barrier_count,barriers) (This)->lpVtbl->ResourceBarrier(This,barrier_count,barriers) #define ID3D12GraphicsCommandList2_ExecuteBundle(This,command_list) (This)->lpVtbl->ExecuteBundle(This,command_list) #define ID3D12GraphicsCommandList2_SetDescriptorHeaps(This,heap_count,heaps) (This)->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps) #define ID3D12GraphicsCommandList2_SetComputeRootSignature(This,root_signature) (This)->lpVtbl->SetComputeRootSignature(This,root_signature) #define ID3D12GraphicsCommandList2_SetGraphicsRootSignature(This,root_signature) (This)->lpVtbl->SetGraphicsRootSignature(This,root_signature) #define ID3D12GraphicsCommandList2_SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList2_SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) (This)->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor) #define ID3D12GraphicsCommandList2_SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList2_SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset) #define ID3D12GraphicsCommandList2_SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList2_SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) (This)->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset) #define ID3D12GraphicsCommandList2_SetComputeRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_SetGraphicsRootConstantBufferView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_SetComputeRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_SetGraphicsRootShaderResourceView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_SetComputeRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) (This)->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address) #define ID3D12GraphicsCommandList2_IASetIndexBuffer(This,view) (This)->lpVtbl->IASetIndexBuffer(This,view) #define ID3D12GraphicsCommandList2_IASetVertexBuffers(This,start_slot,view_count,views) (This)->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList2_SOSetTargets(This,start_slot,view_count,views) (This)->lpVtbl->SOSetTargets(This,start_slot,view_count,views) #define ID3D12GraphicsCommandList2_OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) (This)->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor) #define ID3D12GraphicsCommandList2_ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) (This)->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects) #define ID3D12GraphicsCommandList2_ClearRenderTargetView(This,rtv,color,rect_count,rects) (This)->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects) #define ID3D12GraphicsCommandList2_ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList2_ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) (This)->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects) #define ID3D12GraphicsCommandList2_DiscardResource(This,resource,region) (This)->lpVtbl->DiscardResource(This,resource,region) #define ID3D12GraphicsCommandList2_BeginQuery(This,heap,type,index) (This)->lpVtbl->BeginQuery(This,heap,type,index) #define ID3D12GraphicsCommandList2_EndQuery(This,heap,type,index) (This)->lpVtbl->EndQuery(This,heap,type,index) #define ID3D12GraphicsCommandList2_ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) (This)->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset) #define ID3D12GraphicsCommandList2_SetPredication(This,buffer,aligned_buffer_offset,operation) (This)->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation) #define ID3D12GraphicsCommandList2_SetMarker(This,metadata,data,size) (This)->lpVtbl->SetMarker(This,metadata,data,size) #define ID3D12GraphicsCommandList2_BeginEvent(This,metadata,data,size) (This)->lpVtbl->BeginEvent(This,metadata,data,size) #define ID3D12GraphicsCommandList2_EndEvent(This) (This)->lpVtbl->EndEvent(This) #define ID3D12GraphicsCommandList2_ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) (This)->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset) /*** ID3D12GraphicsCommandList1 methods ***/ #define ID3D12GraphicsCommandList2_AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) (This)->lpVtbl->AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) #define ID3D12GraphicsCommandList2_AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) (This)->lpVtbl->AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges) #define ID3D12GraphicsCommandList2_OMSetDepthBounds(This,min,max) (This)->lpVtbl->OMSetDepthBounds(This,min,max) #define ID3D12GraphicsCommandList2_SetSamplePositions(This,sample_count,pixel_count,sample_positions) (This)->lpVtbl->SetSamplePositions(This,sample_count,pixel_count,sample_positions) #define ID3D12GraphicsCommandList2_ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode) (This)->lpVtbl->ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode) #define ID3D12GraphicsCommandList2_SetViewInstanceMask(This,mask) (This)->lpVtbl->SetViewInstanceMask(This,mask) /*** ID3D12GraphicsCommandList2 methods ***/ #define ID3D12GraphicsCommandList2_WriteBufferImmediate(This,count,parameters,modes) (This)->lpVtbl->WriteBufferImmediate(This,count,parameters,modes) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_QueryInterface(ID3D12GraphicsCommandList2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12GraphicsCommandList2_AddRef(ID3D12GraphicsCommandList2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12GraphicsCommandList2_Release(ID3D12GraphicsCommandList2* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_GetPrivateData(ID3D12GraphicsCommandList2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_SetPrivateData(ID3D12GraphicsCommandList2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_SetPrivateDataInterface(ID3D12GraphicsCommandList2* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_SetName(ID3D12GraphicsCommandList2* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_GetDevice(ID3D12GraphicsCommandList2* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandList methods ***/ static FORCEINLINE D3D12_COMMAND_LIST_TYPE ID3D12GraphicsCommandList2_GetType(ID3D12GraphicsCommandList2* This) { return This->lpVtbl->GetType(This); } /*** ID3D12GraphicsCommandList methods ***/ static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_Close(ID3D12GraphicsCommandList2* This) { return This->lpVtbl->Close(This); } static FORCEINLINE HRESULT ID3D12GraphicsCommandList2_Reset(ID3D12GraphicsCommandList2* This,ID3D12CommandAllocator *allocator,ID3D12PipelineState *initial_state) { return This->lpVtbl->Reset(This,allocator,initial_state); } static FORCEINLINE void ID3D12GraphicsCommandList2_ClearState(ID3D12GraphicsCommandList2* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->ClearState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList2_DrawInstanced(ID3D12GraphicsCommandList2* This,UINT vertex_count_per_instance,UINT instance_count,UINT start_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawInstanced(This,vertex_count_per_instance,instance_count,start_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList2_DrawIndexedInstanced(ID3D12GraphicsCommandList2* This,UINT index_count_per_instance,UINT instance_count,UINT start_vertex_location,INT base_vertex_location,UINT start_instance_location) { This->lpVtbl->DrawIndexedInstanced(This,index_count_per_instance,instance_count,start_vertex_location,base_vertex_location,start_instance_location); } static FORCEINLINE void ID3D12GraphicsCommandList2_Dispatch(ID3D12GraphicsCommandList2* This,UINT x,UINT u,UINT z) { This->lpVtbl->Dispatch(This,x,u,z); } static FORCEINLINE void ID3D12GraphicsCommandList2_CopyBufferRegion(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT64 byte_count) { This->lpVtbl->CopyBufferRegion(This,dst_buffer,dst_offset,src_buffer,src_offset,byte_count); } static FORCEINLINE void ID3D12GraphicsCommandList2_CopyTextureRegion(ID3D12GraphicsCommandList2* This,const D3D12_TEXTURE_COPY_LOCATION *dst,UINT dst_x,UINT dst_y,UINT dst_z,const D3D12_TEXTURE_COPY_LOCATION *src,const D3D12_BOX *src_box) { This->lpVtbl->CopyTextureRegion(This,dst,dst_x,dst_y,dst_z,src,src_box); } static FORCEINLINE void ID3D12GraphicsCommandList2_CopyResource(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_resource,ID3D12Resource *src_resource) { This->lpVtbl->CopyResource(This,dst_resource,src_resource); } static FORCEINLINE void ID3D12GraphicsCommandList2_CopyTiles(ID3D12GraphicsCommandList2* This,ID3D12Resource *tiled_resource,const D3D12_TILED_RESOURCE_COORDINATE *tile_region_start_coordinate,const D3D12_TILE_REGION_SIZE *tile_region_size,ID3D12Resource *buffer,UINT64 buffer_offset,D3D12_TILE_COPY_FLAGS flags) { This->lpVtbl->CopyTiles(This,tiled_resource,tile_region_start_coordinate,tile_region_size,buffer,buffer_offset,flags); } static FORCEINLINE void ID3D12GraphicsCommandList2_ResolveSubresource(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_resource,UINT dst_sub_resource,ID3D12Resource *src_resource,UINT src_sub_resource,DXGI_FORMAT format) { This->lpVtbl->ResolveSubresource(This,dst_resource,dst_sub_resource,src_resource,src_sub_resource,format); } static FORCEINLINE void ID3D12GraphicsCommandList2_IASetPrimitiveTopology(ID3D12GraphicsCommandList2* This,D3D12_PRIMITIVE_TOPOLOGY primitive_topology) { This->lpVtbl->IASetPrimitiveTopology(This,primitive_topology); } static FORCEINLINE void ID3D12GraphicsCommandList2_RSSetViewports(ID3D12GraphicsCommandList2* This,UINT viewport_count,const D3D12_VIEWPORT *viewports) { This->lpVtbl->RSSetViewports(This,viewport_count,viewports); } static FORCEINLINE void ID3D12GraphicsCommandList2_RSSetScissorRects(ID3D12GraphicsCommandList2* This,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->RSSetScissorRects(This,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList2_OMSetBlendFactor(ID3D12GraphicsCommandList2* This,const FLOAT blend_factor[4]) { This->lpVtbl->OMSetBlendFactor(This,blend_factor); } static FORCEINLINE void ID3D12GraphicsCommandList2_OMSetStencilRef(ID3D12GraphicsCommandList2* This,UINT stencil_ref) { This->lpVtbl->OMSetStencilRef(This,stencil_ref); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetPipelineState(ID3D12GraphicsCommandList2* This,ID3D12PipelineState *pipeline_state) { This->lpVtbl->SetPipelineState(This,pipeline_state); } static FORCEINLINE void ID3D12GraphicsCommandList2_ResourceBarrier(ID3D12GraphicsCommandList2* This,UINT barrier_count,const D3D12_RESOURCE_BARRIER *barriers) { This->lpVtbl->ResourceBarrier(This,barrier_count,barriers); } static FORCEINLINE void ID3D12GraphicsCommandList2_ExecuteBundle(ID3D12GraphicsCommandList2* This,ID3D12GraphicsCommandList *command_list) { This->lpVtbl->ExecuteBundle(This,command_list); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetDescriptorHeaps(ID3D12GraphicsCommandList2* This,UINT heap_count,ID3D12DescriptorHeap *const *heaps) { This->lpVtbl->SetDescriptorHeaps(This,heap_count,heaps); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRootSignature(ID3D12GraphicsCommandList2* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetComputeRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRootSignature(ID3D12GraphicsCommandList2* This,ID3D12RootSignature *root_signature) { This->lpVtbl->SetGraphicsRootSignature(This,root_signature); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRootDescriptorTable(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetComputeRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRootDescriptorTable(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_DESCRIPTOR_HANDLE base_descriptor) { This->lpVtbl->SetGraphicsRootDescriptorTable(This,root_parameter_index,base_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRoot32BitConstant(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRoot32BitConstant(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,UINT data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstant(This,root_parameter_index,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRoot32BitConstants(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetComputeRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRoot32BitConstants(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,UINT constant_count,const void *data,UINT dst_offset) { This->lpVtbl->SetGraphicsRoot32BitConstants(This,root_parameter_index,constant_count,data,dst_offset); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRootConstantBufferView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRootConstantBufferView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootConstantBufferView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRootShaderResourceView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRootShaderResourceView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootShaderResourceView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetComputeRootUnorderedAccessView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetComputeRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetGraphicsRootUnorderedAccessView(ID3D12GraphicsCommandList2* This,UINT root_parameter_index,D3D12_GPU_VIRTUAL_ADDRESS address) { This->lpVtbl->SetGraphicsRootUnorderedAccessView(This,root_parameter_index,address); } static FORCEINLINE void ID3D12GraphicsCommandList2_IASetIndexBuffer(ID3D12GraphicsCommandList2* This,const D3D12_INDEX_BUFFER_VIEW *view) { This->lpVtbl->IASetIndexBuffer(This,view); } static FORCEINLINE void ID3D12GraphicsCommandList2_IASetVertexBuffers(ID3D12GraphicsCommandList2* This,UINT start_slot,UINT view_count,const D3D12_VERTEX_BUFFER_VIEW *views) { This->lpVtbl->IASetVertexBuffers(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList2_SOSetTargets(ID3D12GraphicsCommandList2* This,UINT start_slot,UINT view_count,const D3D12_STREAM_OUTPUT_BUFFER_VIEW *views) { This->lpVtbl->SOSetTargets(This,start_slot,view_count,views); } static FORCEINLINE void ID3D12GraphicsCommandList2_OMSetRenderTargets(ID3D12GraphicsCommandList2* This,UINT render_target_descriptor_count,const D3D12_CPU_DESCRIPTOR_HANDLE *render_target_descriptors,WINBOOL single_descriptor_handle,const D3D12_CPU_DESCRIPTOR_HANDLE *depth_stencil_descriptor) { This->lpVtbl->OMSetRenderTargets(This,render_target_descriptor_count,render_target_descriptors,single_descriptor_handle,depth_stencil_descriptor); } static FORCEINLINE void ID3D12GraphicsCommandList2_ClearDepthStencilView(ID3D12GraphicsCommandList2* This,D3D12_CPU_DESCRIPTOR_HANDLE dsv,D3D12_CLEAR_FLAGS flags,FLOAT depth,UINT8 stencil,UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearDepthStencilView(This,dsv,flags,depth,stencil,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList2_ClearRenderTargetView(ID3D12GraphicsCommandList2* This,D3D12_CPU_DESCRIPTOR_HANDLE rtv,const FLOAT color[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearRenderTargetView(This,rtv,color,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList2_ClearUnorderedAccessViewUint(ID3D12GraphicsCommandList2* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const UINT values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewUint(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList2_ClearUnorderedAccessViewFloat(ID3D12GraphicsCommandList2* This,D3D12_GPU_DESCRIPTOR_HANDLE gpu_handle,D3D12_CPU_DESCRIPTOR_HANDLE cpu_handle,ID3D12Resource *resource,const float values[4],UINT rect_count,const D3D12_RECT *rects) { This->lpVtbl->ClearUnorderedAccessViewFloat(This,gpu_handle,cpu_handle,resource,values,rect_count,rects); } static FORCEINLINE void ID3D12GraphicsCommandList2_DiscardResource(ID3D12GraphicsCommandList2* This,ID3D12Resource *resource,const D3D12_DISCARD_REGION *region) { This->lpVtbl->DiscardResource(This,resource,region); } static FORCEINLINE void ID3D12GraphicsCommandList2_BeginQuery(ID3D12GraphicsCommandList2* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->BeginQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList2_EndQuery(ID3D12GraphicsCommandList2* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT index) { This->lpVtbl->EndQuery(This,heap,type,index); } static FORCEINLINE void ID3D12GraphicsCommandList2_ResolveQueryData(ID3D12GraphicsCommandList2* This,ID3D12QueryHeap *heap,D3D12_QUERY_TYPE type,UINT start_index,UINT query_count,ID3D12Resource *dst_buffer,UINT64 aligned_dst_buffer_offset) { This->lpVtbl->ResolveQueryData(This,heap,type,start_index,query_count,dst_buffer,aligned_dst_buffer_offset); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetPredication(ID3D12GraphicsCommandList2* This,ID3D12Resource *buffer,UINT64 aligned_buffer_offset,D3D12_PREDICATION_OP operation) { This->lpVtbl->SetPredication(This,buffer,aligned_buffer_offset,operation); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetMarker(ID3D12GraphicsCommandList2* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->SetMarker(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList2_BeginEvent(ID3D12GraphicsCommandList2* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->BeginEvent(This,metadata,data,size); } static FORCEINLINE void ID3D12GraphicsCommandList2_EndEvent(ID3D12GraphicsCommandList2* This) { This->lpVtbl->EndEvent(This); } static FORCEINLINE void ID3D12GraphicsCommandList2_ExecuteIndirect(ID3D12GraphicsCommandList2* This,ID3D12CommandSignature *command_signature,UINT max_command_count,ID3D12Resource *arg_buffer,UINT64 arg_buffer_offset,ID3D12Resource *count_buffer,UINT64 count_buffer_offset) { This->lpVtbl->ExecuteIndirect(This,command_signature,max_command_count,arg_buffer,arg_buffer_offset,count_buffer,count_buffer_offset); } /*** ID3D12GraphicsCommandList1 methods ***/ static FORCEINLINE void ID3D12GraphicsCommandList2_AtomicCopyBufferUINT(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT dependent_resource_count,ID3D12Resource *const *dependent_resources,const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) { This->lpVtbl->AtomicCopyBufferUINT(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges); } static FORCEINLINE void ID3D12GraphicsCommandList2_AtomicCopyBufferUINT64(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_buffer,UINT64 dst_offset,ID3D12Resource *src_buffer,UINT64 src_offset,UINT dependent_resource_count,ID3D12Resource *const *dependent_resources,const D3D12_SUBRESOURCE_RANGE_UINT64 *dependent_sub_resource_ranges) { This->lpVtbl->AtomicCopyBufferUINT64(This,dst_buffer,dst_offset,src_buffer,src_offset,dependent_resource_count,dependent_resources,dependent_sub_resource_ranges); } static FORCEINLINE void ID3D12GraphicsCommandList2_OMSetDepthBounds(ID3D12GraphicsCommandList2* This,FLOAT min,FLOAT max) { This->lpVtbl->OMSetDepthBounds(This,min,max); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetSamplePositions(ID3D12GraphicsCommandList2* This,UINT sample_count,UINT pixel_count,D3D12_SAMPLE_POSITION *sample_positions) { This->lpVtbl->SetSamplePositions(This,sample_count,pixel_count,sample_positions); } static FORCEINLINE void ID3D12GraphicsCommandList2_ResolveSubresourceRegion(ID3D12GraphicsCommandList2* This,ID3D12Resource *dst_resource,UINT dst_sub_resource_idx,UINT dst_x,UINT dst_y,ID3D12Resource *src_resource,UINT src_sub_resource_idx,D3D12_RECT *src_rect,DXGI_FORMAT format,D3D12_RESOLVE_MODE mode) { This->lpVtbl->ResolveSubresourceRegion(This,dst_resource,dst_sub_resource_idx,dst_x,dst_y,src_resource,src_sub_resource_idx,src_rect,format,mode); } static FORCEINLINE void ID3D12GraphicsCommandList2_SetViewInstanceMask(ID3D12GraphicsCommandList2* This,UINT mask) { This->lpVtbl->SetViewInstanceMask(This,mask); } /*** ID3D12GraphicsCommandList2 methods ***/ static FORCEINLINE void ID3D12GraphicsCommandList2_WriteBufferImmediate(ID3D12GraphicsCommandList2* This,UINT count,const D3D12_WRITEBUFFERIMMEDIATE_PARAMETER *parameters,const D3D12_WRITEBUFFERIMMEDIATE_MODE *modes) { This->lpVtbl->WriteBufferImmediate(This,count,parameters,modes); } #endif #endif #endif #endif /* __ID3D12GraphicsCommandList2_INTERFACE_DEFINED__ */ typedef enum D3D12_TILE_RANGE_FLAGS { D3D12_TILE_RANGE_FLAG_NONE = 0x0, D3D12_TILE_RANGE_FLAG_NULL = 0x1, D3D12_TILE_RANGE_FLAG_SKIP = 0x2, D3D12_TILE_RANGE_FLAG_REUSE_SINGLE_TILE = 0x4 } D3D12_TILE_RANGE_FLAGS; typedef enum D3D12_TILE_MAPPING_FLAGS { D3D12_TILE_MAPPING_FLAG_NONE = 0x0, D3D12_TILE_MAPPING_FLAG_NO_HAZARD = 0x1 } D3D12_TILE_MAPPING_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_TILE_MAPPING_FLAGS); /***************************************************************************** * ID3D12CommandQueue interface */ #ifndef __ID3D12CommandQueue_INTERFACE_DEFINED__ #define __ID3D12CommandQueue_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12CommandQueue, 0x0ec870a6, 0x5d7e, 0x4c22, 0x8c,0xfc, 0x5b,0xaa,0xe0,0x76,0x16,0xed); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0ec870a6-5d7e-4c22-8cfc-5baae07616ed") ID3D12CommandQueue : public ID3D12Pageable { virtual void STDMETHODCALLTYPE UpdateTileMappings( ID3D12Resource *resource, UINT region_count, const D3D12_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D12_TILE_REGION_SIZE *region_sizes, UINT range_count, const D3D12_TILE_RANGE_FLAGS *range_flags, UINT *heap_range_offsets, UINT *range_tile_counts, D3D12_TILE_MAPPING_FLAGS flags) = 0; virtual void STDMETHODCALLTYPE CopyTileMappings( ID3D12Resource *dst_resource, const D3D12_TILED_RESOURCE_COORDINATE *dst_region_start_coordinate, ID3D12Resource *src_resource, const D3D12_TILED_RESOURCE_COORDINATE *src_region_start_coordinate, const D3D12_TILE_REGION_SIZE *region_size, D3D12_TILE_MAPPING_FLAGS flags) = 0; virtual void STDMETHODCALLTYPE ExecuteCommandLists( UINT command_list_count, ID3D12CommandList *const *command_lists) = 0; virtual void STDMETHODCALLTYPE SetMarker( UINT metadata, const void *data, UINT size) = 0; virtual void STDMETHODCALLTYPE BeginEvent( UINT metadata, const void *data, UINT size) = 0; virtual void STDMETHODCALLTYPE EndEvent( ) = 0; virtual HRESULT STDMETHODCALLTYPE Signal( ID3D12Fence *fence, UINT64 value) = 0; virtual HRESULT STDMETHODCALLTYPE Wait( ID3D12Fence *fence, UINT64 value) = 0; virtual HRESULT STDMETHODCALLTYPE GetTimestampFrequency( UINT64 *frequency) = 0; virtual HRESULT STDMETHODCALLTYPE GetClockCalibration( UINT64 *gpu_timestamp, UINT64 *cpu_timestamp) = 0; #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_COMMAND_QUEUE_DESC* STDMETHODCALLTYPE GetDesc( D3D12_COMMAND_QUEUE_DESC *__ret) = 0; D3D12_COMMAND_QUEUE_DESC STDMETHODCALLTYPE GetDesc( ) { D3D12_COMMAND_QUEUE_DESC __ret; return *GetDesc(&__ret); } #else virtual D3D12_COMMAND_QUEUE_DESC STDMETHODCALLTYPE GetDesc( ) = 0; #endif }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12CommandQueue, 0x0ec870a6, 0x5d7e, 0x4c22, 0x8c,0xfc, 0x5b,0xaa,0xe0,0x76,0x16,0xed) #endif #else typedef struct ID3D12CommandQueueVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12CommandQueue *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12CommandQueue *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12CommandQueue *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12CommandQueue *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12CommandQueue *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12CommandQueue *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12CommandQueue *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12CommandQueue *This, REFIID riid, void **device); /*** ID3D12CommandQueue methods ***/ void (STDMETHODCALLTYPE *UpdateTileMappings)( ID3D12CommandQueue *This, ID3D12Resource *resource, UINT region_count, const D3D12_TILED_RESOURCE_COORDINATE *region_start_coordinates, const D3D12_TILE_REGION_SIZE *region_sizes, UINT range_count, const D3D12_TILE_RANGE_FLAGS *range_flags, UINT *heap_range_offsets, UINT *range_tile_counts, D3D12_TILE_MAPPING_FLAGS flags); void (STDMETHODCALLTYPE *CopyTileMappings)( ID3D12CommandQueue *This, ID3D12Resource *dst_resource, const D3D12_TILED_RESOURCE_COORDINATE *dst_region_start_coordinate, ID3D12Resource *src_resource, const D3D12_TILED_RESOURCE_COORDINATE *src_region_start_coordinate, const D3D12_TILE_REGION_SIZE *region_size, D3D12_TILE_MAPPING_FLAGS flags); void (STDMETHODCALLTYPE *ExecuteCommandLists)( ID3D12CommandQueue *This, UINT command_list_count, ID3D12CommandList *const *command_lists); void (STDMETHODCALLTYPE *SetMarker)( ID3D12CommandQueue *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *BeginEvent)( ID3D12CommandQueue *This, UINT metadata, const void *data, UINT size); void (STDMETHODCALLTYPE *EndEvent)( ID3D12CommandQueue *This); HRESULT (STDMETHODCALLTYPE *Signal)( ID3D12CommandQueue *This, ID3D12Fence *fence, UINT64 value); HRESULT (STDMETHODCALLTYPE *Wait)( ID3D12CommandQueue *This, ID3D12Fence *fence, UINT64 value); HRESULT (STDMETHODCALLTYPE *GetTimestampFrequency)( ID3D12CommandQueue *This, UINT64 *frequency); HRESULT (STDMETHODCALLTYPE *GetClockCalibration)( ID3D12CommandQueue *This, UINT64 *gpu_timestamp, UINT64 *cpu_timestamp); D3D12_COMMAND_QUEUE_DESC * (STDMETHODCALLTYPE *GetDesc)( ID3D12CommandQueue *This, D3D12_COMMAND_QUEUE_DESC *__ret); END_INTERFACE } ID3D12CommandQueueVtbl; interface ID3D12CommandQueue { CONST_VTBL ID3D12CommandQueueVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12CommandQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12CommandQueue_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12CommandQueue_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12CommandQueue_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12CommandQueue_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12CommandQueue_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12CommandQueue_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12CommandQueue_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandQueue methods ***/ #define ID3D12CommandQueue_UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,range_count,range_flags,heap_range_offsets,range_tile_counts,flags) (This)->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,range_count,range_flags,heap_range_offsets,range_tile_counts,flags) #define ID3D12CommandQueue_CopyTileMappings(This,dst_resource,dst_region_start_coordinate,src_resource,src_region_start_coordinate,region_size,flags) (This)->lpVtbl->CopyTileMappings(This,dst_resource,dst_region_start_coordinate,src_resource,src_region_start_coordinate,region_size,flags) #define ID3D12CommandQueue_ExecuteCommandLists(This,command_list_count,command_lists) (This)->lpVtbl->ExecuteCommandLists(This,command_list_count,command_lists) #define ID3D12CommandQueue_SetMarker(This,metadata,data,size) (This)->lpVtbl->SetMarker(This,metadata,data,size) #define ID3D12CommandQueue_BeginEvent(This,metadata,data,size) (This)->lpVtbl->BeginEvent(This,metadata,data,size) #define ID3D12CommandQueue_EndEvent(This) (This)->lpVtbl->EndEvent(This) #define ID3D12CommandQueue_Signal(This,fence,value) (This)->lpVtbl->Signal(This,fence,value) #define ID3D12CommandQueue_Wait(This,fence,value) (This)->lpVtbl->Wait(This,fence,value) #define ID3D12CommandQueue_GetTimestampFrequency(This,frequency) (This)->lpVtbl->GetTimestampFrequency(This,frequency) #define ID3D12CommandQueue_GetClockCalibration(This,gpu_timestamp,cpu_timestamp) (This)->lpVtbl->GetClockCalibration(This,gpu_timestamp,cpu_timestamp) #define ID3D12CommandQueue_GetDesc(This) ID3D12CommandQueue_GetDesc_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12CommandQueue_QueryInterface(ID3D12CommandQueue* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12CommandQueue_AddRef(ID3D12CommandQueue* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12CommandQueue_Release(ID3D12CommandQueue* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12CommandQueue_GetPrivateData(ID3D12CommandQueue* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandQueue_SetPrivateData(ID3D12CommandQueue* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandQueue_SetPrivateDataInterface(ID3D12CommandQueue* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12CommandQueue_SetName(ID3D12CommandQueue* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12CommandQueue_GetDevice(ID3D12CommandQueue* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandQueue methods ***/ static FORCEINLINE void ID3D12CommandQueue_UpdateTileMappings(ID3D12CommandQueue* This,ID3D12Resource *resource,UINT region_count,const D3D12_TILED_RESOURCE_COORDINATE *region_start_coordinates,const D3D12_TILE_REGION_SIZE *region_sizes,UINT range_count,const D3D12_TILE_RANGE_FLAGS *range_flags,UINT *heap_range_offsets,UINT *range_tile_counts,D3D12_TILE_MAPPING_FLAGS flags) { This->lpVtbl->UpdateTileMappings(This,resource,region_count,region_start_coordinates,region_sizes,range_count,range_flags,heap_range_offsets,range_tile_counts,flags); } static FORCEINLINE void ID3D12CommandQueue_CopyTileMappings(ID3D12CommandQueue* This,ID3D12Resource *dst_resource,const D3D12_TILED_RESOURCE_COORDINATE *dst_region_start_coordinate,ID3D12Resource *src_resource,const D3D12_TILED_RESOURCE_COORDINATE *src_region_start_coordinate,const D3D12_TILE_REGION_SIZE *region_size,D3D12_TILE_MAPPING_FLAGS flags) { This->lpVtbl->CopyTileMappings(This,dst_resource,dst_region_start_coordinate,src_resource,src_region_start_coordinate,region_size,flags); } static FORCEINLINE void ID3D12CommandQueue_ExecuteCommandLists(ID3D12CommandQueue* This,UINT command_list_count,ID3D12CommandList *const *command_lists) { This->lpVtbl->ExecuteCommandLists(This,command_list_count,command_lists); } static FORCEINLINE void ID3D12CommandQueue_SetMarker(ID3D12CommandQueue* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->SetMarker(This,metadata,data,size); } static FORCEINLINE void ID3D12CommandQueue_BeginEvent(ID3D12CommandQueue* This,UINT metadata,const void *data,UINT size) { This->lpVtbl->BeginEvent(This,metadata,data,size); } static FORCEINLINE void ID3D12CommandQueue_EndEvent(ID3D12CommandQueue* This) { This->lpVtbl->EndEvent(This); } static FORCEINLINE HRESULT ID3D12CommandQueue_Signal(ID3D12CommandQueue* This,ID3D12Fence *fence,UINT64 value) { return This->lpVtbl->Signal(This,fence,value); } static FORCEINLINE HRESULT ID3D12CommandQueue_Wait(ID3D12CommandQueue* This,ID3D12Fence *fence,UINT64 value) { return This->lpVtbl->Wait(This,fence,value); } static FORCEINLINE HRESULT ID3D12CommandQueue_GetTimestampFrequency(ID3D12CommandQueue* This,UINT64 *frequency) { return This->lpVtbl->GetTimestampFrequency(This,frequency); } static FORCEINLINE HRESULT ID3D12CommandQueue_GetClockCalibration(ID3D12CommandQueue* This,UINT64 *gpu_timestamp,UINT64 *cpu_timestamp) { return This->lpVtbl->GetClockCalibration(This,gpu_timestamp,cpu_timestamp); } static FORCEINLINE D3D12_COMMAND_QUEUE_DESC ID3D12CommandQueue_GetDesc(ID3D12CommandQueue* This) { D3D12_COMMAND_QUEUE_DESC __ret; return *This->lpVtbl->GetDesc(This,&__ret); } #endif #endif #endif #endif /* __ID3D12CommandQueue_INTERFACE_DEFINED__ */ typedef enum D3D12_FENCE_FLAGS { D3D12_FENCE_FLAG_NONE = 0x0, D3D12_FENCE_FLAG_SHARED = 0x1, D3D12_FENCE_FLAG_SHARED_CROSS_ADAPTER = 0x2 } D3D12_FENCE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS(D3D12_FENCE_FLAGS); typedef enum D3D12_QUERY_HEAP_TYPE { D3D12_QUERY_HEAP_TYPE_OCCLUSION = 0, D3D12_QUERY_HEAP_TYPE_TIMESTAMP = 1, D3D12_QUERY_HEAP_TYPE_PIPELINE_STATISTICS = 2, D3D12_QUERY_HEAP_TYPE_SO_STATISTICS = 3 } D3D12_QUERY_HEAP_TYPE; typedef struct D3D12_QUERY_HEAP_DESC { D3D12_QUERY_HEAP_TYPE Type; UINT Count; UINT NodeMask; } D3D12_QUERY_HEAP_DESC; typedef enum D3D12_INDIRECT_ARGUMENT_TYPE { D3D12_INDIRECT_ARGUMENT_TYPE_DRAW = 0, D3D12_INDIRECT_ARGUMENT_TYPE_DRAW_INDEXED = 1, D3D12_INDIRECT_ARGUMENT_TYPE_DISPATCH = 2, D3D12_INDIRECT_ARGUMENT_TYPE_VERTEX_BUFFER_VIEW = 3, D3D12_INDIRECT_ARGUMENT_TYPE_INDEX_BUFFER_VIEW = 4, D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT = 5, D3D12_INDIRECT_ARGUMENT_TYPE_CONSTANT_BUFFER_VIEW = 6, D3D12_INDIRECT_ARGUMENT_TYPE_SHADER_RESOURCE_VIEW = 7, D3D12_INDIRECT_ARGUMENT_TYPE_UNORDERED_ACCESS_VIEW = 8 } D3D12_INDIRECT_ARGUMENT_TYPE; typedef struct D3D12_INDIRECT_ARGUMENT_DESC { D3D12_INDIRECT_ARGUMENT_TYPE Type; __C89_NAMELESS union { struct { UINT Slot; } VertexBuffer; struct { UINT RootParameterIndex; UINT DestOffsetIn32BitValues; UINT Num32BitValuesToSet; } Constant; struct { UINT RootParameterIndex; } ConstantBufferView; struct { UINT RootParameterIndex; } ShaderResourceView; struct { UINT RootParameterIndex; } UnorderedAccessView; } __C89_NAMELESSUNIONNAME; } D3D12_INDIRECT_ARGUMENT_DESC; typedef struct D3D12_COMMAND_SIGNATURE_DESC { UINT ByteStride; UINT NumArgumentDescs; const D3D12_INDIRECT_ARGUMENT_DESC *pArgumentDescs; UINT NodeMask; } D3D12_COMMAND_SIGNATURE_DESC; /***************************************************************************** * ID3D12RootSignature interface */ #ifndef __ID3D12RootSignature_INTERFACE_DEFINED__ #define __ID3D12RootSignature_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12RootSignature, 0xc54a6b66, 0x72df, 0x4ee8, 0x8b,0xe5, 0xa9,0x46,0xa1,0x42,0x92,0x14); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c54a6b66-72df-4ee8-8be5-a946a1429214") ID3D12RootSignature : public ID3D12DeviceChild { }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12RootSignature, 0xc54a6b66, 0x72df, 0x4ee8, 0x8b,0xe5, 0xa9,0x46,0xa1,0x42,0x92,0x14) #endif #else typedef struct ID3D12RootSignatureVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12RootSignature *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12RootSignature *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12RootSignature *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12RootSignature *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12RootSignature *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12RootSignature *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12RootSignature *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12RootSignature *This, REFIID riid, void **device); END_INTERFACE } ID3D12RootSignatureVtbl; interface ID3D12RootSignature { CONST_VTBL ID3D12RootSignatureVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12RootSignature_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12RootSignature_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12RootSignature_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12RootSignature_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12RootSignature_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12RootSignature_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12RootSignature_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12RootSignature_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12RootSignature_QueryInterface(ID3D12RootSignature* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12RootSignature_AddRef(ID3D12RootSignature* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12RootSignature_Release(ID3D12RootSignature* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12RootSignature_GetPrivateData(ID3D12RootSignature* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12RootSignature_SetPrivateData(ID3D12RootSignature* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12RootSignature_SetPrivateDataInterface(ID3D12RootSignature* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12RootSignature_SetName(ID3D12RootSignature* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12RootSignature_GetDevice(ID3D12RootSignature* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __ID3D12RootSignature_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12PipelineState interface */ #ifndef __ID3D12PipelineState_INTERFACE_DEFINED__ #define __ID3D12PipelineState_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12PipelineState, 0x765a30f3, 0xf624, 0x4c6f, 0xa8,0x28, 0xac,0xe9,0x48,0x62,0x24,0x45); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("765a30f3-f624-4c6f-a828-ace948622445") ID3D12PipelineState : public ID3D12Pageable { virtual HRESULT STDMETHODCALLTYPE GetCachedBlob( ID3DBlob **blob) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12PipelineState, 0x765a30f3, 0xf624, 0x4c6f, 0xa8,0x28, 0xac,0xe9,0x48,0x62,0x24,0x45) #endif #else typedef struct ID3D12PipelineStateVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12PipelineState *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12PipelineState *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12PipelineState *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12PipelineState *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12PipelineState *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12PipelineState *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12PipelineState *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12PipelineState *This, REFIID riid, void **device); /*** ID3D12PipelineState methods ***/ HRESULT (STDMETHODCALLTYPE *GetCachedBlob)( ID3D12PipelineState *This, ID3DBlob **blob); END_INTERFACE } ID3D12PipelineStateVtbl; interface ID3D12PipelineState { CONST_VTBL ID3D12PipelineStateVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12PipelineState_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12PipelineState_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12PipelineState_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12PipelineState_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12PipelineState_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12PipelineState_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12PipelineState_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12PipelineState_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12PipelineState methods ***/ #define ID3D12PipelineState_GetCachedBlob(This,blob) (This)->lpVtbl->GetCachedBlob(This,blob) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12PipelineState_QueryInterface(ID3D12PipelineState* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12PipelineState_AddRef(ID3D12PipelineState* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12PipelineState_Release(ID3D12PipelineState* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12PipelineState_GetPrivateData(ID3D12PipelineState* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12PipelineState_SetPrivateData(ID3D12PipelineState* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12PipelineState_SetPrivateDataInterface(ID3D12PipelineState* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12PipelineState_SetName(ID3D12PipelineState* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12PipelineState_GetDevice(ID3D12PipelineState* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12PipelineState methods ***/ static FORCEINLINE HRESULT ID3D12PipelineState_GetCachedBlob(ID3D12PipelineState* This,ID3DBlob **blob) { return This->lpVtbl->GetCachedBlob(This,blob); } #endif #endif #endif #endif /* __ID3D12PipelineState_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Fence interface */ #ifndef __ID3D12Fence_INTERFACE_DEFINED__ #define __ID3D12Fence_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Fence, 0x0a753dcf, 0xc4d8, 0x4b91, 0xad,0xf6, 0xbe,0x5a,0x60,0xd9,0x5a,0x76); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0a753dcf-c4d8-4b91-adf6-be5a60d95a76") ID3D12Fence : public ID3D12Pageable { virtual UINT64 STDMETHODCALLTYPE GetCompletedValue( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetEventOnCompletion( UINT64 value, HANDLE event) = 0; virtual HRESULT STDMETHODCALLTYPE Signal( UINT64 value) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Fence, 0x0a753dcf, 0xc4d8, 0x4b91, 0xad,0xf6, 0xbe,0x5a,0x60,0xd9,0x5a,0x76) #endif #else typedef struct ID3D12FenceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Fence *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Fence *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Fence *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Fence *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Fence *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Fence *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Fence *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12Fence *This, REFIID riid, void **device); /*** ID3D12Fence methods ***/ UINT64 (STDMETHODCALLTYPE *GetCompletedValue)( ID3D12Fence *This); HRESULT (STDMETHODCALLTYPE *SetEventOnCompletion)( ID3D12Fence *This, UINT64 value, HANDLE event); HRESULT (STDMETHODCALLTYPE *Signal)( ID3D12Fence *This, UINT64 value); END_INTERFACE } ID3D12FenceVtbl; interface ID3D12Fence { CONST_VTBL ID3D12FenceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Fence_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Fence_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Fence_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Fence_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Fence_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Fence_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Fence_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12Fence_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12Fence methods ***/ #define ID3D12Fence_GetCompletedValue(This) (This)->lpVtbl->GetCompletedValue(This) #define ID3D12Fence_SetEventOnCompletion(This,value,event) (This)->lpVtbl->SetEventOnCompletion(This,value,event) #define ID3D12Fence_Signal(This,value) (This)->lpVtbl->Signal(This,value) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Fence_QueryInterface(ID3D12Fence* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Fence_AddRef(ID3D12Fence* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Fence_Release(ID3D12Fence* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Fence_GetPrivateData(ID3D12Fence* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Fence_SetPrivateData(ID3D12Fence* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Fence_SetPrivateDataInterface(ID3D12Fence* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Fence_SetName(ID3D12Fence* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12Fence_GetDevice(ID3D12Fence* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12Fence methods ***/ static FORCEINLINE UINT64 ID3D12Fence_GetCompletedValue(ID3D12Fence* This) { return This->lpVtbl->GetCompletedValue(This); } static FORCEINLINE HRESULT ID3D12Fence_SetEventOnCompletion(ID3D12Fence* This,UINT64 value,HANDLE event) { return This->lpVtbl->SetEventOnCompletion(This,value,event); } static FORCEINLINE HRESULT ID3D12Fence_Signal(ID3D12Fence* This,UINT64 value) { return This->lpVtbl->Signal(This,value); } #endif #endif #endif #endif /* __ID3D12Fence_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12CommandAllocator interface */ #ifndef __ID3D12CommandAllocator_INTERFACE_DEFINED__ #define __ID3D12CommandAllocator_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12CommandAllocator, 0x6102dee4, 0xaf59, 0x4b09, 0xb9,0x99, 0xb4,0x4d,0x73,0xf0,0x9b,0x24); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6102dee4-af59-4b09-b999-b44d73f09b24") ID3D12CommandAllocator : public ID3D12Pageable { virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12CommandAllocator, 0x6102dee4, 0xaf59, 0x4b09, 0xb9,0x99, 0xb4,0x4d,0x73,0xf0,0x9b,0x24) #endif #else typedef struct ID3D12CommandAllocatorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12CommandAllocator *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12CommandAllocator *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12CommandAllocator *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12CommandAllocator *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12CommandAllocator *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12CommandAllocator *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12CommandAllocator *This, const WCHAR *name); /*** ID3D12DeviceChild methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( ID3D12CommandAllocator *This, REFIID riid, void **device); /*** ID3D12CommandAllocator methods ***/ HRESULT (STDMETHODCALLTYPE *Reset)( ID3D12CommandAllocator *This); END_INTERFACE } ID3D12CommandAllocatorVtbl; interface ID3D12CommandAllocator { CONST_VTBL ID3D12CommandAllocatorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12CommandAllocator_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12CommandAllocator_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12CommandAllocator_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12CommandAllocator_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12CommandAllocator_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12CommandAllocator_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12CommandAllocator_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12DeviceChild methods ***/ #define ID3D12CommandAllocator_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** ID3D12CommandAllocator methods ***/ #define ID3D12CommandAllocator_Reset(This) (This)->lpVtbl->Reset(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12CommandAllocator_QueryInterface(ID3D12CommandAllocator* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12CommandAllocator_AddRef(ID3D12CommandAllocator* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12CommandAllocator_Release(ID3D12CommandAllocator* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12CommandAllocator_GetPrivateData(ID3D12CommandAllocator* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandAllocator_SetPrivateData(ID3D12CommandAllocator* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12CommandAllocator_SetPrivateDataInterface(ID3D12CommandAllocator* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12CommandAllocator_SetName(ID3D12CommandAllocator* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12DeviceChild methods ***/ static FORCEINLINE HRESULT ID3D12CommandAllocator_GetDevice(ID3D12CommandAllocator* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** ID3D12CommandAllocator methods ***/ static FORCEINLINE HRESULT ID3D12CommandAllocator_Reset(ID3D12CommandAllocator* This) { return This->lpVtbl->Reset(This); } #endif #endif #endif #endif /* __ID3D12CommandAllocator_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Device interface */ #ifndef __ID3D12Device_INTERFACE_DEFINED__ #define __ID3D12Device_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Device, 0x189819f1, 0x1db6, 0x4b57, 0xbe,0x54, 0x18,0x21,0x33,0x9b,0x85,0xf7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("189819f1-1db6-4b57-be54-1821339b85f7") ID3D12Device : public ID3D12Object { virtual UINT STDMETHODCALLTYPE GetNodeCount( ) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandQueue( const D3D12_COMMAND_QUEUE_DESC *desc, REFIID riid, void **command_queue) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandAllocator( D3D12_COMMAND_LIST_TYPE type, REFIID riid, void **command_allocator) = 0; virtual HRESULT STDMETHODCALLTYPE CreateGraphicsPipelineState( const D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state) = 0; virtual HRESULT STDMETHODCALLTYPE CreateComputePipelineState( const D3D12_COMPUTE_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandList( UINT node_mask, D3D12_COMMAND_LIST_TYPE type, ID3D12CommandAllocator *command_allocator, ID3D12PipelineState *initial_pipeline_state, REFIID riid, void **command_list) = 0; virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( D3D12_FEATURE feature, void *feature_data, UINT feature_data_size) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDescriptorHeap( const D3D12_DESCRIPTOR_HEAP_DESC *desc, REFIID riid, void **descriptor_heap) = 0; virtual UINT STDMETHODCALLTYPE GetDescriptorHandleIncrementSize( D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) = 0; virtual HRESULT STDMETHODCALLTYPE CreateRootSignature( UINT node_mask, const void *bytecode, SIZE_T bytecode_length, REFIID riid, void **root_signature) = 0; virtual void STDMETHODCALLTYPE CreateConstantBufferView( const D3D12_CONSTANT_BUFFER_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CreateShaderResourceView( ID3D12Resource *resource, const D3D12_SHADER_RESOURCE_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CreateUnorderedAccessView( ID3D12Resource *resource, ID3D12Resource *counter_resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CreateRenderTargetView( ID3D12Resource *resource, const D3D12_RENDER_TARGET_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CreateDepthStencilView( ID3D12Resource *resource, const D3D12_DEPTH_STENCIL_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CreateSampler( const D3D12_SAMPLER_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor) = 0; virtual void STDMETHODCALLTYPE CopyDescriptors( UINT dst_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *dst_descriptor_range_offsets, const UINT *dst_descriptor_range_sizes, UINT src_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_offsets, const UINT *src_descriptor_range_sizes, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) = 0; virtual void STDMETHODCALLTYPE CopyDescriptorsSimple( UINT descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE dst_descriptor_range_offset, const D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_offset, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) = 0; #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_RESOURCE_ALLOCATION_INFO* STDMETHODCALLTYPE GetResourceAllocationInfo( D3D12_RESOURCE_ALLOCATION_INFO *__ret, UINT visible_mask, UINT reource_desc_count, const D3D12_RESOURCE_DESC *resource_descs) = 0; D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo( UINT visible_mask, UINT reource_desc_count, const D3D12_RESOURCE_DESC *resource_descs) { D3D12_RESOURCE_ALLOCATION_INFO __ret; return *GetResourceAllocationInfo(&__ret, visible_mask, reource_desc_count, resource_descs); } #else virtual D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo( UINT visible_mask, UINT reource_desc_count, const D3D12_RESOURCE_DESC *resource_descs) = 0; #endif #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual D3D12_HEAP_PROPERTIES* STDMETHODCALLTYPE GetCustomHeapProperties( D3D12_HEAP_PROPERTIES *__ret, UINT node_mask, D3D12_HEAP_TYPE heap_type) = 0; D3D12_HEAP_PROPERTIES STDMETHODCALLTYPE GetCustomHeapProperties( UINT node_mask, D3D12_HEAP_TYPE heap_type) { D3D12_HEAP_PROPERTIES __ret; return *GetCustomHeapProperties(&__ret, node_mask, heap_type); } #else virtual D3D12_HEAP_PROPERTIES STDMETHODCALLTYPE GetCustomHeapProperties( UINT node_mask, D3D12_HEAP_TYPE heap_type) = 0; #endif virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource( const D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS heap_flags, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateHeap( const D3D12_HEAP_DESC *desc, REFIID riid, void **heap) = 0; virtual HRESULT STDMETHODCALLTYPE CreatePlacedResource( ID3D12Heap *heap, UINT64 heap_offset, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateReservedResource( const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSharedHandle( ID3D12DeviceChild *object, const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedHandle( HANDLE handle, REFIID riid, void **object) = 0; virtual HRESULT STDMETHODCALLTYPE OpenSharedHandleByName( const WCHAR *name, DWORD access, HANDLE *handle) = 0; virtual HRESULT STDMETHODCALLTYPE MakeResident( UINT object_count, ID3D12Pageable *const *objects) = 0; virtual HRESULT STDMETHODCALLTYPE Evict( UINT object_count, ID3D12Pageable *const *objects) = 0; virtual HRESULT STDMETHODCALLTYPE CreateFence( UINT64 initial_value, D3D12_FENCE_FLAGS flags, REFIID riid, void **fence) = 0; virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason( ) = 0; virtual void STDMETHODCALLTYPE GetCopyableFootprints( const D3D12_RESOURCE_DESC *desc, UINT first_sub_resource, UINT sub_resource_count, UINT64 base_offset, D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts, UINT *row_count, UINT64 *row_size, UINT64 *total_bytes) = 0; virtual HRESULT STDMETHODCALLTYPE CreateQueryHeap( const D3D12_QUERY_HEAP_DESC *desc, REFIID riid, void **heap) = 0; virtual HRESULT STDMETHODCALLTYPE SetStablePowerState( WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCommandSignature( const D3D12_COMMAND_SIGNATURE_DESC *desc, ID3D12RootSignature *root_signature, REFIID riid, void **command_signature) = 0; virtual void STDMETHODCALLTYPE GetResourceTiling( ID3D12Resource *resource, UINT *total_tile_count, D3D12_PACKED_MIP_INFO *packed_mip_info, D3D12_TILE_SHAPE *standard_tile_shape, UINT *sub_resource_tiling_count, UINT first_sub_resource_tiling, D3D12_SUBRESOURCE_TILING *sub_resource_tilings) = 0; #ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS virtual LUID* STDMETHODCALLTYPE GetAdapterLuid( LUID *__ret) = 0; LUID STDMETHODCALLTYPE GetAdapterLuid( ) { LUID __ret; return *GetAdapterLuid(&__ret); } #else virtual LUID STDMETHODCALLTYPE GetAdapterLuid( ) = 0; #endif }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Device, 0x189819f1, 0x1db6, 0x4b57, 0xbe,0x54, 0x18,0x21,0x33,0x9b,0x85,0xf7) #endif #else typedef struct ID3D12DeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Device *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Device *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Device *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Device *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Device *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Device *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Device *This, const WCHAR *name); /*** ID3D12Device methods ***/ UINT (STDMETHODCALLTYPE *GetNodeCount)( ID3D12Device *This); HRESULT (STDMETHODCALLTYPE *CreateCommandQueue)( ID3D12Device *This, const D3D12_COMMAND_QUEUE_DESC *desc, REFIID riid, void **command_queue); HRESULT (STDMETHODCALLTYPE *CreateCommandAllocator)( ID3D12Device *This, D3D12_COMMAND_LIST_TYPE type, REFIID riid, void **command_allocator); HRESULT (STDMETHODCALLTYPE *CreateGraphicsPipelineState)( ID3D12Device *This, const D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state); HRESULT (STDMETHODCALLTYPE *CreateComputePipelineState)( ID3D12Device *This, const D3D12_COMPUTE_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state); HRESULT (STDMETHODCALLTYPE *CreateCommandList)( ID3D12Device *This, UINT node_mask, D3D12_COMMAND_LIST_TYPE type, ID3D12CommandAllocator *command_allocator, ID3D12PipelineState *initial_pipeline_state, REFIID riid, void **command_list); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D12Device *This, D3D12_FEATURE feature, void *feature_data, UINT feature_data_size); HRESULT (STDMETHODCALLTYPE *CreateDescriptorHeap)( ID3D12Device *This, const D3D12_DESCRIPTOR_HEAP_DESC *desc, REFIID riid, void **descriptor_heap); UINT (STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize)( ID3D12Device *This, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); HRESULT (STDMETHODCALLTYPE *CreateRootSignature)( ID3D12Device *This, UINT node_mask, const void *bytecode, SIZE_T bytecode_length, REFIID riid, void **root_signature); void (STDMETHODCALLTYPE *CreateConstantBufferView)( ID3D12Device *This, const D3D12_CONSTANT_BUFFER_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D12Device *This, ID3D12Resource *resource, const D3D12_SHADER_RESOURCE_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D12Device *This, ID3D12Resource *resource, ID3D12Resource *counter_resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D12Device *This, ID3D12Resource *resource, const D3D12_RENDER_TARGET_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D12Device *This, ID3D12Resource *resource, const D3D12_DEPTH_STENCIL_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateSampler)( ID3D12Device *This, const D3D12_SAMPLER_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CopyDescriptors)( ID3D12Device *This, UINT dst_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *dst_descriptor_range_offsets, const UINT *dst_descriptor_range_sizes, UINT src_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_offsets, const UINT *src_descriptor_range_sizes, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); void (STDMETHODCALLTYPE *CopyDescriptorsSimple)( ID3D12Device *This, UINT descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE dst_descriptor_range_offset, const D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_offset, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); D3D12_RESOURCE_ALLOCATION_INFO * (STDMETHODCALLTYPE *GetResourceAllocationInfo)( ID3D12Device *This, D3D12_RESOURCE_ALLOCATION_INFO *__ret, UINT visible_mask, UINT reource_desc_count, const D3D12_RESOURCE_DESC *resource_descs); D3D12_HEAP_PROPERTIES * (STDMETHODCALLTYPE *GetCustomHeapProperties)( ID3D12Device *This, D3D12_HEAP_PROPERTIES *__ret, UINT node_mask, D3D12_HEAP_TYPE heap_type); HRESULT (STDMETHODCALLTYPE *CreateCommittedResource)( ID3D12Device *This, const D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS heap_flags, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateHeap)( ID3D12Device *This, const D3D12_HEAP_DESC *desc, REFIID riid, void **heap); HRESULT (STDMETHODCALLTYPE *CreatePlacedResource)( ID3D12Device *This, ID3D12Heap *heap, UINT64 heap_offset, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateReservedResource)( ID3D12Device *This, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateSharedHandle)( ID3D12Device *This, ID3D12DeviceChild *object, const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle); HRESULT (STDMETHODCALLTYPE *OpenSharedHandle)( ID3D12Device *This, HANDLE handle, REFIID riid, void **object); HRESULT (STDMETHODCALLTYPE *OpenSharedHandleByName)( ID3D12Device *This, const WCHAR *name, DWORD access, HANDLE *handle); HRESULT (STDMETHODCALLTYPE *MakeResident)( ID3D12Device *This, UINT object_count, ID3D12Pageable *const *objects); HRESULT (STDMETHODCALLTYPE *Evict)( ID3D12Device *This, UINT object_count, ID3D12Pageable *const *objects); HRESULT (STDMETHODCALLTYPE *CreateFence)( ID3D12Device *This, UINT64 initial_value, D3D12_FENCE_FLAGS flags, REFIID riid, void **fence); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D12Device *This); void (STDMETHODCALLTYPE *GetCopyableFootprints)( ID3D12Device *This, const D3D12_RESOURCE_DESC *desc, UINT first_sub_resource, UINT sub_resource_count, UINT64 base_offset, D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts, UINT *row_count, UINT64 *row_size, UINT64 *total_bytes); HRESULT (STDMETHODCALLTYPE *CreateQueryHeap)( ID3D12Device *This, const D3D12_QUERY_HEAP_DESC *desc, REFIID riid, void **heap); HRESULT (STDMETHODCALLTYPE *SetStablePowerState)( ID3D12Device *This, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *CreateCommandSignature)( ID3D12Device *This, const D3D12_COMMAND_SIGNATURE_DESC *desc, ID3D12RootSignature *root_signature, REFIID riid, void **command_signature); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D12Device *This, ID3D12Resource *resource, UINT *total_tile_count, D3D12_PACKED_MIP_INFO *packed_mip_info, D3D12_TILE_SHAPE *standard_tile_shape, UINT *sub_resource_tiling_count, UINT first_sub_resource_tiling, D3D12_SUBRESOURCE_TILING *sub_resource_tilings); LUID * (STDMETHODCALLTYPE *GetAdapterLuid)( ID3D12Device *This, LUID *__ret); END_INTERFACE } ID3D12DeviceVtbl; interface ID3D12Device { CONST_VTBL ID3D12DeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Device_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Device_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Device_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Device_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Device_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Device_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12Device methods ***/ #define ID3D12Device_GetNodeCount(This) (This)->lpVtbl->GetNodeCount(This) #define ID3D12Device_CreateCommandQueue(This,desc,riid,command_queue) (This)->lpVtbl->CreateCommandQueue(This,desc,riid,command_queue) #define ID3D12Device_CreateCommandAllocator(This,type,riid,command_allocator) (This)->lpVtbl->CreateCommandAllocator(This,type,riid,command_allocator) #define ID3D12Device_CreateGraphicsPipelineState(This,desc,riid,pipeline_state) (This)->lpVtbl->CreateGraphicsPipelineState(This,desc,riid,pipeline_state) #define ID3D12Device_CreateComputePipelineState(This,desc,riid,pipeline_state) (This)->lpVtbl->CreateComputePipelineState(This,desc,riid,pipeline_state) #define ID3D12Device_CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list) (This)->lpVtbl->CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list) #define ID3D12Device_CheckFeatureSupport(This,feature,feature_data,feature_data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,feature_data,feature_data_size) #define ID3D12Device_CreateDescriptorHeap(This,desc,riid,descriptor_heap) (This)->lpVtbl->CreateDescriptorHeap(This,desc,riid,descriptor_heap) #define ID3D12Device_GetDescriptorHandleIncrementSize(This,descriptor_heap_type) (This)->lpVtbl->GetDescriptorHandleIncrementSize(This,descriptor_heap_type) #define ID3D12Device_CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature) (This)->lpVtbl->CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature) #define ID3D12Device_CreateConstantBufferView(This,desc,descriptor) (This)->lpVtbl->CreateConstantBufferView(This,desc,descriptor) #define ID3D12Device_CreateShaderResourceView(This,resource,desc,descriptor) (This)->lpVtbl->CreateShaderResourceView(This,resource,desc,descriptor) #define ID3D12Device_CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor) (This)->lpVtbl->CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor) #define ID3D12Device_CreateRenderTargetView(This,resource,desc,descriptor) (This)->lpVtbl->CreateRenderTargetView(This,resource,desc,descriptor) #define ID3D12Device_CreateDepthStencilView(This,resource,desc,descriptor) (This)->lpVtbl->CreateDepthStencilView(This,resource,desc,descriptor) #define ID3D12Device_CreateSampler(This,desc,descriptor) (This)->lpVtbl->CreateSampler(This,desc,descriptor) #define ID3D12Device_CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type) (This)->lpVtbl->CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type) #define ID3D12Device_CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type) (This)->lpVtbl->CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type) #define ID3D12Device_GetResourceAllocationInfo(This,visible_mask,reource_desc_count,resource_descs) ID3D12Device_GetResourceAllocationInfo_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12Device_GetCustomHeapProperties(This,node_mask,heap_type) ID3D12Device_GetCustomHeapProperties_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12Device_CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device_CreateHeap(This,desc,riid,heap) (This)->lpVtbl->CreateHeap(This,desc,riid,heap) #define ID3D12Device_CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device_CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device_CreateSharedHandle(This,object,attributes,access,name,handle) (This)->lpVtbl->CreateSharedHandle(This,object,attributes,access,name,handle) #define ID3D12Device_OpenSharedHandle(This,handle,riid,object) (This)->lpVtbl->OpenSharedHandle(This,handle,riid,object) #define ID3D12Device_OpenSharedHandleByName(This,name,access,handle) (This)->lpVtbl->OpenSharedHandleByName(This,name,access,handle) #define ID3D12Device_MakeResident(This,object_count,objects) (This)->lpVtbl->MakeResident(This,object_count,objects) #define ID3D12Device_Evict(This,object_count,objects) (This)->lpVtbl->Evict(This,object_count,objects) #define ID3D12Device_CreateFence(This,initial_value,flags,riid,fence) (This)->lpVtbl->CreateFence(This,initial_value,flags,riid,fence) #define ID3D12Device_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D12Device_GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes) (This)->lpVtbl->GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes) #define ID3D12Device_CreateQueryHeap(This,desc,riid,heap) (This)->lpVtbl->CreateQueryHeap(This,desc,riid,heap) #define ID3D12Device_SetStablePowerState(This,enable) (This)->lpVtbl->SetStablePowerState(This,enable) #define ID3D12Device_CreateCommandSignature(This,desc,root_signature,riid,command_signature) (This)->lpVtbl->CreateCommandSignature(This,desc,root_signature,riid,command_signature) #define ID3D12Device_GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings) (This)->lpVtbl->GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings) #define ID3D12Device_GetAdapterLuid(This) ID3D12Device_GetAdapterLuid_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Device_QueryInterface(ID3D12Device* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Device_AddRef(ID3D12Device* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Device_Release(ID3D12Device* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Device_GetPrivateData(ID3D12Device* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Device_SetPrivateData(ID3D12Device* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Device_SetPrivateDataInterface(ID3D12Device* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Device_SetName(ID3D12Device* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12Device methods ***/ static FORCEINLINE UINT ID3D12Device_GetNodeCount(ID3D12Device* This) { return This->lpVtbl->GetNodeCount(This); } static FORCEINLINE HRESULT ID3D12Device_CreateCommandQueue(ID3D12Device* This,const D3D12_COMMAND_QUEUE_DESC *desc,REFIID riid,void **command_queue) { return This->lpVtbl->CreateCommandQueue(This,desc,riid,command_queue); } static FORCEINLINE HRESULT ID3D12Device_CreateCommandAllocator(ID3D12Device* This,D3D12_COMMAND_LIST_TYPE type,REFIID riid,void **command_allocator) { return This->lpVtbl->CreateCommandAllocator(This,type,riid,command_allocator); } static FORCEINLINE HRESULT ID3D12Device_CreateGraphicsPipelineState(ID3D12Device* This,const D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc,REFIID riid,void **pipeline_state) { return This->lpVtbl->CreateGraphicsPipelineState(This,desc,riid,pipeline_state); } static FORCEINLINE HRESULT ID3D12Device_CreateComputePipelineState(ID3D12Device* This,const D3D12_COMPUTE_PIPELINE_STATE_DESC *desc,REFIID riid,void **pipeline_state) { return This->lpVtbl->CreateComputePipelineState(This,desc,riid,pipeline_state); } static FORCEINLINE HRESULT ID3D12Device_CreateCommandList(ID3D12Device* This,UINT node_mask,D3D12_COMMAND_LIST_TYPE type,ID3D12CommandAllocator *command_allocator,ID3D12PipelineState *initial_pipeline_state,REFIID riid,void **command_list) { return This->lpVtbl->CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list); } static FORCEINLINE HRESULT ID3D12Device_CheckFeatureSupport(ID3D12Device* This,D3D12_FEATURE feature,void *feature_data,UINT feature_data_size) { return This->lpVtbl->CheckFeatureSupport(This,feature,feature_data,feature_data_size); } static FORCEINLINE HRESULT ID3D12Device_CreateDescriptorHeap(ID3D12Device* This,const D3D12_DESCRIPTOR_HEAP_DESC *desc,REFIID riid,void **descriptor_heap) { return This->lpVtbl->CreateDescriptorHeap(This,desc,riid,descriptor_heap); } static FORCEINLINE UINT ID3D12Device_GetDescriptorHandleIncrementSize(ID3D12Device* This,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { return This->lpVtbl->GetDescriptorHandleIncrementSize(This,descriptor_heap_type); } static FORCEINLINE HRESULT ID3D12Device_CreateRootSignature(ID3D12Device* This,UINT node_mask,const void *bytecode,SIZE_T bytecode_length,REFIID riid,void **root_signature) { return This->lpVtbl->CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature); } static FORCEINLINE void ID3D12Device_CreateConstantBufferView(ID3D12Device* This,const D3D12_CONSTANT_BUFFER_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateConstantBufferView(This,desc,descriptor); } static FORCEINLINE void ID3D12Device_CreateShaderResourceView(ID3D12Device* This,ID3D12Resource *resource,const D3D12_SHADER_RESOURCE_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateShaderResourceView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device_CreateUnorderedAccessView(ID3D12Device* This,ID3D12Resource *resource,ID3D12Resource *counter_resource,const D3D12_UNORDERED_ACCESS_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor); } static FORCEINLINE void ID3D12Device_CreateRenderTargetView(ID3D12Device* This,ID3D12Resource *resource,const D3D12_RENDER_TARGET_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateRenderTargetView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device_CreateDepthStencilView(ID3D12Device* This,ID3D12Resource *resource,const D3D12_DEPTH_STENCIL_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateDepthStencilView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device_CreateSampler(ID3D12Device* This,const D3D12_SAMPLER_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateSampler(This,desc,descriptor); } static FORCEINLINE void ID3D12Device_CopyDescriptors(ID3D12Device* This,UINT dst_descriptor_range_count,const D3D12_CPU_DESCRIPTOR_HANDLE *dst_descriptor_range_offsets,const UINT *dst_descriptor_range_sizes,UINT src_descriptor_range_count,const D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_offsets,const UINT *src_descriptor_range_sizes,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { This->lpVtbl->CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type); } static FORCEINLINE void ID3D12Device_CopyDescriptorsSimple(ID3D12Device* This,UINT descriptor_count,const D3D12_CPU_DESCRIPTOR_HANDLE dst_descriptor_range_offset,const D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_offset,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { This->lpVtbl->CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type); } static FORCEINLINE D3D12_RESOURCE_ALLOCATION_INFO ID3D12Device_GetResourceAllocationInfo(ID3D12Device* This,UINT visible_mask,UINT reource_desc_count,const D3D12_RESOURCE_DESC *resource_descs) { D3D12_RESOURCE_ALLOCATION_INFO __ret; return *This->lpVtbl->GetResourceAllocationInfo(This,&__ret,visible_mask,reource_desc_count,resource_descs); } static FORCEINLINE D3D12_HEAP_PROPERTIES ID3D12Device_GetCustomHeapProperties(ID3D12Device* This,UINT node_mask,D3D12_HEAP_TYPE heap_type) { D3D12_HEAP_PROPERTIES __ret; return *This->lpVtbl->GetCustomHeapProperties(This,&__ret,node_mask,heap_type); } static FORCEINLINE HRESULT ID3D12Device_CreateCommittedResource(ID3D12Device* This,const D3D12_HEAP_PROPERTIES *heap_properties,D3D12_HEAP_FLAGS heap_flags,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device_CreateHeap(ID3D12Device* This,const D3D12_HEAP_DESC *desc,REFIID riid,void **heap) { return This->lpVtbl->CreateHeap(This,desc,riid,heap); } static FORCEINLINE HRESULT ID3D12Device_CreatePlacedResource(ID3D12Device* This,ID3D12Heap *heap,UINT64 heap_offset,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device_CreateReservedResource(ID3D12Device* This,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device_CreateSharedHandle(ID3D12Device* This,ID3D12DeviceChild *object,const SECURITY_ATTRIBUTES *attributes,DWORD access,const WCHAR *name,HANDLE *handle) { return This->lpVtbl->CreateSharedHandle(This,object,attributes,access,name,handle); } static FORCEINLINE HRESULT ID3D12Device_OpenSharedHandle(ID3D12Device* This,HANDLE handle,REFIID riid,void **object) { return This->lpVtbl->OpenSharedHandle(This,handle,riid,object); } static FORCEINLINE HRESULT ID3D12Device_OpenSharedHandleByName(ID3D12Device* This,const WCHAR *name,DWORD access,HANDLE *handle) { return This->lpVtbl->OpenSharedHandleByName(This,name,access,handle); } static FORCEINLINE HRESULT ID3D12Device_MakeResident(ID3D12Device* This,UINT object_count,ID3D12Pageable *const *objects) { return This->lpVtbl->MakeResident(This,object_count,objects); } static FORCEINLINE HRESULT ID3D12Device_Evict(ID3D12Device* This,UINT object_count,ID3D12Pageable *const *objects) { return This->lpVtbl->Evict(This,object_count,objects); } static FORCEINLINE HRESULT ID3D12Device_CreateFence(ID3D12Device* This,UINT64 initial_value,D3D12_FENCE_FLAGS flags,REFIID riid,void **fence) { return This->lpVtbl->CreateFence(This,initial_value,flags,riid,fence); } static FORCEINLINE HRESULT ID3D12Device_GetDeviceRemovedReason(ID3D12Device* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D12Device_GetCopyableFootprints(ID3D12Device* This,const D3D12_RESOURCE_DESC *desc,UINT first_sub_resource,UINT sub_resource_count,UINT64 base_offset,D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts,UINT *row_count,UINT64 *row_size,UINT64 *total_bytes) { This->lpVtbl->GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes); } static FORCEINLINE HRESULT ID3D12Device_CreateQueryHeap(ID3D12Device* This,const D3D12_QUERY_HEAP_DESC *desc,REFIID riid,void **heap) { return This->lpVtbl->CreateQueryHeap(This,desc,riid,heap); } static FORCEINLINE HRESULT ID3D12Device_SetStablePowerState(ID3D12Device* This,WINBOOL enable) { return This->lpVtbl->SetStablePowerState(This,enable); } static FORCEINLINE HRESULT ID3D12Device_CreateCommandSignature(ID3D12Device* This,const D3D12_COMMAND_SIGNATURE_DESC *desc,ID3D12RootSignature *root_signature,REFIID riid,void **command_signature) { return This->lpVtbl->CreateCommandSignature(This,desc,root_signature,riid,command_signature); } static FORCEINLINE void ID3D12Device_GetResourceTiling(ID3D12Device* This,ID3D12Resource *resource,UINT *total_tile_count,D3D12_PACKED_MIP_INFO *packed_mip_info,D3D12_TILE_SHAPE *standard_tile_shape,UINT *sub_resource_tiling_count,UINT first_sub_resource_tiling,D3D12_SUBRESOURCE_TILING *sub_resource_tilings) { This->lpVtbl->GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings); } static FORCEINLINE LUID ID3D12Device_GetAdapterLuid(ID3D12Device* This) { LUID __ret; return *This->lpVtbl->GetAdapterLuid(This,&__ret); } #endif #endif #endif #endif /* __ID3D12Device_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Device1 interface */ #ifndef __ID3D12Device1_INTERFACE_DEFINED__ #define __ID3D12Device1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Device1, 0x77acce80, 0x638e, 0x4e65, 0x88,0x95, 0xc1,0xf2,0x33,0x86,0x86,0x3e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("77acce80-638e-4e65-8895-c1f23386863e") ID3D12Device1 : public ID3D12Device { virtual HRESULT STDMETHODCALLTYPE CreatePipelineLibrary( const void *blob, SIZE_T blob_size, REFIID iid, void **lib) = 0; virtual HRESULT STDMETHODCALLTYPE SetEventOnMultipleFenceCompletion( ID3D12Fence *const *fences, const UINT64 *values, UINT fence_count, D3D12_MULTIPLE_FENCE_WAIT_FLAGS flags, HANDLE event) = 0; virtual HRESULT STDMETHODCALLTYPE SetResidencyPriority( UINT object_count, ID3D12Pageable *const *objects, const D3D12_RESIDENCY_PRIORITY *priorities) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Device1, 0x77acce80, 0x638e, 0x4e65, 0x88,0x95, 0xc1,0xf2,0x33,0x86,0x86,0x3e) #endif #else typedef struct ID3D12Device1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Device1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Device1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Device1 *This); /*** ID3D12Object methods ***/ HRESULT (STDMETHODCALLTYPE *GetPrivateData)( ID3D12Device1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateData)( ID3D12Device1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( ID3D12Device1 *This, REFGUID guid, const IUnknown *data); HRESULT (STDMETHODCALLTYPE *SetName)( ID3D12Device1 *This, const WCHAR *name); /*** ID3D12Device methods ***/ UINT (STDMETHODCALLTYPE *GetNodeCount)( ID3D12Device1 *This); HRESULT (STDMETHODCALLTYPE *CreateCommandQueue)( ID3D12Device1 *This, const D3D12_COMMAND_QUEUE_DESC *desc, REFIID riid, void **command_queue); HRESULT (STDMETHODCALLTYPE *CreateCommandAllocator)( ID3D12Device1 *This, D3D12_COMMAND_LIST_TYPE type, REFIID riid, void **command_allocator); HRESULT (STDMETHODCALLTYPE *CreateGraphicsPipelineState)( ID3D12Device1 *This, const D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state); HRESULT (STDMETHODCALLTYPE *CreateComputePipelineState)( ID3D12Device1 *This, const D3D12_COMPUTE_PIPELINE_STATE_DESC *desc, REFIID riid, void **pipeline_state); HRESULT (STDMETHODCALLTYPE *CreateCommandList)( ID3D12Device1 *This, UINT node_mask, D3D12_COMMAND_LIST_TYPE type, ID3D12CommandAllocator *command_allocator, ID3D12PipelineState *initial_pipeline_state, REFIID riid, void **command_list); HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( ID3D12Device1 *This, D3D12_FEATURE feature, void *feature_data, UINT feature_data_size); HRESULT (STDMETHODCALLTYPE *CreateDescriptorHeap)( ID3D12Device1 *This, const D3D12_DESCRIPTOR_HEAP_DESC *desc, REFIID riid, void **descriptor_heap); UINT (STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize)( ID3D12Device1 *This, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); HRESULT (STDMETHODCALLTYPE *CreateRootSignature)( ID3D12Device1 *This, UINT node_mask, const void *bytecode, SIZE_T bytecode_length, REFIID riid, void **root_signature); void (STDMETHODCALLTYPE *CreateConstantBufferView)( ID3D12Device1 *This, const D3D12_CONSTANT_BUFFER_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateShaderResourceView)( ID3D12Device1 *This, ID3D12Resource *resource, const D3D12_SHADER_RESOURCE_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateUnorderedAccessView)( ID3D12Device1 *This, ID3D12Resource *resource, ID3D12Resource *counter_resource, const D3D12_UNORDERED_ACCESS_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateRenderTargetView)( ID3D12Device1 *This, ID3D12Resource *resource, const D3D12_RENDER_TARGET_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateDepthStencilView)( ID3D12Device1 *This, ID3D12Resource *resource, const D3D12_DEPTH_STENCIL_VIEW_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CreateSampler)( ID3D12Device1 *This, const D3D12_SAMPLER_DESC *desc, D3D12_CPU_DESCRIPTOR_HANDLE descriptor); void (STDMETHODCALLTYPE *CopyDescriptors)( ID3D12Device1 *This, UINT dst_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *dst_descriptor_range_offsets, const UINT *dst_descriptor_range_sizes, UINT src_descriptor_range_count, const D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_offsets, const UINT *src_descriptor_range_sizes, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); void (STDMETHODCALLTYPE *CopyDescriptorsSimple)( ID3D12Device1 *This, UINT descriptor_count, const D3D12_CPU_DESCRIPTOR_HANDLE dst_descriptor_range_offset, const D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_offset, D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type); D3D12_RESOURCE_ALLOCATION_INFO * (STDMETHODCALLTYPE *GetResourceAllocationInfo)( ID3D12Device1 *This, D3D12_RESOURCE_ALLOCATION_INFO *__ret, UINT visible_mask, UINT reource_desc_count, const D3D12_RESOURCE_DESC *resource_descs); D3D12_HEAP_PROPERTIES * (STDMETHODCALLTYPE *GetCustomHeapProperties)( ID3D12Device1 *This, D3D12_HEAP_PROPERTIES *__ret, UINT node_mask, D3D12_HEAP_TYPE heap_type); HRESULT (STDMETHODCALLTYPE *CreateCommittedResource)( ID3D12Device1 *This, const D3D12_HEAP_PROPERTIES *heap_properties, D3D12_HEAP_FLAGS heap_flags, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateHeap)( ID3D12Device1 *This, const D3D12_HEAP_DESC *desc, REFIID riid, void **heap); HRESULT (STDMETHODCALLTYPE *CreatePlacedResource)( ID3D12Device1 *This, ID3D12Heap *heap, UINT64 heap_offset, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateReservedResource)( ID3D12Device1 *This, const D3D12_RESOURCE_DESC *desc, D3D12_RESOURCE_STATES initial_state, const D3D12_CLEAR_VALUE *optimized_clear_value, REFIID riid, void **resource); HRESULT (STDMETHODCALLTYPE *CreateSharedHandle)( ID3D12Device1 *This, ID3D12DeviceChild *object, const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle); HRESULT (STDMETHODCALLTYPE *OpenSharedHandle)( ID3D12Device1 *This, HANDLE handle, REFIID riid, void **object); HRESULT (STDMETHODCALLTYPE *OpenSharedHandleByName)( ID3D12Device1 *This, const WCHAR *name, DWORD access, HANDLE *handle); HRESULT (STDMETHODCALLTYPE *MakeResident)( ID3D12Device1 *This, UINT object_count, ID3D12Pageable *const *objects); HRESULT (STDMETHODCALLTYPE *Evict)( ID3D12Device1 *This, UINT object_count, ID3D12Pageable *const *objects); HRESULT (STDMETHODCALLTYPE *CreateFence)( ID3D12Device1 *This, UINT64 initial_value, D3D12_FENCE_FLAGS flags, REFIID riid, void **fence); HRESULT (STDMETHODCALLTYPE *GetDeviceRemovedReason)( ID3D12Device1 *This); void (STDMETHODCALLTYPE *GetCopyableFootprints)( ID3D12Device1 *This, const D3D12_RESOURCE_DESC *desc, UINT first_sub_resource, UINT sub_resource_count, UINT64 base_offset, D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts, UINT *row_count, UINT64 *row_size, UINT64 *total_bytes); HRESULT (STDMETHODCALLTYPE *CreateQueryHeap)( ID3D12Device1 *This, const D3D12_QUERY_HEAP_DESC *desc, REFIID riid, void **heap); HRESULT (STDMETHODCALLTYPE *SetStablePowerState)( ID3D12Device1 *This, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *CreateCommandSignature)( ID3D12Device1 *This, const D3D12_COMMAND_SIGNATURE_DESC *desc, ID3D12RootSignature *root_signature, REFIID riid, void **command_signature); void (STDMETHODCALLTYPE *GetResourceTiling)( ID3D12Device1 *This, ID3D12Resource *resource, UINT *total_tile_count, D3D12_PACKED_MIP_INFO *packed_mip_info, D3D12_TILE_SHAPE *standard_tile_shape, UINT *sub_resource_tiling_count, UINT first_sub_resource_tiling, D3D12_SUBRESOURCE_TILING *sub_resource_tilings); LUID * (STDMETHODCALLTYPE *GetAdapterLuid)( ID3D12Device1 *This, LUID *__ret); /*** ID3D12Device1 methods ***/ HRESULT (STDMETHODCALLTYPE *CreatePipelineLibrary)( ID3D12Device1 *This, const void *blob, SIZE_T blob_size, REFIID iid, void **lib); HRESULT (STDMETHODCALLTYPE *SetEventOnMultipleFenceCompletion)( ID3D12Device1 *This, ID3D12Fence *const *fences, const UINT64 *values, UINT fence_count, D3D12_MULTIPLE_FENCE_WAIT_FLAGS flags, HANDLE event); HRESULT (STDMETHODCALLTYPE *SetResidencyPriority)( ID3D12Device1 *This, UINT object_count, ID3D12Pageable *const *objects, const D3D12_RESIDENCY_PRIORITY *priorities); END_INTERFACE } ID3D12Device1Vtbl; interface ID3D12Device1 { CONST_VTBL ID3D12Device1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Device1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Device1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Device1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Object methods ***/ #define ID3D12Device1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define ID3D12Device1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define ID3D12Device1_SetPrivateDataInterface(This,guid,data) (This)->lpVtbl->SetPrivateDataInterface(This,guid,data) #define ID3D12Device1_SetName(This,name) (This)->lpVtbl->SetName(This,name) /*** ID3D12Device methods ***/ #define ID3D12Device1_GetNodeCount(This) (This)->lpVtbl->GetNodeCount(This) #define ID3D12Device1_CreateCommandQueue(This,desc,riid,command_queue) (This)->lpVtbl->CreateCommandQueue(This,desc,riid,command_queue) #define ID3D12Device1_CreateCommandAllocator(This,type,riid,command_allocator) (This)->lpVtbl->CreateCommandAllocator(This,type,riid,command_allocator) #define ID3D12Device1_CreateGraphicsPipelineState(This,desc,riid,pipeline_state) (This)->lpVtbl->CreateGraphicsPipelineState(This,desc,riid,pipeline_state) #define ID3D12Device1_CreateComputePipelineState(This,desc,riid,pipeline_state) (This)->lpVtbl->CreateComputePipelineState(This,desc,riid,pipeline_state) #define ID3D12Device1_CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list) (This)->lpVtbl->CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list) #define ID3D12Device1_CheckFeatureSupport(This,feature,feature_data,feature_data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,feature_data,feature_data_size) #define ID3D12Device1_CreateDescriptorHeap(This,desc,riid,descriptor_heap) (This)->lpVtbl->CreateDescriptorHeap(This,desc,riid,descriptor_heap) #define ID3D12Device1_GetDescriptorHandleIncrementSize(This,descriptor_heap_type) (This)->lpVtbl->GetDescriptorHandleIncrementSize(This,descriptor_heap_type) #define ID3D12Device1_CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature) (This)->lpVtbl->CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature) #define ID3D12Device1_CreateConstantBufferView(This,desc,descriptor) (This)->lpVtbl->CreateConstantBufferView(This,desc,descriptor) #define ID3D12Device1_CreateShaderResourceView(This,resource,desc,descriptor) (This)->lpVtbl->CreateShaderResourceView(This,resource,desc,descriptor) #define ID3D12Device1_CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor) (This)->lpVtbl->CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor) #define ID3D12Device1_CreateRenderTargetView(This,resource,desc,descriptor) (This)->lpVtbl->CreateRenderTargetView(This,resource,desc,descriptor) #define ID3D12Device1_CreateDepthStencilView(This,resource,desc,descriptor) (This)->lpVtbl->CreateDepthStencilView(This,resource,desc,descriptor) #define ID3D12Device1_CreateSampler(This,desc,descriptor) (This)->lpVtbl->CreateSampler(This,desc,descriptor) #define ID3D12Device1_CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type) (This)->lpVtbl->CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type) #define ID3D12Device1_CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type) (This)->lpVtbl->CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type) #define ID3D12Device1_GetResourceAllocationInfo(This,visible_mask,reource_desc_count,resource_descs) ID3D12Device1_GetResourceAllocationInfo_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12Device1_GetCustomHeapProperties(This,node_mask,heap_type) ID3D12Device1_GetCustomHeapProperties_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support #define ID3D12Device1_CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device1_CreateHeap(This,desc,riid,heap) (This)->lpVtbl->CreateHeap(This,desc,riid,heap) #define ID3D12Device1_CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device1_CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource) (This)->lpVtbl->CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource) #define ID3D12Device1_CreateSharedHandle(This,object,attributes,access,name,handle) (This)->lpVtbl->CreateSharedHandle(This,object,attributes,access,name,handle) #define ID3D12Device1_OpenSharedHandle(This,handle,riid,object) (This)->lpVtbl->OpenSharedHandle(This,handle,riid,object) #define ID3D12Device1_OpenSharedHandleByName(This,name,access,handle) (This)->lpVtbl->OpenSharedHandleByName(This,name,access,handle) #define ID3D12Device1_MakeResident(This,object_count,objects) (This)->lpVtbl->MakeResident(This,object_count,objects) #define ID3D12Device1_Evict(This,object_count,objects) (This)->lpVtbl->Evict(This,object_count,objects) #define ID3D12Device1_CreateFence(This,initial_value,flags,riid,fence) (This)->lpVtbl->CreateFence(This,initial_value,flags,riid,fence) #define ID3D12Device1_GetDeviceRemovedReason(This) (This)->lpVtbl->GetDeviceRemovedReason(This) #define ID3D12Device1_GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes) (This)->lpVtbl->GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes) #define ID3D12Device1_CreateQueryHeap(This,desc,riid,heap) (This)->lpVtbl->CreateQueryHeap(This,desc,riid,heap) #define ID3D12Device1_SetStablePowerState(This,enable) (This)->lpVtbl->SetStablePowerState(This,enable) #define ID3D12Device1_CreateCommandSignature(This,desc,root_signature,riid,command_signature) (This)->lpVtbl->CreateCommandSignature(This,desc,root_signature,riid,command_signature) #define ID3D12Device1_GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings) (This)->lpVtbl->GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings) #define ID3D12Device1_GetAdapterLuid(This) ID3D12Device1_GetAdapterLuid_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support /*** ID3D12Device1 methods ***/ #define ID3D12Device1_CreatePipelineLibrary(This,blob,blob_size,iid,lib) (This)->lpVtbl->CreatePipelineLibrary(This,blob,blob_size,iid,lib) #define ID3D12Device1_SetEventOnMultipleFenceCompletion(This,fences,values,fence_count,flags,event) (This)->lpVtbl->SetEventOnMultipleFenceCompletion(This,fences,values,fence_count,flags,event) #define ID3D12Device1_SetResidencyPriority(This,object_count,objects,priorities) (This)->lpVtbl->SetResidencyPriority(This,object_count,objects,priorities) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Device1_QueryInterface(ID3D12Device1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Device1_AddRef(ID3D12Device1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Device1_Release(ID3D12Device1* This) { return This->lpVtbl->Release(This); } /*** ID3D12Object methods ***/ static FORCEINLINE HRESULT ID3D12Device1_GetPrivateData(ID3D12Device1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Device1_SetPrivateData(ID3D12Device1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT ID3D12Device1_SetPrivateDataInterface(ID3D12Device1* This,REFGUID guid,const IUnknown *data) { return This->lpVtbl->SetPrivateDataInterface(This,guid,data); } static FORCEINLINE HRESULT ID3D12Device1_SetName(ID3D12Device1* This,const WCHAR *name) { return This->lpVtbl->SetName(This,name); } /*** ID3D12Device methods ***/ static FORCEINLINE UINT ID3D12Device1_GetNodeCount(ID3D12Device1* This) { return This->lpVtbl->GetNodeCount(This); } static FORCEINLINE HRESULT ID3D12Device1_CreateCommandQueue(ID3D12Device1* This,const D3D12_COMMAND_QUEUE_DESC *desc,REFIID riid,void **command_queue) { return This->lpVtbl->CreateCommandQueue(This,desc,riid,command_queue); } static FORCEINLINE HRESULT ID3D12Device1_CreateCommandAllocator(ID3D12Device1* This,D3D12_COMMAND_LIST_TYPE type,REFIID riid,void **command_allocator) { return This->lpVtbl->CreateCommandAllocator(This,type,riid,command_allocator); } static FORCEINLINE HRESULT ID3D12Device1_CreateGraphicsPipelineState(ID3D12Device1* This,const D3D12_GRAPHICS_PIPELINE_STATE_DESC *desc,REFIID riid,void **pipeline_state) { return This->lpVtbl->CreateGraphicsPipelineState(This,desc,riid,pipeline_state); } static FORCEINLINE HRESULT ID3D12Device1_CreateComputePipelineState(ID3D12Device1* This,const D3D12_COMPUTE_PIPELINE_STATE_DESC *desc,REFIID riid,void **pipeline_state) { return This->lpVtbl->CreateComputePipelineState(This,desc,riid,pipeline_state); } static FORCEINLINE HRESULT ID3D12Device1_CreateCommandList(ID3D12Device1* This,UINT node_mask,D3D12_COMMAND_LIST_TYPE type,ID3D12CommandAllocator *command_allocator,ID3D12PipelineState *initial_pipeline_state,REFIID riid,void **command_list) { return This->lpVtbl->CreateCommandList(This,node_mask,type,command_allocator,initial_pipeline_state,riid,command_list); } static FORCEINLINE HRESULT ID3D12Device1_CheckFeatureSupport(ID3D12Device1* This,D3D12_FEATURE feature,void *feature_data,UINT feature_data_size) { return This->lpVtbl->CheckFeatureSupport(This,feature,feature_data,feature_data_size); } static FORCEINLINE HRESULT ID3D12Device1_CreateDescriptorHeap(ID3D12Device1* This,const D3D12_DESCRIPTOR_HEAP_DESC *desc,REFIID riid,void **descriptor_heap) { return This->lpVtbl->CreateDescriptorHeap(This,desc,riid,descriptor_heap); } static FORCEINLINE UINT ID3D12Device1_GetDescriptorHandleIncrementSize(ID3D12Device1* This,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { return This->lpVtbl->GetDescriptorHandleIncrementSize(This,descriptor_heap_type); } static FORCEINLINE HRESULT ID3D12Device1_CreateRootSignature(ID3D12Device1* This,UINT node_mask,const void *bytecode,SIZE_T bytecode_length,REFIID riid,void **root_signature) { return This->lpVtbl->CreateRootSignature(This,node_mask,bytecode,bytecode_length,riid,root_signature); } static FORCEINLINE void ID3D12Device1_CreateConstantBufferView(ID3D12Device1* This,const D3D12_CONSTANT_BUFFER_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateConstantBufferView(This,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CreateShaderResourceView(ID3D12Device1* This,ID3D12Resource *resource,const D3D12_SHADER_RESOURCE_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateShaderResourceView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CreateUnorderedAccessView(ID3D12Device1* This,ID3D12Resource *resource,ID3D12Resource *counter_resource,const D3D12_UNORDERED_ACCESS_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateUnorderedAccessView(This,resource,counter_resource,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CreateRenderTargetView(ID3D12Device1* This,ID3D12Resource *resource,const D3D12_RENDER_TARGET_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateRenderTargetView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CreateDepthStencilView(ID3D12Device1* This,ID3D12Resource *resource,const D3D12_DEPTH_STENCIL_VIEW_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateDepthStencilView(This,resource,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CreateSampler(ID3D12Device1* This,const D3D12_SAMPLER_DESC *desc,D3D12_CPU_DESCRIPTOR_HANDLE descriptor) { This->lpVtbl->CreateSampler(This,desc,descriptor); } static FORCEINLINE void ID3D12Device1_CopyDescriptors(ID3D12Device1* This,UINT dst_descriptor_range_count,const D3D12_CPU_DESCRIPTOR_HANDLE *dst_descriptor_range_offsets,const UINT *dst_descriptor_range_sizes,UINT src_descriptor_range_count,const D3D12_CPU_DESCRIPTOR_HANDLE *src_descriptor_range_offsets,const UINT *src_descriptor_range_sizes,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { This->lpVtbl->CopyDescriptors(This,dst_descriptor_range_count,dst_descriptor_range_offsets,dst_descriptor_range_sizes,src_descriptor_range_count,src_descriptor_range_offsets,src_descriptor_range_sizes,descriptor_heap_type); } static FORCEINLINE void ID3D12Device1_CopyDescriptorsSimple(ID3D12Device1* This,UINT descriptor_count,const D3D12_CPU_DESCRIPTOR_HANDLE dst_descriptor_range_offset,const D3D12_CPU_DESCRIPTOR_HANDLE src_descriptor_range_offset,D3D12_DESCRIPTOR_HEAP_TYPE descriptor_heap_type) { This->lpVtbl->CopyDescriptorsSimple(This,descriptor_count,dst_descriptor_range_offset,src_descriptor_range_offset,descriptor_heap_type); } static FORCEINLINE D3D12_RESOURCE_ALLOCATION_INFO ID3D12Device1_GetResourceAllocationInfo(ID3D12Device1* This,UINT visible_mask,UINT reource_desc_count,const D3D12_RESOURCE_DESC *resource_descs) { D3D12_RESOURCE_ALLOCATION_INFO __ret; return *This->lpVtbl->GetResourceAllocationInfo(This,&__ret,visible_mask,reource_desc_count,resource_descs); } static FORCEINLINE D3D12_HEAP_PROPERTIES ID3D12Device1_GetCustomHeapProperties(ID3D12Device1* This,UINT node_mask,D3D12_HEAP_TYPE heap_type) { D3D12_HEAP_PROPERTIES __ret; return *This->lpVtbl->GetCustomHeapProperties(This,&__ret,node_mask,heap_type); } static FORCEINLINE HRESULT ID3D12Device1_CreateCommittedResource(ID3D12Device1* This,const D3D12_HEAP_PROPERTIES *heap_properties,D3D12_HEAP_FLAGS heap_flags,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreateCommittedResource(This,heap_properties,heap_flags,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device1_CreateHeap(ID3D12Device1* This,const D3D12_HEAP_DESC *desc,REFIID riid,void **heap) { return This->lpVtbl->CreateHeap(This,desc,riid,heap); } static FORCEINLINE HRESULT ID3D12Device1_CreatePlacedResource(ID3D12Device1* This,ID3D12Heap *heap,UINT64 heap_offset,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreatePlacedResource(This,heap,heap_offset,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device1_CreateReservedResource(ID3D12Device1* This,const D3D12_RESOURCE_DESC *desc,D3D12_RESOURCE_STATES initial_state,const D3D12_CLEAR_VALUE *optimized_clear_value,REFIID riid,void **resource) { return This->lpVtbl->CreateReservedResource(This,desc,initial_state,optimized_clear_value,riid,resource); } static FORCEINLINE HRESULT ID3D12Device1_CreateSharedHandle(ID3D12Device1* This,ID3D12DeviceChild *object,const SECURITY_ATTRIBUTES *attributes,DWORD access,const WCHAR *name,HANDLE *handle) { return This->lpVtbl->CreateSharedHandle(This,object,attributes,access,name,handle); } static FORCEINLINE HRESULT ID3D12Device1_OpenSharedHandle(ID3D12Device1* This,HANDLE handle,REFIID riid,void **object) { return This->lpVtbl->OpenSharedHandle(This,handle,riid,object); } static FORCEINLINE HRESULT ID3D12Device1_OpenSharedHandleByName(ID3D12Device1* This,const WCHAR *name,DWORD access,HANDLE *handle) { return This->lpVtbl->OpenSharedHandleByName(This,name,access,handle); } static FORCEINLINE HRESULT ID3D12Device1_MakeResident(ID3D12Device1* This,UINT object_count,ID3D12Pageable *const *objects) { return This->lpVtbl->MakeResident(This,object_count,objects); } static FORCEINLINE HRESULT ID3D12Device1_Evict(ID3D12Device1* This,UINT object_count,ID3D12Pageable *const *objects) { return This->lpVtbl->Evict(This,object_count,objects); } static FORCEINLINE HRESULT ID3D12Device1_CreateFence(ID3D12Device1* This,UINT64 initial_value,D3D12_FENCE_FLAGS flags,REFIID riid,void **fence) { return This->lpVtbl->CreateFence(This,initial_value,flags,riid,fence); } static FORCEINLINE HRESULT ID3D12Device1_GetDeviceRemovedReason(ID3D12Device1* This) { return This->lpVtbl->GetDeviceRemovedReason(This); } static FORCEINLINE void ID3D12Device1_GetCopyableFootprints(ID3D12Device1* This,const D3D12_RESOURCE_DESC *desc,UINT first_sub_resource,UINT sub_resource_count,UINT64 base_offset,D3D12_PLACED_SUBRESOURCE_FOOTPRINT *layouts,UINT *row_count,UINT64 *row_size,UINT64 *total_bytes) { This->lpVtbl->GetCopyableFootprints(This,desc,first_sub_resource,sub_resource_count,base_offset,layouts,row_count,row_size,total_bytes); } static FORCEINLINE HRESULT ID3D12Device1_CreateQueryHeap(ID3D12Device1* This,const D3D12_QUERY_HEAP_DESC *desc,REFIID riid,void **heap) { return This->lpVtbl->CreateQueryHeap(This,desc,riid,heap); } static FORCEINLINE HRESULT ID3D12Device1_SetStablePowerState(ID3D12Device1* This,WINBOOL enable) { return This->lpVtbl->SetStablePowerState(This,enable); } static FORCEINLINE HRESULT ID3D12Device1_CreateCommandSignature(ID3D12Device1* This,const D3D12_COMMAND_SIGNATURE_DESC *desc,ID3D12RootSignature *root_signature,REFIID riid,void **command_signature) { return This->lpVtbl->CreateCommandSignature(This,desc,root_signature,riid,command_signature); } static FORCEINLINE void ID3D12Device1_GetResourceTiling(ID3D12Device1* This,ID3D12Resource *resource,UINT *total_tile_count,D3D12_PACKED_MIP_INFO *packed_mip_info,D3D12_TILE_SHAPE *standard_tile_shape,UINT *sub_resource_tiling_count,UINT first_sub_resource_tiling,D3D12_SUBRESOURCE_TILING *sub_resource_tilings) { This->lpVtbl->GetResourceTiling(This,resource,total_tile_count,packed_mip_info,standard_tile_shape,sub_resource_tiling_count,first_sub_resource_tiling,sub_resource_tilings); } static FORCEINLINE LUID ID3D12Device1_GetAdapterLuid(ID3D12Device1* This) { LUID __ret; return *This->lpVtbl->GetAdapterLuid(This,&__ret); } /*** ID3D12Device1 methods ***/ static FORCEINLINE HRESULT ID3D12Device1_CreatePipelineLibrary(ID3D12Device1* This,const void *blob,SIZE_T blob_size,REFIID iid,void **lib) { return This->lpVtbl->CreatePipelineLibrary(This,blob,blob_size,iid,lib); } static FORCEINLINE HRESULT ID3D12Device1_SetEventOnMultipleFenceCompletion(ID3D12Device1* This,ID3D12Fence *const *fences,const UINT64 *values,UINT fence_count,D3D12_MULTIPLE_FENCE_WAIT_FLAGS flags,HANDLE event) { return This->lpVtbl->SetEventOnMultipleFenceCompletion(This,fences,values,fence_count,flags,event); } static FORCEINLINE HRESULT ID3D12Device1_SetResidencyPriority(ID3D12Device1* This,UINT object_count,ID3D12Pageable *const *objects,const D3D12_RESIDENCY_PRIORITY *priorities) { return This->lpVtbl->SetResidencyPriority(This,object_count,objects,priorities); } #endif #endif #endif #endif /* __ID3D12Device1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12RootSignatureDeserializer interface */ #ifndef __ID3D12RootSignatureDeserializer_INTERFACE_DEFINED__ #define __ID3D12RootSignatureDeserializer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12RootSignatureDeserializer, 0x34ab647b, 0x3cc8, 0x46ac, 0x84,0x1b, 0xc0,0x96,0x56,0x45,0xc0,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("34ab647b-3cc8-46ac-841b-c0965645c046") ID3D12RootSignatureDeserializer : public IUnknown { virtual const D3D12_ROOT_SIGNATURE_DESC * STDMETHODCALLTYPE GetRootSignatureDesc( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12RootSignatureDeserializer, 0x34ab647b, 0x3cc8, 0x46ac, 0x84,0x1b, 0xc0,0x96,0x56,0x45,0xc0,0x46) #endif #else typedef struct ID3D12RootSignatureDeserializerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12RootSignatureDeserializer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12RootSignatureDeserializer *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12RootSignatureDeserializer *This); /*** ID3D12RootSignatureDeserializer methods ***/ const D3D12_ROOT_SIGNATURE_DESC * (STDMETHODCALLTYPE *GetRootSignatureDesc)( ID3D12RootSignatureDeserializer *This); END_INTERFACE } ID3D12RootSignatureDeserializerVtbl; interface ID3D12RootSignatureDeserializer { CONST_VTBL ID3D12RootSignatureDeserializerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12RootSignatureDeserializer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12RootSignatureDeserializer_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12RootSignatureDeserializer_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12RootSignatureDeserializer methods ***/ #define ID3D12RootSignatureDeserializer_GetRootSignatureDesc(This) (This)->lpVtbl->GetRootSignatureDesc(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12RootSignatureDeserializer_QueryInterface(ID3D12RootSignatureDeserializer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12RootSignatureDeserializer_AddRef(ID3D12RootSignatureDeserializer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12RootSignatureDeserializer_Release(ID3D12RootSignatureDeserializer* This) { return This->lpVtbl->Release(This); } /*** ID3D12RootSignatureDeserializer methods ***/ static FORCEINLINE const D3D12_ROOT_SIGNATURE_DESC * ID3D12RootSignatureDeserializer_GetRootSignatureDesc(ID3D12RootSignatureDeserializer* This) { return This->lpVtbl->GetRootSignatureDesc(This); } #endif #endif #endif #endif /* __ID3D12RootSignatureDeserializer_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12VersionedRootSignatureDeserializer interface */ #ifndef __ID3D12VersionedRootSignatureDeserializer_INTERFACE_DEFINED__ #define __ID3D12VersionedRootSignatureDeserializer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12VersionedRootSignatureDeserializer, 0x7f91ce67, 0x090c, 0x4bb7, 0xb7,0x8e, 0xed,0x8f,0xf2,0xe3,0x1d,0xa0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7f91ce67-090c-4bb7-b78e-ed8ff2e31da0") ID3D12VersionedRootSignatureDeserializer : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetRootSignatureDescAtVersion( D3D_ROOT_SIGNATURE_VERSION version, const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **desc) = 0; virtual const D3D12_VERSIONED_ROOT_SIGNATURE_DESC * STDMETHODCALLTYPE GetUnconvertedRootSignatureDesc( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12VersionedRootSignatureDeserializer, 0x7f91ce67, 0x090c, 0x4bb7, 0xb7,0x8e, 0xed,0x8f,0xf2,0xe3,0x1d,0xa0) #endif #else typedef struct ID3D12VersionedRootSignatureDeserializerVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12VersionedRootSignatureDeserializer *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12VersionedRootSignatureDeserializer *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12VersionedRootSignatureDeserializer *This); /*** ID3D12VersionedRootSignatureDeserializer methods ***/ HRESULT (STDMETHODCALLTYPE *GetRootSignatureDescAtVersion)( ID3D12VersionedRootSignatureDeserializer *This, D3D_ROOT_SIGNATURE_VERSION version, const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **desc); const D3D12_VERSIONED_ROOT_SIGNATURE_DESC * (STDMETHODCALLTYPE *GetUnconvertedRootSignatureDesc)( ID3D12VersionedRootSignatureDeserializer *This); END_INTERFACE } ID3D12VersionedRootSignatureDeserializerVtbl; interface ID3D12VersionedRootSignatureDeserializer { CONST_VTBL ID3D12VersionedRootSignatureDeserializerVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12VersionedRootSignatureDeserializer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12VersionedRootSignatureDeserializer_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12VersionedRootSignatureDeserializer_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12VersionedRootSignatureDeserializer methods ***/ #define ID3D12VersionedRootSignatureDeserializer_GetRootSignatureDescAtVersion(This,version,desc) (This)->lpVtbl->GetRootSignatureDescAtVersion(This,version,desc) #define ID3D12VersionedRootSignatureDeserializer_GetUnconvertedRootSignatureDesc(This) (This)->lpVtbl->GetUnconvertedRootSignatureDesc(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12VersionedRootSignatureDeserializer_QueryInterface(ID3D12VersionedRootSignatureDeserializer* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12VersionedRootSignatureDeserializer_AddRef(ID3D12VersionedRootSignatureDeserializer* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12VersionedRootSignatureDeserializer_Release(ID3D12VersionedRootSignatureDeserializer* This) { return This->lpVtbl->Release(This); } /*** ID3D12VersionedRootSignatureDeserializer methods ***/ static FORCEINLINE HRESULT ID3D12VersionedRootSignatureDeserializer_GetRootSignatureDescAtVersion(ID3D12VersionedRootSignatureDeserializer* This,D3D_ROOT_SIGNATURE_VERSION version,const D3D12_VERSIONED_ROOT_SIGNATURE_DESC **desc) { return This->lpVtbl->GetRootSignatureDescAtVersion(This,version,desc); } static FORCEINLINE const D3D12_VERSIONED_ROOT_SIGNATURE_DESC * ID3D12VersionedRootSignatureDeserializer_GetUnconvertedRootSignatureDesc(ID3D12VersionedRootSignatureDeserializer* This) { return This->lpVtbl->GetUnconvertedRootSignatureDesc(This); } #endif #endif #endif #endif /* __ID3D12VersionedRootSignatureDeserializer_INTERFACE_DEFINED__ */ HRESULT __stdcall D3D12CreateRootSignatureDeserializer(const void *data,SIZE_T data_size,REFIID iid,void **deserializer); typedef HRESULT (__stdcall *PFN_D3D12_CREATE_VERSIONED_ROOT_SIGNATURE_DESERIALIZER)(const void *data,SIZE_T data_size,REFIID iid,void **deserializer); HRESULT __stdcall D3D12CreateVersionedRootSignatureDeserializer(const void *data,SIZE_T data_size,REFIID iid,void **deserializer); HRESULT __stdcall D3D12SerializeRootSignature(const D3D12_ROOT_SIGNATURE_DESC *root_signature_desc,D3D_ROOT_SIGNATURE_VERSION version,ID3DBlob **blob,ID3DBlob **error_blob); typedef HRESULT (__stdcall *PFN_D3D12_SERIALIZE_VERSIONED_ROOT_SIGNATURE)(const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *desc,ID3DBlob **blob,ID3DBlob **error_blob); HRESULT __stdcall D3D12SerializeVersionedRootSignature(const D3D12_VERSIONED_ROOT_SIGNATURE_DESC *root_signature_desc,ID3DBlob **blob,ID3DBlob **error_blob); typedef HRESULT (__stdcall *PFN_D3D12_CREATE_DEVICE)(IUnknown *adapter,D3D_FEATURE_LEVEL minimum_feature_level,REFIID iid,void **device); HRESULT __stdcall D3D12CreateDevice(IUnknown *adapter,D3D_FEATURE_LEVEL minimum_feature_level,REFIID iid,void **device); typedef HRESULT (__stdcall *PFN_D3D12_GET_DEBUG_INTERFACE)(REFIID iid,void **debug); HRESULT __stdcall D3D12GetDebugInterface(REFIID iid,void **debug); HRESULT __stdcall D3D12EnableExperimentalFeatures(UINT feature_count,const IID *iids,void *configurations,UINT *configurations_sizes); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d12_h__ */ dxvk-0~git20220822.9df86f2/d3d12sdklayers.h000066400000000000000000002464041430055512200177210ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d12sdklayers.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d12sdklayers_h__ #define __d3d12sdklayers_h__ /* Forward declarations */ #ifndef __ID3D12Debug_FWD_DEFINED__ #define __ID3D12Debug_FWD_DEFINED__ typedef interface ID3D12Debug ID3D12Debug; #ifdef __cplusplus interface ID3D12Debug; #endif /* __cplusplus */ #endif #ifndef __ID3D12Debug1_FWD_DEFINED__ #define __ID3D12Debug1_FWD_DEFINED__ typedef interface ID3D12Debug1 ID3D12Debug1; #ifdef __cplusplus interface ID3D12Debug1; #endif /* __cplusplus */ #endif #ifndef __ID3D12InfoQueue_FWD_DEFINED__ #define __ID3D12InfoQueue_FWD_DEFINED__ typedef interface ID3D12InfoQueue ID3D12InfoQueue; #ifdef __cplusplus interface ID3D12InfoQueue; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif #ifdef WINE_NO_UNICODE_MACROS #undef GetMessage #endif typedef enum D3D12_MESSAGE_CATEGORY { D3D12_MESSAGE_CATEGORY_APPLICATION_DEFINED = 0x0, D3D12_MESSAGE_CATEGORY_MISCELLANEOUS = 0x1, D3D12_MESSAGE_CATEGORY_INITIALIZATION = 0x2, D3D12_MESSAGE_CATEGORY_CLEANUP = 0x3, D3D12_MESSAGE_CATEGORY_COMPILATION = 0x4, D3D12_MESSAGE_CATEGORY_STATE_CREATION = 0x5, D3D12_MESSAGE_CATEGORY_STATE_SETTING = 0x6, D3D12_MESSAGE_CATEGORY_STATE_GETTING = 0x7, D3D12_MESSAGE_CATEGORY_RESOURCE_MANIPULATION = 0x8, D3D12_MESSAGE_CATEGORY_EXECUTION = 0x9, D3D12_MESSAGE_CATEGORY_SHADER = 0xa } D3D12_MESSAGE_CATEGORY; typedef enum D3D12_MESSAGE_SEVERITY { D3D12_MESSAGE_SEVERITY_CORRUPTION = 0x0, D3D12_MESSAGE_SEVERITY_ERROR = 0x1, D3D12_MESSAGE_SEVERITY_WARNING = 0x2, D3D12_MESSAGE_SEVERITY_INFO = 0x3, D3D12_MESSAGE_SEVERITY_MESSAGE = 0x4 } D3D12_MESSAGE_SEVERITY; typedef enum D3D12_MESSAGE_ID { D3D12_MESSAGE_ID_UNKNOWN = 0x0, D3D12_MESSAGE_ID_STRING_FROM_APPLICATION = 0x1, D3D12_MESSAGE_ID_CORRUPTED_THIS = 0x2, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER1 = 0x3, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER2 = 0x4, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER3 = 0x5, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER4 = 0x6, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER5 = 0x7, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER6 = 0x8, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER7 = 0x9, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER8 = 0xa, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER9 = 0xb, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER10 = 0xc, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER11 = 0xd, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER12 = 0xe, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER13 = 0xf, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER14 = 0x10, D3D12_MESSAGE_ID_CORRUPTED_PARAMETER15 = 0x11, D3D12_MESSAGE_ID_CORRUPTED_MULTITHREADING = 0x12, D3D12_MESSAGE_ID_MESSAGE_REPORTING_OUTOFMEMORY = 0x13, D3D12_MESSAGE_ID_GETPRIVATEDATA_MOREDATA = 0x14, D3D12_MESSAGE_ID_SETPRIVATEDATA_INVALIDFREEDATA = 0x15, D3D12_MESSAGE_ID_SETPRIVATEDATA_CHANGINGPARAMS = 0x18, D3D12_MESSAGE_ID_SETPRIVATEDATA_OUTOFMEMORY = 0x19, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT = 0x1a, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDESC = 0x1b, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDFORMAT = 0x1c, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANESLICE = 0x1d, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDPLANESLICE = 0x1e, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS = 0x1f, D3D12_MESSAGE_ID_CREATESHADERRESOURCEVIEW_INVALIDRESOURCE = 0x20, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT = 0x23, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT = 0x24, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDESC = 0x25, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDFORMAT = 0x26, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDVIDEOPLANESLICE = 0x27, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDPLANESLICE = 0x28, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDDIMENSIONS = 0x29, D3D12_MESSAGE_ID_CREATERENDERTARGETVIEW_INVALIDRESOURCE = 0x2a, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT = 0x2d, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDESC = 0x2e, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFORMAT = 0x2f, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS = 0x30, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE = 0x31, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_OUTOFMEMORY = 0x34, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TOOMANYELEMENTS = 0x35, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDFORMAT = 0x36, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT = 0x37, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOT = 0x38, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS = 0x39, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH = 0x3a, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE = 0x3b, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE = 0x3c, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_INVALIDALIGNMENT = 0x3d, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_DUPLICATESEMANTIC = 0x3e, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE = 0x3f, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_NULLSEMANTIC = 0x40, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_MISSINGELEMENT = 0x41, D3D12_MESSAGE_ID_CREATEVERTEXSHADER_OUTOFMEMORY = 0x42, D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERBYTECODE = 0x43, D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDSHADERTYPE = 0x44, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_OUTOFMEMORY = 0x45, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE = 0x46, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDSHADERTYPE = 0x47, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY = 0x48, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE = 0x49, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 0x4a, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES = 0x4b, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED = 0x4c, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED = 0x4f, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT = 0x50, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT = 0x51, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT = 0x52, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT = 0x53, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION = 0x54, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT = 0x55, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE = 0x56, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC = 0x57, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH = 0x58, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS = 0x59, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX = 0x5a, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE = 0x5b, D3D12_MESSAGE_ID_CREATEPIXELSHADER_OUTOFMEMORY = 0x5c, D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERBYTECODE = 0x5d, D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDSHADERTYPE = 0x5e, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFILLMODE = 0x5f, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDCULLMODE = 0x60, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP = 0x61, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS = 0x62, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK = 0x64, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC = 0x65, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP = 0x66, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP = 0x67, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP = 0x68, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC = 0x69, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP = 0x6a, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP = 0x6b, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP = 0x6c, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC = 0x6d, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLEND = 0x6f, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLEND = 0x70, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOP = 0x71, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDSRCBLENDALPHA = 0x72, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDDESTBLENDALPHA = 0x73, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDBLENDOPALPHA = 0x74, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK = 0x75, D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_INVALID = 0x87, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_NOT_SET = 0xc8, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_ROOT_SIGNATURE_MISMATCH = 0xc9, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_NOT_SET = 0xca, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL = 0xd1, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_BUFFER_TOO_SMALL = 0xd2, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_NOT_SET = 0xd3, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_FORMAT_INVALID = 0xd4, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_BUFFER_TOO_SMALL = 0xd5, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INVALID_PRIMITIVETOPOLOGY = 0xdb, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_VERTEX_STRIDE_UNALIGNED = 0xdd, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_INDEX_OFFSET_UNALIGNED = 0xde, D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_AT_FAULT = 0xe8, D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT = 0xe9, D3D12_MESSAGE_ID_DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT = 0xea, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC = 0xef, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC = 0xf0, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_TYPE_MISMATCH = 0xf5, D3D12_MESSAGE_ID_CREATEINPUTLAYOUT_EMPTY_LAYOUT = 0xfd, D3D12_MESSAGE_ID_LIVE_OBJECT_SUMMARY = 0xff, D3D12_MESSAGE_ID_LIVE_DEVICE = 0x112, D3D12_MESSAGE_ID_LIVE_SWAPCHAIN = 0x113, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILVIEW_INVALIDFLAGS = 0x114, D3D12_MESSAGE_ID_CREATEVERTEXSHADER_INVALIDCLASSLINKAGE = 0x115, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE = 0x116, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER = 0x118, D3D12_MESSAGE_ID_CREATEPIXELSHADER_INVALIDCLASSLINKAGE = 0x11b, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM = 0x11c, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES = 0x11d, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES = 0x11e, D3D12_MESSAGE_ID_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES = 0x11f, D3D12_MESSAGE_ID_CREATEHULLSHADER_OUTOFMEMORY = 0x121, D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERBYTECODE = 0x122, D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDSHADERTYPE = 0x123, D3D12_MESSAGE_ID_CREATEHULLSHADER_INVALIDCLASSLINKAGE = 0x124, D3D12_MESSAGE_ID_CREATEDOMAINSHADER_OUTOFMEMORY = 0x126, D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERBYTECODE = 0x127, D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDSHADERTYPE = 0x128, D3D12_MESSAGE_ID_CREATEDOMAINSHADER_INVALIDCLASSLINKAGE = 0x129, D3D12_MESSAGE_ID_RESOURCE_UNMAP_NOTMAPPED = 0x136, D3D12_MESSAGE_ID_DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE = 0x13e, D3D12_MESSAGE_ID_CREATECOMPUTESHADER_OUTOFMEMORY = 0x141, D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDSHADERBYTECODE = 0x142, D3D12_MESSAGE_ID_CREATECOMPUTESHADER_INVALIDCLASSLINKAGE = 0x143, D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14b, D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14c, D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14d, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x14e, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED = 0x14f, D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x150, D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED = 0x151, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE = 0x154, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDESC = 0x155, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT = 0x156, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANESLICE = 0x157, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDPLANESLICE = 0x158, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS = 0x159, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT = 0x15a, D3D12_MESSAGE_ID_CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS = 0x162, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT = 0x191, D3D12_MESSAGE_ID_CREATEBLENDSTATE_INVALIDLOGICOPS = 0x193, D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19a, D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19c, D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x19e, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a0, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a2, D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a4, D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED = 0x1a6, D3D12_MESSAGE_ID_DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED = 0x1a9, D3D12_MESSAGE_ID_DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED = 0x1aa, D3D12_MESSAGE_ID_DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED = 0x1ab, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED = 0x1ac, D3D12_MESSAGE_ID_DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED = 0x1ad, D3D12_MESSAGE_ID_DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED = 0x1ae, D3D12_MESSAGE_ID_DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED = 0x1af, D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_INVALIDSOURCERECT = 0x1bf, D3D12_MESSAGE_ID_DEVICE_CLEARVIEW_EMPTYRECT = 0x1c0, D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_INVALID_PARAMETER = 0x1ed, D3D12_MESSAGE_ID_COPYTILEMAPPINGS_INVALID_PARAMETER = 0x1ee, D3D12_MESSAGE_ID_CREATEDEVICE_INVALIDARGS = 0x1fa, D3D12_MESSAGE_ID_CREATEDEVICE_WARNING = 0x1fb, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_TYPE = 0x207, D3D12_MESSAGE_ID_RESOURCE_BARRIER_NULL_POINTER = 0x208, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SUBRESOURCE = 0x209, D3D12_MESSAGE_ID_RESOURCE_BARRIER_RESERVED_BITS = 0x20a, D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISSING_BIND_FLAGS = 0x20b, D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_MISC_FLAGS = 0x20c, D3D12_MESSAGE_ID_RESOURCE_BARRIER_MATCHING_STATES = 0x20d, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINATION = 0x20e, D3D12_MESSAGE_ID_RESOURCE_BARRIER_BEFORE_AFTER_MISMATCH = 0x20f, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_RESOURCE = 0x210, D3D12_MESSAGE_ID_RESOURCE_BARRIER_SAMPLE_COUNT = 0x211, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS = 0x212, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMBINED_FLAGS = 0x213, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAGS_FOR_FORMAT = 0x214, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_SPLIT_BARRIER = 0x215, D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_END = 0x216, D3D12_MESSAGE_ID_RESOURCE_BARRIER_UNMATCHED_BEGIN = 0x217, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_FLAG = 0x218, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_COMMAND_LIST_TYPE = 0x219, D3D12_MESSAGE_ID_INVALID_SUBRESOURCE_STATE = 0x21a, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CONTENTION = 0x21c, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET = 0x21d, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_RESET_BUNDLE = 0x21e, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_CANNOT_RESET = 0x21f, D3D12_MESSAGE_ID_COMMAND_LIST_OPEN = 0x220, D3D12_MESSAGE_ID_INVALID_BUNDLE_API = 0x222, D3D12_MESSAGE_ID_COMMAND_LIST_CLOSED = 0x223, D3D12_MESSAGE_ID_WRONG_COMMAND_ALLOCATOR_TYPE = 0x225, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_SYNC = 0x228, D3D12_MESSAGE_ID_COMMAND_LIST_SYNC = 0x229, D3D12_MESSAGE_ID_SET_DESCRIPTOR_HEAP_INVALID = 0x22a, D3D12_MESSAGE_ID_CREATE_COMMANDQUEUE = 0x22d, D3D12_MESSAGE_ID_CREATE_COMMANDALLOCATOR = 0x22e, D3D12_MESSAGE_ID_CREATE_PIPELINESTATE = 0x22f, D3D12_MESSAGE_ID_CREATE_COMMANDLIST12 = 0x230, D3D12_MESSAGE_ID_CREATE_RESOURCE = 0x232, D3D12_MESSAGE_ID_CREATE_DESCRIPTORHEAP = 0x233, D3D12_MESSAGE_ID_CREATE_ROOTSIGNATURE = 0x234, D3D12_MESSAGE_ID_CREATE_LIBRARY = 0x235, D3D12_MESSAGE_ID_CREATE_HEAP = 0x236, D3D12_MESSAGE_ID_CREATE_MONITOREDFENCE = 0x237, D3D12_MESSAGE_ID_CREATE_QUERYHEAP = 0x238, D3D12_MESSAGE_ID_CREATE_COMMANDSIGNATURE = 0x239, D3D12_MESSAGE_ID_LIVE_COMMANDQUEUE = 0x23a, D3D12_MESSAGE_ID_LIVE_COMMANDALLOCATOR = 0x23b, D3D12_MESSAGE_ID_LIVE_PIPELINESTATE = 0x23c, D3D12_MESSAGE_ID_LIVE_COMMANDLIST12 = 0x23d, D3D12_MESSAGE_ID_LIVE_RESOURCE = 0x23f, D3D12_MESSAGE_ID_LIVE_DESCRIPTORHEAP = 0x240, D3D12_MESSAGE_ID_LIVE_ROOTSIGNATURE = 0x241, D3D12_MESSAGE_ID_LIVE_LIBRARY = 0x242, D3D12_MESSAGE_ID_LIVE_HEAP = 0x243, D3D12_MESSAGE_ID_LIVE_MONITOREDFENCE = 0x244, D3D12_MESSAGE_ID_LIVE_QUERYHEAP = 0x245, D3D12_MESSAGE_ID_LIVE_COMMANDSIGNATURE = 0x246, D3D12_MESSAGE_ID_DESTROY_COMMANDQUEUE = 0x247, D3D12_MESSAGE_ID_DESTROY_COMMANDALLOCATOR = 0x248, D3D12_MESSAGE_ID_DESTROY_PIPELINESTATE = 0x249, D3D12_MESSAGE_ID_DESTROY_COMMANDLIST12 = 0x24a, D3D12_MESSAGE_ID_DESTROY_RESOURCE = 0x24c, D3D12_MESSAGE_ID_DESTROY_DESCRIPTORHEAP = 0x24d, D3D12_MESSAGE_ID_DESTROY_ROOTSIGNATURE = 0x24e, D3D12_MESSAGE_ID_DESTROY_LIBRARY = 0x24f, D3D12_MESSAGE_ID_DESTROY_HEAP = 0x250, D3D12_MESSAGE_ID_DESTROY_MONITOREDFENCE = 0x251, D3D12_MESSAGE_ID_DESTROY_QUERYHEAP = 0x252, D3D12_MESSAGE_ID_DESTROY_COMMANDSIGNATURE = 0x253, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONS = 0x255, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMISCFLAGS = 0x257, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDARG_RETURN = 0x25a, D3D12_MESSAGE_ID_CREATERESOURCE_OUTOFMEMORY_RETURN = 0x25b, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDESC = 0x25c, D3D12_MESSAGE_ID_POSSIBLY_INVALID_SUBRESOURCE_STATE = 0x25f, D3D12_MESSAGE_ID_INVALID_USE_OF_NON_RESIDENT_RESOURCE = 0x260, D3D12_MESSAGE_ID_POSSIBLE_INVALID_USE_OF_NON_RESIDENT_RESOURCE = 0x261, D3D12_MESSAGE_ID_BUNDLE_PIPELINE_STATE_MISMATCH = 0x262, D3D12_MESSAGE_ID_PRIMITIVE_TOPOLOGY_MISMATCH_PIPELINE_STATE = 0x263, D3D12_MESSAGE_ID_RENDER_TARGET_FORMAT_MISMATCH_PIPELINE_STATE = 0x265, D3D12_MESSAGE_ID_RENDER_TARGET_SAMPLE_DESC_MISMATCH_PIPELINE_STATE = 0x266, D3D12_MESSAGE_ID_DEPTH_STENCIL_FORMAT_MISMATCH_PIPELINE_STATE = 0x267, D3D12_MESSAGE_ID_DEPTH_STENCIL_SAMPLE_DESC_MISMATCH_PIPELINE_STATE = 0x268, D3D12_MESSAGE_ID_CREATESHADER_INVALIDBYTECODE = 0x26e, D3D12_MESSAGE_ID_CREATEHEAP_NULLDESC = 0x26f, D3D12_MESSAGE_ID_CREATEHEAP_INVALIDSIZE = 0x270, D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDHEAPTYPE = 0x271, D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES = 0x272, D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMEMORYPOOL = 0x273, D3D12_MESSAGE_ID_CREATEHEAP_INVALIDPROPERTIES = 0x274, D3D12_MESSAGE_ID_CREATEHEAP_INVALIDALIGNMENT = 0x275, D3D12_MESSAGE_ID_CREATEHEAP_UNRECOGNIZEDMISCFLAGS = 0x276, D3D12_MESSAGE_ID_CREATEHEAP_INVALIDMISCFLAGS = 0x277, D3D12_MESSAGE_ID_CREATEHEAP_INVALIDARG_RETURN = 0x278, D3D12_MESSAGE_ID_CREATEHEAP_OUTOFMEMORY_RETURN = 0x279, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAPPROPERTIES = 0x27a, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPTYPE = 0x27b, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES = 0x27c, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDMEMORYPOOL = 0x27d, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPPROPERTIES = 0x27e, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPMISCFLAGS = 0x27f, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDHEAPMISCFLAGS = 0x280, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_INVALIDARG_RETURN = 0x281, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_OUTOFMEMORY_RETURN = 0x282, D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_UNRECOGNIZEDHEAPTYPE = 0x283, D3D12_MESSAGE_ID_GETCUSTOMHEAPPROPERTIES_INVALIDHEAPTYPE = 0x284, D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_INVALID_DESC = 0x285, D3D12_MESSAGE_ID_INVALID_DESCRIPTOR_HANDLE = 0x286, D3D12_MESSAGE_ID_CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE = 0x287, D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_RESOURCE = 0x289, D3D12_MESSAGE_ID_CREATE_CONSTANT_BUFFER_VIEW_INVALID_DESC = 0x28a, D3D12_MESSAGE_ID_CREATE_UNORDEREDACCESS_VIEW_INVALID_COUNTER_USAGE = 0x28c, D3D12_MESSAGE_ID_COPY_DESCRIPTORS_INVALID_RANGES = 0x28d, D3D12_MESSAGE_ID_COPY_DESCRIPTORS_WRITE_ONLY_DESCRIPTOR = 0x28e, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RTV_FORMAT_NOT_UNKNOWN = 0x28f, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_RENDER_TARGET_COUNT = 0x290, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VERTEX_SHADER_NOT_SET = 0x291, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_NOT_SET = 0x292, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_HS_DS_SIGNATURE_MISMATCH = 0x293, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERINDEX = 0x294, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_COMPONENTTYPE = 0x295, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERMASK = 0x296, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SYSTEMVALUE = 0x297, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS = 0x298, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_MINPRECISION = 0x299, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND = 0x29a, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_XOR_DS_MISMATCH = 0x29b, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH = 0x29c, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_CONTROL_POINT_COUNT_MISMATCH = 0x29d, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_DS_TESSELLATOR_DOMAIN_MISMATCH = 0x29e, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN = 0x29f, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_FORCED_SAMPLE_COUNT = 0x2a0, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_PRIMITIVETOPOLOGY = 0x2a1, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SYSTEMVALUE = 0x2a2, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0 = 0x2a3, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING = 0x2a4, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_TYPE_MISMATCH = 0x2a5, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS = 0x2a6, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RENDERTARGETVIEW_NOT_SET = 0x2a7, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DEPTHSTENCILVIEW_NOT_SET = 0x2a8, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_INPUT_PRIMITIVE_MISMATCH = 0x2a9, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_POSITION_NOT_PRESENT = 0x2aa, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE_FLAGS = 0x2ab, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_INDEX_BUFFER_PROPERTIES = 0x2ac, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INVALID_SAMPLE_DESC = 0x2ad, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_HS_ROOT_SIGNATURE_MISMATCH = 0x2ae, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_DS_ROOT_SIGNATURE_MISMATCH = 0x2af, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VS_ROOT_SIGNATURE_MISMATCH = 0x2b0, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_GS_ROOT_SIGNATURE_MISMATCH = 0x2b1, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_ROOT_SIGNATURE_MISMATCH = 0x2b2, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE = 0x2b3, D3D12_MESSAGE_ID_EXECUTE_BUNDLE_OPEN_BUNDLE = 0x2b4, D3D12_MESSAGE_ID_EXECUTE_BUNDLE_DESCRIPTOR_HEAP_MISMATCH = 0x2b5, D3D12_MESSAGE_ID_EXECUTE_BUNDLE_TYPE = 0x2b6, D3D12_MESSAGE_ID_DRAW_EMPTY_SCISSOR_RECTANGLE = 0x2b7, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_BLOB_NOT_FOUND = 0x2b8, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_DESERIALIZE_FAILED = 0x2b9, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_INVALID_CONFIGURATION = 0x2ba, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_SUPPORTED_ON_DEVICE = 0x2bb, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLRESOURCEPROPERTIES = 0x2bc, D3D12_MESSAGE_ID_CREATERESOURCEANDHEAP_NULLHEAP = 0x2bd, D3D12_MESSAGE_ID_GETRESOURCEALLOCATIONINFO_INVALIDRDESCS = 0x2be, D3D12_MESSAGE_ID_MAKERESIDENT_NULLOBJECTARRAY = 0x2bf, D3D12_MESSAGE_ID_EVICT_NULLOBJECTARRAY = 0x2c1, D3D12_MESSAGE_ID_SET_DESCRIPTOR_TABLE_INVALID = 0x2c4, D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_INVALID = 0x2c5, D3D12_MESSAGE_ID_SET_ROOT_CONSTANT_BUFFER_VIEW_INVALID = 0x2c6, D3D12_MESSAGE_ID_SET_ROOT_SHADER_RESOURCE_VIEW_INVALID = 0x2c7, D3D12_MESSAGE_ID_SET_ROOT_UNORDERED_ACCESS_VIEW_INVALID = 0x2c8, D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID_DESC = 0x2c9, D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID_DESC = 0x2cb, D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID_DESC = 0x2cd, D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDDIMENSIONALITY = 0x2ce, D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDLAYOUT = 0x2cf, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDDIMENSIONALITY = 0x2d0, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDALIGNMENT = 0x2d1, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDMIPLEVELS = 0x2d2, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDSAMPLEDESC = 0x2d3, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDLAYOUT = 0x2d4, D3D12_MESSAGE_ID_SET_INDEX_BUFFER_INVALID = 0x2d5, D3D12_MESSAGE_ID_SET_VERTEX_BUFFERS_INVALID = 0x2d6, D3D12_MESSAGE_ID_SET_STREAM_OUTPUT_BUFFERS_INVALID = 0x2d7, D3D12_MESSAGE_ID_SET_RENDER_TARGETS_INVALID = 0x2d8, D3D12_MESSAGE_ID_CREATEQUERY_HEAP_INVALID_PARAMETERS = 0x2d9, D3D12_MESSAGE_ID_BEGIN_END_QUERY_INVALID_PARAMETERS = 0x2db, D3D12_MESSAGE_ID_CLOSE_COMMAND_LIST_OPEN_QUERY = 0x2dc, D3D12_MESSAGE_ID_RESOLVE_QUERY_DATA_INVALID_PARAMETERS = 0x2dd, D3D12_MESSAGE_ID_SET_PREDICATION_INVALID_PARAMETERS = 0x2de, D3D12_MESSAGE_ID_TIMESTAMPS_NOT_SUPPORTED = 0x2df, D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDFORMAT = 0x2e1, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDFORMAT = 0x2e2, D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDSUBRESOURCERANGE = 0x2e3, D3D12_MESSAGE_ID_GETCOPYABLEFOOTPRINTS_INVALIDBASEOFFSET = 0x2e4, D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDSUBRESOURCERANGE = 0x2e3, D3D12_MESSAGE_ID_GETCOPYABLELAYOUT_INVALIDBASEOFFSET = 0x2e4, D3D12_MESSAGE_ID_RESOURCE_BARRIER_INVALID_HEAP = 0x2e5, D3D12_MESSAGE_ID_CREATE_SAMPLER_INVALID = 0x2e6, D3D12_MESSAGE_ID_CREATECOMMANDSIGNATURE_INVALID = 0x2e7, D3D12_MESSAGE_ID_EXECUTE_INDIRECT_INVALID_PARAMETERS = 0x2e8, D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_RESOURCE_DIMENSION = 0x2e9, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUE = 0x32f, D3D12_MESSAGE_ID_CREATERESOURCE_UNRECOGNIZEDCLEARVALUEFORMAT = 0x330, D3D12_MESSAGE_ID_CREATERESOURCE_INVALIDCLEARVALUEFORMAT = 0x331, D3D12_MESSAGE_ID_CREATERESOURCE_CLEARVALUEDENORMFLUSH = 0x332, D3D12_MESSAGE_ID_CLEARRENDERTARGETVIEW_MISMATCHINGCLEARVALUE = 0x334, D3D12_MESSAGE_ID_CLEARDEPTHSTENCILVIEW_MISMATCHINGCLEARVALUE = 0x335, D3D12_MESSAGE_ID_MAP_INVALIDHEAP = 0x336, D3D12_MESSAGE_ID_UNMAP_INVALIDHEAP = 0x337, D3D12_MESSAGE_ID_MAP_INVALIDRESOURCE = 0x338, D3D12_MESSAGE_ID_UNMAP_INVALIDRESOURCE = 0x339, D3D12_MESSAGE_ID_MAP_INVALIDSUBRESOURCE = 0x33a, D3D12_MESSAGE_ID_UNMAP_INVALIDSUBRESOURCE = 0x33b, D3D12_MESSAGE_ID_MAP_INVALIDRANGE = 0x33c, D3D12_MESSAGE_ID_UNMAP_INVALIDRANGE = 0x33d, D3D12_MESSAGE_ID_MAP_INVALIDDATAPOINTER = 0x340, D3D12_MESSAGE_ID_MAP_INVALIDARG_RETURN = 0x341, D3D12_MESSAGE_ID_MAP_OUTOFMEMORY_RETURN = 0x342, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_BUNDLENOTSUPPORTED = 0x343, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_COMMANDLISTMISMATCH = 0x344, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_OPENCOMMANDLIST = 0x345, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_FAILEDCOMMANDLIST = 0x346, D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLDST = 0x347, D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDDSTRESOURCEDIMENSION = 0x348, D3D12_MESSAGE_ID_COPYBUFFERREGION_DSTRANGEOUTOFBOUNDS = 0x349, D3D12_MESSAGE_ID_COPYBUFFERREGION_NULLSRC = 0x34a, D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDSRCRESOURCEDIMENSION = 0x34b, D3D12_MESSAGE_ID_COPYBUFFERREGION_SRCRANGEOUTOFBOUNDS = 0x34c, D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALIDCOPYFLAGS = 0x34d, D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLDST = 0x34e, D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTTYPE = 0x34f, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCEDIMENSION = 0x350, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTRESOURCE = 0x351, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTSUBRESOURCE = 0x352, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTOFFSET = 0x353, D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDDSTFORMAT = 0x354, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTFORMAT = 0x355, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDIMENSIONS = 0x356, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTROWPITCH = 0x357, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTPLACEMENT = 0x358, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTDSPLACEDFOOTPRINTFORMAT = 0x359, D3D12_MESSAGE_ID_COPYTEXTUREREGION_DSTREGIONOUTOFBOUNDS = 0x35a, D3D12_MESSAGE_ID_COPYTEXTUREREGION_NULLSRC = 0x35b, D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCTYPE = 0x35c, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCEDIMENSION = 0x35d, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCRESOURCE = 0x35e, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCSUBRESOURCE = 0x35f, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCOFFSET = 0x360, D3D12_MESSAGE_ID_COPYTEXTUREREGION_UNRECOGNIZEDSRCFORMAT = 0x361, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCFORMAT = 0x362, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDIMENSIONS = 0x363, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCROWPITCH = 0x364, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCPLACEMENT = 0x365, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCDSPLACEDFOOTPRINTFORMAT = 0x366, D3D12_MESSAGE_ID_COPYTEXTUREREGION_SRCREGIONOUTOFBOUNDS = 0x367, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDDSTCOORDINATES = 0x368, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDSRCBOX = 0x369, D3D12_MESSAGE_ID_COPYTEXTUREREGION_FORMATMISMATCH = 0x36a, D3D12_MESSAGE_ID_COPYTEXTUREREGION_EMPTYBOX = 0x36b, D3D12_MESSAGE_ID_COPYTEXTUREREGION_INVALIDCOPYFLAGS = 0x36c, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SUBRESOURCE_INDEX = 0x36d, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_FORMAT = 0x36e, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_MISMATCH = 0x36f, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALID_SAMPLE_COUNT = 0x370, D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_INVALID_SHADER = 0x371, D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_CS_ROOT_SIGNATURE_MISMATCH = 0x372, D3D12_MESSAGE_ID_CREATECOMPUTEPIPELINESTATE_MISSING_ROOT_SIGNATURE = 0x373, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALIDCACHEDBLOB = 0x374, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBADAPTERMISMATCH = 0x375, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDRIVERVERSIONMISMATCH = 0x376, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBDESCMISMATCH = 0x377, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CACHEDBLOBIGNORED = 0x378, D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDHEAP = 0x379, D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDRESOURCE = 0x37a, D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDBOX = 0x37b, D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_INVALIDSUBRESOURCE = 0x37c, D3D12_MESSAGE_ID_WRITETOSUBRESOURCE_EMPTYBOX = 0x37d, D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDHEAP = 0x37e, D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDRESOURCE = 0x37f, D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDBOX = 0x380, D3D12_MESSAGE_ID_READFROMSUBRESOURCE_INVALIDSUBRESOURCE = 0x381, D3D12_MESSAGE_ID_READFROMSUBRESOURCE_EMPTYBOX = 0x382, D3D12_MESSAGE_ID_TOO_MANY_NODES_SPECIFIED = 0x383, D3D12_MESSAGE_ID_INVALID_NODE_INDEX = 0x384, D3D12_MESSAGE_ID_GETHEAPPROPERTIES_INVALIDRESOURCE = 0x385, D3D12_MESSAGE_ID_NODE_MASK_MISMATCH = 0x386, D3D12_MESSAGE_ID_COMMAND_LIST_OUTOFMEMORY = 0x387, D3D12_MESSAGE_ID_COMMAND_LIST_MULTIPLE_SWAPCHAIN_BUFFER_REFERENCES = 0x388, D3D12_MESSAGE_ID_COMMAND_LIST_TOO_MANY_SWAPCHAIN_REFERENCES = 0x389, D3D12_MESSAGE_ID_COMMAND_QUEUE_TOO_MANY_SWAPCHAIN_REFERENCES = 0x38a, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_WRONGSWAPCHAINBUFFERREFERENCE = 0x38b, D3D12_MESSAGE_ID_COMMAND_LIST_SETRENDERTARGETS_INVALIDNUMRENDERTARGETS = 0x38c, D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_TYPE = 0x38d, D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_FLAGS = 0x38e, D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFLAGS = 0x38f, D3D12_MESSAGE_ID_CREATESHAREDRESOURCE_INVALIDFORMAT = 0x390, D3D12_MESSAGE_ID_CREATESHAREDHEAP_INVALIDFLAGS = 0x391, D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_UNRECOGNIZEDPROPERTIES = 0x392, D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDSIZE = 0x393, D3D12_MESSAGE_ID_REFLECTSHAREDPROPERTIES_INVALIDOBJECT = 0x394, D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDOBJECT = 0x395, D3D12_MESSAGE_ID_KEYEDMUTEX_INVALIDKEY = 0x396, D3D12_MESSAGE_ID_KEYEDMUTEX_WRONGSTATE = 0x397, D3D12_MESSAGE_ID_CREATE_QUEUE_INVALID_PRIORITY = 0x398, D3D12_MESSAGE_ID_OBJECT_DELETED_WHILE_STILL_IN_USE = 0x399, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_FLAGS = 0x39a, D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_HAS_NO_RESOURCE = 0x39b, D3D12_MESSAGE_ID_COMMAND_LIST_DRAW_RENDER_TARGET_DELETED = 0x39c, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_ALL_RENDER_TARGETS_HAVE_UNKNOWN_FORMAT = 0x39d, D3D12_MESSAGE_ID_HEAP_ADDRESS_RANGE_INTERSECTS_MULTIPLE_BUFFERS = 0x39e, D3D12_MESSAGE_ID_EXECUTECOMMANDLISTS_GPU_WRITTEN_READBACK_RESOURCE_MAPPED = 0x39f, D3D12_MESSAGE_ID_UNMAP_RANGE_NOT_EMPTY = 0x3a1, D3D12_MESSAGE_ID_MAP_INVALID_NULLRANGE = 0x3a2, D3D12_MESSAGE_ID_UNMAP_INVALID_NULLRANGE = 0x3a3, D3D12_MESSAGE_ID_NO_GRAPHICS_API_SUPPORT = 0x3a4, D3D12_MESSAGE_ID_NO_COMPUTE_API_SUPPORT = 0x3a5, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_RESOURCE_FLAGS_NOT_SUPPORTED = 0x3a6, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_ARGUMENT_UNINITIALIZED = 0x3a7, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_HEAP_INDEX_OUT_OF_BOUNDS = 0x3a8, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TABLE_REGISTER_INDEX_OUT_OF_BOUNDS = 0x3a9, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_UNINITIALIZED = 0x3aa, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_DESCRIPTOR_TYPE_MISMATCH = 0x3ab, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SRV_RESOURCE_DIMENSION_MISMATCH = 0x3ac, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UAV_RESOURCE_DIMENSION_MISMATCH = 0x3ad, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INCOMPATIBLE_RESOURCE_STATE = 0x3ae, D3D12_MESSAGE_ID_COPYRESOURCE_NULLDST = 0x3af, D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDDSTRESOURCE = 0x3b0, D3D12_MESSAGE_ID_COPYRESOURCE_NULLSRC = 0x3b1, D3D12_MESSAGE_ID_COPYRESOURCE_INVALIDSRCRESOURCE = 0x3b2, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLDST = 0x3b3, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDDSTRESOURCE = 0x3b4, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_NULLSRC = 0x3b5, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_INVALIDSRCRESOURCE = 0x3b6, D3D12_MESSAGE_ID_PIPELINE_STATE_TYPE_MISMATCH = 0x3b7, D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_NOT_SET = 0x3b8, D3D12_MESSAGE_ID_COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_MISMATCH = 0x3b9, D3D12_MESSAGE_ID_RESOURCE_BARRIER_ZERO_BARRIERS = 0x3ba, D3D12_MESSAGE_ID_BEGIN_END_EVENT_MISMATCH = 0x3bb, D3D12_MESSAGE_ID_RESOURCE_BARRIER_POSSIBLE_BEFORE_AFTER_MISMATCH = 0x3bc, D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_BEGIN_END = 0x3bd, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_INVALID_RESOURCE = 0x3be, D3D12_MESSAGE_ID_USE_OF_ZERO_REFCOUNT_OBJECT = 0x3bf, D3D12_MESSAGE_ID_OBJECT_EVICTED_WHILE_STILL_IN_USE = 0x3c0, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_ROOT_DESCRIPTOR_ACCESS_OUT_OF_BOUNDS = 0x3c1, D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_INVALIDLIBRARYBLOB = 0x3c2, D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_DRIVERVERSIONMISMATCH = 0x3c3, D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_ADAPTERVERSIONMISMATCH = 0x3c4, D3D12_MESSAGE_ID_CREATEPIPELINELIBRARY_UNSUPPORTED = 0x3c5, D3D12_MESSAGE_ID_CREATE_PIPELINELIBRARY = 0x3c6, D3D12_MESSAGE_ID_LIVE_PIPELINELIBRARY = 0x3c7, D3D12_MESSAGE_ID_DESTROY_PIPELINELIBRARY = 0x3c8, D3D12_MESSAGE_ID_STOREPIPELINE_NONAME = 0x3c9, D3D12_MESSAGE_ID_STOREPIPELINE_DUPLICATENAME = 0x3ca, D3D12_MESSAGE_ID_LOADPIPELINE_NAMENOTFOUND = 0x3cb, D3D12_MESSAGE_ID_LOADPIPELINE_INVALIDDESC = 0x3cc, D3D12_MESSAGE_ID_PIPELINELIBRARY_SERIALIZE_NOTENOUGHMEMORY = 0x3cd, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_RT_OUTPUT_MISMATCH = 0x3ce, D3D12_MESSAGE_ID_SETEVENTONMULTIPLEFENCECOMPLETION_INVALIDFLAGS = 0x3cf, D3D12_MESSAGE_ID_CREATE_QUEUE_VIDEO_NOT_SUPPORTED = 0x3d0, D3D12_MESSAGE_ID_CREATE_COMMAND_ALLOCATOR_VIDEO_NOT_SUPPORTED = 0x3d1, D3D12_MESSAGE_ID_CREATEQUERY_HEAP_VIDEO_DECODE_STATISTICS_NOT_SUPPORTED = 0x3d2, D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDLIST = 0x3d3, D3D12_MESSAGE_ID_CREATE_VIDEODECODER = 0x3d4, D3D12_MESSAGE_ID_CREATE_VIDEODECODESTREAM = 0x3d5, D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDLIST = 0x3d6, D3D12_MESSAGE_ID_LIVE_VIDEODECODER = 0x3d7, D3D12_MESSAGE_ID_LIVE_VIDEODECODESTREAM = 0x3d8, D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDLIST = 0x3d9, D3D12_MESSAGE_ID_DESTROY_VIDEODECODER = 0x3da, D3D12_MESSAGE_ID_DESTROY_VIDEODECODESTREAM = 0x3db, D3D12_MESSAGE_ID_DECODE_FRAME_INVALID_PARAMETERS = 0x3dc, D3D12_MESSAGE_ID_DEPRECATED_API = 0x3dd, D3D12_MESSAGE_ID_RESOURCE_BARRIER_MISMATCHING_COMMAND_LIST_TYPE = 0x3de, D3D12_MESSAGE_ID_COMMAND_LIST_DESCRIPTOR_TABLE_NOT_SET = 0x3df, D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_CONSTANT_BUFFER_VIEW_NOT_SET = 0x3e0, D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_SHADER_RESOURCE_VIEW_NOT_SET = 0x3e1, D3D12_MESSAGE_ID_COMMAND_LIST_ROOT_UNORDERED_ACCESS_VIEW_NOT_SET = 0x3e2, D3D12_MESSAGE_ID_DISCARD_INVALID_SUBRESOURCE_RANGE = 0x3e3, D3D12_MESSAGE_ID_DISCARD_ONE_SUBRESOURCE_FOR_MIPS_WITH_RECTS = 0x3e4, D3D12_MESSAGE_ID_DISCARD_NO_RECTS_FOR_NON_TEXTURE2D = 0x3e5, D3D12_MESSAGE_ID_COPY_ON_SAME_SUBRESOURCE = 0x3e6, D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PAGEABLE = 0x3e7, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_UNSUPPORTED = 0x3e8, D3D12_MESSAGE_ID_STATIC_DESCRIPTOR_INVALID_DESCRIPTOR_CHANGE = 0x3e9, D3D12_MESSAGE_ID_DATA_STATIC_DESCRIPTOR_INVALID_DATA_CHANGE = 0x3ea, D3D12_MESSAGE_ID_DATA_STATIC_WHILE_SET_AT_EXECUTE_DESCRIPTOR_INVALID_DATA_CHANGE = 0x3eb, D3D12_MESSAGE_ID_EXECUTE_BUNDLE_STATIC_DESCRIPTOR_DATA_STATIC_NOT_SET = 0x3ec, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_ACCESS_OUT_OF_BOUNDS = 0x3ed, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_SAMPLER_MODE_MISMATCH = 0x3ee, D3D12_MESSAGE_ID_CREATE_FENCE_INVALID_FLAGS = 0x3ef, D3D12_MESSAGE_ID_RESOURCE_BARRIER_DUPLICATE_SUBRESOURCE_TRANSITIONS = 0x3f0, D3D12_MESSAGE_ID_SETRESIDENCYPRIORITY_INVALID_PRIORITY = 0x3f1, D3D12_MESSAGE_ID_CREATE_DESCRIPTOR_HEAP_LARGE_NUM_DESCRIPTORS = 0x3f5, D3D12_MESSAGE_ID_BEGIN_EVENT = 0x3f6, D3D12_MESSAGE_ID_END_EVENT = 0x3f7, D3D12_MESSAGE_ID_CREATEDEVICE_DEBUG_LAYER_STARTUP_OPTIONS = 0x3f8, D3D12_MESSAGE_ID_CREATEDEPTHSTENCILSTATE_DEPTHBOUNDSTEST_UNSUPPORTED = 0x3f9, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_DUPLICATE_SUBOBJECT = 0x3fa, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_UNKNOWN_SUBOBJECT = 0x3fb, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_ZERO_SIZE_STREAM = 0x3fc, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_INVALID_STREAM = 0x3fd, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_CANNOT_DEDUCE_TYPE = 0x3fe, D3D12_MESSAGE_ID_COMMAND_LIST_STATIC_DESCRIPTOR_RESOURCE_DIMENSION_MISMATCH = 0x3ff, D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_PRIVILEGE_FOR_GLOBAL_REALTIME = 0x400, D3D12_MESSAGE_ID_CREATE_COMMAND_QUEUE_INSUFFICIENT_HARDWARE_SUPPORT_FOR_GLOBAL_REALTIME = 0x401, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_ARCHITECTURE = 0x402, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DST = 0x403, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE_DIMENSION = 0x404, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DST_RANGE_OUT_OF_BOUNDS = 0x405, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_SRC = 0x406, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE_DIMENSION = 0x407, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_SRC_RANGE_OUT_OF_BOUNDS = 0x408, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_OFFSET_ALIGNMENT = 0x409, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_RESOURCES = 0x40a, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_NULL_DEPENDENT_SUBRESOURCE_RANGES = 0x40b, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_RESOURCE = 0x40c, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DEPENDENT_SUBRESOURCE_RANGE = 0x40d, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_SUBRESOURCE_OUT_OF_BOUNDS = 0x40e, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_DEPENDENT_RANGE_OUT_OF_BOUNDS = 0x40f, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_ZERO_DEPENDENCIES = 0x410, D3D12_MESSAGE_ID_DEVICE_CREATE_SHARED_HANDLE_INVALIDARG = 0x411, D3D12_MESSAGE_ID_DESCRIPTOR_HANDLE_WITH_INVALID_RESOURCE = 0x412, D3D12_MESSAGE_ID_SETDEPTHBOUNDS_INVALIDARGS = 0x413, D3D12_MESSAGE_ID_GPU_BASED_VALIDATION_RESOURCE_STATE_IMPRECISE = 0x414, D3D12_MESSAGE_ID_COMMAND_LIST_PIPELINE_STATE_NOT_SET = 0x415, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_SHADER_MODEL_MISMATCH = 0x416, D3D12_MESSAGE_ID_OBJECT_ACCESSED_WHILE_STILL_IN_USE = 0x417, D3D12_MESSAGE_ID_PROGRAMMABLE_MSAA_UNSUPPORTED = 0x418, D3D12_MESSAGE_ID_SETSAMPLEPOSITIONS_INVALIDARGS = 0x419, D3D12_MESSAGE_ID_RESOLVESUBRESOURCEREGION_INVALID_RECT = 0x41a, D3D12_MESSAGE_ID_CREATE_VIDEODECODECOMMANDQUEUE = 0x41b, D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDLIST = 0x41c, D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSCOMMANDQUEUE = 0x41d, D3D12_MESSAGE_ID_LIVE_VIDEODECODECOMMANDQUEUE = 0x41e, D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDLIST = 0x41f, D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSCOMMANDQUEUE = 0x420, D3D12_MESSAGE_ID_DESTROY_VIDEODECODECOMMANDQUEUE = 0x421, D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDLIST = 0x422, D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSCOMMANDQUEUE = 0x423, D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSOR = 0x424, D3D12_MESSAGE_ID_CREATE_VIDEOPROCESSSTREAM = 0x425, D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSOR = 0x426, D3D12_MESSAGE_ID_LIVE_VIDEOPROCESSSTREAM = 0x427, D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSOR = 0x428, D3D12_MESSAGE_ID_DESTROY_VIDEOPROCESSSTREAM = 0x429, D3D12_MESSAGE_ID_PROCESS_FRAME_INVALID_PARAMETERS = 0x42a, D3D12_MESSAGE_ID_COPY_INVALIDLAYOUT = 0x42b, D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION = 0x42c, D3D12_MESSAGE_ID_CREATE_CRYPTO_SESSION_POLICY = 0x42d, D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION = 0x42e, D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION = 0x42f, D3D12_MESSAGE_ID_LIVE_CRYPTO_SESSION_POLICY = 0x430, D3D12_MESSAGE_ID_LIVE_PROTECTED_RESOURCE_SESSION = 0x431, D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION = 0x432, D3D12_MESSAGE_ID_DESTROY_CRYPTO_SESSION_POLICY = 0x433, D3D12_MESSAGE_ID_DESTROY_PROTECTED_RESOURCE_SESSION = 0x434, D3D12_MESSAGE_ID_PROTECTED_RESOURCE_SESSION_UNSUPPORTED = 0x435, D3D12_MESSAGE_ID_FENCE_INVALIDOPERATION = 0x436, D3D12_MESSAGE_ID_CREATEQUERY_HEAP_COPY_QUEUE_TIMESTAMPS_NOT_SUPPORTED = 0x437, D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_DEFERRED = 0x438, D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMFIRSTUSE = 0x439, D3D12_MESSAGE_ID_SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMCLEAR = 0x43a, D3D12_MESSAGE_ID_CREATE_VIDEODECODERHEAP = 0x43b, D3D12_MESSAGE_ID_LIVE_VIDEODECODERHEAP = 0x43c, D3D12_MESSAGE_ID_DESTROY_VIDEODECODERHEAP = 0x43d, D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDARG_RETURN = 0x43e, D3D12_MESSAGE_ID_OPENEXISTINGHEAP_OUTOFMEMORY_RETURN = 0x43f, D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDADDRESS = 0x440, D3D12_MESSAGE_ID_OPENEXISTINGHEAP_INVALIDHANDLE = 0x441, D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_DEST = 0x442, D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_MODE = 0x443, D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_INVALID_ALIGNMENT = 0x444, D3D12_MESSAGE_ID_WRITEBUFFERIMMEDIATE_NOT_SUPPORTED = 0x445, D3D12_MESSAGE_ID_SETVIEWINSTANCEMASK_INVALIDARGS = 0x446, D3D12_MESSAGE_ID_VIEW_INSTANCING_UNSUPPORTED = 0x447, D3D12_MESSAGE_ID_VIEW_INSTANCING_INVALIDARGS = 0x448, D3D12_MESSAGE_ID_COPYTEXTUREREGION_MISMATCH_DECODE_REFERENCE_ONLY_FLAG = 0x449, D3D12_MESSAGE_ID_COPYRESOURCE_MISMATCH_DECODE_REFERENCE_ONLY_FLAG = 0x44a, D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_FAILURE = 0x44b, D3D12_MESSAGE_ID_CREATE_VIDEO_DECODE_HEAP_CAPS_UNSUPPORTED = 0x44c, D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_INVALID_INPUT = 0x44d, D3D12_MESSAGE_ID_CREATE_VIDEO_DECODER_UNSUPPORTED = 0x44e, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_METADATA_ERROR = 0x44f, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_VIEW_INSTANCING_VERTEX_SIZE_EXCEEDED = 0x450, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_RUNTIME_INTERNAL_ERROR = 0x451, D3D12_MESSAGE_ID_NO_VIDEO_API_SUPPORT = 0x452, D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_INVALID_INPUT = 0x453, D3D12_MESSAGE_ID_CREATE_VIDEO_PROCESSOR_CAPS_FAILURE = 0x454, D3D12_MESSAGE_ID_VIDEO_PROCESS_SUPPORT_UNSUPPORTED_FORMAT = 0x455, D3D12_MESSAGE_ID_VIDEO_DECODE_FRAME_INVALID_ARGUMENT = 0x456, D3D12_MESSAGE_ID_ENQUEUE_MAKE_RESIDENT_INVALID_FLAGS = 0x457, D3D12_MESSAGE_ID_OPENEXISTINGHEAP_UNSUPPORTED = 0x458, D3D12_MESSAGE_ID_VIDEO_PROCESS_FRAMES_INVALID_ARGUMENT = 0x459, D3D12_MESSAGE_ID_VIDEO_DECODE_SUPPORT_UNSUPPORTED = 0x45a, D3D12_MESSAGE_ID_CREATE_COMMANDRECORDER = 0x45b, D3D12_MESSAGE_ID_LIVE_COMMANDRECORDER = 0x45c, D3D12_MESSAGE_ID_DESTROY_COMMANDRECORDER = 0x45d, D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_VIDEO_NOT_SUPPORTED = 0x45e, D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_SUPPORT_FLAGS = 0x45f, D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_INVALID_FLAGS = 0x460, D3D12_MESSAGE_ID_CREATE_COMMAND_RECORDER_MORE_RECORDERS_THAN_LOGICAL_PROCESSORS = 0x461, D3D12_MESSAGE_ID_CREATE_COMMANDPOOL = 0x462, D3D12_MESSAGE_ID_LIVE_COMMANDPOOL = 0x463, D3D12_MESSAGE_ID_DESTROY_COMMANDPOOL = 0x464, D3D12_MESSAGE_ID_CREATE_COMMAND_POOL_INVALID_FLAGS = 0x465, D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_VIDEO_NOT_SUPPORTED = 0x466, D3D12_MESSAGE_ID_COMMAND_RECORDER_SUPPORT_FLAGS_MISMATCH = 0x467, D3D12_MESSAGE_ID_COMMAND_RECORDER_CONTENTION = 0x468, D3D12_MESSAGE_ID_COMMAND_RECORDER_USAGE_WITH_CREATECOMMANDLIST_COMMAND_LIST = 0x469, D3D12_MESSAGE_ID_COMMAND_ALLOCATOR_USAGE_WITH_CREATECOMMANDLIST1_COMMAND_LIST = 0x46a, D3D12_MESSAGE_ID_CANNOT_EXECUTE_EMPTY_COMMAND_LIST = 0x46b, D3D12_MESSAGE_ID_CANNOT_RESET_COMMAND_POOL_WITH_OPEN_COMMAND_LISTS = 0x46c, D3D12_MESSAGE_ID_CANNOT_USE_COMMAND_RECORDER_WITHOUT_CURRENT_TARGET = 0x46d, D3D12_MESSAGE_ID_CANNOT_CHANGE_COMMAND_RECORDER_TARGET_WHILE_RECORDING = 0x46e, D3D12_MESSAGE_ID_COMMAND_POOL_SYNC = 0x46f, D3D12_MESSAGE_ID_EVICT_UNDERFLOW = 0x470, D3D12_MESSAGE_ID_CREATE_META_COMMAND = 0x471, D3D12_MESSAGE_ID_LIVE_META_COMMAND = 0x472, D3D12_MESSAGE_ID_DESTROY_META_COMMAND = 0x473, D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_DST_RESOURCE = 0x474, D3D12_MESSAGE_ID_COPYBUFFERREGION_INVALID_SRC_RESOURCE = 0x475, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_DST_RESOURCE = 0x476, D3D12_MESSAGE_ID_ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE = 0x477, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_BUFFER = 0x478, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_NULL_RESOURCE_DESC = 0x479, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_UNSUPPORTED = 0x47a, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_DIMENSION = 0x47b, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_FLAGS = 0x47c, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_OFFSET = 0x47d, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_DIMENSION = 0x47e, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_FLAGS = 0x47f, D3D12_MESSAGE_ID_CREATEPLACEDRESOURCEONBUFFER_OUTOFMEMORY_RETURN = 0x480, D3D12_MESSAGE_ID_CANNOT_CREATE_GRAPHICS_AND_VIDEO_COMMAND_RECORDER = 0x481, D3D12_MESSAGE_ID_UPDATETILEMAPPINGS_POSSIBLY_MISMATCHING_PROPERTIES = 0x482, D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE = 0x483, D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INCOMPATIBLE_WITH_STRUCTURED_BUFFERS = 0x484, D3D12_MESSAGE_ID_COMPUTE_ONLY_DEVICE_OPERATION_UNSUPPORTED = 0x485, D3D12_MESSAGE_ID_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INVALID = 0x486, D3D12_MESSAGE_ID_EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_INVALID = 0x487, D3D12_MESSAGE_ID_COPY_RAYTRACING_ACCELERATION_STRUCTURE_INVALID = 0x488, D3D12_MESSAGE_ID_DISPATCH_RAYS_INVALID = 0x489, D3D12_MESSAGE_ID_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_INVALID = 0x48a, D3D12_MESSAGE_ID_CREATE_LIFETIMETRACKER = 0x48b, D3D12_MESSAGE_ID_LIVE_LIFETIMETRACKER = 0x48c, D3D12_MESSAGE_ID_DESTROY_LIFETIMETRACKER = 0x48d, D3D12_MESSAGE_ID_DESTROYOWNEDOBJECT_OBJECTNOTOWNED = 0x48e, D3D12_MESSAGE_ID_CREATE_TRACKEDWORKLOAD = 0x48f, D3D12_MESSAGE_ID_LIVE_TRACKEDWORKLOAD = 0x490, D3D12_MESSAGE_ID_DESTROY_TRACKEDWORKLOAD = 0x491, D3D12_MESSAGE_ID_RENDER_PASS_ERROR = 0x492, D3D12_MESSAGE_ID_META_COMMAND_ID_INVALID = 0x493, D3D12_MESSAGE_ID_META_COMMAND_UNSUPPORTED_PARAMS = 0x494, D3D12_MESSAGE_ID_META_COMMAND_FAILED_ENUMERATION = 0x495, D3D12_MESSAGE_ID_META_COMMAND_PARAMETER_SIZE_MISMATCH = 0x496, D3D12_MESSAGE_ID_UNINITIALIZED_META_COMMAND = 0x497, D3D12_MESSAGE_ID_META_COMMAND_INVALID_GPU_VIRTUAL_ADDRESS = 0x498, D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDLIST = 0x499, D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDLIST = 0x49a, D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDLIST = 0x49b, D3D12_MESSAGE_ID_CREATE_VIDEOENCODECOMMANDQUEUE = 0x49c, D3D12_MESSAGE_ID_LIVE_VIDEOENCODECOMMANDQUEUE = 0x49d, D3D12_MESSAGE_ID_DESTROY_VIDEOENCODECOMMANDQUEUE = 0x49e, D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONESTIMATOR = 0x49f, D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONESTIMATOR = 0x4a0, D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONESTIMATOR = 0x4a1, D3D12_MESSAGE_ID_CREATE_VIDEOMOTIONVECTORHEAP = 0x4a2, D3D12_MESSAGE_ID_LIVE_VIDEOMOTIONVECTORHEAP = 0x4a3, D3D12_MESSAGE_ID_DESTROY_VIDEOMOTIONVECTORHEAP = 0x4a4, D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOADS = 0x4a5, D3D12_MESSAGE_ID_MULTIPLE_TRACKED_WORKLOAD_PAIRS = 0x4a6, D3D12_MESSAGE_ID_OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR = 0x4a7, D3D12_MESSAGE_ID_CANNOT_ADD_TRACKED_WORKLOAD = 0x4a8, D3D12_MESSAGE_ID_INCOMPLETE_TRACKED_WORKLOAD_PAIR = 0x4a9, D3D12_MESSAGE_ID_CREATE_STATE_OBJECT_ERROR = 0x4aa, D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_ERROR = 0x4ab, D3D12_MESSAGE_ID_GET_SHADER_STACK_SIZE_ERROR = 0x4ac, D3D12_MESSAGE_ID_GET_PIPELINE_STACK_SIZE_ERROR = 0x4ad, D3D12_MESSAGE_ID_SET_PIPELINE_STACK_SIZE_ERROR = 0x4ae, D3D12_MESSAGE_ID_GET_SHADER_IDENTIFIER_SIZE_INVALID = 0x4af, D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_INVALID = 0x4b0, D3D12_MESSAGE_ID_CHECK_DRIVER_MATCHING_IDENTIFIER_DRIVER_REPORTED_ISSUE = 0x4b1, D3D12_MESSAGE_ID_RENDER_PASS_INVALID_RESOURCE_BARRIER = 0x4b2, D3D12_MESSAGE_ID_RENDER_PASS_DISALLOWED_API_CALLED = 0x4b3, D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_NEST_RENDER_PASSES = 0x4b4, D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_END_WITHOUT_BEGIN = 0x4b5, D3D12_MESSAGE_ID_RENDER_PASS_CANNOT_CLOSE_COMMAND_LIST = 0x4b6, D3D12_MESSAGE_ID_RENDER_PASS_GPU_WORK_WHILE_SUSPENDED = 0x4b7, D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_SUSPEND_RESUME = 0x4b8, D3D12_MESSAGE_ID_RENDER_PASS_NO_PRIOR_SUSPEND_WITHIN_EXECUTECOMMANDLISTS = 0x4b9, D3D12_MESSAGE_ID_RENDER_PASS_NO_SUBSEQUENT_RESUME_WITHIN_EXECUTECOMMANDLISTS = 0x4ba, D3D12_MESSAGE_ID_TRACKED_WORKLOAD_COMMAND_QUEUE_MISMATCH = 0x4bb, D3D12_MESSAGE_ID_TRACKED_WORKLOAD_NOT_SUPPORTED = 0x4bc, D3D12_MESSAGE_ID_RENDER_PASS_MISMATCHING_NO_ACCESS = 0x4bd, D3D12_MESSAGE_ID_RENDER_PASS_UNSUPPORTED_RESOLVE = 0x4be, D3D12_MESSAGE_ID_CLEARUNORDEREDACCESSVIEW_INVALID_RESOURCE_PTR = 0x4bf, D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_SIGNAL = 0x4c0, D3D12_MESSAGE_ID_WINDOWS7_FENCE_OUTOFORDER_WAIT = 0x4c1, D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_ESTIMATOR_INVALID_ARGUMENT = 0x4c2, D3D12_MESSAGE_ID_VIDEO_CREATE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT = 0x4c3, D3D12_MESSAGE_ID_ESTIMATE_MOTION_INVALID_ARGUMENT = 0x4c4, D3D12_MESSAGE_ID_RESOLVE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT = 0x4c5, D3D12_MESSAGE_ID_GETGPUVIRTUALADDRESS_INVALID_HEAP_TYPE = 0x4c6, D3D12_MESSAGE_ID_SET_BACKGROUND_PROCESSING_MODE_INVALID_ARGUMENT = 0x4c7, D3D12_MESSAGE_ID_CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE_FOR_FEATURE_LEVEL = 0x4c8, D3D12_MESSAGE_ID_CREATE_VIDEOEXTENSIONCOMMAND = 0x4c9, D3D12_MESSAGE_ID_LIVE_VIDEOEXTENSIONCOMMAND = 0x4ca, D3D12_MESSAGE_ID_DESTROY_VIDEOEXTENSIONCOMMAND = 0x4cb, D3D12_MESSAGE_ID_INVALID_VIDEO_EXTENSION_COMMAND_ID = 0x4cc, D3D12_MESSAGE_ID_VIDEO_EXTENSION_COMMAND_INVALID_ARGUMENT = 0x4cd, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_NOT_UNIQUE_IN_DXIL_LIBRARY = 0x4ce, D3D12_MESSAGE_ID_VARIABLE_SHADING_RATE_NOT_ALLOWED_WITH_TIR = 0x4cf, D3D12_MESSAGE_ID_GEOMETRY_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4d0, D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_SHADING_RATE = 0x4d1, D3D12_MESSAGE_ID_RSSETSHADING_RATE_SHADING_RATE_NOT_PERMITTED_BY_CAP = 0x4d2, D3D12_MESSAGE_ID_RSSETSHADING_RATE_INVALID_COMBINER = 0x4d3, D3D12_MESSAGE_ID_RSSETSHADINGRATEIMAGE_REQUIRES_TIER_2 = 0x4d4, D3D12_MESSAGE_ID_RSSETSHADINGRATE_REQUIRES_TIER_1 = 0x4d5, D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_FORMAT = 0x4d6, D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_ARRAY_SIZE = 0x4d7, D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_MIP_LEVEL = 0x4d8, D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_COUNT = 0x4d9, D3D12_MESSAGE_ID_SHADING_RATE_IMAGE_INCORRECT_SAMPLE_QUALITY = 0x4da, D3D12_MESSAGE_ID_NON_RETAIL_SHADER_MODEL_WONT_VALIDATE = 0x4db, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_ROOT_SIGNATURE_MISMATCH = 0x4dc, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_ROOT_SIGNATURE_MISMATCH = 0x4dd, D3D12_MESSAGE_ID_ADD_TO_STATE_OBJECT_ERROR = 0x4de, D3D12_MESSAGE_ID_CREATE_PROTECTED_RESOURCE_SESSION_INVALID_ARGUMENT = 0x4df, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_PSO_DESC_MISMATCH = 0x4e0, D3D12_MESSAGE_ID_CREATEPIPELINESTATE_MS_INCOMPLETE_TYPE = 0x4e1, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_AS_NOT_MS_MISMATCH = 0x4e2, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_MS_NOT_PS_MISMATCH = 0x4e3, D3D12_MESSAGE_ID_NONZERO_SAMPLER_FEEDBACK_MIP_REGION_WITH_INCOMPATIBLE_FORMAT = 0x4e4, D3D12_MESSAGE_ID_CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_SHADER_MISMATCH = 0x4e5, D3D12_MESSAGE_ID_EMPTY_DISPATCH = 0x4e6, D3D12_MESSAGE_ID_RESOURCE_FORMAT_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY = 0x4e7, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_MIP_REGION = 0x4e8, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_DIMENSION = 0x4e9, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_COUNT = 0x4ea, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_QUALITY = 0x4eb, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_INVALID_LAYOUT = 0x4ec, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_MAP_REQUIRES_UNORDERED_ACCESS_FLAG = 0x4ed, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_NULL_ARGUMENTS = 0x4ee, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_UAV_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY = 0x4ef, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_REQUIRES_FEEDBACK_MAP_FORMAT = 0x4f0, D3D12_MESSAGE_ID_CREATEMESHSHADER_INVALIDSHADERBYTECODE = 0x4f1, D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTOFMEMORY = 0x4f2, D3D12_MESSAGE_ID_CREATEMESHSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE = 0x4f3, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_INVALID_FORMAT = 0x4f4, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_INVALID_MIP_LEVEL_COUNT = 0x4f5, D3D12_MESSAGE_ID_RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_ARRAY_SIZE_MISMATCH = 0x4f6, D3D12_MESSAGE_ID_SAMPLER_FEEDBACK_CREATE_UAV_MISMATCHING_TARGETED_RESOURCE = 0x4f7, D3D12_MESSAGE_ID_CREATEMESHSHADER_OUTPUTEXCEEDSMAXSIZE = 0x4f8, D3D12_MESSAGE_ID_CREATEMESHSHADER_GROUPSHAREDEXCEEDSMAXSIZE = 0x4f9, D3D12_MESSAGE_ID_VERTEX_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4fa, D3D12_MESSAGE_ID_MESH_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 0x4fb, D3D12_MESSAGE_ID_CREATEMESHSHADER_MISMATCHEDASMSPAYLOADSIZE = 0x4fc, D3D12_MESSAGE_ID_CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS = 0x4fd, D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE = 0x4fe, D3D12_MESSAGE_ID_CREATEAMPLIFICATIONSHADER_OUTOFMEMORY = 0x4ff, D3D12_MESSAGE_ID_D3D12_MESSAGES_END = 0x500 } D3D12_MESSAGE_ID; typedef enum D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE { D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_NONE = 0x0, D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_STATE_TRACKING_ONLY = 0x1, D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION = 0x2, D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_GUARDED_VALIDATION = 0x3, NUM_D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODES = 0x4 } D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE; typedef struct D3D12_MESSAGE { D3D12_MESSAGE_CATEGORY Category; D3D12_MESSAGE_SEVERITY Severity; D3D12_MESSAGE_ID ID; const char *pDescription; SIZE_T DescriptionByteLength; } D3D12_MESSAGE; typedef struct D3D12_INFO_QUEUE_FILTER_DESC { UINT NumCategories; D3D12_MESSAGE_CATEGORY *pCategoryList; UINT NumSeverities; D3D12_MESSAGE_SEVERITY *pSeverityList; UINT NumIDs; D3D12_MESSAGE_ID *pIDList; } D3D12_INFO_QUEUE_FILTER_DESC; typedef struct D3D12_INFO_QUEUE_FILTER { D3D12_INFO_QUEUE_FILTER_DESC AllowList; D3D12_INFO_QUEUE_FILTER_DESC DenyList; } D3D12_INFO_QUEUE_FILTER; /***************************************************************************** * ID3D12Debug interface */ #ifndef __ID3D12Debug_INTERFACE_DEFINED__ #define __ID3D12Debug_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Debug, 0x344488b7, 0x6846, 0x474b, 0xb9,0x89, 0xf0,0x27,0x44,0x82,0x45,0xe0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("344488b7-6846-474b-b989-f027448245e0") ID3D12Debug : public IUnknown { virtual void STDMETHODCALLTYPE EnableDebugLayer( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Debug, 0x344488b7, 0x6846, 0x474b, 0xb9,0x89, 0xf0,0x27,0x44,0x82,0x45,0xe0) #endif #else typedef struct ID3D12DebugVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Debug *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Debug *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Debug *This); /*** ID3D12Debug methods ***/ void (STDMETHODCALLTYPE *EnableDebugLayer)( ID3D12Debug *This); END_INTERFACE } ID3D12DebugVtbl; interface ID3D12Debug { CONST_VTBL ID3D12DebugVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Debug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Debug_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Debug_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Debug methods ***/ #define ID3D12Debug_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Debug_QueryInterface(ID3D12Debug* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Debug_AddRef(ID3D12Debug* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Debug_Release(ID3D12Debug* This) { return This->lpVtbl->Release(This); } /*** ID3D12Debug methods ***/ static FORCEINLINE void ID3D12Debug_EnableDebugLayer(ID3D12Debug* This) { This->lpVtbl->EnableDebugLayer(This); } #endif #endif #endif #endif /* __ID3D12Debug_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12Debug1 interface */ #ifndef __ID3D12Debug1_INTERFACE_DEFINED__ #define __ID3D12Debug1_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12Debug1, 0xaffaa4ca, 0x63fe, 0x4d8e, 0xb8,0xad, 0x15,0x90,0x00,0xaf,0x43,0x04); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("affaa4ca-63fe-4d8e-b8ad-159000af4304") ID3D12Debug1 : public IUnknown { virtual void STDMETHODCALLTYPE EnableDebugLayer( ) = 0; virtual void STDMETHODCALLTYPE SetEnableGPUBasedValidation( WINBOOL enable) = 0; virtual void STDMETHODCALLTYPE SetEnableSynchronizedCommandQueueValidation( WINBOOL enable) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12Debug1, 0xaffaa4ca, 0x63fe, 0x4d8e, 0xb8,0xad, 0x15,0x90,0x00,0xaf,0x43,0x04) #endif #else typedef struct ID3D12Debug1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12Debug1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12Debug1 *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12Debug1 *This); /*** ID3D12Debug1 methods ***/ void (STDMETHODCALLTYPE *EnableDebugLayer)( ID3D12Debug1 *This); void (STDMETHODCALLTYPE *SetEnableGPUBasedValidation)( ID3D12Debug1 *This, WINBOOL enable); void (STDMETHODCALLTYPE *SetEnableSynchronizedCommandQueueValidation)( ID3D12Debug1 *This, WINBOOL enable); END_INTERFACE } ID3D12Debug1Vtbl; interface ID3D12Debug1 { CONST_VTBL ID3D12Debug1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12Debug1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12Debug1_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12Debug1_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12Debug1 methods ***/ #define ID3D12Debug1_EnableDebugLayer(This) (This)->lpVtbl->EnableDebugLayer(This) #define ID3D12Debug1_SetEnableGPUBasedValidation(This,enable) (This)->lpVtbl->SetEnableGPUBasedValidation(This,enable) #define ID3D12Debug1_SetEnableSynchronizedCommandQueueValidation(This,enable) (This)->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12Debug1_QueryInterface(ID3D12Debug1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12Debug1_AddRef(ID3D12Debug1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12Debug1_Release(ID3D12Debug1* This) { return This->lpVtbl->Release(This); } /*** ID3D12Debug1 methods ***/ static FORCEINLINE void ID3D12Debug1_EnableDebugLayer(ID3D12Debug1* This) { This->lpVtbl->EnableDebugLayer(This); } static FORCEINLINE void ID3D12Debug1_SetEnableGPUBasedValidation(ID3D12Debug1* This,WINBOOL enable) { This->lpVtbl->SetEnableGPUBasedValidation(This,enable); } static FORCEINLINE void ID3D12Debug1_SetEnableSynchronizedCommandQueueValidation(ID3D12Debug1* This,WINBOOL enable) { This->lpVtbl->SetEnableSynchronizedCommandQueueValidation(This,enable); } #endif #endif #endif #endif /* __ID3D12Debug1_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12InfoQueue interface */ #ifndef __ID3D12InfoQueue_INTERFACE_DEFINED__ #define __ID3D12InfoQueue_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12InfoQueue, 0x0742a90b, 0xc387, 0x483f, 0xb9,0x46, 0x30,0xa7,0xe4,0xe6,0x14,0x58); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0742a90b-c387-483f-b946-30a7e4e61458") ID3D12InfoQueue : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetMessageCountLimit( UINT64 limit) = 0; virtual void STDMETHODCALLTYPE ClearStoredMessages( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMessage( UINT64 index, D3D12_MESSAGE *message, SIZE_T *length) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesAllowedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDeniedByStorageFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessages( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumStoredMessagesAllowedByRetrievalFilter( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetNumMessagesDiscardedByMessageCountLimit( ) = 0; virtual UINT64 STDMETHODCALLTYPE GetMessageCountLimit( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddStorageFilterEntries( D3D12_INFO_QUEUE_FILTER *filter) = 0; virtual HRESULT STDMETHODCALLTYPE GetStorageFilter( D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *length) = 0; virtual void STDMETHODCALLTYPE ClearStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfStorageFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushStorageFilter( D3D12_INFO_QUEUE_FILTER *filter) = 0; virtual void STDMETHODCALLTYPE PopStorageFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetStorageFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddRetrievalFilterEntries( D3D12_INFO_QUEUE_FILTER *filter) = 0; virtual HRESULT STDMETHODCALLTYPE GetRetrievalFilter( D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *length) = 0; virtual void STDMETHODCALLTYPE ClearRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushEmptyRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushCopyOfRetrievalFilter( ) = 0; virtual HRESULT STDMETHODCALLTYPE PushRetrievalFilter( D3D12_INFO_QUEUE_FILTER *filter) = 0; virtual void STDMETHODCALLTYPE PopRetrievalFilter( ) = 0; virtual UINT STDMETHODCALLTYPE GetRetrievalFilterStackSize( ) = 0; virtual HRESULT STDMETHODCALLTYPE AddMessage( D3D12_MESSAGE_CATEGORY category, D3D12_MESSAGE_SEVERITY severity, D3D12_MESSAGE_ID id, const char *description) = 0; virtual HRESULT STDMETHODCALLTYPE AddApplicationMessage( D3D12_MESSAGE_SEVERITY severity, const char *description) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnCategory( D3D12_MESSAGE_CATEGORY category, WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnSeverity( D3D12_MESSAGE_SEVERITY severity, WINBOOL enable) = 0; virtual HRESULT STDMETHODCALLTYPE SetBreakOnID( D3D12_MESSAGE_ID id, WINBOOL enable) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnCategory( D3D12_MESSAGE_CATEGORY category) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnSeverity( D3D12_MESSAGE_SEVERITY severity) = 0; virtual WINBOOL STDMETHODCALLTYPE GetBreakOnID( D3D12_MESSAGE_ID id) = 0; virtual void STDMETHODCALLTYPE SetMuteDebugOutput( WINBOOL mute) = 0; virtual WINBOOL STDMETHODCALLTYPE GetMuteDebugOutput( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12InfoQueue, 0x0742a90b, 0xc387, 0x483f, 0xb9,0x46, 0x30,0xa7,0xe4,0xe6,0x14,0x58) #endif #else typedef struct ID3D12InfoQueueVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12InfoQueue *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12InfoQueue *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12InfoQueue *This); /*** ID3D12InfoQueue methods ***/ HRESULT (STDMETHODCALLTYPE *SetMessageCountLimit)( ID3D12InfoQueue *This, UINT64 limit); void (STDMETHODCALLTYPE *ClearStoredMessages)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *GetMessage)( ID3D12InfoQueue *This, UINT64 index, D3D12_MESSAGE *message, SIZE_T *length); UINT64 (STDMETHODCALLTYPE *GetNumMessagesAllowedByStorageFilter)( ID3D12InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDeniedByStorageFilter)( ID3D12InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessages)( ID3D12InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumStoredMessagesAllowedByRetrievalFilter)( ID3D12InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetNumMessagesDiscardedByMessageCountLimit)( ID3D12InfoQueue *This); UINT64 (STDMETHODCALLTYPE *GetMessageCountLimit)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddStorageFilterEntries)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter); HRESULT (STDMETHODCALLTYPE *GetStorageFilter)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *length); void (STDMETHODCALLTYPE *ClearStorageFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyStorageFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfStorageFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushStorageFilter)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter); void (STDMETHODCALLTYPE *PopStorageFilter)( ID3D12InfoQueue *This); UINT (STDMETHODCALLTYPE *GetStorageFilterStackSize)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddRetrievalFilterEntries)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter); HRESULT (STDMETHODCALLTYPE *GetRetrievalFilter)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter, SIZE_T *length); void (STDMETHODCALLTYPE *ClearRetrievalFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushEmptyRetrievalFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushCopyOfRetrievalFilter)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *PushRetrievalFilter)( ID3D12InfoQueue *This, D3D12_INFO_QUEUE_FILTER *filter); void (STDMETHODCALLTYPE *PopRetrievalFilter)( ID3D12InfoQueue *This); UINT (STDMETHODCALLTYPE *GetRetrievalFilterStackSize)( ID3D12InfoQueue *This); HRESULT (STDMETHODCALLTYPE *AddMessage)( ID3D12InfoQueue *This, D3D12_MESSAGE_CATEGORY category, D3D12_MESSAGE_SEVERITY severity, D3D12_MESSAGE_ID id, const char *description); HRESULT (STDMETHODCALLTYPE *AddApplicationMessage)( ID3D12InfoQueue *This, D3D12_MESSAGE_SEVERITY severity, const char *description); HRESULT (STDMETHODCALLTYPE *SetBreakOnCategory)( ID3D12InfoQueue *This, D3D12_MESSAGE_CATEGORY category, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *SetBreakOnSeverity)( ID3D12InfoQueue *This, D3D12_MESSAGE_SEVERITY severity, WINBOOL enable); HRESULT (STDMETHODCALLTYPE *SetBreakOnID)( ID3D12InfoQueue *This, D3D12_MESSAGE_ID id, WINBOOL enable); WINBOOL (STDMETHODCALLTYPE *GetBreakOnCategory)( ID3D12InfoQueue *This, D3D12_MESSAGE_CATEGORY category); WINBOOL (STDMETHODCALLTYPE *GetBreakOnSeverity)( ID3D12InfoQueue *This, D3D12_MESSAGE_SEVERITY severity); WINBOOL (STDMETHODCALLTYPE *GetBreakOnID)( ID3D12InfoQueue *This, D3D12_MESSAGE_ID id); void (STDMETHODCALLTYPE *SetMuteDebugOutput)( ID3D12InfoQueue *This, WINBOOL mute); WINBOOL (STDMETHODCALLTYPE *GetMuteDebugOutput)( ID3D12InfoQueue *This); END_INTERFACE } ID3D12InfoQueueVtbl; interface ID3D12InfoQueue { CONST_VTBL ID3D12InfoQueueVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12InfoQueue_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12InfoQueue_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12InfoQueue_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12InfoQueue methods ***/ #define ID3D12InfoQueue_SetMessageCountLimit(This,limit) (This)->lpVtbl->SetMessageCountLimit(This,limit) #define ID3D12InfoQueue_ClearStoredMessages(This) (This)->lpVtbl->ClearStoredMessages(This) #define ID3D12InfoQueue_GetMessage(This,index,message,length) (This)->lpVtbl->GetMessage(This,index,message,length) #define ID3D12InfoQueue_GetNumMessagesAllowedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesAllowedByStorageFilter(This) #define ID3D12InfoQueue_GetNumMessagesDeniedByStorageFilter(This) (This)->lpVtbl->GetNumMessagesDeniedByStorageFilter(This) #define ID3D12InfoQueue_GetNumStoredMessages(This) (This)->lpVtbl->GetNumStoredMessages(This) #define ID3D12InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(This) (This)->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This) #define ID3D12InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(This) (This)->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This) #define ID3D12InfoQueue_GetMessageCountLimit(This) (This)->lpVtbl->GetMessageCountLimit(This) #define ID3D12InfoQueue_AddStorageFilterEntries(This,filter) (This)->lpVtbl->AddStorageFilterEntries(This,filter) #define ID3D12InfoQueue_GetStorageFilter(This,filter,length) (This)->lpVtbl->GetStorageFilter(This,filter,length) #define ID3D12InfoQueue_ClearStorageFilter(This) (This)->lpVtbl->ClearStorageFilter(This) #define ID3D12InfoQueue_PushEmptyStorageFilter(This) (This)->lpVtbl->PushEmptyStorageFilter(This) #define ID3D12InfoQueue_PushCopyOfStorageFilter(This) (This)->lpVtbl->PushCopyOfStorageFilter(This) #define ID3D12InfoQueue_PushStorageFilter(This,filter) (This)->lpVtbl->PushStorageFilter(This,filter) #define ID3D12InfoQueue_PopStorageFilter(This) (This)->lpVtbl->PopStorageFilter(This) #define ID3D12InfoQueue_GetStorageFilterStackSize(This) (This)->lpVtbl->GetStorageFilterStackSize(This) #define ID3D12InfoQueue_AddRetrievalFilterEntries(This,filter) (This)->lpVtbl->AddRetrievalFilterEntries(This,filter) #define ID3D12InfoQueue_GetRetrievalFilter(This,filter,length) (This)->lpVtbl->GetRetrievalFilter(This,filter,length) #define ID3D12InfoQueue_ClearRetrievalFilter(This) (This)->lpVtbl->ClearRetrievalFilter(This) #define ID3D12InfoQueue_PushEmptyRetrievalFilter(This) (This)->lpVtbl->PushEmptyRetrievalFilter(This) #define ID3D12InfoQueue_PushCopyOfRetrievalFilter(This) (This)->lpVtbl->PushCopyOfRetrievalFilter(This) #define ID3D12InfoQueue_PushRetrievalFilter(This,filter) (This)->lpVtbl->PushRetrievalFilter(This,filter) #define ID3D12InfoQueue_PopRetrievalFilter(This) (This)->lpVtbl->PopRetrievalFilter(This) #define ID3D12InfoQueue_GetRetrievalFilterStackSize(This) (This)->lpVtbl->GetRetrievalFilterStackSize(This) #define ID3D12InfoQueue_AddMessage(This,category,severity,id,description) (This)->lpVtbl->AddMessage(This,category,severity,id,description) #define ID3D12InfoQueue_AddApplicationMessage(This,severity,description) (This)->lpVtbl->AddApplicationMessage(This,severity,description) #define ID3D12InfoQueue_SetBreakOnCategory(This,category,enable) (This)->lpVtbl->SetBreakOnCategory(This,category,enable) #define ID3D12InfoQueue_SetBreakOnSeverity(This,severity,enable) (This)->lpVtbl->SetBreakOnSeverity(This,severity,enable) #define ID3D12InfoQueue_SetBreakOnID(This,id,enable) (This)->lpVtbl->SetBreakOnID(This,id,enable) #define ID3D12InfoQueue_GetBreakOnCategory(This,category) (This)->lpVtbl->GetBreakOnCategory(This,category) #define ID3D12InfoQueue_GetBreakOnSeverity(This,severity) (This)->lpVtbl->GetBreakOnSeverity(This,severity) #define ID3D12InfoQueue_GetBreakOnID(This,id) (This)->lpVtbl->GetBreakOnID(This,id) #define ID3D12InfoQueue_SetMuteDebugOutput(This,mute) (This)->lpVtbl->SetMuteDebugOutput(This,mute) #define ID3D12InfoQueue_GetMuteDebugOutput(This) (This)->lpVtbl->GetMuteDebugOutput(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12InfoQueue_QueryInterface(ID3D12InfoQueue* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12InfoQueue_AddRef(ID3D12InfoQueue* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12InfoQueue_Release(ID3D12InfoQueue* This) { return This->lpVtbl->Release(This); } /*** ID3D12InfoQueue methods ***/ static FORCEINLINE HRESULT ID3D12InfoQueue_SetMessageCountLimit(ID3D12InfoQueue* This,UINT64 limit) { return This->lpVtbl->SetMessageCountLimit(This,limit); } static FORCEINLINE void ID3D12InfoQueue_ClearStoredMessages(ID3D12InfoQueue* This) { This->lpVtbl->ClearStoredMessages(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_GetMessage(ID3D12InfoQueue* This,UINT64 index,D3D12_MESSAGE *message,SIZE_T *length) { return This->lpVtbl->GetMessage(This,index,message,length); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetNumMessagesAllowedByStorageFilter(ID3D12InfoQueue* This) { return This->lpVtbl->GetNumMessagesAllowedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetNumMessagesDeniedByStorageFilter(ID3D12InfoQueue* This) { return This->lpVtbl->GetNumMessagesDeniedByStorageFilter(This); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetNumStoredMessages(ID3D12InfoQueue* This) { return This->lpVtbl->GetNumStoredMessages(This); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetNumStoredMessagesAllowedByRetrievalFilter(ID3D12InfoQueue* This) { return This->lpVtbl->GetNumStoredMessagesAllowedByRetrievalFilter(This); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetNumMessagesDiscardedByMessageCountLimit(ID3D12InfoQueue* This) { return This->lpVtbl->GetNumMessagesDiscardedByMessageCountLimit(This); } static FORCEINLINE UINT64 ID3D12InfoQueue_GetMessageCountLimit(ID3D12InfoQueue* This) { return This->lpVtbl->GetMessageCountLimit(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_AddStorageFilterEntries(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->AddStorageFilterEntries(This,filter); } static FORCEINLINE HRESULT ID3D12InfoQueue_GetStorageFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) { return This->lpVtbl->GetStorageFilter(This,filter,length); } static FORCEINLINE void ID3D12InfoQueue_ClearStorageFilter(ID3D12InfoQueue* This) { This->lpVtbl->ClearStorageFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushEmptyStorageFilter(ID3D12InfoQueue* This) { return This->lpVtbl->PushEmptyStorageFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushCopyOfStorageFilter(ID3D12InfoQueue* This) { return This->lpVtbl->PushCopyOfStorageFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushStorageFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->PushStorageFilter(This,filter); } static FORCEINLINE void ID3D12InfoQueue_PopStorageFilter(ID3D12InfoQueue* This) { This->lpVtbl->PopStorageFilter(This); } static FORCEINLINE UINT ID3D12InfoQueue_GetStorageFilterStackSize(ID3D12InfoQueue* This) { return This->lpVtbl->GetStorageFilterStackSize(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_AddRetrievalFilterEntries(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->AddRetrievalFilterEntries(This,filter); } static FORCEINLINE HRESULT ID3D12InfoQueue_GetRetrievalFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter,SIZE_T *length) { return This->lpVtbl->GetRetrievalFilter(This,filter,length); } static FORCEINLINE void ID3D12InfoQueue_ClearRetrievalFilter(ID3D12InfoQueue* This) { This->lpVtbl->ClearRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushEmptyRetrievalFilter(ID3D12InfoQueue* This) { return This->lpVtbl->PushEmptyRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushCopyOfRetrievalFilter(ID3D12InfoQueue* This) { return This->lpVtbl->PushCopyOfRetrievalFilter(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_PushRetrievalFilter(ID3D12InfoQueue* This,D3D12_INFO_QUEUE_FILTER *filter) { return This->lpVtbl->PushRetrievalFilter(This,filter); } static FORCEINLINE void ID3D12InfoQueue_PopRetrievalFilter(ID3D12InfoQueue* This) { This->lpVtbl->PopRetrievalFilter(This); } static FORCEINLINE UINT ID3D12InfoQueue_GetRetrievalFilterStackSize(ID3D12InfoQueue* This) { return This->lpVtbl->GetRetrievalFilterStackSize(This); } static FORCEINLINE HRESULT ID3D12InfoQueue_AddMessage(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category,D3D12_MESSAGE_SEVERITY severity,D3D12_MESSAGE_ID id,const char *description) { return This->lpVtbl->AddMessage(This,category,severity,id,description); } static FORCEINLINE HRESULT ID3D12InfoQueue_AddApplicationMessage(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity,const char *description) { return This->lpVtbl->AddApplicationMessage(This,severity,description); } static FORCEINLINE HRESULT ID3D12InfoQueue_SetBreakOnCategory(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category,WINBOOL enable) { return This->lpVtbl->SetBreakOnCategory(This,category,enable); } static FORCEINLINE HRESULT ID3D12InfoQueue_SetBreakOnSeverity(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity,WINBOOL enable) { return This->lpVtbl->SetBreakOnSeverity(This,severity,enable); } static FORCEINLINE HRESULT ID3D12InfoQueue_SetBreakOnID(ID3D12InfoQueue* This,D3D12_MESSAGE_ID id,WINBOOL enable) { return This->lpVtbl->SetBreakOnID(This,id,enable); } static FORCEINLINE WINBOOL ID3D12InfoQueue_GetBreakOnCategory(ID3D12InfoQueue* This,D3D12_MESSAGE_CATEGORY category) { return This->lpVtbl->GetBreakOnCategory(This,category); } static FORCEINLINE WINBOOL ID3D12InfoQueue_GetBreakOnSeverity(ID3D12InfoQueue* This,D3D12_MESSAGE_SEVERITY severity) { return This->lpVtbl->GetBreakOnSeverity(This,severity); } static FORCEINLINE WINBOOL ID3D12InfoQueue_GetBreakOnID(ID3D12InfoQueue* This,D3D12_MESSAGE_ID id) { return This->lpVtbl->GetBreakOnID(This,id); } static FORCEINLINE void ID3D12InfoQueue_SetMuteDebugOutput(ID3D12InfoQueue* This,WINBOOL mute) { This->lpVtbl->SetMuteDebugOutput(This,mute); } static FORCEINLINE WINBOOL ID3D12InfoQueue_GetMuteDebugOutput(ID3D12InfoQueue* This) { return This->lpVtbl->GetMuteDebugOutput(This); } #endif #endif #endif #endif /* __ID3D12InfoQueue_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d12sdklayers_h__ */ dxvk-0~git20220822.9df86f2/d3d12shader.h000066400000000000000000001240661430055512200171650ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3d12shader.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3d12shader_h__ #define __d3d12shader_h__ /* Forward declarations */ #ifndef __ID3D12ShaderReflectionType_FWD_DEFINED__ #define __ID3D12ShaderReflectionType_FWD_DEFINED__ typedef interface ID3D12ShaderReflectionType ID3D12ShaderReflectionType; #ifdef __cplusplus interface ID3D12ShaderReflectionType; #endif /* __cplusplus */ #endif #ifndef __ID3D12ShaderReflectionVariable_FWD_DEFINED__ #define __ID3D12ShaderReflectionVariable_FWD_DEFINED__ typedef interface ID3D12ShaderReflectionVariable ID3D12ShaderReflectionVariable; #ifdef __cplusplus interface ID3D12ShaderReflectionVariable; #endif /* __cplusplus */ #endif #ifndef __ID3D12ShaderReflectionConstantBuffer_FWD_DEFINED__ #define __ID3D12ShaderReflectionConstantBuffer_FWD_DEFINED__ typedef interface ID3D12ShaderReflectionConstantBuffer ID3D12ShaderReflectionConstantBuffer; #ifdef __cplusplus interface ID3D12ShaderReflectionConstantBuffer; #endif /* __cplusplus */ #endif #ifndef __ID3D12ShaderReflection_FWD_DEFINED__ #define __ID3D12ShaderReflection_FWD_DEFINED__ typedef interface ID3D12ShaderReflection ID3D12ShaderReflection; #ifdef __cplusplus interface ID3D12ShaderReflection; #endif /* __cplusplus */ #endif #ifndef __ID3D12FunctionParameterReflection_FWD_DEFINED__ #define __ID3D12FunctionParameterReflection_FWD_DEFINED__ typedef interface ID3D12FunctionParameterReflection ID3D12FunctionParameterReflection; #ifdef __cplusplus interface ID3D12FunctionParameterReflection; #endif /* __cplusplus */ #endif #ifndef __ID3D12FunctionReflection_FWD_DEFINED__ #define __ID3D12FunctionReflection_FWD_DEFINED__ typedef interface ID3D12FunctionReflection ID3D12FunctionReflection; #ifdef __cplusplus interface ID3D12FunctionReflection; #endif /* __cplusplus */ #endif #ifndef __ID3D12LibraryReflection_FWD_DEFINED__ #define __ID3D12LibraryReflection_FWD_DEFINED__ typedef interface ID3D12LibraryReflection ID3D12LibraryReflection; #ifdef __cplusplus interface ID3D12LibraryReflection; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif typedef enum D3D12_SHADER_VERSION_TYPE { D3D12_SHVER_PIXEL_SHADER = 0x0, D3D12_SHVER_VERTEX_SHADER = 0x1, D3D12_SHVER_GEOMETRY_SHADER = 0x2, D3D12_SHVER_HULL_SHADER = 0x3, D3D12_SHVER_DOMAIN_SHADER = 0x4, D3D12_SHVER_COMPUTE_SHADER = 0x5, D3D12_SHVER_RESERVED0 = 0xfff0 } D3D12_SHADER_VERSION_TYPE; typedef struct _D3D12_SHADER_DESC { UINT Version; const char *Creator; UINT Flags; UINT ConstantBuffers; UINT BoundResources; UINT InputParameters; UINT OutputParameters; UINT InstructionCount; UINT TempRegisterCount; UINT TempArrayCount; UINT DefCount; UINT DclCount; UINT TextureNormalInstructions; UINT TextureLoadInstructions; UINT TextureCompInstructions; UINT TextureBiasInstructions; UINT TextureGradientInstructions; UINT FloatInstructionCount; UINT IntInstructionCount; UINT UintInstructionCount; UINT StaticFlowControlCount; UINT DynamicFlowControlCount; UINT MacroInstructionCount; UINT ArrayInstructionCount; UINT CutInstructionCount; UINT EmitInstructionCount; D3D_PRIMITIVE_TOPOLOGY GSOutputTopology; UINT GSMaxOutputVertexCount; D3D_PRIMITIVE InputPrimitive; UINT PatchConstantParameters; UINT cGSInstanceCount; UINT cControlPoints; D3D_TESSELLATOR_OUTPUT_PRIMITIVE HSOutputPrimitive; D3D_TESSELLATOR_PARTITIONING HSPartitioning; D3D_TESSELLATOR_DOMAIN TessellatorDomain; UINT cBarrierInstructions; UINT cInterlockedInstructions; UINT cTextureStoreInstructions; } D3D12_SHADER_DESC; typedef struct _D3D12_SHADER_VARIABLE_DESC { const char *Name; UINT StartOffset; UINT Size; UINT uFlags; void *DefaultValue; UINT StartTexture; UINT TextureSize; UINT StartSampler; UINT SamplerSize; } D3D12_SHADER_VARIABLE_DESC; typedef struct _D3D12_SHADER_TYPE_DESC { D3D_SHADER_VARIABLE_CLASS Class; D3D_SHADER_VARIABLE_TYPE Type; UINT Rows; UINT Columns; UINT Elements; UINT Members; UINT Offset; const char *Name; } D3D12_SHADER_TYPE_DESC; typedef struct _D3D12_SHADER_BUFFER_DESC { const char *Name; D3D_CBUFFER_TYPE Type; UINT Variables; UINT Size; UINT uFlags; } D3D12_SHADER_BUFFER_DESC; typedef struct _D3D12_SHADER_INPUT_BIND_DESC { const char *Name; D3D_SHADER_INPUT_TYPE Type; UINT BindPoint; UINT BindCount; UINT uFlags; D3D_RESOURCE_RETURN_TYPE ReturnType; D3D_SRV_DIMENSION Dimension; UINT NumSamples; UINT Space; UINT uID; } D3D12_SHADER_INPUT_BIND_DESC; typedef struct _D3D12_SIGNATURE_PARAMETER_DESC { const char *SemanticName; UINT SemanticIndex; UINT Register; D3D_NAME SystemValueType; D3D_REGISTER_COMPONENT_TYPE ComponentType; BYTE Mask; BYTE ReadWriteMask; UINT Stream; D3D_MIN_PRECISION MinPrecision; } D3D12_SIGNATURE_PARAMETER_DESC; typedef struct _D3D12_PARAMETER_DESC { const char *Name; const char *SemanticName; D3D_SHADER_VARIABLE_TYPE Type; D3D_SHADER_VARIABLE_CLASS Class; UINT Rows; UINT Columns; D3D_INTERPOLATION_MODE InterpolationMode; D3D_PARAMETER_FLAGS Flags; UINT FirstInRegister; UINT FirstInComponent; UINT FirstOutRegister; UINT FirstOutComponent; } D3D12_PARAMETER_DESC; typedef struct _D3D12_FUNCTION_DESC { UINT Version; const char *Creator; UINT Flags; UINT ConstantBuffers; UINT BoundResources; UINT InstructionCount; UINT TempRegisterCount; UINT TempArrayCount; UINT DefCount; UINT DclCount; UINT TextureNormalInstructions; UINT TextureLoadInstructions; UINT TextureCompInstructions; UINT TextureBiasInstructions; UINT TextureGradientInstructions; UINT FloatInstructionCount; UINT IntInstructionCount; UINT UintInstructionCount; UINT StaticFlowControlCount; UINT DynamicFlowControlCount; UINT MacroInstructionCount; UINT ArrayInstructionCount; UINT MovInstructionCount; UINT MovcInstructionCount; UINT ConversionInstructionCount; UINT BitwiseInstructionCount; D3D_FEATURE_LEVEL MinFeatureLevel; UINT64 RequiredFeatureFlags; const char *Name; INT FunctionParameterCount; WINBOOL HasReturn; WINBOOL Has10Level9VertexShader; WINBOOL Has10Level9PixelShader; } D3D12_FUNCTION_DESC; typedef struct _D3D12_LIBRARY_DESC { const char *Creator; UINT Flags; UINT FunctionCount; } D3D12_LIBRARY_DESC; #ifndef __ID3D12ShaderReflectionConstantBuffer_FWD_DEFINED__ #define __ID3D12ShaderReflectionConstantBuffer_FWD_DEFINED__ typedef interface ID3D12ShaderReflectionConstantBuffer ID3D12ShaderReflectionConstantBuffer; #ifdef __cplusplus interface ID3D12ShaderReflectionConstantBuffer; #endif /* __cplusplus */ #endif /***************************************************************************** * ID3D12ShaderReflectionType interface */ #ifndef __ID3D12ShaderReflectionType_INTERFACE_DEFINED__ #define __ID3D12ShaderReflectionType_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12ShaderReflectionType, 0xe913c351, 0x783d, 0x48ca, 0xa1,0xd1, 0x4f,0x30,0x62,0x84,0xad,0x56); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e913c351-783d-48ca-a1d1-4f306284ad56") ID3D12ShaderReflectionType { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_SHADER_TYPE_DESC *desc) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetMemberTypeByIndex( UINT index) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetMemberTypeByName( const char *name) = 0; virtual const char * STDMETHODCALLTYPE GetMemberTypeName( UINT index) = 0; virtual HRESULT STDMETHODCALLTYPE IsEqual( ID3D12ShaderReflectionType *type) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetSubType( ) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetBaseClass( ) = 0; virtual UINT STDMETHODCALLTYPE GetNumInterfaces( ) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetInterfaceByIndex( UINT index) = 0; virtual HRESULT STDMETHODCALLTYPE IsOfType( ID3D12ShaderReflectionType *type) = 0; virtual HRESULT STDMETHODCALLTYPE ImplementsInterface( ID3D12ShaderReflectionType *base) = 0; END_INTERFACE }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12ShaderReflectionType, 0xe913c351, 0x783d, 0x48ca, 0xa1,0xd1, 0x4f,0x30,0x62,0x84,0xad,0x56) #endif #else typedef struct ID3D12ShaderReflectionTypeVtbl { BEGIN_INTERFACE /*** ID3D12ShaderReflectionType methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12ShaderReflectionType *This, D3D12_SHADER_TYPE_DESC *desc); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetMemberTypeByIndex)( ID3D12ShaderReflectionType *This, UINT index); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetMemberTypeByName)( ID3D12ShaderReflectionType *This, const char *name); const char * (STDMETHODCALLTYPE *GetMemberTypeName)( ID3D12ShaderReflectionType *This, UINT index); HRESULT (STDMETHODCALLTYPE *IsEqual)( ID3D12ShaderReflectionType *This, ID3D12ShaderReflectionType *type); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetSubType)( ID3D12ShaderReflectionType *This); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetBaseClass)( ID3D12ShaderReflectionType *This); UINT (STDMETHODCALLTYPE *GetNumInterfaces)( ID3D12ShaderReflectionType *This); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetInterfaceByIndex)( ID3D12ShaderReflectionType *This, UINT index); HRESULT (STDMETHODCALLTYPE *IsOfType)( ID3D12ShaderReflectionType *This, ID3D12ShaderReflectionType *type); HRESULT (STDMETHODCALLTYPE *ImplementsInterface)( ID3D12ShaderReflectionType *This, ID3D12ShaderReflectionType *base); END_INTERFACE } ID3D12ShaderReflectionTypeVtbl; interface ID3D12ShaderReflectionType { CONST_VTBL ID3D12ShaderReflectionTypeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3D12ShaderReflectionType methods ***/ #define ID3D12ShaderReflectionType_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12ShaderReflectionType_GetMemberTypeByIndex(This,index) (This)->lpVtbl->GetMemberTypeByIndex(This,index) #define ID3D12ShaderReflectionType_GetMemberTypeByName(This,name) (This)->lpVtbl->GetMemberTypeByName(This,name) #define ID3D12ShaderReflectionType_GetMemberTypeName(This,index) (This)->lpVtbl->GetMemberTypeName(This,index) #define ID3D12ShaderReflectionType_IsEqual(This,type) (This)->lpVtbl->IsEqual(This,type) #define ID3D12ShaderReflectionType_GetSubType(This) (This)->lpVtbl->GetSubType(This) #define ID3D12ShaderReflectionType_GetBaseClass(This) (This)->lpVtbl->GetBaseClass(This) #define ID3D12ShaderReflectionType_GetNumInterfaces(This) (This)->lpVtbl->GetNumInterfaces(This) #define ID3D12ShaderReflectionType_GetInterfaceByIndex(This,index) (This)->lpVtbl->GetInterfaceByIndex(This,index) #define ID3D12ShaderReflectionType_IsOfType(This,type) (This)->lpVtbl->IsOfType(This,type) #define ID3D12ShaderReflectionType_ImplementsInterface(This,base) (This)->lpVtbl->ImplementsInterface(This,base) #else /*** ID3D12ShaderReflectionType methods ***/ static FORCEINLINE HRESULT ID3D12ShaderReflectionType_GetDesc(ID3D12ShaderReflectionType* This,D3D12_SHADER_TYPE_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionType_GetMemberTypeByIndex(ID3D12ShaderReflectionType* This,UINT index) { return This->lpVtbl->GetMemberTypeByIndex(This,index); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionType_GetMemberTypeByName(ID3D12ShaderReflectionType* This,const char *name) { return This->lpVtbl->GetMemberTypeByName(This,name); } static FORCEINLINE const char * ID3D12ShaderReflectionType_GetMemberTypeName(ID3D12ShaderReflectionType* This,UINT index) { return This->lpVtbl->GetMemberTypeName(This,index); } static FORCEINLINE HRESULT ID3D12ShaderReflectionType_IsEqual(ID3D12ShaderReflectionType* This,ID3D12ShaderReflectionType *type) { return This->lpVtbl->IsEqual(This,type); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionType_GetSubType(ID3D12ShaderReflectionType* This) { return This->lpVtbl->GetSubType(This); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionType_GetBaseClass(ID3D12ShaderReflectionType* This) { return This->lpVtbl->GetBaseClass(This); } static FORCEINLINE UINT ID3D12ShaderReflectionType_GetNumInterfaces(ID3D12ShaderReflectionType* This) { return This->lpVtbl->GetNumInterfaces(This); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionType_GetInterfaceByIndex(ID3D12ShaderReflectionType* This,UINT index) { return This->lpVtbl->GetInterfaceByIndex(This,index); } static FORCEINLINE HRESULT ID3D12ShaderReflectionType_IsOfType(ID3D12ShaderReflectionType* This,ID3D12ShaderReflectionType *type) { return This->lpVtbl->IsOfType(This,type); } static FORCEINLINE HRESULT ID3D12ShaderReflectionType_ImplementsInterface(ID3D12ShaderReflectionType* This,ID3D12ShaderReflectionType *base) { return This->lpVtbl->ImplementsInterface(This,base); } #endif #endif #endif #endif /* __ID3D12ShaderReflectionType_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12ShaderReflectionVariable interface */ #ifndef __ID3D12ShaderReflectionVariable_INTERFACE_DEFINED__ #define __ID3D12ShaderReflectionVariable_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12ShaderReflectionVariable, 0x8337a8a6, 0xa216, 0x444a, 0xb2,0xf4, 0x31,0x47,0x33,0xa7,0x3a,0xea); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8337a8a6-a216-444a-b2f4-314733a73aea") ID3D12ShaderReflectionVariable { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_SHADER_VARIABLE_DESC *desc) = 0; virtual ID3D12ShaderReflectionType * STDMETHODCALLTYPE GetType( ) = 0; virtual ID3D12ShaderReflectionConstantBuffer * STDMETHODCALLTYPE GetBuffer( ) = 0; virtual UINT STDMETHODCALLTYPE GetInterfaceSlot( UINT index) = 0; END_INTERFACE }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12ShaderReflectionVariable, 0x8337a8a6, 0xa216, 0x444a, 0xb2,0xf4, 0x31,0x47,0x33,0xa7,0x3a,0xea) #endif #else typedef struct ID3D12ShaderReflectionVariableVtbl { BEGIN_INTERFACE /*** ID3D12ShaderReflectionVariable methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12ShaderReflectionVariable *This, D3D12_SHADER_VARIABLE_DESC *desc); ID3D12ShaderReflectionType * (STDMETHODCALLTYPE *GetType)( ID3D12ShaderReflectionVariable *This); ID3D12ShaderReflectionConstantBuffer * (STDMETHODCALLTYPE *GetBuffer)( ID3D12ShaderReflectionVariable *This); UINT (STDMETHODCALLTYPE *GetInterfaceSlot)( ID3D12ShaderReflectionVariable *This, UINT index); END_INTERFACE } ID3D12ShaderReflectionVariableVtbl; interface ID3D12ShaderReflectionVariable { CONST_VTBL ID3D12ShaderReflectionVariableVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3D12ShaderReflectionVariable methods ***/ #define ID3D12ShaderReflectionVariable_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12ShaderReflectionVariable_GetType(This) (This)->lpVtbl->GetType(This) #define ID3D12ShaderReflectionVariable_GetBuffer(This) (This)->lpVtbl->GetBuffer(This) #define ID3D12ShaderReflectionVariable_GetInterfaceSlot(This,index) (This)->lpVtbl->GetInterfaceSlot(This,index) #else /*** ID3D12ShaderReflectionVariable methods ***/ static FORCEINLINE HRESULT ID3D12ShaderReflectionVariable_GetDesc(ID3D12ShaderReflectionVariable* This,D3D12_SHADER_VARIABLE_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12ShaderReflectionType * ID3D12ShaderReflectionVariable_GetType(ID3D12ShaderReflectionVariable* This) { return This->lpVtbl->GetType(This); } static FORCEINLINE ID3D12ShaderReflectionConstantBuffer * ID3D12ShaderReflectionVariable_GetBuffer(ID3D12ShaderReflectionVariable* This) { return This->lpVtbl->GetBuffer(This); } static FORCEINLINE UINT ID3D12ShaderReflectionVariable_GetInterfaceSlot(ID3D12ShaderReflectionVariable* This,UINT index) { return This->lpVtbl->GetInterfaceSlot(This,index); } #endif #endif #endif #endif /* __ID3D12ShaderReflectionVariable_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12ShaderReflectionConstantBuffer interface */ #ifndef __ID3D12ShaderReflectionConstantBuffer_INTERFACE_DEFINED__ #define __ID3D12ShaderReflectionConstantBuffer_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12ShaderReflectionConstantBuffer, 0xc59598b4, 0x48b3, 0x4869, 0xb9,0xb1, 0xb1,0x61,0x8b,0x14,0xa8,0xb7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c59598b4-48b3-4869-b9b1-b1618b14a8b7") ID3D12ShaderReflectionConstantBuffer { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_SHADER_BUFFER_DESC *desc) = 0; virtual ID3D12ShaderReflectionVariable * STDMETHODCALLTYPE GetVariableByIndex( UINT index) = 0; virtual ID3D12ShaderReflectionVariable * STDMETHODCALLTYPE GetVariableByName( const char *name) = 0; END_INTERFACE }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12ShaderReflectionConstantBuffer, 0xc59598b4, 0x48b3, 0x4869, 0xb9,0xb1, 0xb1,0x61,0x8b,0x14,0xa8,0xb7) #endif #else typedef struct ID3D12ShaderReflectionConstantBufferVtbl { BEGIN_INTERFACE /*** ID3D12ShaderReflectionConstantBuffer methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12ShaderReflectionConstantBuffer *This, D3D12_SHADER_BUFFER_DESC *desc); ID3D12ShaderReflectionVariable * (STDMETHODCALLTYPE *GetVariableByIndex)( ID3D12ShaderReflectionConstantBuffer *This, UINT index); ID3D12ShaderReflectionVariable * (STDMETHODCALLTYPE *GetVariableByName)( ID3D12ShaderReflectionConstantBuffer *This, const char *name); END_INTERFACE } ID3D12ShaderReflectionConstantBufferVtbl; interface ID3D12ShaderReflectionConstantBuffer { CONST_VTBL ID3D12ShaderReflectionConstantBufferVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3D12ShaderReflectionConstantBuffer methods ***/ #define ID3D12ShaderReflectionConstantBuffer_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12ShaderReflectionConstantBuffer_GetVariableByIndex(This,index) (This)->lpVtbl->GetVariableByIndex(This,index) #define ID3D12ShaderReflectionConstantBuffer_GetVariableByName(This,name) (This)->lpVtbl->GetVariableByName(This,name) #else /*** ID3D12ShaderReflectionConstantBuffer methods ***/ static FORCEINLINE HRESULT ID3D12ShaderReflectionConstantBuffer_GetDesc(ID3D12ShaderReflectionConstantBuffer* This,D3D12_SHADER_BUFFER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12ShaderReflectionVariable * ID3D12ShaderReflectionConstantBuffer_GetVariableByIndex(ID3D12ShaderReflectionConstantBuffer* This,UINT index) { return This->lpVtbl->GetVariableByIndex(This,index); } static FORCEINLINE ID3D12ShaderReflectionVariable * ID3D12ShaderReflectionConstantBuffer_GetVariableByName(ID3D12ShaderReflectionConstantBuffer* This,const char *name) { return This->lpVtbl->GetVariableByName(This,name); } #endif #endif #endif #endif /* __ID3D12ShaderReflectionConstantBuffer_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12ShaderReflection interface */ #ifndef __ID3D12ShaderReflection_INTERFACE_DEFINED__ #define __ID3D12ShaderReflection_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12ShaderReflection, 0x5a58797d, 0xa72c, 0x478d, 0x8b,0xa2, 0xef,0xc6,0xb0,0xef,0xe8,0x8e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5a58797d-a72c-478d-8ba2-efc6b0efe88e") ID3D12ShaderReflection : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_SHADER_DESC *desc) = 0; virtual ID3D12ShaderReflectionConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByIndex( UINT index) = 0; virtual ID3D12ShaderReflectionConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByName( const char *name) = 0; virtual HRESULT STDMETHODCALLTYPE GetResourceBindingDesc( UINT index, D3D12_SHADER_INPUT_BIND_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetInputParameterDesc( UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetOutputParameterDesc( UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetPatchConstantParameterDesc( UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc) = 0; virtual ID3D12ShaderReflectionVariable * STDMETHODCALLTYPE GetVariableByName( const char *name) = 0; virtual HRESULT STDMETHODCALLTYPE GetResourceBindingDescByName( const char *name, D3D12_SHADER_INPUT_BIND_DESC *desc) = 0; virtual UINT STDMETHODCALLTYPE GetMovInstructionCount( ) = 0; virtual UINT STDMETHODCALLTYPE GetMovcInstructionCount( ) = 0; virtual UINT STDMETHODCALLTYPE GetConversionInstructionCount( ) = 0; virtual UINT STDMETHODCALLTYPE GetBitwiseInstructionCount( ) = 0; virtual D3D_PRIMITIVE STDMETHODCALLTYPE GetGSInputPrimitive( ) = 0; virtual WINBOOL STDMETHODCALLTYPE IsSampleFrequencyShader( ) = 0; virtual UINT STDMETHODCALLTYPE GetNumInterfaceSlots( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetMinFeatureLevel( D3D_FEATURE_LEVEL *level) = 0; virtual UINT STDMETHODCALLTYPE GetThreadGroupSize( UINT *sizex, UINT *sizey, UINT *sizez) = 0; virtual UINT64 STDMETHODCALLTYPE GetRequiresFlags( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12ShaderReflection, 0x5a58797d, 0xa72c, 0x478d, 0x8b,0xa2, 0xef,0xc6,0xb0,0xef,0xe8,0x8e) #endif #else typedef struct ID3D12ShaderReflectionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12ShaderReflection *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12ShaderReflection *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12ShaderReflection *This); /*** ID3D12ShaderReflection methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12ShaderReflection *This, D3D12_SHADER_DESC *desc); ID3D12ShaderReflectionConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByIndex)( ID3D12ShaderReflection *This, UINT index); ID3D12ShaderReflectionConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByName)( ID3D12ShaderReflection *This, const char *name); HRESULT (STDMETHODCALLTYPE *GetResourceBindingDesc)( ID3D12ShaderReflection *This, UINT index, D3D12_SHADER_INPUT_BIND_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetInputParameterDesc)( ID3D12ShaderReflection *This, UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetOutputParameterDesc)( ID3D12ShaderReflection *This, UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetPatchConstantParameterDesc)( ID3D12ShaderReflection *This, UINT index, D3D12_SIGNATURE_PARAMETER_DESC *desc); ID3D12ShaderReflectionVariable * (STDMETHODCALLTYPE *GetVariableByName)( ID3D12ShaderReflection *This, const char *name); HRESULT (STDMETHODCALLTYPE *GetResourceBindingDescByName)( ID3D12ShaderReflection *This, const char *name, D3D12_SHADER_INPUT_BIND_DESC *desc); UINT (STDMETHODCALLTYPE *GetMovInstructionCount)( ID3D12ShaderReflection *This); UINT (STDMETHODCALLTYPE *GetMovcInstructionCount)( ID3D12ShaderReflection *This); UINT (STDMETHODCALLTYPE *GetConversionInstructionCount)( ID3D12ShaderReflection *This); UINT (STDMETHODCALLTYPE *GetBitwiseInstructionCount)( ID3D12ShaderReflection *This); D3D_PRIMITIVE (STDMETHODCALLTYPE *GetGSInputPrimitive)( ID3D12ShaderReflection *This); WINBOOL (STDMETHODCALLTYPE *IsSampleFrequencyShader)( ID3D12ShaderReflection *This); UINT (STDMETHODCALLTYPE *GetNumInterfaceSlots)( ID3D12ShaderReflection *This); HRESULT (STDMETHODCALLTYPE *GetMinFeatureLevel)( ID3D12ShaderReflection *This, D3D_FEATURE_LEVEL *level); UINT (STDMETHODCALLTYPE *GetThreadGroupSize)( ID3D12ShaderReflection *This, UINT *sizex, UINT *sizey, UINT *sizez); UINT64 (STDMETHODCALLTYPE *GetRequiresFlags)( ID3D12ShaderReflection *This); END_INTERFACE } ID3D12ShaderReflectionVtbl; interface ID3D12ShaderReflection { CONST_VTBL ID3D12ShaderReflectionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12ShaderReflection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12ShaderReflection_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12ShaderReflection_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12ShaderReflection methods ***/ #define ID3D12ShaderReflection_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12ShaderReflection_GetConstantBufferByIndex(This,index) (This)->lpVtbl->GetConstantBufferByIndex(This,index) #define ID3D12ShaderReflection_GetConstantBufferByName(This,name) (This)->lpVtbl->GetConstantBufferByName(This,name) #define ID3D12ShaderReflection_GetResourceBindingDesc(This,index,desc) (This)->lpVtbl->GetResourceBindingDesc(This,index,desc) #define ID3D12ShaderReflection_GetInputParameterDesc(This,index,desc) (This)->lpVtbl->GetInputParameterDesc(This,index,desc) #define ID3D12ShaderReflection_GetOutputParameterDesc(This,index,desc) (This)->lpVtbl->GetOutputParameterDesc(This,index,desc) #define ID3D12ShaderReflection_GetPatchConstantParameterDesc(This,index,desc) (This)->lpVtbl->GetPatchConstantParameterDesc(This,index,desc) #define ID3D12ShaderReflection_GetVariableByName(This,name) (This)->lpVtbl->GetVariableByName(This,name) #define ID3D12ShaderReflection_GetResourceBindingDescByName(This,name,desc) (This)->lpVtbl->GetResourceBindingDescByName(This,name,desc) #define ID3D12ShaderReflection_GetMovInstructionCount(This) (This)->lpVtbl->GetMovInstructionCount(This) #define ID3D12ShaderReflection_GetMovcInstructionCount(This) (This)->lpVtbl->GetMovcInstructionCount(This) #define ID3D12ShaderReflection_GetConversionInstructionCount(This) (This)->lpVtbl->GetConversionInstructionCount(This) #define ID3D12ShaderReflection_GetBitwiseInstructionCount(This) (This)->lpVtbl->GetBitwiseInstructionCount(This) #define ID3D12ShaderReflection_GetGSInputPrimitive(This) (This)->lpVtbl->GetGSInputPrimitive(This) #define ID3D12ShaderReflection_IsSampleFrequencyShader(This) (This)->lpVtbl->IsSampleFrequencyShader(This) #define ID3D12ShaderReflection_GetNumInterfaceSlots(This) (This)->lpVtbl->GetNumInterfaceSlots(This) #define ID3D12ShaderReflection_GetMinFeatureLevel(This,level) (This)->lpVtbl->GetMinFeatureLevel(This,level) #define ID3D12ShaderReflection_GetThreadGroupSize(This,sizex,sizey,sizez) (This)->lpVtbl->GetThreadGroupSize(This,sizex,sizey,sizez) #define ID3D12ShaderReflection_GetRequiresFlags(This) (This)->lpVtbl->GetRequiresFlags(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12ShaderReflection_QueryInterface(ID3D12ShaderReflection* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12ShaderReflection_AddRef(ID3D12ShaderReflection* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12ShaderReflection_Release(ID3D12ShaderReflection* This) { return This->lpVtbl->Release(This); } /*** ID3D12ShaderReflection methods ***/ static FORCEINLINE HRESULT ID3D12ShaderReflection_GetDesc(ID3D12ShaderReflection* This,D3D12_SHADER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12ShaderReflectionConstantBuffer * ID3D12ShaderReflection_GetConstantBufferByIndex(ID3D12ShaderReflection* This,UINT index) { return This->lpVtbl->GetConstantBufferByIndex(This,index); } static FORCEINLINE ID3D12ShaderReflectionConstantBuffer * ID3D12ShaderReflection_GetConstantBufferByName(ID3D12ShaderReflection* This,const char *name) { return This->lpVtbl->GetConstantBufferByName(This,name); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetResourceBindingDesc(ID3D12ShaderReflection* This,UINT index,D3D12_SHADER_INPUT_BIND_DESC *desc) { return This->lpVtbl->GetResourceBindingDesc(This,index,desc); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetInputParameterDesc(ID3D12ShaderReflection* This,UINT index,D3D12_SIGNATURE_PARAMETER_DESC *desc) { return This->lpVtbl->GetInputParameterDesc(This,index,desc); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetOutputParameterDesc(ID3D12ShaderReflection* This,UINT index,D3D12_SIGNATURE_PARAMETER_DESC *desc) { return This->lpVtbl->GetOutputParameterDesc(This,index,desc); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetPatchConstantParameterDesc(ID3D12ShaderReflection* This,UINT index,D3D12_SIGNATURE_PARAMETER_DESC *desc) { return This->lpVtbl->GetPatchConstantParameterDesc(This,index,desc); } static FORCEINLINE ID3D12ShaderReflectionVariable * ID3D12ShaderReflection_GetVariableByName(ID3D12ShaderReflection* This,const char *name) { return This->lpVtbl->GetVariableByName(This,name); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetResourceBindingDescByName(ID3D12ShaderReflection* This,const char *name,D3D12_SHADER_INPUT_BIND_DESC *desc) { return This->lpVtbl->GetResourceBindingDescByName(This,name,desc); } static FORCEINLINE UINT ID3D12ShaderReflection_GetMovInstructionCount(ID3D12ShaderReflection* This) { return This->lpVtbl->GetMovInstructionCount(This); } static FORCEINLINE UINT ID3D12ShaderReflection_GetMovcInstructionCount(ID3D12ShaderReflection* This) { return This->lpVtbl->GetMovcInstructionCount(This); } static FORCEINLINE UINT ID3D12ShaderReflection_GetConversionInstructionCount(ID3D12ShaderReflection* This) { return This->lpVtbl->GetConversionInstructionCount(This); } static FORCEINLINE UINT ID3D12ShaderReflection_GetBitwiseInstructionCount(ID3D12ShaderReflection* This) { return This->lpVtbl->GetBitwiseInstructionCount(This); } static FORCEINLINE D3D_PRIMITIVE ID3D12ShaderReflection_GetGSInputPrimitive(ID3D12ShaderReflection* This) { return This->lpVtbl->GetGSInputPrimitive(This); } static FORCEINLINE WINBOOL ID3D12ShaderReflection_IsSampleFrequencyShader(ID3D12ShaderReflection* This) { return This->lpVtbl->IsSampleFrequencyShader(This); } static FORCEINLINE UINT ID3D12ShaderReflection_GetNumInterfaceSlots(ID3D12ShaderReflection* This) { return This->lpVtbl->GetNumInterfaceSlots(This); } static FORCEINLINE HRESULT ID3D12ShaderReflection_GetMinFeatureLevel(ID3D12ShaderReflection* This,D3D_FEATURE_LEVEL *level) { return This->lpVtbl->GetMinFeatureLevel(This,level); } static FORCEINLINE UINT ID3D12ShaderReflection_GetThreadGroupSize(ID3D12ShaderReflection* This,UINT *sizex,UINT *sizey,UINT *sizez) { return This->lpVtbl->GetThreadGroupSize(This,sizex,sizey,sizez); } static FORCEINLINE UINT64 ID3D12ShaderReflection_GetRequiresFlags(ID3D12ShaderReflection* This) { return This->lpVtbl->GetRequiresFlags(This); } #endif #endif #endif #endif /* __ID3D12ShaderReflection_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12FunctionParameterReflection interface */ #ifndef __ID3D12FunctionParameterReflection_INTERFACE_DEFINED__ #define __ID3D12FunctionParameterReflection_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12FunctionParameterReflection, 0xec25f42d, 0x7006, 0x4f2b, 0xb3,0x3e, 0x02,0xcc,0x33,0x75,0x73,0x3f); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ec25f42d-7006-4f2b-b33e-02cc3375733f") ID3D12FunctionParameterReflection { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_PARAMETER_DESC *desc) = 0; END_INTERFACE }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12FunctionParameterReflection, 0xec25f42d, 0x7006, 0x4f2b, 0xb3,0x3e, 0x02,0xcc,0x33,0x75,0x73,0x3f) #endif #else typedef struct ID3D12FunctionParameterReflectionVtbl { BEGIN_INTERFACE /*** ID3D12FunctionParameterReflection methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12FunctionParameterReflection *This, D3D12_PARAMETER_DESC *desc); END_INTERFACE } ID3D12FunctionParameterReflectionVtbl; interface ID3D12FunctionParameterReflection { CONST_VTBL ID3D12FunctionParameterReflectionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3D12FunctionParameterReflection methods ***/ #define ID3D12FunctionParameterReflection_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #else /*** ID3D12FunctionParameterReflection methods ***/ static FORCEINLINE HRESULT ID3D12FunctionParameterReflection_GetDesc(ID3D12FunctionParameterReflection* This,D3D12_PARAMETER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } #endif #endif #endif #endif /* __ID3D12FunctionParameterReflection_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12FunctionReflection interface */ #ifndef __ID3D12FunctionReflection_INTERFACE_DEFINED__ #define __ID3D12FunctionReflection_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12FunctionReflection, 0x1108795c, 0x2772, 0x4ba9, 0xb2,0xa8, 0xd4,0x64,0xdc,0x7e,0x27,0x99); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1108795c-2772-4ba9-b2a8-d464dc7e2799") ID3D12FunctionReflection { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_FUNCTION_DESC *desc) = 0; virtual ID3D12ShaderReflectionConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByIndex( UINT index) = 0; virtual ID3D12ShaderReflectionConstantBuffer * STDMETHODCALLTYPE GetConstantBufferByName( const char *name) = 0; virtual HRESULT STDMETHODCALLTYPE GetResourceBindingDesc( UINT index, D3D12_SHADER_INPUT_BIND_DESC *desc) = 0; virtual ID3D12ShaderReflectionVariable * STDMETHODCALLTYPE GetVariableByName( const char *name) = 0; virtual HRESULT STDMETHODCALLTYPE GetResourceBindingDescByName( const char *name, D3D12_SHADER_INPUT_BIND_DESC *desc) = 0; virtual ID3D12FunctionParameterReflection * STDMETHODCALLTYPE GetFunctionParameter( INT index) = 0; END_INTERFACE }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12FunctionReflection, 0x1108795c, 0x2772, 0x4ba9, 0xb2,0xa8, 0xd4,0x64,0xdc,0x7e,0x27,0x99) #endif #else typedef struct ID3D12FunctionReflectionVtbl { BEGIN_INTERFACE /*** ID3D12FunctionReflection methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12FunctionReflection *This, D3D12_FUNCTION_DESC *desc); ID3D12ShaderReflectionConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByIndex)( ID3D12FunctionReflection *This, UINT index); ID3D12ShaderReflectionConstantBuffer * (STDMETHODCALLTYPE *GetConstantBufferByName)( ID3D12FunctionReflection *This, const char *name); HRESULT (STDMETHODCALLTYPE *GetResourceBindingDesc)( ID3D12FunctionReflection *This, UINT index, D3D12_SHADER_INPUT_BIND_DESC *desc); ID3D12ShaderReflectionVariable * (STDMETHODCALLTYPE *GetVariableByName)( ID3D12FunctionReflection *This, const char *name); HRESULT (STDMETHODCALLTYPE *GetResourceBindingDescByName)( ID3D12FunctionReflection *This, const char *name, D3D12_SHADER_INPUT_BIND_DESC *desc); ID3D12FunctionParameterReflection * (STDMETHODCALLTYPE *GetFunctionParameter)( ID3D12FunctionReflection *This, INT index); END_INTERFACE } ID3D12FunctionReflectionVtbl; interface ID3D12FunctionReflection { CONST_VTBL ID3D12FunctionReflectionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3D12FunctionReflection methods ***/ #define ID3D12FunctionReflection_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12FunctionReflection_GetConstantBufferByIndex(This,index) (This)->lpVtbl->GetConstantBufferByIndex(This,index) #define ID3D12FunctionReflection_GetConstantBufferByName(This,name) (This)->lpVtbl->GetConstantBufferByName(This,name) #define ID3D12FunctionReflection_GetResourceBindingDesc(This,index,desc) (This)->lpVtbl->GetResourceBindingDesc(This,index,desc) #define ID3D12FunctionReflection_GetVariableByName(This,name) (This)->lpVtbl->GetVariableByName(This,name) #define ID3D12FunctionReflection_GetResourceBindingDescByName(This,name,desc) (This)->lpVtbl->GetResourceBindingDescByName(This,name,desc) #define ID3D12FunctionReflection_GetFunctionParameter(This,index) (This)->lpVtbl->GetFunctionParameter(This,index) #else /*** ID3D12FunctionReflection methods ***/ static FORCEINLINE HRESULT ID3D12FunctionReflection_GetDesc(ID3D12FunctionReflection* This,D3D12_FUNCTION_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12ShaderReflectionConstantBuffer * ID3D12FunctionReflection_GetConstantBufferByIndex(ID3D12FunctionReflection* This,UINT index) { return This->lpVtbl->GetConstantBufferByIndex(This,index); } static FORCEINLINE ID3D12ShaderReflectionConstantBuffer * ID3D12FunctionReflection_GetConstantBufferByName(ID3D12FunctionReflection* This,const char *name) { return This->lpVtbl->GetConstantBufferByName(This,name); } static FORCEINLINE HRESULT ID3D12FunctionReflection_GetResourceBindingDesc(ID3D12FunctionReflection* This,UINT index,D3D12_SHADER_INPUT_BIND_DESC *desc) { return This->lpVtbl->GetResourceBindingDesc(This,index,desc); } static FORCEINLINE ID3D12ShaderReflectionVariable * ID3D12FunctionReflection_GetVariableByName(ID3D12FunctionReflection* This,const char *name) { return This->lpVtbl->GetVariableByName(This,name); } static FORCEINLINE HRESULT ID3D12FunctionReflection_GetResourceBindingDescByName(ID3D12FunctionReflection* This,const char *name,D3D12_SHADER_INPUT_BIND_DESC *desc) { return This->lpVtbl->GetResourceBindingDescByName(This,name,desc); } static FORCEINLINE ID3D12FunctionParameterReflection * ID3D12FunctionReflection_GetFunctionParameter(ID3D12FunctionReflection* This,INT index) { return This->lpVtbl->GetFunctionParameter(This,index); } #endif #endif #endif #endif /* __ID3D12FunctionReflection_INTERFACE_DEFINED__ */ /***************************************************************************** * ID3D12LibraryReflection interface */ #ifndef __ID3D12LibraryReflection_INTERFACE_DEFINED__ #define __ID3D12LibraryReflection_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D12LibraryReflection, 0x8e349d19, 0x54db, 0x4a56, 0x9d,0xc9, 0x11,0x9d,0x87,0xbd,0xb8,0x04); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8e349d19-54db-4a56-9dc9-119d87bdb804") ID3D12LibraryReflection : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetDesc( D3D12_LIBRARY_DESC *desc) = 0; virtual ID3D12FunctionReflection * STDMETHODCALLTYPE GetFunctionByIndex( INT index) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D12LibraryReflection, 0x8e349d19, 0x54db, 0x4a56, 0x9d,0xc9, 0x11,0x9d,0x87,0xbd,0xb8,0x04) #endif #else typedef struct ID3D12LibraryReflectionVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D12LibraryReflection *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D12LibraryReflection *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D12LibraryReflection *This); /*** ID3D12LibraryReflection methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( ID3D12LibraryReflection *This, D3D12_LIBRARY_DESC *desc); ID3D12FunctionReflection * (STDMETHODCALLTYPE *GetFunctionByIndex)( ID3D12LibraryReflection *This, INT index); END_INTERFACE } ID3D12LibraryReflectionVtbl; interface ID3D12LibraryReflection { CONST_VTBL ID3D12LibraryReflectionVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D12LibraryReflection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D12LibraryReflection_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D12LibraryReflection_Release(This) (This)->lpVtbl->Release(This) /*** ID3D12LibraryReflection methods ***/ #define ID3D12LibraryReflection_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define ID3D12LibraryReflection_GetFunctionByIndex(This,index) (This)->lpVtbl->GetFunctionByIndex(This,index) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D12LibraryReflection_QueryInterface(ID3D12LibraryReflection* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D12LibraryReflection_AddRef(ID3D12LibraryReflection* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D12LibraryReflection_Release(ID3D12LibraryReflection* This) { return This->lpVtbl->Release(This); } /*** ID3D12LibraryReflection methods ***/ static FORCEINLINE HRESULT ID3D12LibraryReflection_GetDesc(ID3D12LibraryReflection* This,D3D12_LIBRARY_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE ID3D12FunctionReflection * ID3D12LibraryReflection_GetFunctionByIndex(ID3D12LibraryReflection* This,INT index) { return This->lpVtbl->GetFunctionByIndex(This,index); } #endif #endif #endif #endif /* __ID3D12LibraryReflection_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3d12shader_h__ */ dxvk-0~git20220822.9df86f2/d3d8.h000066400000000000000000002312141430055512200157150ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2002 Jason Edmeades * * 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 */ #ifndef __WINE_D3D8_H #define __WINE_D3D8_H #ifndef DIRECT3D_VERSION #define DIRECT3D_VERSION 0x0800 #endif #include #define COM_NO_WINDOWS_H #include #include #include #include /***************************************************************************** * Behavior Flags for IDirect3D8::CreateDevice */ #define D3DCREATE_FPU_PRESERVE __MSABI_LONG(0x00000002) #define D3DCREATE_MULTITHREADED __MSABI_LONG(0x00000004) #define D3DCREATE_PUREDEVICE __MSABI_LONG(0x00000010) #define D3DCREATE_SOFTWARE_VERTEXPROCESSING __MSABI_LONG(0x00000020) #define D3DCREATE_HARDWARE_VERTEXPROCESSING __MSABI_LONG(0x00000040) #define D3DCREATE_MIXED_VERTEXPROCESSING __MSABI_LONG(0x00000080) /***************************************************************************** * Flags for SetPrivateData */ #define D3DSPD_IUNKNOWN __MSABI_LONG(0x00000001) /***************************************************************************** * #defines and error codes */ #define D3D_SDK_VERSION 220 #define D3DADAPTER_DEFAULT 0 #define D3DENUM_NO_WHQL_LEVEL 2 #define _FACD3D 0x876 #define MAKE_D3DHRESULT( code ) MAKE_HRESULT( 1, _FACD3D, code ) /* * Direct3D Errors */ #define D3D_OK S_OK #define D3DERR_WRONGTEXTUREFORMAT MAKE_D3DHRESULT(2072) #define D3DERR_UNSUPPORTEDCOLOROPERATION MAKE_D3DHRESULT(2073) #define D3DERR_UNSUPPORTEDCOLORARG MAKE_D3DHRESULT(2074) #define D3DERR_UNSUPPORTEDALPHAOPERATION MAKE_D3DHRESULT(2075) #define D3DERR_UNSUPPORTEDALPHAARG MAKE_D3DHRESULT(2076) #define D3DERR_TOOMANYOPERATIONS MAKE_D3DHRESULT(2077) #define D3DERR_CONFLICTINGTEXTUREFILTER MAKE_D3DHRESULT(2078) #define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_D3DHRESULT(2079) #define D3DERR_CONFLICTINGRENDERSTATE MAKE_D3DHRESULT(2081) #define D3DERR_UNSUPPORTEDTEXTUREFILTER MAKE_D3DHRESULT(2082) #define D3DERR_CONFLICTINGTEXTUREPALETTE MAKE_D3DHRESULT(2086) #define D3DERR_DRIVERINTERNALERROR MAKE_D3DHRESULT(2087) #define D3DERR_NOTFOUND MAKE_D3DHRESULT(2150) #define D3DERR_MOREDATA MAKE_D3DHRESULT(2151) #define D3DERR_DEVICELOST MAKE_D3DHRESULT(2152) #define D3DERR_DEVICENOTRESET MAKE_D3DHRESULT(2153) #define D3DERR_NOTAVAILABLE MAKE_D3DHRESULT(2154) #define D3DERR_OUTOFVIDEOMEMORY MAKE_D3DHRESULT(380) #define D3DERR_INVALIDDEVICE MAKE_D3DHRESULT(2155) #define D3DERR_INVALIDCALL MAKE_D3DHRESULT(2156) #define D3DERR_DRIVERINVALIDCALL MAKE_D3DHRESULT(2157) /***************************************************************************** * Predeclare the interfaces */ DEFINE_GUID(IID_IDirect3D8, 0x1DD9E8DA,0x1C77,0x4D40,0xB0,0xCF,0x98,0xFE,0xFD,0xFF,0x95,0x12); typedef struct IDirect3D8 *LPDIRECT3D8; DEFINE_GUID(IID_IDirect3DDevice8, 0x7385E5DF,0x8FE8,0x41D5,0x86,0xB6,0xD7,0xB4,0x85,0x47,0xB6,0xCF); typedef struct IDirect3DDevice8 *LPDIRECT3DDEVICE8; DEFINE_GUID(IID_IDirect3DResource8, 0x1B36BB7B,0x09B7,0x410A,0xB4,0x45,0x7D,0x14,0x30,0xD7,0xB3,0x3F); typedef struct IDirect3DResource8 *LPDIRECT3DRESOURCE8, *PDIRECT3DRESOURCE8; DEFINE_GUID(IID_IDirect3DVertexBuffer8, 0x8AEEEAC7,0x05F9,0x44D4,0xB5,0x91,0x00,0x0B,0x0D,0xF1,0xCB,0x95); typedef struct IDirect3DVertexBuffer8 *LPDIRECT3DVERTEXBUFFER8, *PDIRECT3DVERTEXBUFFER8; DEFINE_GUID(IID_IDirect3DVolume8, 0xBD7349F5,0x14F1,0x42E4,0x9C,0x79,0x97,0x23,0x80,0xDB,0x40,0xC0); typedef struct IDirect3DVolume8 *LPDIRECT3DVOLUME8, *PDIRECT3DVOLUME8; DEFINE_GUID(IID_IDirect3DSwapChain8, 0x928C088B,0x76B9,0x4C6B,0xA5,0x36,0xA5,0x90,0x85,0x38,0x76,0xCD); typedef struct IDirect3DSwapChain8 *LPDIRECT3DSWAPCHAIN8, *PDIRECT3DSWAPCHAIN8; DEFINE_GUID(IID_IDirect3DSurface8, 0xB96EEBCA,0xB326,0x4EA5,0x88,0x2F,0x2F,0xF5,0xBA,0xE0,0x21,0xDD); typedef struct IDirect3DSurface8 *LPDIRECT3DSURFACE8, *PDIRECT3DSURFACE8; DEFINE_GUID(IID_IDirect3DIndexBuffer8, 0x0E689C9A,0x053D,0x44A0,0x9D,0x92,0xDB,0x0E,0x3D,0x75,0x0F,0x86); typedef struct IDirect3DIndexBuffer8 *LPDIRECT3DINDEXBUFFER8, *PDIRECT3DINDEXBUFFER8; DEFINE_GUID(IID_IDirect3DBaseTexture8, 0xB4211CFA,0x51B9,0x4A9F,0xAB,0x78,0xDB,0x99,0xB2,0xBB,0x67,0x8E); typedef struct IDirect3DBaseTexture8 *LPDIRECT3DBASETEXTURE8, *PDIRECT3DBASETEXTURE8; DEFINE_GUID(IID_IDirect3DTexture8, 0xE4CDD575,0x2866,0x4F01,0xB1,0x2E,0x7E,0xEC,0xE1,0xEC,0x93,0x58); typedef struct IDirect3DTexture8 *LPDIRECT3DTEXTURE8, *PDIRECT3DTEXTURE8; DEFINE_GUID(IID_IDirect3DCubeTexture8, 0x3EE5B968,0x2ACA,0x4C34,0x8B,0xB5,0x7E,0x0C,0x3D,0x19,0xB7,0x50); typedef struct IDirect3DCubeTexture8 *LPDIRECT3DCUBETEXTURE8, *PDIRECT3DCUBETEXTURE8; DEFINE_GUID(IID_IDirect3DVolumeTexture8, 0x4B8AAAFA,0x140F,0x42BA,0x91,0x31,0x59,0x7E,0xAF,0xAA,0x2E,0xAD); typedef struct IDirect3DVolumeTexture8 *LPDIRECT3DVOLUMETEXTURE8, *PDIRECT3DVOLUMETEXTURE8; /***************************************************************************** * IDirect3D8 interface */ #undef INTERFACE #define INTERFACE IDirect3D8 DECLARE_INTERFACE_(IDirect3D8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D8 methods ***/ STDMETHOD(RegisterSoftwareDevice)(THIS_ void * pInitializeFunction) PURE; STDMETHOD_(UINT,GetAdapterCount )(THIS) PURE; STDMETHOD(GetAdapterIdentifier)(THIS_ UINT Adapter, DWORD Flags, D3DADAPTER_IDENTIFIER8 * pIdentifier) PURE; STDMETHOD_(UINT,GetAdapterModeCount)(THIS_ UINT Adapter) PURE; STDMETHOD(EnumAdapterModes)(THIS_ UINT Adapter, UINT Mode, D3DDISPLAYMODE * pMode) PURE; STDMETHOD(GetAdapterDisplayMode)(THIS_ UINT Adapter, D3DDISPLAYMODE * pMode) PURE; STDMETHOD(CheckDeviceType)(THIS_ UINT Adapter, D3DDEVTYPE CheckType, D3DFORMAT DisplayFormat, D3DFORMAT BackBufferFormat, WINBOOL Windowed) PURE; STDMETHOD(CheckDeviceFormat)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT AdapterFormat, DWORD Usage, D3DRESOURCETYPE RType, D3DFORMAT CheckFormat) PURE; STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT SurfaceFormat, WINBOOL Windowed, D3DMULTISAMPLE_TYPE MultiSampleType) PURE; STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT AdapterFormat, D3DFORMAT RenderTargetFormat, D3DFORMAT DepthStencilFormat) PURE; STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DCAPS8 * pCaps) PURE; STDMETHOD_(HMONITOR,GetAdapterMonitor)(THIS_ UINT Adapter) PURE; STDMETHOD(CreateDevice)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType,HWND hFocusWindow, DWORD BehaviorFlags, D3DPRESENT_PARAMETERS * pPresentationParameters, struct IDirect3DDevice8 ** ppReturnedDeviceInterface) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D8 methods ***/ #define IDirect3D8_RegisterSoftwareDevice(p,a) (p)->lpVtbl->RegisterSoftwareDevice(p,a) #define IDirect3D8_GetAdapterCount(p) (p)->lpVtbl->GetAdapterCount(p) #define IDirect3D8_GetAdapterIdentifier(p,a,b,c) (p)->lpVtbl->GetAdapterIdentifier(p,a,b,c) #define IDirect3D8_GetAdapterModeCount(p,a) (p)->lpVtbl->GetAdapterModeCount(p,a) #define IDirect3D8_EnumAdapterModes(p,a,b,c) (p)->lpVtbl->EnumAdapterModes(p,a,b,c) #define IDirect3D8_GetAdapterDisplayMode(p,a,b) (p)->lpVtbl->GetAdapterDisplayMode(p,a,b) #define IDirect3D8_CheckDeviceType(p,a,b,c,d,e) (p)->lpVtbl->CheckDeviceType(p,a,b,c,d,e) #define IDirect3D8_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceFormat(p,a,b,c,d,e,f) #define IDirect3D8_CheckDeviceMultiSampleType(p,a,b,c,d,e) (p)->lpVtbl->CheckDeviceMultiSampleType(p,a,b,c,d,e) #define IDirect3D8_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->lpVtbl->CheckDepthStencilMatch(p,a,b,c,d,e) #define IDirect3D8_GetDeviceCaps(p,a,b,c) (p)->lpVtbl->GetDeviceCaps(p,a,b,c) #define IDirect3D8_GetAdapterMonitor(p,a) (p)->lpVtbl->GetAdapterMonitor(p,a) #define IDirect3D8_CreateDevice(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDevice(p,a,b,c,d,e,f) #else /*** IUnknown methods ***/ #define IDirect3D8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D8_AddRef(p) (p)->AddRef() #define IDirect3D8_Release(p) (p)->Release() /*** IDirect3D8 methods ***/ #define IDirect3D8_RegisterSoftwareDevice(p,a) (p)->RegisterSoftwareDevice(a) #define IDirect3D8_GetAdapterCount(p) (p)->GetAdapterCount() #define IDirect3D8_GetAdapterIdentifier(p,a,b,c) (p)->GetAdapterIdentifier(a,b,c) #define IDirect3D8_GetAdapterModeCount(p,a) (p)->GetAdapterModeCount(a) #define IDirect3D8_EnumAdapterModes(p,a,b,c) (p)->EnumAdapterModes(a,b,c) #define IDirect3D8_GetAdapterDisplayMode(p,a,b) (p)->GetAdapterDisplayMode(a,b) #define IDirect3D8_CheckDeviceType(p,a,b,c,d,e) (p)->CheckDeviceType(a,b,c,d,e) #define IDirect3D8_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->CheckDeviceFormat(a,b,c,d,e,f) #define IDirect3D8_CheckDeviceMultiSampleType(p,a,b,c,d,e) (p)->CheckDeviceMultiSampleType(a,b,c,d,e) #define IDirect3D8_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->CheckDepthStencilMatch(a,b,c,d,e) #define IDirect3D8_GetDeviceCaps(p,a,b,c) (p)->GetDeviceCaps(a,b,c) #define IDirect3D8_GetAdapterMonitor(p,a) (p)->GetAdapterMonitor(a) #define IDirect3D8_CreateDevice(p,a,b,c,d,e,f) (p)->CreateDevice(a,b,c,d,e,f) #endif /***************************************************************************** * IDirect3DVolume8 interface */ #define INTERFACE IDirect3DVolume8 DECLARE_INTERFACE_(IDirect3DVolume8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVolume8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD(GetContainer)(THIS_ REFIID riid, void ** ppContainer) PURE; STDMETHOD(GetDesc)(THIS_ D3DVOLUME_DESC * pDesc) PURE; STDMETHOD(LockBox)(THIS_ D3DLOCKED_BOX *locked_box, const D3DBOX *box, DWORD flags) PURE; STDMETHOD(UnlockBox)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVolume8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVolume8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVolume8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVolume8 methods ***/ #define IDirect3DVolume8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVolume8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVolume8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVolume8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVolume8_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) #define IDirect3DVolume8_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define IDirect3DVolume8_LockBox(p,a,b,c) (p)->lpVtbl->LockBox(p,a,b,c) #define IDirect3DVolume8_UnlockBox(p) (p)->lpVtbl->UnlockBox(p) #else /*** IUnknown methods ***/ #define IDirect3DVolume8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVolume8_AddRef(p) (p)->AddRef() #define IDirect3DVolume8_Release(p) (p)->Release() /*** IDirect3DVolume8 methods ***/ #define IDirect3DVolume8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVolume8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVolume8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVolume8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVolume8_GetContainer(p,a,b) (p)->GetContainer(a,b) #define IDirect3DVolume8_GetDesc(p,a) (p)->GetDesc(a) #define IDirect3DVolume8_LockBox(p,a,b,c) (p)->LockBox(a,b,c) #define IDirect3DVolume8_UnlockBox(p) (p)->UnlockBox() #endif /***************************************************************************** * IDirect3DSwapChain8 interface */ #define INTERFACE IDirect3DSwapChain8 DECLARE_INTERFACE_(IDirect3DSwapChain8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DSwapChain8 methods ***/ STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT BackBuffer, D3DBACKBUFFER_TYPE Type, struct IDirect3DSurface8 ** ppBackBuffer) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DSwapChain8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DSwapChain8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DSwapChain8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DSwapChain8 methods ***/ #define IDirect3DSwapChain8_Present(p,a,b,c,d) (p)->lpVtbl->Present(p,a,b,c,d) #define IDirect3DSwapChain8_GetBackBuffer(p,a,b,c) (p)->lpVtbl->GetBackBuffer(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DSwapChain8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DSwapChain8_AddRef(p) (p)->AddRef() #define IDirect3DSwapChain8_Release(p) (p)->Release() /*** IDirect3DSwapChain8 methods ***/ #define IDirect3DSwapChain8_Present(p,a,b,c,d) (p)->Present(a,b,c,d) #define IDirect3DSwapChain8_GetBackBuffer(p,a,b,c) (p)->GetBackBuffer(a,b,c) #endif /***************************************************************************** * IDirect3DSurface8 interface */ #define INTERFACE IDirect3DSurface8 DECLARE_INTERFACE_(IDirect3DSurface8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DSurface8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid,void * pData,DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD(GetContainer)(THIS_ REFIID riid, void ** ppContainer) PURE; STDMETHOD(GetDesc)(THIS_ D3DSURFACE_DESC * pDesc) PURE; STDMETHOD(LockRect)(THIS_ D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DSurface8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DSurface8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DSurface8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DSurface8 methods ***/ #define IDirect3DSurface8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DSurface8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DSurface8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DSurface8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DSurface8_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) #define IDirect3DSurface8_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define IDirect3DSurface8_LockRect(p,a,b,c) (p)->lpVtbl->LockRect(p,a,b,c) #define IDirect3DSurface8_UnlockRect(p) (p)->lpVtbl->UnlockRect(p) #else /*** IUnknown methods ***/ #define IDirect3DSurface8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DSurface8_AddRef(p) (p)->AddRef() #define IDirect3DSurface8_Release(p) (p)->Release() /*** IDirect3DSurface8 methods ***/ #define IDirect3DSurface8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DSurface8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DSurface8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DSurface8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DSurface8_GetContainer(p,a,b) (p)->GetContainer(a,b) #define IDirect3DSurface8_GetDesc(p,a) (p)->GetDesc(a) #define IDirect3DSurface8_LockRect(p,a,b,c) (p)->LockRect(a,b,c) #define IDirect3DSurface8_UnlockRect(p) (p)->UnlockRect() #endif /***************************************************************************** * IDirect3DResource8 interface */ #define INTERFACE IDirect3DResource8 DECLARE_INTERFACE_(IDirect3DResource8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DResource8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DResource8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DResource8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DResource8 methods ***/ #define IDirect3DResource8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DResource8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DResource8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DResource8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DResource8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DResource8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DResource8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DResource8_GetType(p) (p)->lpVtbl->GetType(p) #else /*** IUnknown methods ***/ #define IDirect3DResource8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DResource8_AddRef(p) (p)->AddRef() #define IDirect3DResource8_Release(p) (p)->Release() /*** IDirect3DResource8 methods ***/ #define IDirect3DResource8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DResource8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DResource8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DResource8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DResource8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DResource8_GetPriority(p) (p)->GetPriority() #define IDirect3DResource8_PreLoad(p) (p)->PreLoad() #define IDirect3DResource8_GetType(p) (p)->GetType() #endif /***************************************************************************** * IDirect3DVertexBuffer8 interface */ #define INTERFACE IDirect3DVertexBuffer8 DECLARE_INTERFACE_(IDirect3DVertexBuffer8,IDirect3DResource8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DVertexBuffer8 methods ***/ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, BYTE ** ppbData, DWORD Flags) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3DVERTEXBUFFER_DESC * pDesc) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexBuffer8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexBuffer8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexBuffer8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexBuffer8 methods: IDirect3DResource8 ***/ #define IDirect3DVertexBuffer8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVertexBuffer8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVertexBuffer8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVertexBuffer8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVertexBuffer8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DVertexBuffer8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DVertexBuffer8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DVertexBuffer8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DVertexBuffer8 methods ***/ #define IDirect3DVertexBuffer8_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) #define IDirect3DVertexBuffer8_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DVertexBuffer8_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #else /*** IUnknown methods ***/ #define IDirect3DVertexBuffer8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexBuffer8_AddRef(p) (p)->AddRef() #define IDirect3DVertexBuffer8_Release(p) (p)->Release() /*** IDirect3DVertexBuffer8 methods: IDirect3DResource8 ***/ #define IDirect3DVertexBuffer8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVertexBuffer8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVertexBuffer8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVertexBuffer8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVertexBuffer8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DVertexBuffer8_GetPriority(p) (p)->GetPriority() #define IDirect3DVertexBuffer8_PreLoad(p) (p)->PreLoad() #define IDirect3DVertexBuffer8_GetType(p) (p)->GetType() /*** IDirect3DVertexBuffer8 methods ***/ #define IDirect3DVertexBuffer8_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) #define IDirect3DVertexBuffer8_Unlock(p) (p)->Unlock() #define IDirect3DVertexBuffer8_GetDesc(p,a) (p)->GetDesc(a) #endif /***************************************************************************** * IDirect3DIndexBuffer8 interface */ #define INTERFACE IDirect3DIndexBuffer8 DECLARE_INTERFACE_(IDirect3DIndexBuffer8,IDirect3DResource8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DIndexBuffer8 methods ***/ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, BYTE ** ppbData, DWORD Flags) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3DINDEXBUFFER_DESC * pDesc) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DIndexBuffer8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DIndexBuffer8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DIndexBuffer8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DIndexBuffer8 methods: IDirect3DResource8 ***/ #define IDirect3DIndexBuffer8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DIndexBuffer8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DIndexBuffer8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DIndexBuffer8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DIndexBuffer8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DIndexBuffer8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DIndexBuffer8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DIndexBuffer8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DIndexBuffer8 methods ***/ #define IDirect3DIndexBuffer8_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) #define IDirect3DIndexBuffer8_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DIndexBuffer8_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #else /*** IUnknown methods ***/ #define IDirect3DIndexBuffer8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DIndexBuffer8_AddRef(p) (p)->AddRef() #define IDirect3DIndexBuffer8_Release(p) (p)->Release() /*** IDirect3DIndexBuffer8 methods: IDirect3DResource8 ***/ #define IDirect3DIndexBuffer8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DIndexBuffer8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DIndexBuffer8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DIndexBuffer8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DIndexBuffer8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DIndexBuffer8_GetPriority(p) (p)->GetPriority() #define IDirect3DIndexBuffer8_PreLoad(p) (p)->PreLoad() #define IDirect3DIndexBuffer8_GetType(p) (p)->GetType() /*** IDirect3DIndexBuffer8 methods ***/ #define IDirect3DIndexBuffer8_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) #define IDirect3DIndexBuffer8_Unlock(p) (p)->Unlock() #define IDirect3DIndexBuffer8_GetDesc(p,a) (p)->GetDesc(a) #endif /***************************************************************************** * IDirect3DBaseTexture8 interface */ #define INTERFACE IDirect3DBaseTexture8 DECLARE_INTERFACE_(IDirect3DBaseTexture8,IDirect3DResource8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DBaseTexture8 methods ***/ STDMETHOD_(DWORD,SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD,GetLOD)(THIS) PURE; STDMETHOD_(DWORD,GetLevelCount)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DBaseTexture8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DBaseTexture8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DBaseTexture8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DBaseTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DBaseTexture8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DBaseTexture8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DBaseTexture8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DBaseTexture8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DBaseTexture8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DBaseTexture8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DBaseTexture8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DBaseTexture8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DBaseTexture8 methods ***/ #define IDirect3DBaseTexture8_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DBaseTexture8_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DBaseTexture8_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) #else /*** IUnknown methods ***/ #define IDirect3DBaseTexture8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DBaseTexture8_AddRef(p) (p)->AddRef() #define IDirect3DBaseTexture8_Release(p) (p)->Release() /*** IDirect3DBaseTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DBaseTexture8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DBaseTexture8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DBaseTexture8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DBaseTexture8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DBaseTexture8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DBaseTexture8_GetPriority(p) (p)->GetPriority() #define IDirect3DBaseTexture8_PreLoad(p) (p)->PreLoad() #define IDirect3DBaseTexture8_GetType(p) (p)->GetType() /*** IDirect3DBaseTexture8 methods ***/ #define IDirect3DBaseTexture8_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DBaseTexture8_GetLOD(p) (p)->GetLOD() #define IDirect3DBaseTexture8_GetLevelCount(p) (p)->GetLevelCount() #endif /***************************************************************************** * IDirect3DCubeTexture8 interface */ #define INTERFACE IDirect3DCubeTexture8 DECLARE_INTERFACE_(IDirect3DCubeTexture8,IDirect3DBaseTexture8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DBaseTexture8 methods ***/ STDMETHOD_(DWORD,SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD,GetLOD)(THIS) PURE; STDMETHOD_(DWORD,GetLevelCount)(THIS) PURE; /*** IDirect3DCubeTexture8 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC * pDesc) PURE; STDMETHOD(GetCubeMapSurface)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level,IDirect3DSurface8 ** ppCubeMapSurface) PURE; STDMETHOD(LockRect)(THIS_ D3DCUBEMAP_FACES face, UINT level, D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS_ D3DCUBEMAP_FACES FaceType,UINT Level) PURE; STDMETHOD(AddDirtyRect)(THIS_ D3DCUBEMAP_FACES face, const RECT *dirty_rect) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DCubeTexture8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DCubeTexture8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DCubeTexture8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DCubeTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DCubeTexture8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DCubeTexture8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DCubeTexture8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DCubeTexture8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DCubeTexture8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DCubeTexture8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DCubeTexture8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DCubeTexture8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DCubeTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DCubeTexture8_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DCubeTexture8_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DCubeTexture8_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) /*** IDirect3DCubeTexture8 methods ***/ #define IDirect3DCubeTexture8_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DCubeTexture8_GetCubeMapSurface(p,a,b,c) (p)->lpVtbl->GetCubeMapSurface(p,a,b,c) #define IDirect3DCubeTexture8_LockRect(p,a,b,c,d,e) (p)->lpVtbl->LockRect(p,a,b,c,d,e) #define IDirect3DCubeTexture8_UnlockRect(p,a,b) (p)->lpVtbl->UnlockRect(p,a,b) #define IDirect3DCubeTexture8_AddDirtyRect(p,a,b) (p)->lpVtbl->AddDirtyRect(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DCubeTexture8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DCubeTexture8_AddRef(p) (p)->AddRef() #define IDirect3DCubeTexture8_Release(p) (p)->Release() /*** IDirect3DCubeTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DCubeTexture8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DCubeTexture8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DCubeTexture8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DCubeTexture8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DCubeTexture8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DCubeTexture8_GetPriority(p) (p)->GetPriority() #define IDirect3DCubeTexture8_PreLoad(p) (p)->PreLoad() #define IDirect3DCubeTexture8_GetType(p) (p)->GetType() /*** IDirect3DCubeTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DCubeTexture8_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DCubeTexture8_GetLOD(p) (p)->GetLOD() #define IDirect3DCubeTexture8_GetLevelCount(p) (p)->GetLevelCount() /*** IDirect3DCubeTexture8 methods ***/ #define IDirect3DCubeTexture8_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DCubeTexture8_GetCubeMapSurface(p,a,b,c) (p)->GetCubeMapSurface(a,b,c) #define IDirect3DCubeTexture8_LockRect(p,a,b,c,d,e) (p)->LockRect(a,b,c,d,e) #define IDirect3DCubeTexture8_UnlockRect(p,a,b) (p)->UnlockRect(a,b) #define IDirect3DCubeTexture8_AddDirtyRect(p,a,b) (p)->AddDirtyRect(a,b) #endif /***************************************************************************** * IDirect3DTexture8 interface */ #define INTERFACE IDirect3DTexture8 DECLARE_INTERFACE_(IDirect3DTexture8,IDirect3DBaseTexture8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DBaseTexture8 methods ***/ STDMETHOD_(DWORD,SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD,GetLOD)(THIS) PURE; STDMETHOD_(DWORD,GetLevelCount)(THIS) PURE; /*** IDirect3DTexture8 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC * pDesc) PURE; STDMETHOD(GetSurfaceLevel)(THIS_ UINT Level,IDirect3DSurface8 ** ppSurfaceLevel) PURE; STDMETHOD(LockRect)(THIS_ UINT level, D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS_ UINT Level) PURE; STDMETHOD(AddDirtyRect)(THIS_ const RECT *dirty_rect) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DTexture8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DTexture8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DTexture8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DTexture8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DTexture8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DTexture8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DTexture8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DTexture8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DTexture8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DTexture8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DTexture8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DTexture8_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DTexture8_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DTexture8_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) /*** IDirect3DTexture8 methods ***/ #define IDirect3DTexture8_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DTexture8_GetSurfaceLevel(p,a,b) (p)->lpVtbl->GetSurfaceLevel(p,a,b) #define IDirect3DTexture8_LockRect(p,a,b,c,d) (p)->lpVtbl->LockRect(p,a,b,c,d) #define IDirect3DTexture8_UnlockRect(p,a) (p)->lpVtbl->UnlockRect(p,a) #define IDirect3DTexture8_AddDirtyRect(p,a) (p)->lpVtbl->AddDirtyRect(p,a) #else /*** IUnknown methods ***/ #define IDirect3DTexture8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DTexture8_AddRef(p) (p)->AddRef() #define IDirect3DTexture8_Release(p) (p)->Release() /*** IDirect3DTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DTexture8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DTexture8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DTexture8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DTexture8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DTexture8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DTexture8_GetPriority(p) (p)->GetPriority() #define IDirect3DTexture8_PreLoad(p) (p)->PreLoad() #define IDirect3DTexture8_GetType(p) (p)->GetType() /*** IDirect3DTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DTexture8_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DTexture8_GetLOD(p) (p)->GetLOD() #define IDirect3DTexture8_GetLevelCount(p) (p)->GetLevelCount() /*** IDirect3DTexture8 methods ***/ #define IDirect3DTexture8_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DTexture8_GetSurfaceLevel(p,a,b) (p)->GetSurfaceLevel(a,b) #define IDirect3DTexture8_LockRect(p,a,b,c,d) (p)->LockRect(a,b,c,d) #define IDirect3DTexture8_UnlockRect(p,a) (p)->UnlockRect(a) #define IDirect3DTexture8_AddDirtyRect(p,a) (p)->AddDirtyRect(a) #endif /***************************************************************************** * IDirect3DVolumeTexture8 interface */ #define INTERFACE IDirect3DVolumeTexture8 DECLARE_INTERFACE_(IDirect3DVolumeTexture8,IDirect3DBaseTexture8) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource8 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice8 ** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID refguid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void * pData, DWORD * pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD,SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD,GetPriority)(THIS) PURE; STDMETHOD_(void,PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE,GetType)(THIS) PURE; /*** IDirect3DBaseTexture8 methods ***/ STDMETHOD_(DWORD,SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD,GetLOD)(THIS) PURE; STDMETHOD_(DWORD,GetLevelCount)(THIS) PURE; /*** IDirect3DVolumeTexture8 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DVOLUME_DESC * pDesc) PURE; STDMETHOD(GetVolumeLevel)(THIS_ UINT Level,IDirect3DVolume8 ** ppVolumeLevel) PURE; STDMETHOD(LockBox)(THIS_ UINT level, D3DLOCKED_BOX *locked_box, const D3DBOX *box, DWORD flags) PURE; STDMETHOD(UnlockBox)(THIS_ UINT Level) PURE; STDMETHOD(AddDirtyBox)(THIS_ const D3DBOX *dirty_box) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVolumeTexture8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVolumeTexture8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVolumeTexture8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVolumeTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DVolumeTexture8_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVolumeTexture8_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVolumeTexture8_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVolumeTexture8_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVolumeTexture8_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DVolumeTexture8_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DVolumeTexture8_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DVolumeTexture8_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DVolumeTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DVolumeTexture8_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DVolumeTexture8_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DVolumeTexture8_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) /*** IDirect3DVolumeTexture8 methods ***/ #define IDirect3DVolumeTexture8_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DVolumeTexture8_GetVolumeLevel(p,a,b) (p)->lpVtbl->GetVolumeLevel(p,a,b) #define IDirect3DVolumeTexture8_LockBox(p,a,b,c,d) (p)->lpVtbl->LockBox(p,a,b,c,d) #define IDirect3DVolumeTexture8_UnlockBox(p,a) (p)->lpVtbl->UnlockBox(p,a) #define IDirect3DVolumeTexture8_AddDirtyBox(p,a) (p)->lpVtbl->AddDirtyBox(p,a) #else /*** IUnknown methods ***/ #define IDirect3DVolumeTexture8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVolumeTexture8_AddRef(p) (p)->AddRef() #define IDirect3DVolumeTexture8_Release(p) (p)->Release() /*** IDirect3DVolumeTexture8 methods: IDirect3DResource8 ***/ #define IDirect3DVolumeTexture8_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVolumeTexture8_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVolumeTexture8_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVolumeTexture8_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVolumeTexture8_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DVolumeTexture8_GetPriority(p) (p)->GetPriority() #define IDirect3DVolumeTexture8_PreLoad(p) (p)->PreLoad() #define IDirect3DVolumeTexture8_GetType(p) (p)->GetType() /*** IDirect3DVolumeTexture8 methods: IDirect3DBaseTexture8 ***/ #define IDirect3DVolumeTexture8_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DVolumeTexture8_GetLOD(p) (p)->GetLOD() #define IDirect3DVolumeTexture8_GetLevelCount(p) (p)->GetLevelCount() /*** IDirect3DVolumeTexture8 methods ***/ #define IDirect3DVolumeTexture8_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DVolumeTexture8_GetVolumeLevel(p,a,b) (p)->GetVolumeLevel(a,b) #define IDirect3DVolumeTexture8_LockBox(p,a,b,c,d) (p)->LockBox(a,b,c,d) #define IDirect3DVolumeTexture8_UnlockBox(p,a) (p)->UnlockBox(a) #define IDirect3DVolumeTexture8_AddDirtyBox(p,a) (p)->AddDirtyBox(a) #endif /***************************************************************************** * IDirect3DDevice8 interface */ #define INTERFACE IDirect3DDevice8 DECLARE_INTERFACE_(IDirect3DDevice8,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice8 methods ***/ STDMETHOD(TestCooperativeLevel)(THIS) PURE; STDMETHOD_(UINT,GetAvailableTextureMem)(THIS) PURE; STDMETHOD(ResourceManagerDiscardBytes)(THIS_ DWORD Bytes) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D8 ** ppD3D8) PURE; STDMETHOD(GetDeviceCaps)(THIS_ D3DCAPS8 * pCaps) PURE; STDMETHOD(GetDisplayMode)(THIS_ D3DDISPLAYMODE * pMode) PURE; STDMETHOD(GetCreationParameters)(THIS_ D3DDEVICE_CREATION_PARAMETERS * pParameters) PURE; STDMETHOD(SetCursorProperties)(THIS_ UINT XHotSpot, UINT YHotSpot, IDirect3DSurface8 * pCursorBitmap) PURE; STDMETHOD_(void,SetCursorPosition)(THIS_ UINT XScreenSpace, UINT YScreenSpace,DWORD Flags) PURE; STDMETHOD_(WINBOOL,ShowCursor)(THIS_ WINBOOL bShow) PURE; STDMETHOD(CreateAdditionalSwapChain)(THIS_ D3DPRESENT_PARAMETERS * pPresentationParameters, IDirect3DSwapChain8 ** pSwapChain) PURE; STDMETHOD(Reset)(THIS_ D3DPRESENT_PARAMETERS * pPresentationParameters) PURE; STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT BackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface8 ** ppBackBuffer) PURE; STDMETHOD(GetRasterStatus)(THIS_ D3DRASTER_STATUS * pRasterStatus) PURE; STDMETHOD_(void, SetGammaRamp)(THIS_ DWORD flags, const D3DGAMMARAMP *ramp) PURE; STDMETHOD_(void,GetGammaRamp)(THIS_ D3DGAMMARAMP * pRamp) PURE; STDMETHOD(CreateTexture)(THIS_ UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture8 ** ppTexture) PURE; STDMETHOD(CreateVolumeTexture)(THIS_ UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture8 ** ppVolumeTexture) PURE; STDMETHOD(CreateCubeTexture)(THIS_ UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture8 ** ppCubeTexture) PURE; STDMETHOD(CreateVertexBuffer)(THIS_ UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer8 ** ppVertexBuffer) PURE; STDMETHOD(CreateIndexBuffer)(THIS_ UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer8 ** ppIndexBuffer) PURE; STDMETHOD(CreateRenderTarget)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,WINBOOL Lockable,IDirect3DSurface8 ** ppSurface) PURE; STDMETHOD(CreateDepthStencilSurface)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,IDirect3DSurface8 ** ppSurface) PURE; STDMETHOD(CreateImageSurface)(THIS_ UINT Width,UINT Height,D3DFORMAT Format,IDirect3DSurface8 ** ppSurface) PURE; STDMETHOD(CopyRects)(THIS_ IDirect3DSurface8 *src_surface, const RECT *src_rects, UINT rect_count, IDirect3DSurface8 *dst_surface, const POINT *dst_points) PURE; STDMETHOD(UpdateTexture)(THIS_ IDirect3DBaseTexture8 * pSourceTexture,IDirect3DBaseTexture8 * pDestinationTexture) PURE; STDMETHOD(GetFrontBuffer)(THIS_ IDirect3DSurface8 * pDestSurface) PURE; STDMETHOD(SetRenderTarget)(THIS_ IDirect3DSurface8 * pRenderTarget,IDirect3DSurface8 * pNewZStencil) PURE; STDMETHOD(GetRenderTarget)(THIS_ IDirect3DSurface8 ** ppRenderTarget) PURE; STDMETHOD(GetDepthStencilSurface)(THIS_ IDirect3DSurface8 ** ppZStencilSurface) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(Clear)(THIS_ DWORD rect_count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE State,D3DMATRIX * pMatrix) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(SetViewport)(THIS_ const D3DVIEWPORT8 *viewport) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT8 * pViewport) PURE; STDMETHOD(SetMaterial)(THIS_ const D3DMATERIAL8 *material) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL8 *pMaterial) PURE; STDMETHOD(SetLight)(THIS_ DWORD index, const D3DLIGHT8 *light) PURE; STDMETHOD(GetLight)(THIS_ DWORD Index,D3DLIGHT8 * pLight) PURE; STDMETHOD(LightEnable)(THIS_ DWORD Index,WINBOOL Enable) PURE; STDMETHOD(GetLightEnable)(THIS_ DWORD Index,WINBOOL * pEnable) PURE; STDMETHOD(SetClipPlane)(THIS_ DWORD index, const float *plane) PURE; STDMETHOD(GetClipPlane)(THIS_ DWORD Index,float * pPlane) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE State,DWORD Value) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE State,DWORD * pValue) PURE; STDMETHOD(BeginStateBlock)(THIS) PURE; STDMETHOD(EndStateBlock)(THIS_ DWORD * pToken) PURE; STDMETHOD(ApplyStateBlock)(THIS_ DWORD Token) PURE; STDMETHOD(CaptureStateBlock)(THIS_ DWORD Token) PURE; STDMETHOD(DeleteStateBlock)(THIS_ DWORD Token) PURE; STDMETHOD(CreateStateBlock)(THIS_ D3DSTATEBLOCKTYPE Type,DWORD * pToken) PURE; STDMETHOD(SetClipStatus)(THIS_ const D3DCLIPSTATUS8 *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS8 * pClipStatus) PURE; STDMETHOD(GetTexture)(THIS_ DWORD Stage,IDirect3DBaseTexture8 ** ppTexture) PURE; STDMETHOD(SetTexture)(THIS_ DWORD Stage,IDirect3DBaseTexture8 * pTexture) PURE; STDMETHOD(GetTextureStageState)(THIS_ DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD * pValue) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value) PURE; STDMETHOD(ValidateDevice)(THIS_ DWORD * pNumPasses) PURE; STDMETHOD(GetInfo)(THIS_ DWORD DevInfoID,void * pDevInfoStruct,DWORD DevInfoStructSize) PURE; STDMETHOD(SetPaletteEntries)(THIS_ UINT palette_idx, const PALETTEENTRY *entries) PURE; STDMETHOD(GetPaletteEntries)(THIS_ UINT PaletteNumber,PALETTEENTRY * pEntries) PURE; STDMETHOD(SetCurrentTexturePalette)(THIS_ UINT PaletteNumber) PURE; STDMETHOD(GetCurrentTexturePalette)(THIS_ UINT * PaletteNumber) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE PrimitiveType,UINT minIndex,UINT NumVertices,UINT startIndex,UINT primCount) PURE; STDMETHOD(DrawPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT primitive_count, const void *data, UINT stride) PURE; STDMETHOD(DrawIndexedPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT min_vertex_idx, UINT vertex_count, UINT primitive_count, const void *index_data, D3DFORMAT index_format, const void *data, UINT stride) PURE; STDMETHOD(ProcessVertices)(THIS_ UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer8 * pDestBuffer,DWORD Flags) PURE; STDMETHOD(CreateVertexShader)(THIS_ const DWORD *declaration, const DWORD *byte_code, DWORD *shader, DWORD usage) PURE; STDMETHOD(SetVertexShader)(THIS_ DWORD Handle) PURE; STDMETHOD(GetVertexShader)(THIS_ DWORD * pHandle) PURE; STDMETHOD(DeleteVertexShader)(THIS_ DWORD Handle) PURE; STDMETHOD(SetVertexShaderConstant)(THIS_ DWORD reg_idx, const void *data, DWORD count) PURE; STDMETHOD(GetVertexShaderConstant)(THIS_ DWORD Register,void * pConstantData,DWORD ConstantCount) PURE; STDMETHOD(GetVertexShaderDeclaration)(THIS_ DWORD Handle,void * pData,DWORD * pSizeOfData) PURE; STDMETHOD(GetVertexShaderFunction)(THIS_ DWORD Handle,void * pData,DWORD * pSizeOfData) PURE; STDMETHOD(SetStreamSource)(THIS_ UINT StreamNumber,IDirect3DVertexBuffer8 * pStreamData,UINT Stride) PURE; STDMETHOD(GetStreamSource)(THIS_ UINT StreamNumber,IDirect3DVertexBuffer8 ** ppStreamData,UINT * pStride) PURE; STDMETHOD(SetIndices)(THIS_ IDirect3DIndexBuffer8 * pIndexData,UINT BaseVertexIndex) PURE; STDMETHOD(GetIndices)(THIS_ IDirect3DIndexBuffer8 ** ppIndexData,UINT * pBaseVertexIndex) PURE; STDMETHOD(CreatePixelShader)(THIS_ const DWORD *byte_code, DWORD *shader) PURE; STDMETHOD(SetPixelShader)(THIS_ DWORD Handle) PURE; STDMETHOD(GetPixelShader)(THIS_ DWORD * pHandle) PURE; STDMETHOD(DeletePixelShader)(THIS_ DWORD Handle) PURE; STDMETHOD(SetPixelShaderConstant)(THIS_ DWORD reg_idx, const void *data, DWORD count) PURE; STDMETHOD(GetPixelShaderConstant)(THIS_ DWORD Register,void * pConstantData,DWORD ConstantCount) PURE; STDMETHOD(GetPixelShaderFunction)(THIS_ DWORD Handle,void * pData,DWORD * pSizeOfData) PURE; STDMETHOD(DrawRectPatch)(THIS_ UINT handle, const float *segment_count, const D3DRECTPATCH_INFO *patch_info) PURE; STDMETHOD(DrawTriPatch)(THIS_ UINT handle, const float *segment_count, const D3DTRIPATCH_INFO *patch_info) PURE; STDMETHOD(DeletePatch)(THIS_ UINT Handle) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice8_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice8_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice8_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice8 methods ***/ #define IDirect3DDevice8_TestCooperativeLevel(p) (p)->lpVtbl->TestCooperativeLevel(p) #define IDirect3DDevice8_GetAvailableTextureMem(p) (p)->lpVtbl->GetAvailableTextureMem(p) #define IDirect3DDevice8_ResourceManagerDiscardBytes(p,a) (p)->lpVtbl->ResourceManagerDiscardBytes(p,a) #define IDirect3DDevice8_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice8_GetDeviceCaps(p,a) (p)->lpVtbl->GetDeviceCaps(p,a) #define IDirect3DDevice8_GetDisplayMode(p,a) (p)->lpVtbl->GetDisplayMode(p,a) #define IDirect3DDevice8_GetCreationParameters(p,a) (p)->lpVtbl->GetCreationParameters(p,a) #define IDirect3DDevice8_SetCursorProperties(p,a,b,c) (p)->lpVtbl->SetCursorProperties(p,a,b,c) #define IDirect3DDevice8_SetCursorPosition(p,a,b,c) (p)->lpVtbl->SetCursorPosition(p,a,b,c) #define IDirect3DDevice8_ShowCursor(p,a) (p)->lpVtbl->ShowCursor(p,a) #define IDirect3DDevice8_CreateAdditionalSwapChain(p,a,b) (p)->lpVtbl->CreateAdditionalSwapChain(p,a,b) #define IDirect3DDevice8_Reset(p,a) (p)->lpVtbl->Reset(p,a) #define IDirect3DDevice8_Present(p,a,b,c,d) (p)->lpVtbl->Present(p,a,b,c,d) #define IDirect3DDevice8_GetBackBuffer(p,a,b,c) (p)->lpVtbl->GetBackBuffer(p,a,b,c) #define IDirect3DDevice8_GetRasterStatus(p,a) (p)->lpVtbl->GetRasterStatus(p,a) #define IDirect3DDevice8_SetGammaRamp(p,a,b) (p)->lpVtbl->SetGammaRamp(p,a,b) #define IDirect3DDevice8_GetGammaRamp(p,a) (p)->lpVtbl->GetGammaRamp(p,a) #define IDirect3DDevice8_CreateTexture(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateTexture(p,a,b,c,d,e,f,g) #define IDirect3DDevice8_CreateVolumeTexture(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateVolumeTexture(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice8_CreateCubeTexture(p,a,b,c,d,e,f) (p)->lpVtbl->CreateCubeTexture(p,a,b,c,d,e,f) #define IDirect3DDevice8_CreateVertexBuffer(p,a,b,c,d,e) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e) #define IDirect3DDevice8_CreateIndexBuffer(p,a,b,c,d,e) (p)->lpVtbl->CreateIndexBuffer(p,a,b,c,d,e) #define IDirect3DDevice8_CreateRenderTarget(p,a,b,c,d,e,f) (p)->lpVtbl->CreateRenderTarget(p,a,b,c,d,e,f) #define IDirect3DDevice8_CreateDepthStencilSurface(p,a,b,c,d,e) (p)->lpVtbl->CreateDepthStencilSurface(p,a,b,c,d,e) #define IDirect3DDevice8_CreateImageSurface(p,a,b,c,d) (p)->lpVtbl->CreateImageSurface(p,a,b,c,d) #define IDirect3DDevice8_CopyRects(p,a,b,c,d,e) (p)->lpVtbl->CopyRects(p,a,b,c,d,e) #define IDirect3DDevice8_UpdateTexture(p,a,b) (p)->lpVtbl->UpdateTexture(p,a,b) #define IDirect3DDevice8_GetFrontBuffer(p,a) (p)->lpVtbl->GetFrontBuffer(p,a) #define IDirect3DDevice8_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice8_GetRenderTarget(p,a) (p)->lpVtbl->GetRenderTarget(p,a) #define IDirect3DDevice8_GetDepthStencilSurface(p,a) (p)->lpVtbl->GetDepthStencilSurface(p,a) #define IDirect3DDevice8_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice8_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice8_Clear(p,a,b,c,d,e,f) (p)->lpVtbl->Clear(p,a,b,c,d,e,f) #define IDirect3DDevice8_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice8_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice8_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice8_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DDevice8_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DDevice8_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DDevice8_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DDevice8_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) #define IDirect3DDevice8_GetLight(p,a,b) (p)->lpVtbl->GetLight(p,a,b) #define IDirect3DDevice8_LightEnable(p,a,b) (p)->lpVtbl->LightEnable(p,a,b) #define IDirect3DDevice8_GetLightEnable(p,a,b) (p)->lpVtbl->GetLightEnable(p,a,b) #define IDirect3DDevice8_SetClipPlane(p,a,b) (p)->lpVtbl->SetClipPlane(p,a,b) #define IDirect3DDevice8_GetClipPlane(p,a,b) (p)->lpVtbl->GetClipPlane(p,a,b) #define IDirect3DDevice8_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice8_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice8_BeginStateBlock(p) (p)->lpVtbl->BeginStateBlock(p) #define IDirect3DDevice8_EndStateBlock(p,a) (p)->lpVtbl->EndStateBlock(p,a) #define IDirect3DDevice8_ApplyStateBlock(p,a) (p)->lpVtbl->ApplyStateBlock(p,a) #define IDirect3DDevice8_CaptureStateBlock(p,a) (p)->lpVtbl->CaptureStateBlock(p,a) #define IDirect3DDevice8_DeleteStateBlock(p,a) (p)->lpVtbl->DeleteStateBlock(p,a) #define IDirect3DDevice8_CreateStateBlock(p,a,b) (p)->lpVtbl->CreateStateBlock(p,a,b) #define IDirect3DDevice8_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice8_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #define IDirect3DDevice8_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) #define IDirect3DDevice8_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) #define IDirect3DDevice8_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) #define IDirect3DDevice8_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) #define IDirect3DDevice8_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) #define IDirect3DDevice8_GetInfo(p,a,b,c) (p)->lpVtbl->GetInfo(p,a,b,c) #define IDirect3DDevice8_SetPaletteEntries(p,a,b) (p)->lpVtbl->SetPaletteEntries(p,a,b) #define IDirect3DDevice8_GetPaletteEntries(p,a,b) (p)->lpVtbl->GetPaletteEntries(p,a,b) #define IDirect3DDevice8_SetCurrentTexturePalette(p,a) (p)->lpVtbl->SetCurrentTexturePalette(p,a) #define IDirect3DDevice8_GetCurrentTexturePalette(p,a) (p)->lpVtbl->GetCurrentTexturePalette(p,a) #define IDirect3DDevice8_DrawPrimitive(p,a,b,c) (p)->lpVtbl->DrawPrimitive(p,a,b,c) #define IDirect3DDevice8_DrawIndexedPrimitive(p,a,b,c,d,e) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e) #define IDirect3DDevice8_DrawPrimitiveUP(p,a,b,c,d) (p)->lpVtbl->DrawPrimitiveUP(p,a,b,c,d) #define IDirect3DDevice8_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice8_ProcessVertices(p,a,b,c,d,e) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e) #define IDirect3DDevice8_CreateVertexShader(p,a,b,c,d) (p)->lpVtbl->CreateVertexShader(p,a,b,c,d) #define IDirect3DDevice8_SetVertexShader(p,a) (p)->lpVtbl->SetVertexShader(p,a) #define IDirect3DDevice8_GetVertexShader(p,a) (p)->lpVtbl->GetVertexShader(p,a) #define IDirect3DDevice8_DeleteVertexShader(p,a) (p)->lpVtbl->DeleteVertexShader(p,a) #define IDirect3DDevice8_SetVertexShaderConstant(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstant(p,a,b,c) #define IDirect3DDevice8_GetVertexShaderConstant(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstant(p,a,b,c) #define IDirect3DDevice8_GetVertexShaderDeclaration(p,a,b,c) (p)->lpVtbl->GetVertexShaderDeclaration(p,a,b,c) #define IDirect3DDevice8_GetVertexShaderFunction(p,a,b,c) (p)->lpVtbl->GetVertexShaderFunction(p,a,b,c) #define IDirect3DDevice8_SetStreamSource(p,a,b,c) (p)->lpVtbl->SetStreamSource(p,a,b,c) #define IDirect3DDevice8_GetStreamSource(p,a,b,c) (p)->lpVtbl->GetStreamSource(p,a,b,c) #define IDirect3DDevice8_SetIndices(p,a,b) (p)->lpVtbl->SetIndices(p,a,b) #define IDirect3DDevice8_GetIndices(p,a,b) (p)->lpVtbl->GetIndices(p,a,b) #define IDirect3DDevice8_CreatePixelShader(p,a,b) (p)->lpVtbl->CreatePixelShader(p,a,b) #define IDirect3DDevice8_SetPixelShader(p,a) (p)->lpVtbl->SetPixelShader(p,a) #define IDirect3DDevice8_GetPixelShader(p,a) (p)->lpVtbl->GetPixelShader(p,a) #define IDirect3DDevice8_DeletePixelShader(p,a) (p)->lpVtbl->DeletePixelShader(p,a) #define IDirect3DDevice8_SetPixelShaderConstant(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstant(p,a,b,c) #define IDirect3DDevice8_GetPixelShaderConstant(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstant(p,a,b,c) #define IDirect3DDevice8_GetPixelShaderFunction(p,a,b,c) (p)->lpVtbl->GetPixelShaderFunction(p,a,b,c) #define IDirect3DDevice8_DrawRectPatch(p,a,b,c) (p)->lpVtbl->DrawRectPatch(p,a,b,c) #define IDirect3DDevice8_DrawTriPatch(p,a,b,c) (p)->lpVtbl->DrawTriPatch(p,a,b,c) #define IDirect3DDevice8_DeletePatch(p,a) (p)->lpVtbl->DeletePatch(p,a) #else /*** IUnknown methods ***/ #define IDirect3DDevice8_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice8_AddRef(p) (p)->AddRef() #define IDirect3DDevice8_Release(p) (p)->Release() /*** IDirect3DDevice8 methods ***/ #define IDirect3DDevice8_TestCooperativeLevel(p) (p)->TestCooperativeLevel() #define IDirect3DDevice8_GetAvailableTextureMem(p) (p)->GetAvailableTextureMem() #define IDirect3DDevice8_ResourceManagerDiscardBytes(p,a) (p)->ResourceManagerDiscardBytes(a) #define IDirect3DDevice8_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice8_GetDeviceCaps(p,a) (p)->GetDeviceCaps(a) #define IDirect3DDevice8_GetDisplayMode(p,a) (p)->GetDisplayMode(a) #define IDirect3DDevice8_GetCreationParameters(p,a) (p)->GetCreationParameters(a) #define IDirect3DDevice8_SetCursorProperties(p,a,b,c) (p)->SetCursorProperties(a,b,c) #define IDirect3DDevice8_SetCursorPosition(p,a,b,c) (p)->SetCursorPosition(a,b,c) #define IDirect3DDevice8_ShowCursor(p,a) (p)->ShowCursor(a) #define IDirect3DDevice8_CreateAdditionalSwapChain(p,a,b) (p)->CreateAdditionalSwapChain(a,b) #define IDirect3DDevice8_Reset(p,a) (p)->Reset(a) #define IDirect3DDevice8_Present(p,a,b,c,d) (p)->Present(a,b,c,d) #define IDirect3DDevice8_GetBackBuffer(p,a,b,c) (p)->GetBackBuffer(a,b,c) #define IDirect3DDevice8_GetRasterStatus(p,a) (p)->GetRasterStatus(a) #define IDirect3DDevice8_SetGammaRamp(p,a,b) (p)->SetGammaRamp(a,b) #define IDirect3DDevice8_GetGammaRamp(p,a) (p)->GetGammaRamp(a) #define IDirect3DDevice8_CreateTexture(p,a,b,c,d,e,f,g) (p)->CreateTexture(a,b,c,d,e,f,g) #define IDirect3DDevice8_CreateVolumeTexture(p,a,b,c,d,e,f,g,h) (p)->CreateVolumeTexture(a,b,c,d,e,f,g,h) #define IDirect3DDevice8_CreateCubeTexture(p,a,b,c,d,e,f) (p)->CreateCubeTexture(a,b,c,d,e,f) #define IDirect3DDevice8_CreateVertexBuffer(p,a,b,c,d,e) (p)->CreateVertexBuffer(a,b,c,d,e) #define IDirect3DDevice8_CreateIndexBuffer(p,a,b,c,d,e) (p)->CreateIndexBuffer(a,b,c,d,e) #define IDirect3DDevice8_CreateRenderTarget(p,a,b,c,d,e,f) (p)->CreateRenderTarget(a,b,c,d,e,f) #define IDirect3DDevice8_CreateDepthStencilSurface(p,a,b,c,d,e) (p)->CreateDepthStencilSurface(a,b,c,d,e) #define IDirect3DDevice8_CreateImageSurface(p,a,b,c,d) (p)->CreateImageSurface(a,b,c,d) #define IDirect3DDevice8_CopyRects(p,a,b,c,d,e) (p)->CopyRects(a,b,c,d,e) #define IDirect3DDevice8_UpdateTexture(p,a,b) (p)->UpdateTexture(a,b) #define IDirect3DDevice8_GetFrontBuffer(p,a) (p)->GetFrontBuffer(a) #define IDirect3DDevice8_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice8_GetRenderTarget(p,a) (p)->GetRenderTarget(a) #define IDirect3DDevice8_GetDepthStencilSurface(p,a) (p)->GetDepthStencilSurface(a) #define IDirect3DDevice8_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice8_EndScene(p) (p)->EndScene() #define IDirect3DDevice8_Clear(p,a,b,c,d,e,f) (p)->Clear(a,b,c,d,e,f) #define IDirect3DDevice8_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice8_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice8_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice8_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DDevice8_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DDevice8_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DDevice8_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DDevice8_SetLight(p,a,b) (p)->SetLight(a,b) #define IDirect3DDevice8_GetLight(p,a,b) (p)->GetLight(a,b) #define IDirect3DDevice8_LightEnable(p,a,b) (p)->LightEnable(a,b) #define IDirect3DDevice8_GetLightEnable(p,a,b) (p)->GetLightEnable(a,b) #define IDirect3DDevice8_SetClipPlane(p,a,b) (p)->SetClipPlane(a,b) #define IDirect3DDevice8_GetClipPlane(p,a,b) (p)->GetClipPlane(a,b) #define IDirect3DDevice8_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice8_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice8_BeginStateBlock(p) (p)->BeginStateBlock() #define IDirect3DDevice8_EndStateBlock(p,a) (p)->EndStateBlock(a) #define IDirect3DDevice8_ApplyStateBlock(p,a) (p)->ApplyStateBlock(a) #define IDirect3DDevice8_CaptureStateBlock(p,a) (p)->CaptureStateBlock(a) #define IDirect3DDevice8_DeleteStateBlock(p,a) (p)->DeleteStateBlock(a) #define IDirect3DDevice8_CreateStateBlock(p,a,b) (p)->CreateStateBlock(a,b) #define IDirect3DDevice8_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice8_GetClipStatus(p,a) (p)->GetClipStatus(a) #define IDirect3DDevice8_GetTexture(p,a,b) (p)->GetTexture(a,b) #define IDirect3DDevice8_SetTexture(p,a,b) (p)->SetTexture(a,b) #define IDirect3DDevice8_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) #define IDirect3DDevice8_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) #define IDirect3DDevice8_ValidateDevice(p,a) (p)->ValidateDevice(a) #define IDirect3DDevice8_GetInfo(p,a,b,c) (p)->GetInfo(a,b,c) #define IDirect3DDevice8_SetPaletteEntries(p,a,b) (p)->SetPaletteEntries(a,b) #define IDirect3DDevice8_GetPaletteEntries(p,a,b) (p)->GetPaletteEntries(a,b) #define IDirect3DDevice8_SetCurrentTexturePalette(p,a) (p)->SetCurrentTexturePalette(a) #define IDirect3DDevice8_GetCurrentTexturePalette(p,a) (p)->GetCurrentTexturePalette(a) #define IDirect3DDevice8_DrawPrimitive(p,a,b,c) (p)->DrawPrimitive(a,b,c) #define IDirect3DDevice8_DrawIndexedPrimitive(p,a,b,c,d,e) (p)->DrawIndexedPrimitive(a,b,c,d,e) #define IDirect3DDevice8_DrawPrimitiveUP(p,a,b,c,d) (p)->DrawPrimitiveUP(a,b,c,d) #define IDirect3DDevice8_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->DrawIndexedPrimitiveUP(a,b,c,d,e,f,g,h) #define IDirect3DDevice8_ProcessVertices(p,a,b,c,d,e) (p)->processVertices(a,b,c,d,e) #define IDirect3DDevice8_CreateVertexShader(p,a,b,c,d) (p)->CreateVertexShader(a,b,c,d) #define IDirect3DDevice8_SetVertexShader(p,a) (p)->SetVertexShader(a) #define IDirect3DDevice8_GetVertexShader(p,a) (p)->GetVertexShader(a) #define IDirect3DDevice8_DeleteVertexShader(p,a) (p)->DeleteVertexShader(a) #define IDirect3DDevice8_SetVertexShaderConstant(p,a,b,c) (p)->SetVertexShaderConstant(a,b,c) #define IDirect3DDevice8_GetVertexShaderConstant(p,a,b,c) (p)->GetVertexShaderConstant(a,b,c) #define IDirect3DDevice8_GetVertexShaderDeclaration(p,a,b,c) (p)->GetVertexShaderDeclaration(a,b,c) #define IDirect3DDevice8_GetVertexShaderFunction(p,a,b,c) (p)->GetVertexShaderFunction(a,b,c) #define IDirect3DDevice8_SetStreamSource(p,a,b,c) (p)->SetStreamSource(a,b,c) #define IDirect3DDevice8_GetStreamSource(p,a,b,c) (p)->GetStreamSource(a,b,c) #define IDirect3DDevice8_SetIndices(p,a,b) (p)->SetIndices(a,b) #define IDirect3DDevice8_GetIndices(p,a,b) (p)->GetIndices(a,b) #define IDirect3DDevice8_CreatePixelShader(p,a,b) (p)->CreatePixelShader(a,b) #define IDirect3DDevice8_SetPixelShader(p,a) (p)->SetPixelShader(a) #define IDirect3DDevice8_GetPixelShader(p,a) (p)->GetPixelShader(a) #define IDirect3DDevice8_DeletePixelShader(p,a) (p)->DeletePixelShader(a) #define IDirect3DDevice8_SetPixelShaderConstant(p,a,b,c) (p)->SetPixelShaderConstant(a,b,c) #define IDirect3DDevice8_GetPixelShaderConstant(p,a,b,c) (p)->GetPixelShaderConstant(a,b,c) #define IDirect3DDevice8_GetPixelShaderFunction(p,a,b,c) (p)->GetPixelShaderFunction(a,b,c) #define IDirect3DDevice8_DrawRectPatch(p,a,b,c) (p)->DrawRectPatch(a,b,c) #define IDirect3DDevice8_DrawTriPatch(p,a,b,c) (p)->DrawTriPatch(a,b,c) #define IDirect3DDevice8_DeletePatch(p,a) (p)->DeletePatch(a) #endif #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ /* Define the main entrypoint as well */ IDirect3D8* WINAPI Direct3DCreate8(UINT SDKVersion); #ifdef __cplusplus } /* extern "C" */ #endif /* defined(__cplusplus) */ #endif /* __WINE_D3D8_H */ dxvk-0~git20220822.9df86f2/d3d8caps.h000066400000000000000000000307351430055512200165710ustar00rootroot00000000000000/* * Copyright (C) 2002 Jason Edmeades * * 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 */ #ifndef __WINE_D3D8CAPS_H #define __WINE_D3D8CAPS_H #ifdef __i386__ #include #endif /* * Definitions */ #define D3DCAPS_READ_SCANLINE 0x20000 #define D3DCURSORCAPS_COLOR 1 #define D3DCURSORCAPS_LOWRES 2 #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x0000010 #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x0000020 #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x0000040 #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x0000080 #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x0000100 #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x0000200 #define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x0000400 #define D3DDEVCAPS_CANRENDERAFTERFLIP 0x0000800 #define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x0001000 #define D3DDEVCAPS_DRAWPRIMITIVES2 0x0002000 #define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x0004000 #define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x0008000 #define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x0010000 #define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x0020000 #define D3DDEVCAPS_HWRASTERIZATION 0x0080000 #define D3DDEVCAPS_PUREDEVICE 0x0100000 #define D3DDEVCAPS_QUINTICRTPATCHES 0x0200000 #define D3DDEVCAPS_RTPATCHES 0x0400000 #define D3DDEVCAPS_RTPATCHHANDLEZERO 0x0800000 #define D3DDEVCAPS_NPATCHES 0x1000000 #define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x00FFFF #define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x080000 #define D3DFVFCAPS_PSIZE 0x100000 #define D3DLINECAPS_TEXTURE 0x01 #define D3DLINECAPS_ZTEST 0x02 #define D3DLINECAPS_BLEND 0x04 #define D3DLINECAPS_ALPHACMP 0x08 #define D3DLINECAPS_FOG 0x10 #define D3DPBLENDCAPS_ZERO 0x0001 #define D3DPBLENDCAPS_ONE 0x0002 #define D3DPBLENDCAPS_SRCCOLOR 0x0004 #define D3DPBLENDCAPS_INVSRCCOLOR 0x0008 #define D3DPBLENDCAPS_SRCALPHA 0x0010 #define D3DPBLENDCAPS_INVSRCALPHA 0x0020 #define D3DPBLENDCAPS_DESTALPHA 0x0040 #define D3DPBLENDCAPS_INVDESTALPHA 0x0080 #define D3DPBLENDCAPS_DESTCOLOR 0x0100 #define D3DPBLENDCAPS_INVDESTCOLOR 0x0200 #define D3DPBLENDCAPS_SRCALPHASAT 0x0400 #define D3DPBLENDCAPS_BOTHSRCALPHA 0x0800 #define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x1000 #define D3DPCMPCAPS_NEVER 0x01 #define D3DPCMPCAPS_LESS 0x02 #define D3DPCMPCAPS_EQUAL 0x04 #define D3DPCMPCAPS_LESSEQUAL 0x08 #define D3DPCMPCAPS_GREATER 0x10 #define D3DPCMPCAPS_NOTEQUAL 0x20 #define D3DPCMPCAPS_GREATEREQUAL 0x40 #define D3DPCMPCAPS_ALWAYS 0x80 #define D3DPMISCCAPS_MASKZ __MSABI_LONG(0x00000002) #define D3DPMISCCAPS_LINEPATTERNREP __MSABI_LONG(0x00000004) #define D3DPMISCCAPS_CULLNONE __MSABI_LONG(0x00000010) #define D3DPMISCCAPS_CULLCW __MSABI_LONG(0x00000020) #define D3DPMISCCAPS_CULLCCW __MSABI_LONG(0x00000040) #define D3DPMISCCAPS_COLORWRITEENABLE __MSABI_LONG(0x00000080) #define D3DPMISCCAPS_CLIPPLANESCALEDPOINTS __MSABI_LONG(0x00000100) #define D3DPMISCCAPS_CLIPTLVERTS __MSABI_LONG(0x00000200) #define D3DPMISCCAPS_TSSARGTEMP __MSABI_LONG(0x00000400) #define D3DPMISCCAPS_BLENDOP __MSABI_LONG(0x00000800) #define D3DPMISCCAPS_NULLREFERENCE __MSABI_LONG(0x00001000) #define D3DPRASTERCAPS_DITHER 0x00000001 #define D3DPRASTERCAPS_PAT 0x00000008 #define D3DPRASTERCAPS_ZTEST 0x00000010 #define D3DPRASTERCAPS_FOGVERTEX 0x00000080 #define D3DPRASTERCAPS_FOGTABLE 0x00000100 #define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000 #define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000 #define D3DPRASTERCAPS_ZBIAS 0x00004000 #define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000 #define D3DPRASTERCAPS_FOGRANGE 0x00010000 #define D3DPRASTERCAPS_ANISOTROPY 0x00020000 #define D3DPRASTERCAPS_WBUFFER 0x00040000 #define D3DPRASTERCAPS_WFOG 0x00100000 #define D3DPRASTERCAPS_ZFOG 0x00200000 #define D3DPRASTERCAPS_COLORPERSPECTIVE 0x00400000 #define D3DPRASTERCAPS_STRETCHBLTMULTISAMPLE 0x00800000 #define D3DPRESENT_INTERVAL_DEFAULT 0x00000000 #define D3DPRESENT_INTERVAL_ONE 0x00000001 #define D3DPRESENT_INTERVAL_TWO 0x00000002 #define D3DPRESENT_INTERVAL_THREE 0x00000004 #define D3DPRESENT_INTERVAL_FOUR 0x00000008 #define D3DPRESENT_INTERVAL_IMMEDIATE 0x80000000 #define D3DPSHADECAPS_COLORGOURAUDRGB 0x00008 #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00200 #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x04000 #define D3DPSHADECAPS_FOGGOURAUD 0x80000 #define D3DPTADDRESSCAPS_WRAP 0x01 #define D3DPTADDRESSCAPS_MIRROR 0x02 #define D3DPTADDRESSCAPS_CLAMP 0x04 #define D3DPTADDRESSCAPS_BORDER 0x08 #define D3DPTADDRESSCAPS_INDEPENDENTUV 0x10 #define D3DPTADDRESSCAPS_MIRRORONCE 0x20 #define D3DPTEXTURECAPS_PERSPECTIVE 0x00001 #define D3DPTEXTURECAPS_POW2 0x00002 #define D3DPTEXTURECAPS_ALPHA 0x00004 #define D3DPTEXTURECAPS_SQUAREONLY 0x00020 #define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00040 #define D3DPTEXTURECAPS_ALPHAPALETTE 0x00080 #define D3DPTEXTURECAPS_NONPOW2CONDITIONAL 0x00100 #define D3DPTEXTURECAPS_PROJECTED 0x00400 #define D3DPTEXTURECAPS_CUBEMAP 0x00800 #define D3DPTEXTURECAPS_VOLUMEMAP 0x02000 #define D3DPTEXTURECAPS_MIPMAP 0x04000 #define D3DPTEXTURECAPS_MIPVOLUMEMAP 0x08000 #define D3DPTEXTURECAPS_MIPCUBEMAP 0x10000 #define D3DPTEXTURECAPS_CUBEMAP_POW2 0x20000 #define D3DPTEXTURECAPS_VOLUMEMAP_POW2 0x40000 #define D3DPTFILTERCAPS_MINFPOINT 0x00000100 #define D3DPTFILTERCAPS_MINFLINEAR 0x00000200 #define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400 #define D3DPTFILTERCAPS_MIPFPOINT 0x00010000 #define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000 #define D3DPTFILTERCAPS_MAGFPOINT 0x01000000 #define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000 #define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000 #define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000 #define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000 #define D3DSTENCILCAPS_KEEP 0x01 #define D3DSTENCILCAPS_ZERO 0x02 #define D3DSTENCILCAPS_REPLACE 0x04 #define D3DSTENCILCAPS_INCRSAT 0x08 #define D3DSTENCILCAPS_DECRSAT 0x10 #define D3DSTENCILCAPS_INVERT 0x20 #define D3DSTENCILCAPS_INCR 0x40 #define D3DSTENCILCAPS_DECR 0x80 #define D3DTEXOPCAPS_DISABLE 0x0000001 #define D3DTEXOPCAPS_SELECTARG1 0x0000002 #define D3DTEXOPCAPS_SELECTARG2 0x0000004 #define D3DTEXOPCAPS_MODULATE 0x0000008 #define D3DTEXOPCAPS_MODULATE2X 0x0000010 #define D3DTEXOPCAPS_MODULATE4X 0x0000020 #define D3DTEXOPCAPS_ADD 0x0000040 #define D3DTEXOPCAPS_ADDSIGNED 0x0000080 #define D3DTEXOPCAPS_ADDSIGNED2X 0x0000100 #define D3DTEXOPCAPS_SUBTRACT 0x0000200 #define D3DTEXOPCAPS_ADDSMOOTH 0x0000400 #define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x0000800 #define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x0001000 #define D3DTEXOPCAPS_BLENDFACTORALPHA 0x0002000 #define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x0004000 #define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x0008000 #define D3DTEXOPCAPS_PREMODULATE 0x0010000 #define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x0020000 #define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x0040000 #define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x0080000 #define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x0100000 #define D3DTEXOPCAPS_BUMPENVMAP 0x0200000 #define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x0400000 #define D3DTEXOPCAPS_DOTPRODUCT3 0x0800000 #define D3DTEXOPCAPS_MULTIPLYADD 0x1000000 #define D3DTEXOPCAPS_LERP 0x2000000 #define D3DVTXPCAPS_TEXGEN __MSABI_LONG(0x00000001) #define D3DVTXPCAPS_MATERIALSOURCE7 __MSABI_LONG(0x00000002) #define D3DVTXPCAPS_DIRECTIONALLIGHTS __MSABI_LONG(0x00000008) #define D3DVTXPCAPS_POSITIONALLIGHTS __MSABI_LONG(0x00000010) #define D3DVTXPCAPS_LOCALVIEWER __MSABI_LONG(0x00000020) #define D3DVTXPCAPS_TWEENING __MSABI_LONG(0x00000040) #define D3DVTXPCAPS_NO_VSDT_UBYTE4 __MSABI_LONG(0x00000080) #define D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD 0x00000020 #define D3DCAPS3_RESERVED 0x8000001f #define D3DCAPS2_CANCALIBRATEGAMMA 0x0100000 #define D3DCAPS2_CANRENDERWINDOWED 0x0080000 #define D3DCAPS2_CANMANAGERESOURCE 0x10000000 #define D3DCAPS2_DYNAMICTEXTURES 0x20000000 #define D3DCAPS2_FULLSCREENGAMMA 0x0020000 #define D3DCAPS2_NO2DDURING3DSCENE 0x0000002 #define D3DCAPS2_RESERVED 0x2000000 /* * The d3dcaps8 structure */ 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, 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; #ifdef __i386__ #include #endif #endif /* __WINE_D3D8CAPS_H */ dxvk-0~git20220822.9df86f2/d3d8types.h000066400000000000000000001145661430055512200170140ustar00rootroot00000000000000/* * Copyright (C) 2002 Jason Edmeades * * 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 */ #ifndef __WINE_D3D8TYPES_H #define __WINE_D3D8TYPES_H #ifdef __i386__ #include #endif /***************************************************************************** * Direct 3D v8 #defines */ #define D3DCLEAR_TARGET 1 #define D3DCLEAR_ZBUFFER 2 #define D3DCLEAR_STENCIL 4 #define D3DCLIPPLANE0 (1 << 0) #define D3DCLIPPLANE1 (1 << 1) #define D3DCLIPPLANE2 (1 << 2) #define D3DCLIPPLANE3 (1 << 3) #define D3DCLIPPLANE4 (1 << 4) #define D3DCLIPPLANE5 (1 << 5) #define D3DCOLOR_ARGB(a,r,g,b) ((D3DCOLOR)((((a)&0xffu)<<24)|(((r)&0xffu)<<16)|(((g)&0xffu)<<8)|((b)&0xffu))) #define D3DCOLOR_COLORVALUE(r,g,b,a) D3DCOLOR_RGBA((DWORD)((r)*255.f),(DWORD)((g)*255.f),(DWORD)((b)*255.f),(DWORD)((a)*255.f)) #define D3DCOLOR_RGBA(r,g,b,a) D3DCOLOR_ARGB(a,r,g,b) #define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b) #define D3DCS_LEFT 0x001 #define D3DCS_RIGHT 0x002 #define D3DCS_TOP 0x004 #define D3DCS_BOTTOM 0x008 #define D3DCS_FRONT 0x010 #define D3DCS_BACK 0x020 #define D3DCS_PLANE0 0x040 #define D3DCS_PLANE1 0x080 #define D3DCS_PLANE2 0x100 #define D3DCS_PLANE3 0x200 #define D3DCS_PLANE4 0x400 #define D3DCS_PLANE5 0x800 #define D3DCS_ALL 0xFFF #define D3DFVF_TEXTUREFORMAT1 3 #define D3DFVF_TEXTUREFORMAT2 0 #define D3DFVF_TEXTUREFORMAT3 1 #define D3DFVF_TEXTUREFORMAT4 2 #define D3DFVF_TEXCOORDSIZE1(CoordIndex) (D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE2(CoordIndex) (D3DFVF_TEXTUREFORMAT2) #define D3DFVF_TEXCOORDSIZE3(CoordIndex) (D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE4(CoordIndex) (D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16)) #define D3DLOCK_READONLY 0x0010 #define D3DLOCK_NOSYSLOCK 0x0800 #define D3DLOCK_NOOVERWRITE 0x1000 #define D3DLOCK_DISCARD 0x2000 #define D3DLOCK_NO_DIRTY_UPDATE 0x8000 #define D3DMAXUSERCLIPPLANES 32 #define D3DRENDERSTATE_WRAPBIAS 0x80 #define D3DTSS_TCI_PASSTHRU 0x00000 #define D3DTSS_TCI_CAMERASPACENORMAL 0x10000 #define D3DTSS_TCI_CAMERASPACEPOSITION 0x20000 #define D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR 0x30000 #define D3DTS_WORLD D3DTS_WORLDMATRIX(0) #define D3DTS_WORLD1 D3DTS_WORLDMATRIX(1) #define D3DTS_WORLD2 D3DTS_WORLDMATRIX(2) #define D3DTS_WORLD3 D3DTS_WORLDMATRIX(3) #define D3DTS_WORLDMATRIX(index) (D3DTRANSFORMSTATETYPE)(index + 256) #define D3DUSAGE_RENDERTARGET 0x01 #define D3DUSAGE_DEPTHSTENCIL 0x02 #define D3DUSAGE_WRITEONLY 0x08 #define D3DUSAGE_SOFTWAREPROCESSING 0x10 #define D3DUSAGE_DONOTCLIP 0x20 #define D3DUSAGE_POINTS 0x40 #define D3DUSAGE_RTPATCHES 0x80 #define D3DUSAGE_NPATCHES 0x100 #define D3DUSAGE_DYNAMIC 0x200 #define D3DWRAP_U 1 #define D3DWRAP_V 2 #define D3DWRAP_W 4 #define D3DWRAPCOORD_0 1 #define D3DWRAPCOORD_1 2 #define D3DWRAPCOORD_2 4 #define D3DWRAPCOORD_3 8 #define MAX_DEVICE_IDENTIFIER_STRING 512 #define D3DFVF_RESERVED0 0x0001 #define D3DFVF_POSITION_MASK 0x000E #define D3DFVF_XYZ 0x0002 #define D3DFVF_XYZRHW 0x0004 #define D3DFVF_XYZB1 0x0006 #define D3DFVF_XYZB2 0x0008 #define D3DFVF_XYZB3 0x000a #define D3DFVF_XYZB4 0x000c #define D3DFVF_XYZB5 0x000e #define D3DFVF_NORMAL 0x0010 #define D3DFVF_PSIZE 0x0020 #define D3DFVF_DIFFUSE 0x0040 #define D3DFVF_SPECULAR 0x0080 #define D3DFVF_TEXCOUNT_MASK 0x0f00 #define D3DFVF_TEXCOUNT_SHIFT 8 #define D3DFVF_TEX0 0x0000 #define D3DFVF_TEX1 0x0100 #define D3DFVF_TEX2 0x0200 #define D3DFVF_TEX3 0x0300 #define D3DFVF_TEX4 0x0400 #define D3DFVF_TEX5 0x0500 #define D3DFVF_TEX6 0x0600 #define D3DFVF_TEX7 0x0700 #define D3DFVF_TEX8 0x0800 #define D3DFVF_LASTBETA_UBYTE4 0x1000 #define D3DFVF_RESERVED2 0xE000 #define D3DTA_SELECTMASK 0x0000000f #define D3DTA_DIFFUSE 0x00000000 #define D3DTA_CURRENT 0x00000001 #define D3DTA_TEXTURE 0x00000002 #define D3DTA_TFACTOR 0x00000003 #define D3DTA_SPECULAR 0x00000004 #define D3DTA_COMPLEMENT 0x00000010 #define D3DTA_ALPHAREPLICATE 0x00000020 #define D3DTA_TEMP 0x00000005 #define D3DCOLORWRITEENABLE_RED (__MSABI_LONG(1)<<0) #define D3DCOLORWRITEENABLE_GREEN (__MSABI_LONG(1)<<1) #define D3DCOLORWRITEENABLE_BLUE (__MSABI_LONG(1)<<2) #define D3DCOLORWRITEENABLE_ALPHA (__MSABI_LONG(1)<<3) #ifndef MAKEFOURCC #define MAKEFOURCC(ch0, ch1, ch2, ch3) \ ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \ ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 )) #endif /**************************** * Vertex Shaders Declaration */ typedef enum _D3DVSD_TOKENTYPE { D3DVSD_TOKEN_NOP = 0, D3DVSD_TOKEN_STREAM = 1, D3DVSD_TOKEN_STREAMDATA = 2, D3DVSD_TOKEN_TESSELLATOR = 3, D3DVSD_TOKEN_CONSTMEM = 4, D3DVSD_TOKEN_EXT = 5, /* RESERVED = 6 */ D3DVSD_TOKEN_END = 7, D3DVSD_FORCE_DWORD = 0x7FFFFFFF } D3DVSD_TOKENTYPE; /** input registers for vertex shaders functions */ /* #define D3DVSDE_POSITION 0 #define D3DVSDE_BLENDWEIGHT 1 #define D3DVSDE_BLENDINDICES 2 #define D3DVSDE_NORMAL 3 #define D3DVSDE_PSIZE 4 #define D3DVSDE_DIFFUSE 5 #define D3DVSDE_SPECULAR 6 #define D3DVSDE_TEXCOORD0 7 #define D3DVSDE_TEXCOORD1 8 #define D3DVSDE_TEXCOORD2 9 #define D3DVSDE_TEXCOORD3 10 #define D3DVSDE_TEXCOORD4 11 #define D3DVSDE_TEXCOORD5 12 #define D3DVSDE_TEXCOORD6 13 #define D3DVSDE_TEXCOORD7 14 #define D3DVSDE_POSITION2 15 #define D3DVSDE_NORMAL2 16 */ /** Address of the vertex register. 0 - 16 */ typedef enum _D3DVSDE_REGISTER { D3DVSDE_POSITION = 0, D3DVSDE_BLENDWEIGHT = 1, D3DVSDE_BLENDINDICES = 2, D3DVSDE_NORMAL = 3, D3DVSDE_PSIZE = 4, D3DVSDE_DIFFUSE = 5, D3DVSDE_SPECULAR = 6, D3DVSDE_TEXCOORD0 = 7, D3DVSDE_TEXCOORD1 = 8, D3DVSDE_TEXCOORD2 = 9, D3DVSDE_TEXCOORD3 = 10, D3DVSDE_TEXCOORD4 = 11, D3DVSDE_TEXCOORD5 = 12, D3DVSDE_TEXCOORD6 = 13, D3DVSDE_TEXCOORD7 = 14, D3DVSDE_POSITION2 = 15, D3DVSDE_NORMAL2 = 16 } D3DVSDE_REGISTER; /** bit-field declaration for VertexRegister Type */ /* #define D3DVSDT_FLOAT1 0x00 #define D3DVSDT_FLOAT2 0x01 #define D3DVSDT_FLOAT3 0x02 #define D3DVSDT_FLOAT4 0x03 #define D3DVSDT_D3DCOLOR 0x04 #define D3DVSDT_UBYTE4 0x05 #define D3DVSDT_SHORT2 0x06 #define D3DVSDT_SHORT4 0x07 */ typedef enum _D3DVSDT_TYPE { D3DVSDT_FLOAT1 = 0x00, D3DVSDT_FLOAT2 = 0x01, D3DVSDT_FLOAT3 = 0x02, D3DVSDT_FLOAT4 = 0x03, D3DVSDT_D3DCOLOR = 0x04, D3DVSDT_UBYTE4 = 0x05, D3DVSDT_SHORT2 = 0x06, D3DVSDT_SHORT4 = 0x07 } D3DVSDT_TYPE; #define D3DVSD_CONSTADDRESSSHIFT 0 #define D3DVSD_EXTINFOSHIFT 0 #define D3DVSD_STREAMNUMBERSHIFT 0 #define D3DVSD_VERTEXREGSHIFT 0 #define D3DVSD_CONSTRSSHIFT 16 #define D3DVSD_DATATYPESHIFT 16 #define D3DVSD_SKIPCOUNTSHIFT 16 #define D3DVSD_VERTEXREGINSHIFT 20 #define D3DVSD_EXTCOUNTSHIFT 24 #define D3DVSD_CONSTCOUNTSHIFT 25 #define D3DVSD_DATALOADTYPESHIFT 28 #define D3DVSD_STREAMTESSSHIFT 28 #define D3DVSD_TOKENTYPESHIFT 29 #define D3DVSD_CONSTADDRESSMASK (0x7F << D3DVSD_CONSTADDRESSSHIFT) #define D3DVSD_EXTINFOMASK (0xFFFFFF << D3DVSD_EXTINFOSHIFT) #define D3DVSD_STREAMNUMBERMASK (0xF << D3DVSD_STREAMNUMBERSHIFT) #define D3DVSD_VERTEXREGMASK (0x1F << D3DVSD_VERTEXREGSHIFT) #define D3DVSD_CONSTRSMASK (0x1FFF << D3DVSD_CONSTRSSHIFT) #define D3DVSD_DATATYPEMASK (0xF << D3DVSD_DATATYPESHIFT) #define D3DVSD_SKIPCOUNTMASK (0xF << D3DVSD_SKIPCOUNTSHIFT) #define D3DVSD_EXTCOUNTMASK (0x1F << D3DVSD_EXTCOUNTSHIFT) #define D3DVSD_VERTEXREGINMASK (0xF << D3DVSD_VERTEXREGINSHIFT) #define D3DVSD_CONSTCOUNTMASK (0xF << D3DVSD_CONSTCOUNTSHIFT) #define D3DVSD_DATALOADTYPEMASK (0x1 << D3DVSD_DATALOADTYPESHIFT) #define D3DVSD_STREAMTESSMASK (0x1 << D3DVSD_STREAMTESSSHIFT) #define D3DVSD_TOKENTYPEMASK (0x7u << D3DVSD_TOKENTYPESHIFT) #define D3DVSD_MAKETOKENTYPE(TokenType) \ (((unsigned)TokenType << D3DVSD_TOKENTYPESHIFT) & D3DVSD_TOKENTYPEMASK) #define D3DVSD_CONST(ConstantAddress, Count) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_CONSTMEM) | ((Count) << D3DVSD_CONSTCOUNTSHIFT) | (ConstantAddress)) #define D3DVSD_END() 0xFFFFFFFF #define D3DVSD_NOP() 0x00000000 #define D3DVSD_REG(VertexRegister, Type) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | ((Type) << D3DVSD_DATATYPESHIFT) | (VertexRegister)) #define D3DVSD_SKIP(Count) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | 0x10000000 | ((Count) << D3DVSD_SKIPCOUNTSHIFT)) #define D3DVSD_STREAM(StreamNumber) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (StreamNumber)) #define D3DVSD_STREAM_TESS() \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (D3DVSD_STREAMTESSMASK)) #define D3DVSD_TESSNORMAL(RegisterIn, RegisterOut) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | ((RegisterIn) << D3DVSD_VERTEXREGINSHIFT) | ((0x02) << D3DVSD_DATATYPESHIFT) | (RegisterOut)) #define D3DVSD_TESSUV(Register) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | 0x10000000 | ((0x01) << D3DVSD_DATATYPESHIFT) | (Register)) /******************************** * Pixel/Vertex Shaders Functions */ /** Maximum number of supported texture coordinates sets operation */ #define D3DDP_MAXTEXCOORD 8 /** opcode token mask */ #define D3DSI_OPCODE_MASK 0x0000FFFF /** opcodes types for PS and VS */ typedef enum _D3DSHADER_INSTRUCTION_OPCODE_TYPE { D3DSIO_NOP = 0, D3DSIO_MOV = 1, D3DSIO_ADD = 2, D3DSIO_SUB = 3, D3DSIO_MAD = 4, D3DSIO_MUL = 5, D3DSIO_RCP = 6, D3DSIO_RSQ = 7, D3DSIO_DP3 = 8, D3DSIO_DP4 = 9, D3DSIO_MIN = 10, D3DSIO_MAX = 11, D3DSIO_SLT = 12, D3DSIO_SGE = 13, D3DSIO_EXP = 14, D3DSIO_LOG = 15, D3DSIO_LIT = 16, D3DSIO_DST = 17, D3DSIO_LRP = 18, D3DSIO_FRC = 19, D3DSIO_M4x4 = 20, D3DSIO_M4x3 = 21, D3DSIO_M3x4 = 22, D3DSIO_M3x3 = 23, D3DSIO_M3x2 = 24, D3DSIO_TEXCOORD = 64, D3DSIO_TEXKILL = 65, D3DSIO_TEX = 66, D3DSIO_TEXBEM = 67, D3DSIO_TEXBEML = 68, D3DSIO_TEXREG2AR = 69, D3DSIO_TEXREG2GB = 70, D3DSIO_TEXM3x2PAD = 71, D3DSIO_TEXM3x2TEX = 72, D3DSIO_TEXM3x3PAD = 73, D3DSIO_TEXM3x3TEX = 74, D3DSIO_TEXM3x3DIFF = 75, D3DSIO_TEXM3x3SPEC = 76, D3DSIO_TEXM3x3VSPEC = 77, D3DSIO_EXPP = 78, D3DSIO_LOGP = 79, D3DSIO_CND = 80, D3DSIO_DEF = 81, D3DSIO_TEXREG2RGB = 82, D3DSIO_TEXDP3TEX = 83, D3DSIO_TEXM3x2DEPTH = 84, D3DSIO_TEXDP3 = 85, D3DSIO_TEXM3x3 = 86, D3DSIO_TEXDEPTH = 87, D3DSIO_CMP = 88, D3DSIO_BEM = 89, D3DSIO_PHASE = 0xFFFD, D3DSIO_COMMENT = 0xFFFE, D3DSIO_END = 0XFFFF, D3DSIO_FORCE_DWORD = 0X7FFFFFFF /** for 32-bit alignment */ } D3DSHADER_INSTRUCTION_OPCODE_TYPE; /** for parallelism */ #define D3DSI_COISSUE 0x40000000 /** destination parameter modifiers (.xyzw) */ #define D3DSP_WRITEMASK_0 0x00010000 /* .x r */ #define D3DSP_WRITEMASK_1 0x00020000 /* .y g */ #define D3DSP_WRITEMASK_2 0x00040000 /* .z b */ #define D3DSP_WRITEMASK_3 0x00080000 /* .w a */ #define D3DSP_WRITEMASK_ALL 0x000F0000 /* all */ #define D3DSP_DSTMOD_SHIFT 20 #define D3DSP_DSTMOD_MASK (0xF << D3DSP_DSTMOD_SHIFT) typedef enum _D3DSHADER_PARAM_DSTMOD_TYPE { D3DSPDM_NONE = 0 << D3DSP_DSTMOD_SHIFT, D3DSPDM_SATURATE = 1 << D3DSP_DSTMOD_SHIFT, D3DSPDM_FORCE_DWORD = 0X7FFFFFFF } D3DSHADER_PARAM_DSTMOD_TYPE; /** destination param */ #define D3DSP_DSTSHIFT_SHIFT 24 #define D3DSP_DSTSHIFT_MASK (0xF << D3DSP_DSTSHIFT_SHIFT) /** destination/source reg type */ #define D3DSP_REGTYPE_SHIFT 28 #define D3DSP_REGTYPE_MASK (0x7 << D3DSP_REGTYPE_SHIFT) typedef enum _D3DSHADER_PARAM_REGISTER_TYPE { D3DSPR_TEMP = 0 << D3DSP_REGTYPE_SHIFT, D3DSPR_INPUT = 1 << D3DSP_REGTYPE_SHIFT, D3DSPR_CONST = 2 << D3DSP_REGTYPE_SHIFT, D3DSPR_ADDR = 3 << D3DSP_REGTYPE_SHIFT, D3DSPR_TEXTURE = 3 << D3DSP_REGTYPE_SHIFT, D3DSPR_RASTOUT = 4 << D3DSP_REGTYPE_SHIFT, D3DSPR_ATTROUT = 5 << D3DSP_REGTYPE_SHIFT, D3DSPR_TEXCRDOUT = 6 << D3DSP_REGTYPE_SHIFT, D3DSPR_FORCE_DWORD = 0x7FFFFFFF } D3DSHADER_PARAM_REGISTER_TYPE; typedef enum _D3DVS_RASTOUT_OFFSETS { D3DSRO_POSITION = 0, D3DSRO_FOG = 1, D3DSRO_POINT_SIZE = 2, D3DSRO_FORCE_DWORD = 0x7FFFFFFF } D3DVS_RASTOUT_OFFSETS; #define D3DVS_ADDRESSMODE_SHIFT 13 #define D3DVS_ADDRESSMODE_MASK (0x1 << D3DVS_ADDRESSMODE_SHIFT) typedef enum _D3DVS_ADDRESSMODE_TYPE { D3DVS_ADDRMODE_ABSOLUTE = 0 << D3DVS_ADDRESSMODE_SHIFT, D3DVS_ADDRMODE_RELATIVE = 1 << D3DVS_ADDRESSMODE_SHIFT, D3DVS_ADDRMODE_FORCE_DWORD = 0x7FFFFFFF } D3DVS_ADDRESSMODE_TYPE; #define D3DVS_SWIZZLE_SHIFT 16 #define D3DVS_SWIZZLE_MASK (0xFF << D3DVS_SWIZZLE_SHIFT) #define D3DSP_SWIZZLE_SHIFT 16 #define D3DSP_SWIZZLE_MASK (0xFF << D3DSP_SWIZZLE_SHIFT) #define D3DVS_X_X (0 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_Y (1 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_Z (2 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_W (3 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_Y_X (0 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_Y (1 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_Z (2 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_W (3 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Z_X (0 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_Y (1 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_Z (2 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_W (3 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_W_X (0 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_Y (1 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_Z (2 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_W (3 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_NOSWIZZLE (D3DVS_X_X | D3DVS_Y_Y | D3DVS_Z_Z | D3DVS_W_W) #define D3DSP_NOSWIZZLE \ ((0 << (D3DSP_SWIZZLE_SHIFT + 0)) | (1 << (D3DSP_SWIZZLE_SHIFT + 2)) | (2 << (D3DSP_SWIZZLE_SHIFT + 4)) | (3 << (D3DSP_SWIZZLE_SHIFT + 6))) #define D3DSP_SRCMOD_SHIFT 24 #define D3DSP_SRCMOD_MASK (0xF << D3DSP_SRCMOD_SHIFT) typedef enum _D3DSHADER_PARAM_SRCMOD_TYPE { D3DSPSM_NONE = 0 << D3DSP_SRCMOD_SHIFT, D3DSPSM_NEG = 1 << D3DSP_SRCMOD_SHIFT, D3DSPSM_BIAS = 2 << D3DSP_SRCMOD_SHIFT, D3DSPSM_BIASNEG = 3 << D3DSP_SRCMOD_SHIFT, D3DSPSM_SIGN = 4 << D3DSP_SRCMOD_SHIFT, D3DSPSM_SIGNNEG = 5 << D3DSP_SRCMOD_SHIFT, D3DSPSM_COMP = 6 << D3DSP_SRCMOD_SHIFT, D3DSPSM_X2 = 7 << D3DSP_SRCMOD_SHIFT, D3DSPSM_X2NEG = 8 << D3DSP_SRCMOD_SHIFT, D3DSPSM_DZ = 9 << D3DSP_SRCMOD_SHIFT, D3DSPSM_DW = 10 << D3DSP_SRCMOD_SHIFT, D3DSPSM_FORCE_DWORD = 0x7FFFFFFF } D3DSHADER_PARAM_SRCMOD_TYPE; #define D3DPS_VERSION(major, minor) (0xFFFF0000 | ((major) << 8) | (minor)) #define D3DVS_VERSION(major, minor) (0xFFFE0000 | ((major) << 8) | (minor)) #define D3DSHADER_VERSION_MAJOR(version) (((version) >> 8) & 0xFF) #define D3DSHADER_VERSION_MINOR(version) (((version) >> 0) & 0xFF) #define D3DSI_COMMENTSIZE_SHIFT 16 #define D3DSI_COMMENTSIZE_MASK (0x7FFF << D3DSI_COMMENTSIZE_SHIFT) #define D3DSHADER_COMMENT(commentSize) \ ((((commentSize) << D3DSI_COMMENTSIZE_SHIFT) & D3DSI_COMMENTSIZE_MASK) | D3DSIO_COMMENT) #define D3DPS_END() 0x0000FFFF #define D3DVS_END() 0x0000FFFF /***************************************************************************** * Direct 3D v8 enumerated types */ typedef enum _D3DBACKBUFFER_TYPE { D3DBACKBUFFER_TYPE_MONO = 0, D3DBACKBUFFER_TYPE_LEFT = 1, D3DBACKBUFFER_TYPE_RIGHT = 2, D3DBACKBUFFER_TYPE_FORCE_DWORD = 0x7fffffff } D3DBACKBUFFER_TYPE; typedef enum _D3DBASISTYPE{ D3DBASIS_BEZIER = 0, D3DBASIS_BSPLINE = 1, D3DBASIS_INTERPOLATE = 2, D3DBASIS_FORCE_DWORD = 0x7fffffff } D3DBASISTYPE; typedef enum _D3DBLEND { D3DBLEND_ZERO = 1, D3DBLEND_ONE = 2, D3DBLEND_SRCCOLOR = 3, D3DBLEND_INVSRCCOLOR = 4, D3DBLEND_SRCALPHA = 5, D3DBLEND_INVSRCALPHA = 6, D3DBLEND_DESTALPHA = 7, D3DBLEND_INVDESTALPHA = 8, D3DBLEND_DESTCOLOR = 9, D3DBLEND_INVDESTCOLOR = 10, D3DBLEND_SRCALPHASAT = 11, D3DBLEND_BOTHSRCALPHA = 12, D3DBLEND_BOTHINVSRCALPHA = 13, D3DBLEND_FORCE_DWORD = 0x7fffffff } D3DBLEND; typedef enum _D3DBLENDOP { D3DBLENDOP_ADD = 1, D3DBLENDOP_SUBTRACT = 2, D3DBLENDOP_REVSUBTRACT = 3, D3DBLENDOP_MIN = 4, D3DBLENDOP_MAX = 5, D3DBLENDOP_FORCE_DWORD = 0x7fffffff } D3DBLENDOP; typedef enum _D3DCMPFUNC { D3DCMP_NEVER = 1, D3DCMP_LESS = 2, D3DCMP_EQUAL = 3, D3DCMP_LESSEQUAL = 4, D3DCMP_GREATER = 5, D3DCMP_NOTEQUAL = 6, D3DCMP_GREATEREQUAL = 7, D3DCMP_ALWAYS = 8, D3DCMP_FORCE_DWORD = 0x7fffffff } D3DCMPFUNC; typedef enum _D3DCUBEMAP_FACES { D3DCUBEMAP_FACE_POSITIVE_X = 0, D3DCUBEMAP_FACE_NEGATIVE_X = 1, D3DCUBEMAP_FACE_POSITIVE_Y = 2, D3DCUBEMAP_FACE_NEGATIVE_Y = 3, D3DCUBEMAP_FACE_POSITIVE_Z = 4, D3DCUBEMAP_FACE_NEGATIVE_Z = 5, D3DCUBEMAP_FACE_FORCE_DWORD = 0xffffffff } D3DCUBEMAP_FACES; typedef enum _D3DCULL { D3DCULL_NONE = 1, D3DCULL_CW = 2, D3DCULL_CCW = 3, D3DCULL_FORCE_DWORD = 0x7fffffff } D3DCULL; typedef enum _D3DDEBUGMONITORTOKENS { D3DDMT_ENABLE = 0, D3DDMT_DISABLE = 1, D3DDMT_FORCE_DWORD = 0x7fffffff } D3DDEBUGMONITORTOKENS; typedef enum _D3DDEVTYPE { D3DDEVTYPE_HAL = 1, D3DDEVTYPE_REF = 2, D3DDEVTYPE_SW = 3, D3DDEVTYPE_FORCE_DWORD = 0xffffffff } D3DDEVTYPE; typedef enum _D3DFILLMODE { D3DFILL_POINT = 1, D3DFILL_WIREFRAME = 2, D3DFILL_SOLID = 3, D3DFILL_FORCE_DWORD = 0x7fffffff } D3DFILLMODE; typedef enum _D3DFOGMODE { D3DFOG_NONE = 0, D3DFOG_EXP = 1, D3DFOG_EXP2 = 2, D3DFOG_LINEAR = 3, D3DFOG_FORCE_DWORD = 0x7fffffff } D3DFOGMODE; typedef enum _D3DFORMAT { D3DFMT_UNKNOWN = 0, D3DFMT_R8G8B8 = 20, D3DFMT_A8R8G8B8 = 21, D3DFMT_X8R8G8B8 = 22, D3DFMT_R5G6B5 = 23, D3DFMT_X1R5G5B5 = 24, D3DFMT_A1R5G5B5 = 25, D3DFMT_A4R4G4B4 = 26, D3DFMT_R3G3B2 = 27, D3DFMT_A8 = 28, D3DFMT_A8R3G3B2 = 29, D3DFMT_X4R4G4B4 = 30, D3DFMT_A2B10G10R10 = 31, D3DFMT_G16R16 = 34, D3DFMT_A8P8 = 40, D3DFMT_P8 = 41, D3DFMT_L8 = 50, D3DFMT_A8L8 = 51, D3DFMT_A4L4 = 52, D3DFMT_V8U8 = 60, D3DFMT_L6V5U5 = 61, D3DFMT_X8L8V8U8 = 62, D3DFMT_Q8W8V8U8 = 63, D3DFMT_V16U16 = 64, D3DFMT_W11V11U10 = 65, D3DFMT_A2W10V10U10 = 67, D3DFMT_UYVY = MAKEFOURCC('U', 'Y', 'V', 'Y'), D3DFMT_YUY2 = MAKEFOURCC('Y', 'U', 'Y', '2'), D3DFMT_DXT1 = MAKEFOURCC('D', 'X', 'T', '1'), D3DFMT_DXT2 = MAKEFOURCC('D', 'X', 'T', '2'), D3DFMT_DXT3 = MAKEFOURCC('D', 'X', 'T', '3'), D3DFMT_DXT4 = MAKEFOURCC('D', 'X', 'T', '4'), D3DFMT_DXT5 = MAKEFOURCC('D', 'X', 'T', '5'), D3DFMT_D16_LOCKABLE = 70, D3DFMT_D32 = 71, D3DFMT_D15S1 = 73, D3DFMT_D24S8 = 75, D3DFMT_D16 = 80, D3DFMT_D24X8 = 77, D3DFMT_D24X4S4 = 79, D3DFMT_VERTEXDATA = 100, D3DFMT_INDEX16 = 101, D3DFMT_INDEX32 = 102, D3DFMT_FORCE_DWORD = 0xFFFFFFFF } D3DFORMAT; typedef enum _D3DLIGHTTYPE { D3DLIGHT_POINT = 1, D3DLIGHT_SPOT = 2, D3DLIGHT_DIRECTIONAL = 3, D3DLIGHT_FORCE_DWORD = 0x7fffffff } D3DLIGHTTYPE; typedef enum _D3DMATERIALCOLORSOURCE { D3DMCS_MATERIAL = 0, D3DMCS_COLOR1 = 1, D3DMCS_COLOR2 = 2, D3DMCS_FORCE_DWORD = 0x7fffffff } D3DMATERIALCOLORSOURCE; typedef enum _D3DMULTISAMPLE_TYPE { D3DMULTISAMPLE_NONE = 0, D3DMULTISAMPLE_2_SAMPLES = 2, D3DMULTISAMPLE_3_SAMPLES = 3, D3DMULTISAMPLE_4_SAMPLES = 4, D3DMULTISAMPLE_5_SAMPLES = 5, D3DMULTISAMPLE_6_SAMPLES = 6, D3DMULTISAMPLE_7_SAMPLES = 7, D3DMULTISAMPLE_8_SAMPLES = 8, D3DMULTISAMPLE_9_SAMPLES = 9, D3DMULTISAMPLE_10_SAMPLES = 10, D3DMULTISAMPLE_11_SAMPLES = 11, D3DMULTISAMPLE_12_SAMPLES = 12, D3DMULTISAMPLE_13_SAMPLES = 13, D3DMULTISAMPLE_14_SAMPLES = 14, D3DMULTISAMPLE_15_SAMPLES = 15, D3DMULTISAMPLE_16_SAMPLES = 16, D3DMULTISAMPLE_FORCE_DWORD = 0x7fffffff } D3DMULTISAMPLE_TYPE; typedef enum _D3DORDERTYPE { D3DORDER_LINEAR = 1, D3DORDER_QUADRATIC = 2, D3DORDER_CUBIC = 3, D3DORDER_QUINTIC = 5, D3DORDER_FORCE_DWORD = 0x7fffffff } D3DORDERTYPE; typedef enum _D3DPATCHEDGESTYLE { D3DPATCHEDGE_DISCRETE = 0, D3DPATCHEDGE_CONTINUOUS = 1, D3DPATCHEDGE_FORCE_DWORD = 0x7fffffff, } D3DPATCHEDGESTYLE; typedef enum _D3DPOOL { D3DPOOL_DEFAULT = 0, D3DPOOL_MANAGED = 1, D3DPOOL_SYSTEMMEM = 2, D3DPOOL_SCRATCH = 3, D3DPOOL_FORCE_DWORD = 0x7fffffff } D3DPOOL; typedef enum _D3DPRIMITIVETYPE { D3DPT_POINTLIST = 1, D3DPT_LINELIST = 2, D3DPT_LINESTRIP = 3, D3DPT_TRIANGLELIST = 4, D3DPT_TRIANGLESTRIP = 5, D3DPT_TRIANGLEFAN = 6, D3DPT_FORCE_DWORD = 0x7fffffff } D3DPRIMITIVETYPE; typedef enum _D3DRENDERSTATETYPE { D3DRS_ZENABLE = 7, D3DRS_FILLMODE = 8, D3DRS_SHADEMODE = 9, D3DRS_LINEPATTERN = 10, D3DRS_ZWRITEENABLE = 14, D3DRS_ALPHATESTENABLE = 15, D3DRS_LASTPIXEL = 16, D3DRS_SRCBLEND = 19, D3DRS_DESTBLEND = 20, D3DRS_CULLMODE = 22, D3DRS_ZFUNC = 23, D3DRS_ALPHAREF = 24, D3DRS_ALPHAFUNC = 25, D3DRS_DITHERENABLE = 26, D3DRS_ALPHABLENDENABLE = 27, D3DRS_FOGENABLE = 28, D3DRS_SPECULARENABLE = 29, D3DRS_ZVISIBLE = 30, D3DRS_FOGCOLOR = 34, D3DRS_FOGTABLEMODE = 35, D3DRS_FOGSTART = 36, D3DRS_FOGEND = 37, D3DRS_FOGDENSITY = 38, D3DRS_EDGEANTIALIAS = 40, D3DRS_ZBIAS = 47, D3DRS_RANGEFOGENABLE = 48, D3DRS_STENCILENABLE = 52, D3DRS_STENCILFAIL = 53, D3DRS_STENCILZFAIL = 54, D3DRS_STENCILPASS = 55, D3DRS_STENCILFUNC = 56, D3DRS_STENCILREF = 57, D3DRS_STENCILMASK = 58, D3DRS_STENCILWRITEMASK = 59, D3DRS_TEXTUREFACTOR = 60, D3DRS_WRAP0 = 128, D3DRS_WRAP1 = 129, D3DRS_WRAP2 = 130, D3DRS_WRAP3 = 131, D3DRS_WRAP4 = 132, D3DRS_WRAP5 = 133, D3DRS_WRAP6 = 134, D3DRS_WRAP7 = 135, D3DRS_CLIPPING = 136, D3DRS_LIGHTING = 137, D3DRS_AMBIENT = 139, D3DRS_FOGVERTEXMODE = 140, D3DRS_COLORVERTEX = 141, D3DRS_LOCALVIEWER = 142, D3DRS_NORMALIZENORMALS = 143, D3DRS_DIFFUSEMATERIALSOURCE = 145, D3DRS_SPECULARMATERIALSOURCE = 146, D3DRS_AMBIENTMATERIALSOURCE = 147, D3DRS_EMISSIVEMATERIALSOURCE = 148, D3DRS_VERTEXBLEND = 151, D3DRS_CLIPPLANEENABLE = 152, D3DRS_SOFTWAREVERTEXPROCESSING = 153, D3DRS_POINTSIZE = 154, D3DRS_POINTSIZE_MIN = 155, D3DRS_POINTSPRITEENABLE = 156, D3DRS_POINTSCALEENABLE = 157, D3DRS_POINTSCALE_A = 158, D3DRS_POINTSCALE_B = 159, D3DRS_POINTSCALE_C = 160, D3DRS_MULTISAMPLEANTIALIAS = 161, D3DRS_MULTISAMPLEMASK = 162, D3DRS_PATCHEDGESTYLE = 163, D3DRS_PATCHSEGMENTS = 164, D3DRS_DEBUGMONITORTOKEN = 165, D3DRS_POINTSIZE_MAX = 166, D3DRS_INDEXEDVERTEXBLENDENABLE = 167, D3DRS_COLORWRITEENABLE = 168, D3DRS_TWEENFACTOR = 170, D3DRS_BLENDOP = 171, D3DRS_POSITIONORDER = 172, D3DRS_NORMALORDER = 173, D3DRS_FORCE_DWORD = 0x7fffffff } D3DRENDERSTATETYPE; typedef enum _D3DRESOURCETYPE { D3DRTYPE_SURFACE = 1, D3DRTYPE_VOLUME = 2, D3DRTYPE_TEXTURE = 3, D3DRTYPE_VOLUMETEXTURE = 4, D3DRTYPE_CUBETEXTURE = 5, D3DRTYPE_VERTEXBUFFER = 6, D3DRTYPE_INDEXBUFFER = 7, D3DRTYPE_FORCE_DWORD = 0x7fffffff } D3DRESOURCETYPE; typedef enum _D3DSHADEMODE { D3DSHADE_FLAT = 1, D3DSHADE_GOURAUD = 2, D3DSHADE_PHONG = 3, D3DSHADE_FORCE_DWORD = 0x7fffffff } D3DSHADEMODE; typedef enum _D3DSTATEBLOCKTYPE { D3DSBT_ALL = 1, D3DSBT_PIXELSTATE = 2, D3DSBT_VERTEXSTATE = 3, D3DSBT_FORCE_DWORD = 0xffffffff } D3DSTATEBLOCKTYPE; typedef enum _D3DSTENCILOP { D3DSTENCILOP_KEEP = 1, D3DSTENCILOP_ZERO = 2, D3DSTENCILOP_REPLACE = 3, D3DSTENCILOP_INCRSAT = 4, D3DSTENCILOP_DECRSAT = 5, D3DSTENCILOP_INVERT = 6, D3DSTENCILOP_INCR = 7, D3DSTENCILOP_DECR = 8, D3DSTENCILOP_FORCE_DWORD = 0x7fffffff } D3DSTENCILOP; typedef enum _D3DSWAPEFFECT { D3DSWAPEFFECT_DISCARD = 1, D3DSWAPEFFECT_FLIP = 2, D3DSWAPEFFECT_COPY = 3, D3DSWAPEFFECT_COPY_VSYNC = 4, D3DSWAPEFFECT_FORCE_DWORD = 0xFFFFFFFF } D3DSWAPEFFECT; typedef enum _D3DTEXTUREADDRESS { D3DTADDRESS_WRAP = 1, D3DTADDRESS_MIRROR = 2, D3DTADDRESS_CLAMP = 3, D3DTADDRESS_BORDER = 4, D3DTADDRESS_MIRRORONCE = 5, D3DTADDRESS_FORCE_DWORD = 0x7fffffff } D3DTEXTUREADDRESS; typedef enum _D3DTEXTUREFILTERTYPE { D3DTEXF_NONE = 0, D3DTEXF_POINT = 1, D3DTEXF_LINEAR = 2, D3DTEXF_ANISOTROPIC = 3, D3DTEXF_FLATCUBIC = 4, D3DTEXF_GAUSSIANCUBIC = 5, D3DTEXF_FORCE_DWORD = 0x7fffffff } D3DTEXTUREFILTERTYPE; typedef enum _D3DTEXTUREOP { D3DTOP_DISABLE = 1, D3DTOP_SELECTARG1 = 2, D3DTOP_SELECTARG2 = 3, D3DTOP_MODULATE = 4, D3DTOP_MODULATE2X = 5, D3DTOP_MODULATE4X = 6, D3DTOP_ADD = 7, D3DTOP_ADDSIGNED = 8, D3DTOP_ADDSIGNED2X = 9, D3DTOP_SUBTRACT = 10, D3DTOP_ADDSMOOTH = 11, D3DTOP_BLENDDIFFUSEALPHA = 12, D3DTOP_BLENDTEXTUREALPHA = 13, D3DTOP_BLENDFACTORALPHA = 14, D3DTOP_BLENDTEXTUREALPHAPM = 15, D3DTOP_BLENDCURRENTALPHA = 16, D3DTOP_PREMODULATE = 17, D3DTOP_MODULATEALPHA_ADDCOLOR = 18, D3DTOP_MODULATECOLOR_ADDALPHA = 19, D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20, D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21, D3DTOP_BUMPENVMAP = 22, D3DTOP_BUMPENVMAPLUMINANCE = 23, D3DTOP_DOTPRODUCT3 = 24, D3DTOP_MULTIPLYADD = 25, D3DTOP_LERP = 26, D3DTOP_FORCE_DWORD = 0x7fffffff, } D3DTEXTUREOP; typedef enum _D3DTEXTURESTAGESTATETYPE { D3DTSS_COLOROP = 1, D3DTSS_COLORARG1 = 2, D3DTSS_COLORARG2 = 3, D3DTSS_ALPHAOP = 4, D3DTSS_ALPHAARG1 = 5, D3DTSS_ALPHAARG2 = 6, D3DTSS_BUMPENVMAT00 = 7, D3DTSS_BUMPENVMAT01 = 8, D3DTSS_BUMPENVMAT10 = 9, D3DTSS_BUMPENVMAT11 = 10, D3DTSS_TEXCOORDINDEX = 11, D3DTSS_ADDRESSU = 13, D3DTSS_ADDRESSV = 14, D3DTSS_BORDERCOLOR = 15, D3DTSS_MAGFILTER = 16, D3DTSS_MINFILTER = 17, D3DTSS_MIPFILTER = 18, D3DTSS_MIPMAPLODBIAS = 19, D3DTSS_MAXMIPLEVEL = 20, D3DTSS_MAXANISOTROPY = 21, D3DTSS_BUMPENVLSCALE = 22, D3DTSS_BUMPENVLOFFSET = 23, D3DTSS_TEXTURETRANSFORMFLAGS = 24, D3DTSS_ADDRESSW = 25, D3DTSS_COLORARG0 = 26, D3DTSS_ALPHAARG0 = 27, D3DTSS_RESULTARG = 28, D3DTSS_FORCE_DWORD = 0x7fffffff } D3DTEXTURESTAGESTATETYPE; typedef enum _D3DTEXTURETRANSFORMFLAGS { D3DTTFF_DISABLE = 0, D3DTTFF_COUNT1 = 1, D3DTTFF_COUNT2 = 2, D3DTTFF_COUNT3 = 3, D3DTTFF_COUNT4 = 4, D3DTTFF_PROJECTED = 256, D3DTTFF_FORCE_DWORD = 0x7fffffff } D3DTEXTURETRANSFORMFLAGS; typedef enum _D3DTRANSFORMSTATETYPE { D3DTS_VIEW = 2, D3DTS_PROJECTION = 3, D3DTS_TEXTURE0 = 16, D3DTS_TEXTURE1 = 17, D3DTS_TEXTURE2 = 18, D3DTS_TEXTURE3 = 19, D3DTS_TEXTURE4 = 20, D3DTS_TEXTURE5 = 21, D3DTS_TEXTURE6 = 22, D3DTS_TEXTURE7 = 23, D3DTS_FORCE_DWORD = 0x7fffffff } D3DTRANSFORMSTATETYPE; typedef enum _D3DVERTEXBLENDFLAGS { D3DVBF_DISABLE = 0, D3DVBF_1WEIGHTS = 1, D3DVBF_2WEIGHTS = 2, D3DVBF_3WEIGHTS = 3, D3DVBF_TWEENING = 255, D3DVBF_0WEIGHTS = 256 } D3DVERTEXBLENDFLAGS; typedef enum _D3DZBUFFERTYPE { D3DZB_FALSE = 0, D3DZB_TRUE = 1, D3DZB_USEW = 2, D3DZB_FORCE_DWORD = 0x7fffffff } D3DZBUFFERTYPE; /***************************************************************************** * Direct 3D v8 typedefs */ typedef DWORD D3DCOLOR; /***************************************************************************** * Direct 3D v8 structures */ typedef struct _D3DADAPTER_IDENTIFIER8 { char Driver[MAX_DEVICE_IDENTIFIER_STRING]; char Description[MAX_DEVICE_IDENTIFIER_STRING]; LARGE_INTEGER DriverVersion; DWORD VendorId; DWORD DeviceId; DWORD SubSysId; DWORD Revision; GUID DeviceIdentifier; DWORD WHQLLevel; } D3DADAPTER_IDENTIFIER8; typedef struct _D3DBOX { UINT Left; UINT Top; UINT Right; UINT Bottom; UINT Front; UINT Back; } D3DBOX; typedef struct _D3DCLIPSTATUS8 { DWORD ClipUnion; DWORD ClipIntersection; } D3DCLIPSTATUS8; typedef struct _D3DCOLORVALUE { float r; float g; float b; float a; } D3DCOLORVALUE; typedef struct _D3DDEVICE_CREATION_PARAMETERS { UINT AdapterOrdinal; D3DDEVTYPE DeviceType; HWND hFocusWindow; DWORD BehaviorFlags; } D3DDEVICE_CREATION_PARAMETERS; typedef struct _D3DDISPLAYMODE { UINT Width; UINT Height; UINT RefreshRate; D3DFORMAT Format; } D3DDISPLAYMODE; typedef struct _D3DGAMMARAMP { WORD red [256]; WORD green[256]; WORD blue [256]; } D3DGAMMARAMP; typedef struct _D3DINDEXBUFFER_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; } D3DINDEXBUFFER_DESC; #ifndef D3DVECTOR_DEFINED typedef struct _D3DVECTOR { float x; float y; float z; } D3DVECTOR; #define D3DVECTOR_DEFINED #endif typedef struct _D3DLIGHT8 { D3DLIGHTTYPE Type; D3DCOLORVALUE Diffuse; D3DCOLORVALUE Specular; D3DCOLORVALUE Ambient; D3DVECTOR Position; D3DVECTOR Direction; float Range; float Falloff; float Attenuation0; float Attenuation1; float Attenuation2; float Theta; float Phi; } D3DLIGHT8; typedef struct _D3DLINEPATTERN { WORD wRepeatFactor; WORD wLinePattern; } D3DLINEPATTERN; typedef struct _D3DLOCKED_BOX { INT RowPitch; INT SlicePitch; void* pBits; } D3DLOCKED_BOX; typedef struct _D3DLOCKED_RECT { INT Pitch; void* pBits; } D3DLOCKED_RECT; typedef struct _D3DMATERIAL8 { D3DCOLORVALUE Diffuse; D3DCOLORVALUE Ambient; D3DCOLORVALUE Specular; D3DCOLORVALUE Emissive; float Power; } D3DMATERIAL8; typedef struct _D3DMATRIX { union { struct { float _11, _12, _13, _14; float _21, _22, _23, _24; float _31, _32, _33, _34; float _41, _42, _43, _44; } DUMMYSTRUCTNAME; float m[4][4]; } DUMMYUNIONNAME; } D3DMATRIX; typedef struct _D3DPRESENT_PARAMETERS_ { UINT BackBufferWidth; UINT BackBufferHeight; D3DFORMAT BackBufferFormat; UINT BackBufferCount; D3DMULTISAMPLE_TYPE MultiSampleType; D3DSWAPEFFECT SwapEffect; HWND hDeviceWindow; WINBOOL Windowed; WINBOOL EnableAutoDepthStencil; D3DFORMAT AutoDepthStencilFormat; DWORD Flags; UINT FullScreen_RefreshRateInHz; UINT FullScreen_PresentationInterval; } D3DPRESENT_PARAMETERS; #define D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 typedef struct _D3DRANGE { UINT Offset; UINT Size; } D3DRANGE; typedef struct _D3DRASTER_STATUS { WINBOOL InVBlank; UINT ScanLine; } D3DRASTER_STATUS; typedef struct _D3DRECT { LONG x1; LONG y1; LONG x2; LONG y2; } D3DRECT; typedef struct _D3DRECTPATCH_INFO { UINT StartVertexOffsetWidth; UINT StartVertexOffsetHeight; UINT Width; UINT Height; UINT Stride; D3DBASISTYPE Basis; D3DORDERTYPE Order; } D3DRECTPATCH_INFO; typedef struct _D3DSURFACE_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; D3DMULTISAMPLE_TYPE MultiSampleType; UINT Width; UINT Height; } D3DSURFACE_DESC; typedef struct _D3DTRIPATCH_INFO { UINT StartVertexOffset; UINT NumVertices; D3DBASISTYPE Basis; D3DORDERTYPE Order; } D3DTRIPATCH_INFO; typedef struct _D3DVERTEXBUFFER_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; DWORD FVF; } D3DVERTEXBUFFER_DESC; typedef struct _D3DVIEWPORT8 { DWORD X; DWORD Y; DWORD Width; DWORD Height; float MinZ; float MaxZ; } D3DVIEWPORT8; typedef struct _D3DVOLUME_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; UINT Width; UINT Height; UINT Depth; } D3DVOLUME_DESC; #ifdef __i386__ #include #endif #endif /* __WINE_D3D8TYPES_H */ dxvk-0~git20220822.9df86f2/d3d9.h000066400000000000000000004734761430055512200157400ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2002-2003 Jason Edmeades * Raphael Junqueira * * 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 */ #ifndef _D3D9_H_ #define _D3D9_H_ #ifndef DIRECT3D_VERSION #define DIRECT3D_VERSION 0x0900 #endif #include #define COM_NO_WINDOWS_H #include #include #include #include /***************************************************************************** * Behavior Flags for IDirect3D8::CreateDevice */ #define D3DCREATE_FPU_PRESERVE __MSABI_LONG(0x00000002) #define D3DCREATE_MULTITHREADED __MSABI_LONG(0x00000004) #define D3DCREATE_PUREDEVICE __MSABI_LONG(0x00000010) #define D3DCREATE_SOFTWARE_VERTEXPROCESSING __MSABI_LONG(0x00000020) #define D3DCREATE_HARDWARE_VERTEXPROCESSING __MSABI_LONG(0x00000040) #define D3DCREATE_MIXED_VERTEXPROCESSING __MSABI_LONG(0x00000080) #define D3DCREATE_DISABLE_DRIVER_MANAGEMENT __MSABI_LONG(0x00000100) #define D3DCREATE_ADAPTERGROUP_DEVICE __MSABI_LONG(0x00000200) #define D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX __MSABI_LONG(0x00000400) #define D3DCREATE_NOWINDOWCHANGES __MSABI_LONG(0x00000800) #define D3DCREATE_DISABLE_PSGP_THREADING __MSABI_LONG(0x00002000) #define D3DCREATE_ENABLE_PRESENTSTATS __MSABI_LONG(0x00004000) #define D3DCREATE_DISABLE_PRINTSCREEN __MSABI_LONG(0x00008000) #define D3DCREATE_SCREENSAVER __MSABI_LONG(0x10000000) /***************************************************************************** * Flags for SetPrivateData */ #define D3DSPD_IUNKNOWN __MSABI_LONG(0x00000001) /***************************************************************************** * #defines and error codes */ #define D3D_SDK_VERSION 32 #define D3DADAPTER_DEFAULT 0 #define D3DENUM_WHQL_LEVEL __MSABI_LONG(0x00000002) #define D3DPRESENT_DONOTWAIT __MSABI_LONG(1) #define D3DPRESENT_LINEAR_CONTENT __MSABI_LONG(2) #define D3DPRESENT_BACK_BUFFERS_MAX __MSABI_LONG(3) #define D3DPRESENT_BACK_BUFFERS_MAX_EX __MSABI_LONG(30) #define D3DSGR_NO_CALIBRATION __MSABI_LONG(0x00000000) #define D3DSGR_CALIBRATE __MSABI_LONG(0x00000001) #define D3DCURSOR_IMMEDIATE_UPDATE __MSABI_LONG(0x00000001) #define _FACD3D 0x876 #define MAKE_D3DHRESULT( code ) MAKE_HRESULT( 1, _FACD3D, code ) #define MAKE_D3DSTATUS( code ) MAKE_HRESULT( 0, _FACD3D, code ) /***************************************************************************** * Direct3D Errors */ #define D3D_OK S_OK #define D3DERR_WRONGTEXTUREFORMAT MAKE_D3DHRESULT(2072) #define D3DERR_UNSUPPORTEDCOLOROPERATION MAKE_D3DHRESULT(2073) #define D3DERR_UNSUPPORTEDCOLORARG MAKE_D3DHRESULT(2074) #define D3DERR_UNSUPPORTEDALPHAOPERATION MAKE_D3DHRESULT(2075) #define D3DERR_UNSUPPORTEDALPHAARG MAKE_D3DHRESULT(2076) #define D3DERR_TOOMANYOPERATIONS MAKE_D3DHRESULT(2077) #define D3DERR_CONFLICTINGTEXTUREFILTER MAKE_D3DHRESULT(2078) #define D3DERR_UNSUPPORTEDFACTORVALUE MAKE_D3DHRESULT(2079) #define D3DERR_CONFLICTINGRENDERSTATE MAKE_D3DHRESULT(2081) #define D3DERR_UNSUPPORTEDTEXTUREFILTER MAKE_D3DHRESULT(2082) #define D3DERR_CONFLICTINGTEXTUREPALETTE MAKE_D3DHRESULT(2086) #define D3DERR_DRIVERINTERNALERROR MAKE_D3DHRESULT(2087) #define D3DERR_NOTFOUND MAKE_D3DHRESULT(2150) #define D3DERR_MOREDATA MAKE_D3DHRESULT(2151) #define D3DERR_DEVICELOST MAKE_D3DHRESULT(2152) #define D3DERR_DEVICENOTRESET MAKE_D3DHRESULT(2153) #define D3DERR_NOTAVAILABLE MAKE_D3DHRESULT(2154) #define D3DERR_OUTOFVIDEOMEMORY MAKE_D3DHRESULT(380) #define D3DERR_INVALIDDEVICE MAKE_D3DHRESULT(2155) #define D3DERR_INVALIDCALL MAKE_D3DHRESULT(2156) #define D3DERR_DRIVERINVALIDCALL MAKE_D3DHRESULT(2157) #define D3DERR_WASSTILLDRAWING MAKE_D3DHRESULT(540) #define D3DOK_NOAUTOGEN MAKE_D3DSTATUS(2159) #define D3DERR_DEVICEREMOVED MAKE_D3DHRESULT(2160) #define D3DERR_DEVICEHUNG MAKE_D3DHRESULT(2164) #define S_NOT_RESIDENT MAKE_D3DSTATUS(2165) #define S_RESIDENT_IN_SHARED_MEMORY MAKE_D3DSTATUS(2166) #define S_PRESENT_MODE_CHANGED MAKE_D3DSTATUS(2167) #define S_PRESENT_OCCLUDED MAKE_D3DSTATUS(2168) #define D3DERR_UNSUPPORTEDOVERLAY MAKE_D3DHRESULT(2171) #define D3DERR_UNSUPPORTEDOVERLAYFORMAT MAKE_D3DHRESULT(2172) #define D3DERR_CANNOTPROTECTCONTENT MAKE_D3DHRESULT(2173) #define D3DERR_UNSUPPORTEDCRYPTO MAKE_D3DHRESULT(2174) #define D3DERR_PRESENT_STATISTICS_DISJOINT MAKE_D3DHRESULT(2180) /***************************************************************************** * Predeclare the interfaces */ DEFINE_GUID(IID_IDirect3D9, 0x81BDCBCA, 0x64D4, 0x426D, 0xAE, 0x8D, 0xAD, 0x1, 0x47, 0xF4, 0x27, 0x5C); typedef struct IDirect3D9 *LPDIRECT3D9, *PDIRECT3D9; DEFINE_GUID(IID_IDirect3DDevice9, 0xd0223b96, 0xbf7a, 0x43fd, 0x92, 0xbd, 0xa4, 0x3b, 0xd, 0x82, 0xb9, 0xeb); typedef struct IDirect3DDevice9 *LPDIRECT3DDEVICE9; DEFINE_GUID(IID_IDirect3DResource9, 0x5eec05d, 0x8f7d, 0x4362, 0xb9, 0x99, 0xd1, 0xba, 0xf3, 0x57, 0xc7, 0x4); typedef struct IDirect3DResource9 *LPDIRECT3DRESOURCE9, *PDIRECT3DRESOURCE9; DEFINE_GUID(IID_IDirect3DVertexBuffer9, 0xb64bb1b5, 0xfd70, 0x4df6, 0xbf, 0x91, 0x19, 0xd0, 0xa1, 0x24, 0x55, 0xe3); typedef struct IDirect3DVertexBuffer9 *LPDIRECT3DVERTEXBUFFER9, *PDIRECT3DVERTEXBUFFER9; DEFINE_GUID(IID_IDirect3DVolume9, 0x24f416e6, 0x1f67, 0x4aa7, 0xb8, 0x8e, 0xd3, 0x3f, 0x6f, 0x31, 0x28, 0xa1); typedef struct IDirect3DVolume9 *LPDIRECT3DVOLUME9, *PDIRECT3DVOLUME9; DEFINE_GUID(IID_IDirect3DSwapChain9, 0x794950f2, 0xadfc, 0x458a, 0x90, 0x5e, 0x10, 0xa1, 0xb, 0xb, 0x50, 0x3b); typedef struct IDirect3DSwapChain9 *LPDIRECT3DSWAPCHAIN9, *PDIRECT3DSWAPCHAIN9; DEFINE_GUID(IID_IDirect3DSurface9, 0xcfbaf3a, 0x9ff6, 0x429a, 0x99, 0xb3, 0xa2, 0x79, 0x6a, 0xf8, 0xb8, 0x9b); typedef struct IDirect3DSurface9 *LPDIRECT3DSURFACE9, *PDIRECT3DSURFACE9; DEFINE_GUID(IID_IDirect3DIndexBuffer9, 0x7c9dd65e, 0xd3f7, 0x4529, 0xac, 0xee, 0x78, 0x58, 0x30, 0xac, 0xde, 0x35); typedef struct IDirect3DIndexBuffer9 *LPDIRECT3DINDEXBUFFER9, *PDIRECT3DINDEXBUFFER9; DEFINE_GUID(IID_IDirect3DBaseTexture9, 0x580ca87e, 0x1d3c, 0x4d54, 0x99, 0x1d, 0xb7, 0xd3, 0xe3, 0xc2, 0x98, 0xce); typedef struct IDirect3DBaseTexture9 *LPDIRECT3DBASETEXTURE9, *PDIRECT3DBASETEXTURE9; DEFINE_GUID(IID_IDirect3DTexture9, 0x85c31227, 0x3de5, 0x4f00, 0x9b, 0x3a, 0xf1, 0x1a, 0xc3, 0x8c, 0x18, 0xb5); typedef struct IDirect3DTexture9 *LPDIRECT3DTEXTURE9, *PDIRECT3DTEXTURE9; DEFINE_GUID(IID_IDirect3DCubeTexture9, 0xfff32f81, 0xd953, 0x473a, 0x92, 0x23, 0x93, 0xd6, 0x52, 0xab, 0xa9, 0x3f); typedef struct IDirect3DCubeTexture9 *LPDIRECT3DCUBETEXTURE9, *PDIRECT3DCUBETEXTURE9; DEFINE_GUID(IID_IDirect3DVolumeTexture9, 0x2518526c, 0xe789, 0x4111, 0xa7, 0xb9, 0x47, 0xef, 0x32, 0x8d, 0x13, 0xe6); typedef struct IDirect3DVolumeTexture9 *LPDIRECT3DVOLUMETEXTURE9, *PDIRECT3DVOLUMETEXTURE9; DEFINE_GUID(IID_IDirect3DVertexDeclaration9, 0xdd13c59c, 0x36fa, 0x4098, 0xa8, 0xfb, 0xc7, 0xed, 0x39, 0xdc, 0x85, 0x46); typedef struct IDirect3DVertexDeclaration9 *LPDIRECT3DVERTEXDECLARATION9; DEFINE_GUID(IID_IDirect3DVertexShader9, 0xefc5557e, 0x6265, 0x4613, 0x8a, 0x94, 0x43, 0x85, 0x78, 0x89, 0xeb, 0x36); typedef struct IDirect3DVertexShader9 *LPDIRECT3DVERTEXSHADER9; DEFINE_GUID(IID_IDirect3DPixelShader9, 0x6d3bdbdc, 0x5b02, 0x4415, 0xb8, 0x52, 0xce, 0x5e, 0x8b, 0xcc, 0xb2, 0x89); typedef struct IDirect3DPixelShader9 *LPDIRECT3DPIXELSHADER9; DEFINE_GUID(IID_IDirect3DStateBlock9, 0xb07c4fe5, 0x310d, 0x4ba8, 0xa2, 0x3c, 0x4f, 0xf, 0x20, 0x6f, 0x21, 0x8b); typedef struct IDirect3DStateBlock9 *LPDIRECT3DSTATEBLOCK9; DEFINE_GUID(IID_IDirect3DQuery9, 0xd9771460, 0xa695, 0x4f26, 0xbb, 0xd3, 0x27, 0xb8, 0x40, 0xb5, 0x41, 0xcc); typedef struct IDirect3DQuery9 *LPDIRECT3DQUERY9, *PDIRECT3DQUERY9; /***************************************************************************** * IDirect3D9 interface */ #undef INTERFACE #define INTERFACE IDirect3D9 DECLARE_INTERFACE_(IDirect3D9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3D9 methods ***/ STDMETHOD(RegisterSoftwareDevice)(THIS_ void* pInitializeFunction) PURE; STDMETHOD_(UINT, GetAdapterCount)(THIS) PURE; STDMETHOD(GetAdapterIdentifier)(THIS_ UINT Adapter, DWORD Flags, D3DADAPTER_IDENTIFIER9* pIdentifier) PURE; STDMETHOD_(UINT, GetAdapterModeCount)(THIS_ UINT Adapter, D3DFORMAT Format) PURE; STDMETHOD(EnumAdapterModes)(THIS_ UINT Adapter, D3DFORMAT Format, UINT Mode, D3DDISPLAYMODE* pMode) PURE; STDMETHOD(GetAdapterDisplayMode)(THIS_ UINT Adapter, D3DDISPLAYMODE* pMode) PURE; STDMETHOD(CheckDeviceType)(THIS_ UINT iAdapter, D3DDEVTYPE DevType, D3DFORMAT DisplayFormat, D3DFORMAT BackBufferFormat, WINBOOL bWindowed) PURE; STDMETHOD(CheckDeviceFormat)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT AdapterFormat, DWORD Usage, D3DRESOURCETYPE RType, D3DFORMAT CheckFormat) PURE; STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT SurfaceFormat, WINBOOL Windowed, D3DMULTISAMPLE_TYPE MultiSampleType, DWORD* pQualityLevels) PURE; STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT AdapterFormat, D3DFORMAT RenderTargetFormat, D3DFORMAT DepthStencilFormat) PURE; STDMETHOD(CheckDeviceFormatConversion)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DFORMAT SourceFormat, D3DFORMAT TargetFormat) PURE; STDMETHOD(GetDeviceCaps)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, D3DCAPS9* pCaps) PURE; STDMETHOD_(HMONITOR, GetAdapterMonitor)(THIS_ UINT Adapter) PURE; STDMETHOD(CreateDevice)(THIS_ UINT Adapter, D3DDEVTYPE DeviceType, HWND hFocusWindow, DWORD BehaviorFlags, D3DPRESENT_PARAMETERS* pPresentationParameters, struct IDirect3DDevice9** ppReturnedDeviceInterface) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3D9, 0x81BDCBCA, 0x64D4, 0x426D, 0xAE, 0x8D, 0xAD, 0x1, 0x47, 0xF4, 0x27, 0x5C); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3D9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3D9 methods ***/ #define IDirect3D9_RegisterSoftwareDevice(p,a) (p)->lpVtbl->RegisterSoftwareDevice(p,a) #define IDirect3D9_GetAdapterCount(p) (p)->lpVtbl->GetAdapterCount(p) #define IDirect3D9_GetAdapterIdentifier(p,a,b,c) (p)->lpVtbl->GetAdapterIdentifier(p,a,b,c) #define IDirect3D9_GetAdapterModeCount(p,a,b) (p)->lpVtbl->GetAdapterModeCount(p,a,b) #define IDirect3D9_EnumAdapterModes(p,a,b,c,d) (p)->lpVtbl->EnumAdapterModes(p,a,b,c,d) #define IDirect3D9_GetAdapterDisplayMode(p,a,b) (p)->lpVtbl->GetAdapterDisplayMode(p,a,b) #define IDirect3D9_CheckDeviceType(p,a,b,c,d,e) (p)->lpVtbl->CheckDeviceType(p,a,b,c,d,e) #define IDirect3D9_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceFormat(p,a,b,c,d,e,f) #define IDirect3D9_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceMultiSampleType(p,a,b,c,d,e,f) #define IDirect3D9_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->lpVtbl->CheckDepthStencilMatch(p,a,b,c,d,e) #define IDirect3D9_CheckDeviceFormatConversion(p,a,b,c,d) (p)->lpVtbl->CheckDeviceFormatConversion(p,a,b,c,d) #define IDirect3D9_GetDeviceCaps(p,a,b,c) (p)->lpVtbl->GetDeviceCaps(p,a,b,c) #define IDirect3D9_GetAdapterMonitor(p,a) (p)->lpVtbl->GetAdapterMonitor(p,a) #define IDirect3D9_CreateDevice(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDevice(p,a,b,c,d,e,f) #else /*** IUnknown methods ***/ #define IDirect3D9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D9_AddRef(p) (p)->AddRef() #define IDirect3D9_Release(p) (p)->Release() /*** IDirect3D9 methods ***/ #define IDirect3D9_RegisterSoftwareDevice(p,a) (p)->RegisterSoftwareDevice(a) #define IDirect3D9_GetAdapterCount(p) (p)->GetAdapterCount() #define IDirect3D9_GetAdapterIdentifier(p,a,b,c) (p)->GetAdapterIdentifier(a,b,c) #define IDirect3D9_GetAdapterModeCount(p,a,b) (p)->GetAdapterModeCount(a,b) #define IDirect3D9_EnumAdapterModes(p,a,b,c,d) (p)->EnumAdapterModes(a,b,c,d) #define IDirect3D9_GetAdapterDisplayMode(p,a,b) (p)->GetAdapterDisplayMode(a,b) #define IDirect3D9_CheckDeviceType(p,a,b,c,d,e) (p)->CheckDeviceType(a,b,c,d,e) #define IDirect3D9_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->CheckDeviceFormat(a,b,c,d,e,f) #define IDirect3D9_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->CheckDeviceMultiSampleType(a,b,c,d,e,f) #define IDirect3D9_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->CheckDepthStencilMatch(a,b,c,d,e) #define IDirect3D9_CheckDeviceFormatConversion(p,a,b,c,d) (p)->CheckDeviceFormatConversion(a,b,c,d) #define IDirect3D9_GetDeviceCaps(p,a,b,c) (p)->GetDeviceCaps(a,b,c) #define IDirect3D9_GetAdapterMonitor(p,a) (p)->GetAdapterMonitor(a) #define IDirect3D9_CreateDevice(p,a,b,c,d,e,f) (p)->CreateDevice(a,b,c,d,e,f) #endif /***************************************************************************** * IDirect3DVolume9 interface */ #define INTERFACE IDirect3DVolume9 DECLARE_INTERFACE_(IDirect3DVolume9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVolume9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD(GetContainer)(THIS_ REFIID riid, void** ppContainer) PURE; STDMETHOD(GetDesc)(THIS_ D3DVOLUME_DESC* pDesc) PURE; STDMETHOD(LockBox)(THIS_ D3DLOCKED_BOX *locked_box, const D3DBOX *box, DWORD flags) PURE; STDMETHOD(UnlockBox)(THIS) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DVolume9, 0x24f416e6, 0x1f67, 0x4aa7, 0xb8, 0x8e, 0xd3, 0x3f, 0x6f, 0x31, 0x28, 0xa1); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVolume9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVolume9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVolume9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVolume9 methods ***/ #define IDirect3DVolume9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVolume9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVolume9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVolume9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVolume9_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) #define IDirect3DVolume9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define IDirect3DVolume9_LockBox(p,a,b,c) (p)->lpVtbl->LockBox(p,a,b,c) #define IDirect3DVolume9_UnlockBox(p) (p)->lpVtbl->UnlockBox(p) #else /*** IUnknown methods ***/ #define IDirect3DVolume9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVolume9_AddRef(p) (p)->AddRef() #define IDirect3DVolume9_Release(p) (p)->Release() /*** IDirect3DVolume9 methods ***/ #define IDirect3DVolume9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVolume9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVolume9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVolume9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVolume9_GetContainer(p,a,b) (p)->GetContainer(a,b) #define IDirect3DVolume9_GetDesc(p,a) (p)->GetDesc(a) #define IDirect3DVolume9_LockBox(p,a,b,c) (p)->LockBox(a,b,c) #define IDirect3DVolume9_UnlockBox(p) (p)->UnlockBox() #endif /***************************************************************************** * IDirect3DSwapChain9 interface */ #define INTERFACE IDirect3DSwapChain9 DECLARE_INTERFACE_(IDirect3DSwapChain9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DSwapChain9 methods ***/ STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region, DWORD flags) PURE; STDMETHOD(GetFrontBufferData)(THIS_ struct IDirect3DSurface9 *pDestSurface) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT iBackBuffer, D3DBACKBUFFER_TYPE Type, struct IDirect3DSurface9 **ppBackBuffer) PURE; STDMETHOD(GetRasterStatus)(THIS_ D3DRASTER_STATUS *pRasterStatus) PURE; STDMETHOD(GetDisplayMode)(THIS_ D3DDISPLAYMODE *pMode) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **ppDevice) PURE; STDMETHOD(GetPresentParameters)(THIS_ D3DPRESENT_PARAMETERS *pPresentationParameters) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DSwapChain9, 0x794950f2, 0xadfc, 0x458a, 0x90, 0x5e, 0x10, 0xa1, 0xb, 0xb, 0x50, 0x3b); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DSwapChain9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DSwapChain9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DSwapChain9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DSwapChain9 methods ***/ #define IDirect3DSwapChain9_Present(p,a,b,c,d,e) (p)->lpVtbl->Present(p,a,b,c,d,e) #define IDirect3DSwapChain9_GetFrontBufferData(p,a) (p)->lpVtbl->GetFrontBufferData(p,a) #define IDirect3DSwapChain9_GetBackBuffer(p,a,b,c) (p)->lpVtbl->GetBackBuffer(p,a,b,c) #define IDirect3DSwapChain9_GetRasterStatus(p,a) (p)->lpVtbl->GetRasterStatus(p,a) #define IDirect3DSwapChain9_GetDisplayMode(p,a) (p)->lpVtbl->GetDisplayMode(p,a) #define IDirect3DSwapChain9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DSwapChain9_GetPresentParameters(p,a) (p)->lpVtbl->GetPresentParameters(p,a) #else /*** IUnknown methods ***/ #define IDirect3DSwapChain9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DSwapChain9_AddRef(p) (p)->AddRef() #define IDirect3DSwapChain9_Release(p) (p)->Release() /*** IDirect3DSwapChain9 methods ***/ #define IDirect3DSwapChain9_Present(p,a,b,c,d,e) (p)->Present(a,b,c,d,e) #define IDirect3DSwapChain9_GetFrontBufferData(p,a) (p)->GetFrontBufferData(a) #define IDirect3DSwapChain9_GetBackBuffer(p,a,b,c) (p)->GetBackBuffer(a,b,c) #define IDirect3DSwapChain9_GetRasterStatus(p,a) (p)->GetRasterStatus(a) #define IDirect3DSwapChain9_GetDisplayMode(p,a) (p)->GetDisplayMode(a) #define IDirect3DSwapChain9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DSwapChain9_GetPresentParameters(p,a) (p)->GetPresentParameters(a) #endif /***************************************************************************** * IDirect3DResource9 interface */ #define INTERFACE IDirect3DResource9 DECLARE_INTERFACE_(IDirect3DResource9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DResource9, 0x5eec05d, 0x8f7d, 0x4362, 0xb9, 0x99, 0xd1, 0xba, 0xf3, 0x57, 0xc7, 0x4); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DResource9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DResource9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DResource9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DResource9 methods ***/ #define IDirect3DResource9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DResource9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DResource9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DResource9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DResource9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DResource9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DResource9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DResource9_GetType(p) (p)->lpVtbl->GetType(p) #else /*** IUnknown methods ***/ #define IDirect3DResource9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DResource9_AddRef(p) (p)->AddRef() #define IDirect3DResource9_Release(p) (p)->Release() /*** IDirect3DResource9 methods ***/ #define IDirect3DResource9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DResource9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DResource9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DResource9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DResource9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DResource9_GetPriority(p) (p)->GetPriority() #define IDirect3DResource9_PreLoad(p) (p)->PreLoad() #define IDirect3DResource9_GetType(p) (p)->GetType() #endif /***************************************************************************** * IDirect3DSurface9 interface */ #define INTERFACE IDirect3DSurface9 DECLARE_INTERFACE_(IDirect3DSurface9,IDirect3DResource9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DSurface9 methods ***/ STDMETHOD(GetContainer)(THIS_ REFIID riid, void** ppContainer) PURE; STDMETHOD(GetDesc)(THIS_ D3DSURFACE_DESC* pDesc) PURE; STDMETHOD(LockRect)(THIS_ D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS) PURE; STDMETHOD(GetDC)(THIS_ HDC* phdc) PURE; STDMETHOD(ReleaseDC)(THIS_ HDC hdc) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DSurface9, 0xcfbaf3a, 0x9ff6, 0x429a, 0x99, 0xb3, 0xa2, 0x79, 0x6a, 0xf8, 0xb8, 0x9b); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DSurface9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DSurface9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DSurface9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DSurface9 methods: IDirect3DResource9 ***/ #define IDirect3DSurface9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DSurface9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DSurface9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DSurface9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DSurface9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DSurface9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DSurface9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DSurface9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DSurface9 methods ***/ #define IDirect3DSurface9_GetContainer(p,a,b) (p)->lpVtbl->GetContainer(p,a,b) #define IDirect3DSurface9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define IDirect3DSurface9_LockRect(p,a,b,c) (p)->lpVtbl->LockRect(p,a,b,c) #define IDirect3DSurface9_UnlockRect(p) (p)->lpVtbl->UnlockRect(p) #define IDirect3DSurface9_GetDC(p,a) (p)->lpVtbl->GetDC(p,a) #define IDirect3DSurface9_ReleaseDC(p,a) (p)->lpVtbl->ReleaseDC(p,a) #else /*** IUnknown methods ***/ #define IDirect3DSurface9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DSurface9_AddRef(p) (p)->AddRef() #define IDirect3DSurface9_Release(p) (p)->Release() /*** IDirect3DSurface9 methods: IDirect3DResource9 ***/ #define IDirect3DSurface9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DSurface9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DSurface9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DSurface9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DSurface9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DSurface9_GetPriority(p) (p)->GetPriority() #define IDirect3DSurface9_PreLoad(p) (p)->PreLoad() #define IDirect3DSurface9_GetType(p) (p)->GetType() /*** IDirect3DSurface9 methods ***/ #define IDirect3DSurface9_GetContainer(p,a,b) (p)->GetContainer(a,b) #define IDirect3DSurface9_GetDesc(p,a) (p)->GetDesc(a) #define IDirect3DSurface9_LockRect(p,a,b,c) (p)->LockRect(a,b,c) #define IDirect3DSurface9_UnlockRect(p) (p)->UnlockRect() #define IDirect3DSurface9_GetDC(p,a) (p)->GetDC(a) #define IDirect3DSurface9_ReleaseDC(p,a) (p)->ReleaseDC(a) #endif /***************************************************************************** * IDirect3DVertexBuffer9 interface */ #define INTERFACE IDirect3DVertexBuffer9 DECLARE_INTERFACE_(IDirect3DVertexBuffer9,IDirect3DResource9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DVertexBuffer9 methods ***/ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, void** ppbData, DWORD Flags) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3DVERTEXBUFFER_DESC* pDesc) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DVertexBuffer9, 0xb64bb1b5, 0xfd70, 0x4df6, 0xbf, 0x91, 0x19, 0xd0, 0xa1, 0x24, 0x55, 0xe3); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexBuffer9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexBuffer9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexBuffer9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexBuffer9 methods: IDirect3DResource9 ***/ #define IDirect3DVertexBuffer9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVertexBuffer9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVertexBuffer9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVertexBuffer9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVertexBuffer9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DVertexBuffer9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DVertexBuffer9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DVertexBuffer9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DVertexBuffer9 methods ***/ #define IDirect3DVertexBuffer9_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) #define IDirect3DVertexBuffer9_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DVertexBuffer9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #else /*** IUnknown methods ***/ #define IDirect3DVertexBuffer9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexBuffer9_AddRef(p) (p)->AddRef() #define IDirect3DVertexBuffer9_Release(p) (p)->Release() /*** IDirect3DVertexBuffer9 methods: IDirect3DResource9 ***/ #define IDirect3DVertexBuffer9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVertexBuffer9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVertexBuffer9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVertexBuffer9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVertexBuffer9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DVertexBuffer9_GetPriority(p) (p)->GetPriority() #define IDirect3DVertexBuffer9_PreLoad(p) (p)->PreLoad() #define IDirect3DVertexBuffer9_GetType(p) (p)->GetType() /*** IDirect3DVertexBuffer9 methods ***/ #define IDirect3DVertexBuffer9_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) #define IDirect3DVertexBuffer9_Unlock(p) (p)->Unlock() #define IDirect3DVertexBuffer9_GetDesc(p,a) (p)->GetDesc(a) #endif /***************************************************************************** * IDirect3DIndexBuffer9 interface */ #define INTERFACE IDirect3DIndexBuffer9 DECLARE_INTERFACE_(IDirect3DIndexBuffer9,IDirect3DResource9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DIndexBuffer9 methods ***/ STDMETHOD(Lock)(THIS_ UINT OffsetToLock, UINT SizeToLock, void** ppbData, DWORD Flags) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(GetDesc)(THIS_ D3DINDEXBUFFER_DESC* pDesc) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DIndexBuffer9, 0x7c9dd65e, 0xd3f7, 0x4529, 0xac, 0xee, 0x78, 0x58, 0x30, 0xac, 0xde, 0x35); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DIndexBuffer9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DIndexBuffer9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DIndexBuffer9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DIndexBuffer9 methods: IDirect3DResource9 ***/ #define IDirect3DIndexBuffer9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DIndexBuffer9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DIndexBuffer9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DIndexBuffer9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DIndexBuffer9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DIndexBuffer9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DIndexBuffer9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DIndexBuffer9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DIndexBuffer9 methods ***/ #define IDirect3DIndexBuffer9_Lock(p,a,b,c,d) (p)->lpVtbl->Lock(p,a,b,c,d) #define IDirect3DIndexBuffer9_Unlock(p) (p)->lpVtbl->Unlock(p) #define IDirect3DIndexBuffer9_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #else /*** IUnknown methods ***/ #define IDirect3DIndexBuffer9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DIndexBuffer9_AddRef(p) (p)->AddRef() #define IDirect3DIndexBuffer9_Release(p) (p)->Release() /*** IDirect3DIndexBuffer9 methods: IDirect3DResource9 ***/ #define IDirect3DIndexBuffer9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DIndexBuffer9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DIndexBuffer9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DIndexBuffer9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DIndexBuffer9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DIndexBuffer9_GetPriority(p) (p)->GetPriority() #define IDirect3DIndexBuffer9_PreLoad(p) (p)->PreLoad() #define IDirect3DIndexBuffer9_GetType(p) (p)->GetType() /*** IDirect3DIndexBuffer9 methods ***/ #define IDirect3DIndexBuffer9_Lock(p,a,b,c,d) (p)->Lock(a,b,c,d) #define IDirect3DIndexBuffer9_Unlock(p) (p)->Unlock() #define IDirect3DIndexBuffer9_GetDesc(p,a) (p)->GetDesc(a) #endif /***************************************************************************** * IDirect3DBaseTexture9 interface */ #define INTERFACE IDirect3DBaseTexture9 DECLARE_INTERFACE_(IDirect3DBaseTexture9,IDirect3DResource9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DBaseTexture9 methods ***/ STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD, GetLOD)(THIS) PURE; STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DBaseTexture9, 0x580ca87e, 0x1d3c, 0x4d54, 0x99, 0x1d, 0xb7, 0xd3, 0xe3, 0xc2, 0x98, 0xce); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DBaseTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DBaseTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DBaseTexture9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DBaseTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DBaseTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DBaseTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DBaseTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DBaseTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DBaseTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DBaseTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DBaseTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DBaseTexture9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DBaseTexture9 methods ***/ #define IDirect3DBaseTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DBaseTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DBaseTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) #define IDirect3DBaseTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) #define IDirect3DBaseTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) #define IDirect3DBaseTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) #else /*** IUnknown methods ***/ #define IDirect3DBaseTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DBaseTexture9_AddRef(p) (p)->AddRef() #define IDirect3DBaseTexture9_Release(p) (p)->Release() /*** IDirect3DBaseTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DBaseTexture9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DBaseTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DBaseTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DBaseTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DBaseTexture9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DBaseTexture9_GetPriority(p) (p)->GetPriority() #define IDirect3DBaseTexture9_PreLoad(p) (p)->PreLoad() #define IDirect3DBaseTexture9_GetType(p) (p)->GetType() /*** IDirect3DBaseTexture9 methods ***/ #define IDirect3DBaseTexture9_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DBaseTexture9_GetLOD(p) (p)->GetLOD() #define IDirect3DBaseTexture9_GetLevelCount(p) (p)->GetLevelCount() #define IDirect3DBaseTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) #define IDirect3DBaseTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() #define IDirect3DBaseTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() #endif /***************************************************************************** * IDirect3DCubeTexture9 interface */ #define INTERFACE IDirect3DCubeTexture9 DECLARE_INTERFACE_(IDirect3DCubeTexture9,IDirect3DBaseTexture9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DBaseTexture9 methods ***/ STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD, GetLOD)(THIS) PURE; STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; /*** IDirect3DCubeTexture9 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level,D3DSURFACE_DESC* pDesc) PURE; STDMETHOD(GetCubeMapSurface)(THIS_ D3DCUBEMAP_FACES FaceType, UINT Level, IDirect3DSurface9** ppCubeMapSurface) PURE; STDMETHOD(LockRect)(THIS_ D3DCUBEMAP_FACES face, UINT level, D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS_ D3DCUBEMAP_FACES FaceType, UINT Level) PURE; STDMETHOD(AddDirtyRect)(THIS_ D3DCUBEMAP_FACES face, const RECT *dirty_rect) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DCubeTexture9, 0xfff32f81, 0xd953, 0x473a, 0x92, 0x23, 0x93, 0xd6, 0x52, 0xab, 0xa9, 0x3f); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DCubeTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DCubeTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DCubeTexture9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DCubeTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DCubeTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DCubeTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DCubeTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DCubeTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DCubeTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DCubeTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DCubeTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DCubeTexture9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DCubeTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DCubeTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DCubeTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DCubeTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) #define IDirect3DCubeTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) #define IDirect3DCubeTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) #define IDirect3DCubeTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) /*** IDirect3DCubeTexture9 methods ***/ #define IDirect3DCubeTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DCubeTexture9_GetCubeMapSurface(p,a,b,c) (p)->lpVtbl->GetCubeMapSurface(p,a,b,c) #define IDirect3DCubeTexture9_LockRect(p,a,b,c,d,e) (p)->lpVtbl->LockRect(p,a,b,c,d,e) #define IDirect3DCubeTexture9_UnlockRect(p,a,b) (p)->lpVtbl->UnlockRect(p,a,b) #define IDirect3DCubeTexture9_AddDirtyRect(p,a,b) (p)->lpVtbl->AddDirtyRect(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DCubeTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DCubeTexture9_AddRef(p) (p)->AddRef() #define IDirect3DCubeTexture9_Release(p) (p)->Release() /*** IDirect3DCubeTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DCubeTexture9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DCubeTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DCubeTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DCubeTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DCubeTexture9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DCubeTexture9_GetPriority(p) (p)->GetPriority() #define IDirect3DCubeTexture9_PreLoad(p) (p)->PreLoad() #define IDirect3DCubeTexture9_GetType(p) (p)->GetType() /*** IDirect3DCubeTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DCubeTexture9_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DCubeTexture9_GetLOD(p) (p)->GetLOD() #define IDirect3DCubeTexture9_GetLevelCount(p) (p)->GetLevelCount() #define IDirect3DCubeTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) #define IDirect3DCubeTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() #define IDirect3DCubeTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() /*** IDirect3DCubeTexture9 methods ***/ #define IDirect3DCubeTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DCubeTexture9_GetCubeMapSurface(p,a,b,c) (p)->GetCubeMapSurface(a,b,c) #define IDirect3DCubeTexture9_LockRect(p,a,b,c,d,e) (p)->LockRect(a,b,c,d,e) #define IDirect3DCubeTexture9_UnlockRect(p,a,b) (p)->UnlockRect(a,b) #define IDirect3DCubeTexture9_AddDirtyRect(p,a,b) (p)->AddDirtyRect(a,b) #endif /***************************************************************************** * IDirect3DTexture9 interface */ #define INTERFACE IDirect3DTexture9 DECLARE_INTERFACE_(IDirect3DTexture9,IDirect3DBaseTexture9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DBaseTexture9 methods ***/ STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD, GetLOD)(THIS) PURE; STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; /*** IDirect3DTexture9 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level, D3DSURFACE_DESC* pDesc) PURE; STDMETHOD(GetSurfaceLevel)(THIS_ UINT Level, IDirect3DSurface9** ppSurfaceLevel) PURE; STDMETHOD(LockRect)(THIS_ UINT level, D3DLOCKED_RECT *locked_rect, const RECT *rect, DWORD flags) PURE; STDMETHOD(UnlockRect)(THIS_ UINT Level) PURE; STDMETHOD(AddDirtyRect)(THIS_ const RECT *dirty_rect) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DTexture9, 0x85c31227, 0x3de5, 0x4f00, 0x9b, 0x3a, 0xf1, 0x1a, 0xc3, 0x8c, 0x18, 0xb5); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DTexture9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DTexture9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) #define IDirect3DTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) #define IDirect3DTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) #define IDirect3DTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) /*** IDirect3DTexture9 methods ***/ #define IDirect3DTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DTexture9_GetSurfaceLevel(p,a,b) (p)->lpVtbl->GetSurfaceLevel(p,a,b) #define IDirect3DTexture9_LockRect(p,a,b,c,d) (p)->lpVtbl->LockRect(p,a,b,c,d) #define IDirect3DTexture9_UnlockRect(p,a) (p)->lpVtbl->UnlockRect(p,a) #define IDirect3DTexture9_AddDirtyRect(p,a) (p)->lpVtbl->AddDirtyRect(p,a) #else /*** IUnknown methods ***/ #define IDirect3DTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DTexture9_AddRef(p) (p)->AddRef() #define IDirect3DTexture9_Release(p) (p)->Release() /*** IDirect3DTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DTexture9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DTexture9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DTexture9_GetPriority(p) (p)->GetPriority() #define IDirect3DTexture9_PreLoad(p) (p)->PreLoad() #define IDirect3DTexture9_GetType(p) (p)->GetType() /*** IDirect3DTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DTexture9_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DTexture9_GetLOD(p) (p)->GetLOD() #define IDirect3DTexture9_GetLevelCount(p) (p)->GetLevelCount() #define IDirect3DTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) #define IDirect3DTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() #define IDirect3DTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() /*** IDirect3DTexture9 methods ***/ #define IDirect3DTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DTexture9_GetSurfaceLevel(p,a,b) (p)->GetSurfaceLevel(a,b) #define IDirect3DTexture9_LockRect(p,a,b,c,d) (p)->LockRect(a,b,c,d) #define IDirect3DTexture9_UnlockRect(p,a) (p)->UnlockRect(a) #define IDirect3DTexture9_AddDirtyRect(p,a) (p)->AddDirtyRect(a) #endif /***************************************************************************** * IDirect3DVolumeTexture9 interface */ #define INTERFACE IDirect3DVolumeTexture9 DECLARE_INTERFACE_(IDirect3DVolumeTexture9,IDirect3DBaseTexture9) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DResource9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(SetPrivateData)(THIS_ REFGUID guid, const void *data, DWORD data_size, DWORD flags) PURE; STDMETHOD(GetPrivateData)(THIS_ REFGUID refguid, void* pData, DWORD* pSizeOfData) PURE; STDMETHOD(FreePrivateData)(THIS_ REFGUID refguid) PURE; STDMETHOD_(DWORD, SetPriority)(THIS_ DWORD PriorityNew) PURE; STDMETHOD_(DWORD, GetPriority)(THIS) PURE; STDMETHOD_(void, PreLoad)(THIS) PURE; STDMETHOD_(D3DRESOURCETYPE, GetType)(THIS) PURE; /*** IDirect3DBaseTexture9 methods ***/ STDMETHOD_(DWORD, SetLOD)(THIS_ DWORD LODNew) PURE; STDMETHOD_(DWORD, GetLOD)(THIS) PURE; STDMETHOD_(DWORD, GetLevelCount)(THIS) PURE; STDMETHOD(SetAutoGenFilterType)(THIS_ D3DTEXTUREFILTERTYPE FilterType) PURE; STDMETHOD_(D3DTEXTUREFILTERTYPE, GetAutoGenFilterType)(THIS) PURE; STDMETHOD_(void, GenerateMipSubLevels)(THIS) PURE; /*** IDirect3DVolumeTexture9 methods ***/ STDMETHOD(GetLevelDesc)(THIS_ UINT Level, D3DVOLUME_DESC *pDesc) PURE; STDMETHOD(GetVolumeLevel)(THIS_ UINT Level, IDirect3DVolume9** ppVolumeLevel) PURE; STDMETHOD(LockBox)(THIS_ UINT level, D3DLOCKED_BOX *locked_box, const D3DBOX *box, DWORD flags) PURE; STDMETHOD(UnlockBox)(THIS_ UINT Level) PURE; STDMETHOD(AddDirtyBox)(THIS_ const D3DBOX *dirty_box) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DVolumeTexture9, 0x2518526c, 0xe789, 0x4111, 0xa7, 0xb9, 0x47, 0xef, 0x32, 0x8d, 0x13, 0xe6); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVolumeTexture9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVolumeTexture9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVolumeTexture9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVolumeTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DVolumeTexture9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVolumeTexture9_SetPrivateData(p,a,b,c,d) (p)->lpVtbl->SetPrivateData(p,a,b,c,d) #define IDirect3DVolumeTexture9_GetPrivateData(p,a,b,c) (p)->lpVtbl->GetPrivateData(p,a,b,c) #define IDirect3DVolumeTexture9_FreePrivateData(p,a) (p)->lpVtbl->FreePrivateData(p,a) #define IDirect3DVolumeTexture9_SetPriority(p,a) (p)->lpVtbl->SetPriority(p,a) #define IDirect3DVolumeTexture9_GetPriority(p) (p)->lpVtbl->GetPriority(p) #define IDirect3DVolumeTexture9_PreLoad(p) (p)->lpVtbl->PreLoad(p) #define IDirect3DVolumeTexture9_GetType(p) (p)->lpVtbl->GetType(p) /*** IDirect3DVolumeTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DVolumeTexture9_SetLOD(p,a) (p)->lpVtbl->SetLOD(p,a) #define IDirect3DVolumeTexture9_GetLOD(p) (p)->lpVtbl->GetLOD(p) #define IDirect3DVolumeTexture9_GetLevelCount(p) (p)->lpVtbl->GetLevelCount(p) #define IDirect3DVolumeTexture9_SetAutoGenFilterType(p,a) (p)->lpVtbl->SetAutoGenFilterType(p,a) #define IDirect3DVolumeTexture9_GetAutoGenFilterType(p) (p)->lpVtbl->GetAutoGenFilterType(p) #define IDirect3DVolumeTexture9_GenerateMipSubLevels(p) (p)->lpVtbl->GenerateMipSubLevels(p) /*** IDirect3DVolumeTexture9 methods ***/ #define IDirect3DVolumeTexture9_GetLevelDesc(p,a,b) (p)->lpVtbl->GetLevelDesc(p,a,b) #define IDirect3DVolumeTexture9_GetVolumeLevel(p,a,b) (p)->lpVtbl->GetVolumeLevel(p,a,b) #define IDirect3DVolumeTexture9_LockBox(p,a,b,c,d) (p)->lpVtbl->LockBox(p,a,b,c,d) #define IDirect3DVolumeTexture9_UnlockBox(p,a) (p)->lpVtbl->UnlockBox(p,a) #define IDirect3DVolumeTexture9_AddDirtyBox(p,a) (p)->lpVtbl->AddDirtyBox(p,a) #else /*** IUnknown methods ***/ #define IDirect3DVolumeTexture9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVolumeTexture9_AddRef(p) (p)->AddRef() #define IDirect3DVolumeTexture9_Release(p) (p)->Release() /*** IDirect3DVolumeTexture9 methods: IDirect3DResource9 ***/ #define IDirect3DVolumeTexture9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVolumeTexture9_SetPrivateData(p,a,b,c,d) (p)->SetPrivateData(a,b,c,d) #define IDirect3DVolumeTexture9_GetPrivateData(p,a,b,c) (p)->GetPrivateData(a,b,c) #define IDirect3DVolumeTexture9_FreePrivateData(p,a) (p)->FreePrivateData(a) #define IDirect3DVolumeTexture9_SetPriority(p,a) (p)->SetPriority(a) #define IDirect3DVolumeTexture9_GetPriority(p) (p)->GetPriority() #define IDirect3DVolumeTexture9_PreLoad(p) (p)->PreLoad() #define IDirect3DVolumeTexture9_GetType(p) (p)->GetType() /*** IDirect3DVolumeTexture9 methods: IDirect3DBaseTexture9 ***/ #define IDirect3DVolumeTexture9_SetLOD(p,a) (p)->SetLOD(a) #define IDirect3DVolumeTexture9_GetLOD(p) (p)->GetLOD() #define IDirect3DVolumeTexture9_GetLevelCount(p) (p)->GetLevelCount() #define IDirect3DVolumeTexture9_SetAutoGenFilterType(p,a) (p)->SetAutoGenFilterType(a) #define IDirect3DVolumeTexture9_GetAutoGenFilterType(p) (p)->GetAutoGenFilterType() #define IDirect3DVolumeTexture9_GenerateMipSubLevels(p) (p)->GenerateMipSubLevels() /*** IDirect3DVolumeTexture9 methods ***/ #define IDirect3DVolumeTexture9_GetLevelDesc(p,a,b) (p)->GetLevelDesc(a,b) #define IDirect3DVolumeTexture9_GetVolumeLevel(p,a,b) (p)->GetVolumeLevel(a,b) #define IDirect3DVolumeTexture9_LockBox(p,a,b,c,d) (p)->LockBox(a,b,c,d) #define IDirect3DVolumeTexture9_UnlockBox(p,a) (p)->UnlockBox(a) #define IDirect3DVolumeTexture9_AddDirtyBox(p,a) (p)->AddDirtyBox(a) #endif /***************************************************************************** * IDirect3DVertexDeclaration9 interface */ #define INTERFACE IDirect3DVertexDeclaration9 DECLARE_INTERFACE_(IDirect3DVertexDeclaration9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVertexDeclaration9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9*, UINT* pNumElements) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DVertexDeclaration9, 0xdd13c59c, 0x36fa, 0x4098, 0xa8, 0xfb, 0xc7, 0xed, 0x39, 0xdc, 0x85, 0x46); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexDeclaration9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexDeclaration9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexDeclaration9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexShader9 methods ***/ #define IDirect3DVertexDeclaration9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVertexDeclaration9_GetDeclaration(p,a,b) (p)->lpVtbl->GetDeclaration(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DVertexDeclaration9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexDeclaration9_AddRef(p) (p)->AddRef() #define IDirect3DVertexDeclaration9_Release(p) (p)->Release() /*** IDirect3DVertexShader9 methods ***/ #define IDirect3DVertexDeclaration9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVertexDeclaration9_GetDeclaration(p,a,b) (p)->GetDeclaration(a,b) #endif /***************************************************************************** * IDirect3DVertexShader9 interface */ #define INTERFACE IDirect3DVertexShader9 DECLARE_INTERFACE_(IDirect3DVertexShader9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DVertexShader9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(GetFunction)(THIS_ void*, UINT* pSizeOfData) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DVertexShader9, 0xefc5557e, 0x6265, 0x4613, 0x8a, 0x94, 0x43, 0x85, 0x78, 0x89, 0xeb, 0x36); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DVertexShader9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DVertexShader9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DVertexShader9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DVertexShader9 methods ***/ #define IDirect3DVertexShader9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DVertexShader9_GetFunction(p,a,b) (p)->lpVtbl->GetFunction(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DVertexShader9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DVertexShader9_AddRef(p) (p)->AddRef() #define IDirect3DVertexShader9_Release(p) (p)->Release() /*** IDirect3DVertexShader9 methods ***/ #define IDirect3DVertexShader9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DVertexShader9_GetFunction(p,a,b) (p)->GetFunction(a,b) #endif /***************************************************************************** * IDirect3DPixelShader9 interface */ #define INTERFACE IDirect3DPixelShader9 DECLARE_INTERFACE_(IDirect3DPixelShader9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DPixelShader9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(GetFunction)(THIS_ void*, UINT* pSizeOfData) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DPixelShader9, 0x6d3bdbdc, 0x5b02, 0x4415, 0xb8, 0x52, 0xce, 0x5e, 0x8b, 0xcc, 0xb2, 0x89); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DPixelShader9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DPixelShader9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DPixelShader9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DPixelShader9 methods ***/ #define IDirect3DPixelShader9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DPixelShader9_GetFunction(p,a,b) (p)->lpVtbl->GetFunction(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DPixelShader9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DPixelShader9_AddRef(p) (p)->AddRef() #define IDirect3DPixelShader9_Release(p) (p)->Release() /*** IDirect3DPixelShader9 methods ***/ #define IDirect3DPixelShader9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DPixelShader9_GetFunction(p,a,b) (p)->GetFunction(a,b) #endif /***************************************************************************** * IDirect3DStateBlock9 interface */ #define INTERFACE IDirect3DStateBlock9 DECLARE_INTERFACE_(IDirect3DStateBlock9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DStateBlock9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD(Capture)(THIS) PURE; STDMETHOD(Apply)(THIS) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DStateBlock9, 0xb07c4fe5, 0x310d, 0x4ba8, 0xa2, 0x3c, 0x4f, 0xf, 0x20, 0x6f, 0x21, 0x8b); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DStateBlock9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DStateBlock9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DStateBlock9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DStateBlock9 methods ***/ #define IDirect3DStateBlock9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DStateBlock9_Capture(p) (p)->lpVtbl->Capture(p) #define IDirect3DStateBlock9_Apply(p) (p)->lpVtbl->Apply(p) #else /*** IUnknown methods ***/ #define IDirect3DStateBlock9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DStateBlock9_AddRef(p) (p)->AddRef() #define IDirect3DStateBlock9_Release(p) (p)->Release() /*** IDirect3DStateBlock9 methods ***/ #define IDirect3DStateBlock9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DStateBlock9_Capture(p) (p)->Capture() #define IDirect3DStateBlock9_Apply(p) (p)->Apply() #endif /***************************************************************************** * IDirect3DQuery9 interface */ #define INTERFACE IDirect3DQuery9 DECLARE_INTERFACE_(IDirect3DQuery9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DQuery9 methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9** ppDevice) PURE; STDMETHOD_(D3DQUERYTYPE, GetType)(THIS) PURE; STDMETHOD_(DWORD, GetDataSize)(THIS) PURE; STDMETHOD(Issue)(THIS_ DWORD dwIssueFlags) PURE; STDMETHOD(GetData)(THIS_ void* pData, DWORD dwSize, DWORD dwGetDataFlags) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DQuery9, 0xd9771460, 0xa695, 0x4f26, 0xbb, 0xd3, 0x27, 0xb8, 0x40, 0xb5, 0x41, 0xcc); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DQuery9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DQuery9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DQuery9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DQuery9 ***/ #define IDirect3DQuery9_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DQuery9_GetType(p) (p)->lpVtbl->GetType(p) #define IDirect3DQuery9_GetDataSize(p) (p)->lpVtbl->GetDataSize(p) #define IDirect3DQuery9_Issue(p,a) (p)->lpVtbl->Issue(p,a) #define IDirect3DQuery9_GetData(p,a,b,c) (p)->lpVtbl->GetData(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DQuery9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DQuery9_AddRef(p) (p)->AddRef() #define IDirect3DQuery9_Release(p) (p)->Release() /*** IDirect3DQuery9 ***/ #define IDirect3DQuery9_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DQuery9_GetType(p) (p)->GetType() #define IDirect3DQuery9_GetDataSize(p) (p)->GetDataSize() #define IDirect3DQuery9_Issue(p,a) (p)->Issue(a) #define IDirect3DQuery9_GetData(p,a,b,c) (p)->GetData(a,b,c) #endif /***************************************************************************** * IDirect3DDevice9 interface */ #define INTERFACE IDirect3DDevice9 DECLARE_INTERFACE_(IDirect3DDevice9,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DDevice9 methods ***/ STDMETHOD(TestCooperativeLevel)(THIS) PURE; STDMETHOD_(UINT, GetAvailableTextureMem)(THIS) PURE; STDMETHOD(EvictManagedResources)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D9** ppD3D9) PURE; STDMETHOD(GetDeviceCaps)(THIS_ D3DCAPS9* pCaps) PURE; STDMETHOD(GetDisplayMode)(THIS_ UINT iSwapChain, D3DDISPLAYMODE* pMode) PURE; STDMETHOD(GetCreationParameters)(THIS_ D3DDEVICE_CREATION_PARAMETERS *pParameters) PURE; STDMETHOD(SetCursorProperties)(THIS_ UINT XHotSpot, UINT YHotSpot, IDirect3DSurface9* pCursorBitmap) PURE; STDMETHOD_(void, SetCursorPosition)(THIS_ int X,int Y, DWORD Flags) PURE; STDMETHOD_(WINBOOL, ShowCursor)(THIS_ WINBOOL bShow) PURE; STDMETHOD(CreateAdditionalSwapChain)(THIS_ D3DPRESENT_PARAMETERS* pPresentationParameters, IDirect3DSwapChain9** pSwapChain) PURE; STDMETHOD(GetSwapChain)(THIS_ UINT iSwapChain, IDirect3DSwapChain9** pSwapChain) PURE; STDMETHOD_(UINT, GetNumberOfSwapChains)(THIS) PURE; STDMETHOD(Reset)(THIS_ D3DPRESENT_PARAMETERS* pPresentationParameters) PURE; STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT iSwapChain, UINT iBackBuffer, D3DBACKBUFFER_TYPE Type, IDirect3DSurface9** ppBackBuffer) PURE; STDMETHOD(GetRasterStatus)(THIS_ UINT iSwapChain, D3DRASTER_STATUS* pRasterStatus) PURE; STDMETHOD(SetDialogBoxMode)(THIS_ WINBOOL bEnableDialogs) PURE; STDMETHOD_(void, SetGammaRamp)(THIS_ UINT swapchain_idx, DWORD flags, const D3DGAMMARAMP *ramp) PURE; STDMETHOD_(void, GetGammaRamp)(THIS_ UINT iSwapChain, D3DGAMMARAMP* pRamp) PURE; STDMETHOD(CreateTexture)(THIS_ UINT Width, UINT Height, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DTexture9** ppTexture, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateVolumeTexture)(THIS_ UINT Width, UINT Height, UINT Depth, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DVolumeTexture9** ppVolumeTexture, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateCubeTexture)(THIS_ UINT EdgeLength, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DCubeTexture9** ppCubeTexture, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateVertexBuffer)(THIS_ UINT Length, DWORD Usage, DWORD FVF, D3DPOOL Pool, IDirect3DVertexBuffer9** ppVertexBuffer, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateIndexBuffer)(THIS_ UINT Length, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DIndexBuffer9** ppIndexBuffer, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateRenderTarget)(THIS_ UINT Width, UINT Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, WINBOOL Lockable, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle) PURE; STDMETHOD(CreateDepthStencilSurface)(THIS_ UINT Width, UINT Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, WINBOOL Discard, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle) PURE; STDMETHOD(UpdateSurface)(THIS_ IDirect3DSurface9 *src_surface, const RECT *src_rect, IDirect3DSurface9 *dst_surface, const POINT *dst_point) PURE; STDMETHOD(UpdateTexture)(THIS_ IDirect3DBaseTexture9* pSourceTexture, IDirect3DBaseTexture9* pDestinationTexture) PURE; STDMETHOD(GetRenderTargetData)(THIS_ IDirect3DSurface9* pRenderTarget, IDirect3DSurface9* pDestSurface) PURE; STDMETHOD(GetFrontBufferData)(THIS_ UINT iSwapChain, IDirect3DSurface9* pDestSurface) PURE; STDMETHOD(StretchRect)(THIS_ IDirect3DSurface9 *src_surface, const RECT *src_rect, IDirect3DSurface9 *dst_surface, const RECT *dst_rect, D3DTEXTUREFILTERTYPE filter) PURE; STDMETHOD(ColorFill)(THIS_ IDirect3DSurface9 *surface, const RECT *rect, D3DCOLOR color) PURE; STDMETHOD(CreateOffscreenPlainSurface)(THIS_ UINT Width, UINT Height, D3DFORMAT Format, D3DPOOL Pool, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle) PURE; STDMETHOD(SetRenderTarget)(THIS_ DWORD RenderTargetIndex, IDirect3DSurface9* pRenderTarget) PURE; STDMETHOD(GetRenderTarget)(THIS_ DWORD RenderTargetIndex, IDirect3DSurface9** ppRenderTarget) PURE; STDMETHOD(SetDepthStencilSurface)(THIS_ IDirect3DSurface9* pNewZStencil) PURE; STDMETHOD(GetDepthStencilSurface)(THIS_ IDirect3DSurface9** ppZStencilSurface) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(Clear)(THIS_ DWORD rect_count, const D3DRECT *rects, DWORD flags, D3DCOLOR color, float z, DWORD stencil) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE State, D3DMATRIX* pMatrix) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(SetViewport)(THIS_ const D3DVIEWPORT9 *viewport) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT9* pViewport) PURE; STDMETHOD(SetMaterial)(THIS_ const D3DMATERIAL9 *material) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL9* pMaterial) PURE; STDMETHOD(SetLight)(THIS_ DWORD index, const D3DLIGHT9 *light) PURE; STDMETHOD(GetLight)(THIS_ DWORD Index, D3DLIGHT9*) PURE; STDMETHOD(LightEnable)(THIS_ DWORD Index, WINBOOL Enable) PURE; STDMETHOD(GetLightEnable)(THIS_ DWORD Index, WINBOOL* pEnable) PURE; STDMETHOD(SetClipPlane)(THIS_ DWORD index, const float *plane) PURE; STDMETHOD(GetClipPlane)(THIS_ DWORD Index, float* pPlane) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE State, DWORD Value) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE State, DWORD* pValue) PURE; STDMETHOD(CreateStateBlock)(THIS_ D3DSTATEBLOCKTYPE Type, IDirect3DStateBlock9** ppSB) PURE; STDMETHOD(BeginStateBlock)(THIS) PURE; STDMETHOD(EndStateBlock)(THIS_ IDirect3DStateBlock9** ppSB) PURE; STDMETHOD(SetClipStatus)(THIS_ const D3DCLIPSTATUS9 *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS9* pClipStatus) PURE; STDMETHOD(GetTexture)(THIS_ DWORD Stage, IDirect3DBaseTexture9** ppTexture) PURE; STDMETHOD(SetTexture)(THIS_ DWORD Stage, IDirect3DBaseTexture9* pTexture) PURE; STDMETHOD(GetTextureStageState)(THIS_ DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD* pValue) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value) PURE; STDMETHOD(GetSamplerState)(THIS_ DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD* pValue) PURE; STDMETHOD(SetSamplerState)(THIS_ DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value) PURE; STDMETHOD(ValidateDevice)(THIS_ DWORD* pNumPasses) PURE; STDMETHOD(SetPaletteEntries)(THIS_ UINT palette_idx, const PALETTEENTRY *entries) PURE; STDMETHOD(GetPaletteEntries)(THIS_ UINT PaletteNumber,PALETTEENTRY* pEntries) PURE; STDMETHOD(SetCurrentTexturePalette)(THIS_ UINT PaletteNumber) PURE; STDMETHOD(GetCurrentTexturePalette)(THIS_ UINT *PaletteNumber) PURE; STDMETHOD(SetScissorRect)(THIS_ const RECT *rect) PURE; STDMETHOD(GetScissorRect)(THIS_ RECT* pRect) PURE; STDMETHOD(SetSoftwareVertexProcessing)(THIS_ WINBOOL bSoftware) PURE; STDMETHOD_(WINBOOL, GetSoftwareVertexProcessing)(THIS) PURE; STDMETHOD(SetNPatchMode)(THIS_ float nSegments) PURE; STDMETHOD_(float, GetNPatchMode)(THIS) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE PrimitiveType, UINT StartVertex, UINT PrimitiveCount) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount) PURE; STDMETHOD(DrawPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT primitive_count, const void *data, UINT stride) PURE; STDMETHOD(DrawIndexedPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT min_vertex_idx, UINT vertex_count, UINT primitive_count, const void *index_data, D3DFORMAT index_format, const void *data, UINT stride) PURE; STDMETHOD(ProcessVertices)(THIS_ UINT SrcStartIndex, UINT DestIndex, UINT VertexCount, IDirect3DVertexBuffer9* pDestBuffer, IDirect3DVertexDeclaration9* pVertexDecl, DWORD Flags) PURE; STDMETHOD(CreateVertexDeclaration)(THIS_ const D3DVERTEXELEMENT9 *elements, IDirect3DVertexDeclaration9 **declaration) PURE; STDMETHOD(SetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9* pDecl) PURE; STDMETHOD(GetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9** ppDecl) PURE; STDMETHOD(SetFVF)(THIS_ DWORD FVF) PURE; STDMETHOD(GetFVF)(THIS_ DWORD* pFVF) PURE; STDMETHOD(CreateVertexShader)(THIS_ const DWORD *byte_code, IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetVertexShader)(THIS_ IDirect3DVertexShader9* pShader) PURE; STDMETHOD(GetVertexShader)(THIS_ IDirect3DVertexShader9** ppShader) PURE; STDMETHOD(SetVertexShaderConstantF)(THIS_ UINT reg_idx, const float *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantF)(THIS_ UINT StartRegister, float* pConstantData, UINT Vector4fCount) PURE; STDMETHOD(SetVertexShaderConstantI)(THIS_ UINT reg_idx, const int *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantI)(THIS_ UINT StartRegister, int* pConstantData, UINT Vector4iCount) PURE; STDMETHOD(SetVertexShaderConstantB)(THIS_ UINT reg_idx, const WINBOOL *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantB)(THIS_ UINT StartRegister, WINBOOL* pConstantData, UINT BoolCount) PURE; STDMETHOD(SetStreamSource)(THIS_ UINT StreamNumber, IDirect3DVertexBuffer9* pStreamData, UINT OffsetInBytes, UINT Stride) PURE; STDMETHOD(GetStreamSource)(THIS_ UINT StreamNumber, IDirect3DVertexBuffer9** ppStreamData, UINT* OffsetInBytes, UINT* pStride) PURE; STDMETHOD(SetStreamSourceFreq)(THIS_ UINT StreamNumber, UINT Divider) PURE; STDMETHOD(GetStreamSourceFreq)(THIS_ UINT StreamNumber, UINT* Divider) PURE; STDMETHOD(SetIndices)(THIS_ IDirect3DIndexBuffer9* pIndexData) PURE; STDMETHOD(GetIndices)(THIS_ IDirect3DIndexBuffer9** ppIndexData) PURE; STDMETHOD(CreatePixelShader)(THIS_ const DWORD *byte_code, IDirect3DPixelShader9 **shader) PURE; STDMETHOD(SetPixelShader)(THIS_ IDirect3DPixelShader9* pShader) PURE; STDMETHOD(GetPixelShader)(THIS_ IDirect3DPixelShader9** ppShader) PURE; STDMETHOD(SetPixelShaderConstantF)(THIS_ UINT reg_idx, const float *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantF)(THIS_ UINT StartRegister, float* pConstantData, UINT Vector4fCount) PURE; STDMETHOD(SetPixelShaderConstantI)(THIS_ UINT reg_idx, const int *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantI)(THIS_ UINT StartRegister, int* pConstantData, UINT Vector4iCount) PURE; STDMETHOD(SetPixelShaderConstantB)(THIS_ UINT reg_idx, const WINBOOL *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantB)(THIS_ UINT StartRegister, WINBOOL* pConstantData, UINT BoolCount) PURE; STDMETHOD(DrawRectPatch)(THIS_ UINT handle, const float *segment_count, const D3DRECTPATCH_INFO *patch_info) PURE; STDMETHOD(DrawTriPatch)(THIS_ UINT handle, const float *segment_count, const D3DTRIPATCH_INFO *patch_info) PURE; STDMETHOD(DeletePatch)(THIS_ UINT Handle) PURE; STDMETHOD(CreateQuery)(THIS_ D3DQUERYTYPE Type, IDirect3DQuery9** ppQuery) PURE; }; #undef INTERFACE #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DDevice9, 0xd0223b96, 0xbf7a, 0x43fd, 0x92, 0xbd, 0xa4, 0x3b, 0xd, 0x82, 0xb9, 0xeb); #endif #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DDevice9_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice9_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice9_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DDevice9 methods ***/ #define IDirect3DDevice9_TestCooperativeLevel(p) (p)->lpVtbl->TestCooperativeLevel(p) #define IDirect3DDevice9_GetAvailableTextureMem(p) (p)->lpVtbl->GetAvailableTextureMem(p) #define IDirect3DDevice9_EvictManagedResources(p) (p)->lpVtbl->EvictManagedResources(p) #define IDirect3DDevice9_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice9_GetDeviceCaps(p,a) (p)->lpVtbl->GetDeviceCaps(p,a) #define IDirect3DDevice9_GetDisplayMode(p,a,b) (p)->lpVtbl->GetDisplayMode(p,a,b) #define IDirect3DDevice9_GetCreationParameters(p,a) (p)->lpVtbl->GetCreationParameters(p,a) #define IDirect3DDevice9_SetCursorProperties(p,a,b,c) (p)->lpVtbl->SetCursorProperties(p,a,b,c) #define IDirect3DDevice9_SetCursorPosition(p,a,b,c) (p)->lpVtbl->SetCursorPosition(p,a,b,c) #define IDirect3DDevice9_ShowCursor(p,a) (p)->lpVtbl->ShowCursor(p,a) #define IDirect3DDevice9_CreateAdditionalSwapChain(p,a,b) (p)->lpVtbl->CreateAdditionalSwapChain(p,a,b) #define IDirect3DDevice9_GetSwapChain(p,a,b) (p)->lpVtbl->GetSwapChain(p,a,b) #define IDirect3DDevice9_GetNumberOfSwapChains(p) (p)->lpVtbl->GetNumberOfSwapChains(p) #define IDirect3DDevice9_Reset(p,a) (p)->lpVtbl->Reset(p,a) #define IDirect3DDevice9_Present(p,a,b,c,d) (p)->lpVtbl->Present(p,a,b,c,d) #define IDirect3DDevice9_GetBackBuffer(p,a,b,c,d) (p)->lpVtbl->GetBackBuffer(p,a,b,c,d) #define IDirect3DDevice9_GetRasterStatus(p,a,b) (p)->lpVtbl->GetRasterStatus(p,a,b) #define IDirect3DDevice9_SetDialogBoxMode(p,a) (p)->lpVtbl->SetDialogBoxMode(p,a) #define IDirect3DDevice9_SetGammaRamp(p,a,b,c) (p)->lpVtbl->SetGammaRamp(p,a,b,c) #define IDirect3DDevice9_GetGammaRamp(p,a,b) (p)->lpVtbl->GetGammaRamp(p,a,b) #define IDirect3DDevice9_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateTexture(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateCubeTexture(p,a,b,c,d,e,f,g) #define IDirect3DDevice9_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e,f) #define IDirect3DDevice9_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateIndexBuffer(p,a,b,c,d,e,f) #define IDirect3DDevice9_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateRenderTarget(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9_UpdateSurface(p,a,b,c,d) (p)->lpVtbl->UpdateSurface(p,a,b,c,d) #define IDirect3DDevice9_UpdateTexture(p,a,b) (p)->lpVtbl->UpdateTexture(p,a,b) #define IDirect3DDevice9_GetRenderTargetData(p,a,b) (p)->lpVtbl->GetRenderTargetData(p,a,b) #define IDirect3DDevice9_GetFrontBufferData(p,a,b) (p)->lpVtbl->GetFrontBufferData(p,a,b) #define IDirect3DDevice9_StretchRect(p,a,b,c,d,e) (p)->lpVtbl->StretchRect(p,a,b,c,d,e) #define IDirect3DDevice9_ColorFill(p,a,b,c) (p)->lpVtbl->ColorFill(p,a,b,c) #define IDirect3DDevice9_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->lpVtbl->CreateOffscreenPlainSurface(p,a,b,c,d,e,f) #define IDirect3DDevice9_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice9_GetRenderTarget(p,a,b) (p)->lpVtbl->GetRenderTarget(p,a,b) #define IDirect3DDevice9_SetDepthStencilSurface(p,a) (p)->lpVtbl->SetDepthStencilSurface(p,a) #define IDirect3DDevice9_GetDepthStencilSurface(p,a) (p)->lpVtbl->GetDepthStencilSurface(p,a) #define IDirect3DDevice9_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice9_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice9_Clear(p,a,b,c,d,e,f) (p)->lpVtbl->Clear(p,a,b,c,d,e,f) #define IDirect3DDevice9_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice9_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice9_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice9_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DDevice9_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DDevice9_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DDevice9_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DDevice9_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) #define IDirect3DDevice9_GetLight(p,a,b) (p)->lpVtbl->GetLight(p,a,b) #define IDirect3DDevice9_LightEnable(p,a,b) (p)->lpVtbl->LightEnable(p,a,b) #define IDirect3DDevice9_GetLightEnable(p,a,b) (p)->lpVtbl->GetLightEnable(p,a,b) #define IDirect3DDevice9_SetClipPlane(p,a,b) (p)->lpVtbl->SetClipPlane(p,a,b) #define IDirect3DDevice9_GetClipPlane(p,a,b) (p)->lpVtbl->GetClipPlane(p,a,b) #define IDirect3DDevice9_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice9_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice9_CreateStateBlock(p,a,b) (p)->lpVtbl->CreateStateBlock(p,a,b) #define IDirect3DDevice9_BeginStateBlock(p) (p)->lpVtbl->BeginStateBlock(p) #define IDirect3DDevice9_EndStateBlock(p,a) (p)->lpVtbl->EndStateBlock(p,a) #define IDirect3DDevice9_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice9_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #define IDirect3DDevice9_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) #define IDirect3DDevice9_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) #define IDirect3DDevice9_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) #define IDirect3DDevice9_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) #define IDirect3DDevice9_GetSamplerState(p,a,b,c) (p)->lpVtbl->GetSamplerState(p,a,b,c) #define IDirect3DDevice9_SetSamplerState(p,a,b,c) (p)->lpVtbl->SetSamplerState(p,a,b,c) #define IDirect3DDevice9_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) #define IDirect3DDevice9_SetPaletteEntries(p,a,b) (p)->lpVtbl->SetPaletteEntries(p,a,b) #define IDirect3DDevice9_GetPaletteEntries(p,a,b) (p)->lpVtbl->GetPaletteEntries(p,a,b) #define IDirect3DDevice9_SetCurrentTexturePalette(p,a) (p)->lpVtbl->SetCurrentTexturePalette(p,a) #define IDirect3DDevice9_GetCurrentTexturePalette(p,a) (p)->lpVtbl->GetCurrentTexturePalette(p,a) #define IDirect3DDevice9_SetScissorRect(p,a) (p)->lpVtbl->SetScissorRect(p,a) #define IDirect3DDevice9_GetScissorRect(p,a) (p)->lpVtbl->GetScissorRect(p,a) #define IDirect3DDevice9_SetSoftwareVertexProcessing(p,a) (p)->lpVtbl->SetSoftwareVertexProcessing(p,a) #define IDirect3DDevice9_GetSoftwareVertexProcessing(p) (p)->lpVtbl->GetSoftwareVertexProcessing(p) #define IDirect3DDevice9_SetNPatchMode(p,a) (p)->lpVtbl->SetNPatchMode(p,a) #define IDirect3DDevice9_GetNPatchMode(p) (p)->lpVtbl->GetNPatchMode(p) #define IDirect3DDevice9_DrawPrimitive(p,a,b,c) (p)->lpVtbl->DrawPrimitive(p,a,b,c) #define IDirect3DDevice9_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f) #define IDirect3DDevice9_DrawPrimitiveUP(p,a,b,c,d) (p)->lpVtbl->DrawPrimitiveUP(p,a,b,c,d) #define IDirect3DDevice9_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9_ProcessVertices(p,a,b,c,d,e,f) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e,f) #define IDirect3DDevice9_CreateVertexDeclaration(p,a,b) (p)->lpVtbl->CreateVertexDeclaration(p,a,b) #define IDirect3DDevice9_SetVertexDeclaration(p,a) (p)->lpVtbl->SetVertexDeclaration(p,a) #define IDirect3DDevice9_GetVertexDeclaration(p,a) (p)->lpVtbl->GetVertexDeclaration(p,a) #define IDirect3DDevice9_SetFVF(p,a) (p)->lpVtbl->SetFVF(p,a) #define IDirect3DDevice9_GetFVF(p,a) (p)->lpVtbl->GetFVF(p,a) #define IDirect3DDevice9_CreateVertexShader(p,a,b) (p)->lpVtbl->CreateVertexShader(p,a,b) #define IDirect3DDevice9_SetVertexShader(p,a) (p)->lpVtbl->SetVertexShader(p,a) #define IDirect3DDevice9_GetVertexShader(p,a) (p)->lpVtbl->GetVertexShader(p,a) #define IDirect3DDevice9_SetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantF(p,a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantF(p,a,b,c) #define IDirect3DDevice9_SetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantI(p,a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantI(p,a,b,c) #define IDirect3DDevice9_SetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantB(p,a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantB(p,a,b,c) #define IDirect3DDevice9_SetStreamSource(p,a,b,c,d) (p)->lpVtbl->SetStreamSource(p,a,b,c,d) #define IDirect3DDevice9_GetStreamSource(p,a,b,c,d) (p)->lpVtbl->GetStreamSource(p,a,b,c,d) #define IDirect3DDevice9_SetStreamSourceFreq(p,a,b) (p)->lpVtbl->SetStreamSourceFreq(p,a,b) #define IDirect3DDevice9_GetStreamSourceFreq(p,a,b) (p)->lpVtbl->GetStreamSourceFreq(p,a,b) #define IDirect3DDevice9_SetIndices(p,a) (p)->lpVtbl->SetIndices(p,a) #define IDirect3DDevice9_GetIndices(p,a) (p)->lpVtbl->GetIndices(p,a) #define IDirect3DDevice9_CreatePixelShader(p,a,b) (p)->lpVtbl->CreatePixelShader(p,a,b) #define IDirect3DDevice9_SetPixelShader(p,a) (p)->lpVtbl->SetPixelShader(p,a) #define IDirect3DDevice9_GetPixelShader(p,a) (p)->lpVtbl->GetPixelShader(p,a) #define IDirect3DDevice9_SetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantF(p,a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantF(p,a,b,c) #define IDirect3DDevice9_SetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantI(p,a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantI(p,a,b,c) #define IDirect3DDevice9_SetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantB(p,a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantB(p,a,b,c) #define IDirect3DDevice9_DrawRectPatch(p,a,b,c) (p)->lpVtbl->DrawRectPatch(p,a,b,c) #define IDirect3DDevice9_DrawTriPatch(p,a,b,c) (p)->lpVtbl->DrawTriPatch(p,a,b,c) #define IDirect3DDevice9_DeletePatch(p,a) (p)->lpVtbl->DeletePatch(p,a) #define IDirect3DDevice9_CreateQuery(p,a,b) (p)->lpVtbl->CreateQuery(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DDevice9_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice9_AddRef(p) (p)->AddRef() #define IDirect3DDevice9_Release(p) (p)->Release() /*** IDirect3DDevice9 methods ***/ #define IDirect3DDevice9_TestCooperativeLevel(p) (p)->TestCooperativeLevel() #define IDirect3DDevice9_GetAvailableTextureMem(p) (p)->GetAvailableTextureMem() #define IDirect3DDevice9_EvictManagedResources(p) (p)->EvictManagedResources() #define IDirect3DDevice9_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice9_GetDeviceCaps(p,a) (p)->GetDeviceCaps(a) #define IDirect3DDevice9_GetDisplayMode(p,a,b) (p)->GetDisplayMode(a,b) #define IDirect3DDevice9_GetCreationParameters(p,a) (p)->GetCreationParameters(a) #define IDirect3DDevice9_SetCursorProperties(p,a,b,c) (p)->SetCursorProperties(a,b,c) #define IDirect3DDevice9_SetCursorPosition(p,a,b,c) (p)->SetCursorPosition(a,b,c) #define IDirect3DDevice9_ShowCursor(p,a) (p)->ShowCursor(a) #define IDirect3DDevice9_CreateAdditionalSwapChain(p,a,b) (p)->CreateAdditionalSwapChain(a,b) #define IDirect3DDevice9_GetSwapChain(p,a,b) (p)->GetSwapChain(a,b) #define IDirect3DDevice9_GetNumberOfSwapChains(p) (p)->GetNumberOfSwapChains() #define IDirect3DDevice9_Reset(p,a) (p)->Reset(a) #define IDirect3DDevice9_Present(p,a,b,c,d) (p)->Present(a,b,c,d) #define IDirect3DDevice9_GetBackBuffer(p,a,b,c,d) (p)->GetBackBuffer(a,b,c,d) #define IDirect3DDevice9_GetRasterStatus(p,a,b) (p)->GetRasterStatus(a,b) #define IDirect3DDevice9_SetDialogBoxMode(p,a) (p)->SetDialogBoxMode(a) #define IDirect3DDevice9_SetGammaRamp(p,a,b,c) (p)->SetGammaRamp(a,b,c) #define IDirect3DDevice9_GetGammaRamp(p,a,b) (p)->GetGammaRamp(a,b) #define IDirect3DDevice9_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->CreateTexture(a,b,c,d,e,f,g,h) #define IDirect3DDevice9_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->CreateVolumeTexture(a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->CreateCubeTexture(a,b,c,d,e,f,g) #define IDirect3DDevice9_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->CreateVertexBuffer(a,b,c,d,e,f) #define IDirect3DDevice9_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->CreateIndexBuffer(a,b,c,d,e,f) #define IDirect3DDevice9_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->CreateRenderTarget(a,b,c,d,e,f,g,h) #define IDirect3DDevice9_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->CreateDepthStencilSurface(a,b,c,d,e,f,g,h) #define IDirect3DDevice9_UpdateSurface(p,a,b,c,d) (p)->UpdateSurface(a,b,c,d) #define IDirect3DDevice9_UpdateTexture(p,a,b) (p)->UpdateTexture(a,b) #define IDirect3DDevice9_GetRenderTargetData(p,a,b) (p)->GetRenderTargetData(a,b) #define IDirect3DDevice9_GetFrontBufferData(p,a,b) (p)->GetFrontBufferData(a,b) #define IDirect3DDevice9_StretchRect(p,a,b,c,d,e) (p)->StretchRect(a,b,c,d,e) #define IDirect3DDevice9_ColorFill(p,a,b,c) (p)->ColorFill(a,b,c) #define IDirect3DDevice9_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->CreateOffscreenPlainSurface(a,b,c,d,e,f) #define IDirect3DDevice9_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice9_GetRenderTarget(p,a,b) (p)->GetRenderTarget(a,b) #define IDirect3DDevice9_SetDepthStencilSurface(p,a) (p)->SetDepthStencilSurface(a) #define IDirect3DDevice9_GetDepthStencilSurface(p,a) (p)->GetDepthStencilSurface(a) #define IDirect3DDevice9_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice9_EndScene(p) (p)->EndScene() #define IDirect3DDevice9_Clear(p,a,b,c,d,e,f) (p)->Clear(a,b,c,d,e,f) #define IDirect3DDevice9_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice9_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice9_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice9_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DDevice9_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DDevice9_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DDevice9_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DDevice9_SetLight(p,a,b) (p)->SetLight(a,b) #define IDirect3DDevice9_GetLight(p,a,b) (p)->GetLight(a,b) #define IDirect3DDevice9_LightEnable(p,a,b) (p)->LightEnable(a,b) #define IDirect3DDevice9_GetLightEnable(p,a,b) (p)->GetLightEnable(a,b) #define IDirect3DDevice9_SetClipPlane(p,a,b) (p)->SetClipPlane(a,b) #define IDirect3DDevice9_GetClipPlane(p,a,b) (p)->GetClipPlane(a,b) #define IDirect3DDevice9_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice9_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice9_CreateStateBlock(p,a,b) (p)->CreateStateBlock(a,b) #define IDirect3DDevice9_BeginStateBlock(p) (p)->BeginStateBlock() #define IDirect3DDevice9_EndStateBlock(p,a) (p)->EndStateBlock(a) #define IDirect3DDevice9_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice9_GetClipStatus(p,a) (p)->GetClipStatus(a) #define IDirect3DDevice9_GetTexture(p,a,b) (p)->GetTexture(a,b) #define IDirect3DDevice9_SetTexture(p,a,b) (p)->SetTexture(a,b) #define IDirect3DDevice9_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) #define IDirect3DDevice9_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) #define IDirect3DDevice9_GetSamplerState(p,a,b,c) (p)->GetSamplerState(a,b,c) #define IDirect3DDevice9_SetSamplerState(p,a,b,c) (p)->SetSamplerState(a,b,c) #define IDirect3DDevice9_ValidateDevice(p,a) (p)->ValidateDevice(a) #define IDirect3DDevice9_SetPaletteEntries(p,a,b) (p)->SetPaletteEntries(a,b) #define IDirect3DDevice9_GetPaletteEntries(p,a,b) (p)->GetPaletteEntries(a,b) #define IDirect3DDevice9_SetCurrentTexturePalette(p,a) (p)->SetCurrentTexturePalette(a) #define IDirect3DDevice9_GetCurrentTexturePalette(p,a) (p)->GetCurrentTexturePalette(a) #define IDirect3DDevice9_SetScissorRect(p,a) (p)->SetScissorRect(a) #define IDirect3DDevice9_GetScissorRect(p,a) (p)->GetScissorRect(a) #define IDirect3DDevice9_SetSoftwareVertexProcessing(p,a) (p)->SetSoftwareVertexProcessing(a) #define IDirect3DDevice9_GetSoftwareVertexProcessing(p) (p)->GetSoftwareVertexProcessing() #define IDirect3DDevice9_SetNPatchMode(p,a) (p)->SetNPatchMode(a) #define IDirect3DDevice9_GetNPatchMode(p) (p)->GetNPatchMode() #define IDirect3DDevice9_DrawPrimitive(p,a,b,c) (p)->DrawPrimitive(a,b,c) #define IDirect3DDevice9_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->DrawIndexedPrimitive(a,b,c,d,e,f) #define IDirect3DDevice9_DrawPrimitiveUP(p,a,b,c,d) (p)->DrawPrimitiveUP(a,b,c,d) #define IDirect3DDevice9_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->DrawIndexedPrimitiveUP(a,b,c,d,e,f,g,h) #define IDirect3DDevice9_ProcessVertices(p,a,b,c,d,e,f) (p)->ProcessVertices(a,b,c,d,e,f) #define IDirect3DDevice9_CreateVertexDeclaration(p,a,b) (p)->CreateVertexDeclaration(a,b) #define IDirect3DDevice9_SetVertexDeclaration(p,a) (p)->SetVertexDeclaration(a) #define IDirect3DDevice9_GetVertexDeclaration(p,a) (p)->GetVertexDeclaration(a) #define IDirect3DDevice9_SetFVF(p,a) (p)->SetFVF(a) #define IDirect3DDevice9_GetFVF(p,a) (p)->GetFVF(a) #define IDirect3DDevice9_CreateVertexShader(p,a,b) (p)->CreateVertexShader(a,b) #define IDirect3DDevice9_SetVertexShader(p,a) (p)->SetVertexShader(a) #define IDirect3DDevice9_GetVertexShader(p,a) (p)->GetVertexShader(a) #define IDirect3DDevice9_SetVertexShaderConstantF(p,a,b,c) (p)->SetVertexShaderConstantF(a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantF(p,a,b,c) (p)->GetVertexShaderConstantF(a,b,c) #define IDirect3DDevice9_SetVertexShaderConstantI(p,a,b,c) (p)->SetVertexShaderConstantI(a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantI(p,a,b,c) (p)->GetVertexShaderConstantI(a,b,c) #define IDirect3DDevice9_SetVertexShaderConstantB(p,a,b,c) (p)->SetVertexShaderConstantB(a,b,c) #define IDirect3DDevice9_GetVertexShaderConstantB(p,a,b,c) (p)->GetVertexShaderConstantB(a,b,c) #define IDirect3DDevice9_SetStreamSource(p,a,b,c,d) (p)->SetStreamSource(a,b,c,d) #define IDirect3DDevice9_GetStreamSource(p,a,b,c,d) (p)->GetStreamSource(a,b,c,d) #define IDirect3DDevice9_SetStreamSourceFreq(p,a,b) (p)->SetStreamSourceFreq(a,b) #define IDirect3DDevice9_GetStreamSourceFreq(p,a,b) (p)->GetStreamSourceFreq(a,b) #define IDirect3DDevice9_SetIndices(p,a) (p)->SetIndices(a) #define IDirect3DDevice9_GetIndices(p,a) (p)->GetIndices(a) #define IDirect3DDevice9_CreatePixelShader(p,a,b) (p)->CreatePixelShader(a,b) #define IDirect3DDevice9_SetPixelShader(p,a) (p)->SetPixelShader(a) #define IDirect3DDevice9_GetPixelShader(p,a) (p)->GetPixelShader(a) #define IDirect3DDevice9_SetPixelShaderConstantF(p,a,b,c) (p)->SetPixelShaderConstantF(a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantF(p,a,b,c) (p)->GetPixelShaderConstantF(a,b,c) #define IDirect3DDevice9_SetPixelShaderConstantI(p,a,b,c) (p)->SetPixelShaderConstantI(a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantI(p,a,b,c) (p)->GetPixelShaderConstantI(a,b,c) #define IDirect3DDevice9_SetPixelShaderConstantB(p,a,b,c) (p)->SetPixelShaderConstantB(a,b,c) #define IDirect3DDevice9_GetPixelShaderConstantB(p,a,b,c) (p)->GetPixelShaderConstantB(a,b,c) #define IDirect3DDevice9_DrawRectPatch(p,a,b,c) (p)->DrawRectPatch(a,b,c) #define IDirect3DDevice9_DrawTriPatch(p,a,b,c) (p)->DrawTriPatch(a,b,c) #define IDirect3DDevice9_DeletePatch(p,a) (p)->DeletePatch(a) #define IDirect3DDevice9_CreateQuery(p,a,b) (p)->CreateQuery(a,b) #endif #if !defined(D3D_DISABLE_9EX) typedef struct IDirect3D9Ex *LPDIRECT3D9EX, *PDIRECT3D9EX; typedef struct IDirect3DSwapChain9Ex *LPDIRECT3DSWAPCHAIN9EX, *PDIRECT3DSWAPCHAIN9EX; typedef struct IDirect3DDevice9Ex *LPDIRECT3DDEVICE9EX, *PDIRECT3DDEVICE9EX; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3D9Ex, 0x02177241, 0x69fc, 0x400c, 0x8f, 0xf1, 0x93, 0xa4, 0x4d, 0xf6, 0x86, 0x1d); #endif DEFINE_GUID(IID_IDirect3D9Ex, 0x02177241, 0x69fc, 0x400c, 0x8f, 0xf1, 0x93, 0xa4, 0x4d, 0xf6, 0x86, 0x1d); #define INTERFACE IDirect3D9Ex DECLARE_INTERFACE_(IDirect3D9Ex, IDirect3D9) { /* IUnknown */ STDMETHOD_(HRESULT, QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* IDirect3D9 */ STDMETHOD(RegisterSoftwareDevice)(THIS_ void *init) PURE; STDMETHOD_(UINT, GetAdapterCount)(THIS) PURE; STDMETHOD(GetAdapterIdentifier)(THIS_ UINT adapter_idx, DWORD flags, D3DADAPTER_IDENTIFIER9 *identifier) PURE; STDMETHOD_(UINT, GetAdapterModeCount)(THIS_ UINT adapter_idx, D3DFORMAT format) PURE; STDMETHOD(EnumAdapterModes)(THIS_ UINT adapter_idx, D3DFORMAT format, UINT mode_idx, D3DDISPLAYMODE *mode) PURE; STDMETHOD(GetAdapterDisplayMode)(THIS_ UINT adapter_idx, D3DDISPLAYMODE *mode) PURE; STDMETHOD(CheckDeviceType)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DFORMAT display_format, D3DFORMAT backbuffer_format, WINBOOL windowed) PURE; STDMETHOD(CheckDeviceFormat)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DFORMAT adapter_format, DWORD usage, D3DRESOURCETYPE resource_type, D3DFORMAT format) PURE; STDMETHOD(CheckDeviceMultiSampleType)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DFORMAT surface_format, WINBOOL windowed, D3DMULTISAMPLE_TYPE multisample_type, DWORD *quality_levels) PURE; STDMETHOD(CheckDepthStencilMatch)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DFORMAT adapter_format, D3DFORMAT rt_format, D3DFORMAT ds_format) PURE; STDMETHOD(CheckDeviceFormatConversion)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DFORMAT src_format, D3DFORMAT dst_format) PURE; STDMETHOD(GetDeviceCaps)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, D3DCAPS9 *caps) PURE; STDMETHOD_(HMONITOR, GetAdapterMonitor)(THIS_ UINT adapter_idx) PURE; STDMETHOD(CreateDevice)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, HWND focus_window, DWORD flags, D3DPRESENT_PARAMETERS *parameters, struct IDirect3DDevice9 **device) PURE; /* IDirect3D9Ex */ STDMETHOD_(UINT, GetAdapterModeCountEx)(THIS_ UINT adapter_idx, const D3DDISPLAYMODEFILTER *filter) PURE; STDMETHOD(EnumAdapterModesEx)(THIS_ UINT adapter_idx, const D3DDISPLAYMODEFILTER *filter, UINT mode_idx, D3DDISPLAYMODEEX *mode) PURE; STDMETHOD(GetAdapterDisplayModeEx)(THIS_ UINT adapter_idx, D3DDISPLAYMODEEX *mode, D3DDISPLAYROTATION *rotation) PURE; STDMETHOD(CreateDeviceEx)(THIS_ UINT adapter_idx, D3DDEVTYPE device_type, HWND focus_window, DWORD flags, D3DPRESENT_PARAMETERS *parameters, D3DDISPLAYMODEEX *mode, struct IDirect3DDevice9Ex **device) PURE; STDMETHOD(GetAdapterLUID)(THIS_ UINT adapter_idx, LUID *luid) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /* IUnknown */ #define IDirect3D9Ex_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3D9Ex_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3D9Ex_Release(p) (p)->lpVtbl->Release(p) /* IDirect3D9 */ #define IDirect3D9Ex_RegisterSoftwareDevice(p,a) (p)->lpVtbl->RegisterSoftwareDevice(p,a) #define IDirect3D9Ex_GetAdapterCount(p) (p)->lpVtbl->GetAdapterCount(p) #define IDirect3D9Ex_GetAdapterIdentifier(p,a,b,c) (p)->lpVtbl->GetAdapterIdentifier(p,a,b,c) #define IDirect3D9Ex_GetAdapterModeCount(p,a,b) (p)->lpVtbl->GetAdapterModeCount(p,a,b) #define IDirect3D9Ex_EnumAdapterModes(p,a,b,c,d) (p)->lpVtbl->EnumAdapterModes(p,a,b,c,d) #define IDirect3D9Ex_GetAdapterDisplayMode(p,a,b) (p)->lpVtbl->GetAdapterDisplayMode(p,a,b) #define IDirect3D9Ex_CheckDeviceType(p,a,b,c,d,e) (p)->lpVtbl->CheckDeviceType(p,a,b,c,d,e) #define IDirect3D9Ex_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceFormat(p,a,b,c,d,e,f) #define IDirect3D9Ex_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->lpVtbl->CheckDeviceMultiSampleType(p,a,b,c,d,e,f) #define IDirect3D9Ex_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->lpVtbl->CheckDepthStencilMatch(p,a,b,c,d,e) #define IDirect3D9Ex_CheckDeviceFormatConversion(p,a,b,c,d) (p)->lpVtbl->CheckDeviceFormatConversion(p,a,b,c,d) #define IDirect3D9Ex_GetDeviceCaps(p,a,b,c) (p)->lpVtbl->GetDeviceCaps(p,a,b,c) #define IDirect3D9Ex_GetAdapterMonitor(p,a) (p)->lpVtbl->GetAdapterMonitor(p,a) #define IDirect3D9Ex_CreateDevice(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDevice(p,a,b,c,d,e,f) /* IDirect3D9Ex */ #define IDirect3D9Ex_GetAdapterModeCountEx(p,a,b) (p)->lpVtbl->GetAdapterModeCountEx(p,a,b) #define IDirect3D9Ex_EnumAdapterModesEx(p,a,b,c,d) (p)->lpVtbl->EnumAdapterModesEx(p,a,b,c,d) #define IDirect3D9Ex_GetAdapterDisplayModeEx(p,a,b,c) (p)->lpVtbl->GetAdapterDisplayModeEx(p,a,b,c) #define IDirect3D9Ex_CreateDeviceEx(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateDeviceEx(p,a,b,c,d,e,f,g) #define IDirect3D9Ex_GetAdapterLUID(p,a,b) (p)->lpVtbl->GetAdapterLUID(p,a,b) #else /* IUnknown */ #define IDirect3D9Ex_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3D9Ex_AddRef(p) (p)->AddRef() #define IDirect3D9Ex_Release(p) (p)->Release() /* IDirect3D9 */ #define IDirect3D9Ex_RegisterSoftwareDevice(p,a) (p)->RegisterSoftwareDevice(a) #define IDirect3D9Ex_GetAdapterCount(p) (p)->GetAdapterCount() #define IDirect3D9Ex_GetAdapterIdentifier(p,a,b,c) (p)->GetAdapterIdentifier(a,b,c) #define IDirect3D9Ex_GetAdapterModeCount(p,a,b) (p)->GetAdapterModeCount(a,b) #define IDirect3D9Ex_EnumAdapterModes(p,a,b,c,d) (p)->EnumAdapterModes(a,b,c,d) #define IDirect3D9Ex_GetAdapterDisplayMode(p,a,b) (p)->GetAdapterDisplayMode(a,b) #define IDirect3D9Ex_CheckDeviceType(p,a,b,c,d,e) (p)->CheckDeviceType(a,b,c,d,e) #define IDirect3D9Ex_CheckDeviceFormat(p,a,b,c,d,e,f) (p)->CheckDeviceFormat(a,b,c,d,e,f) #define IDirect3D9Ex_CheckDeviceMultiSampleType(p,a,b,c,d,e,f) (p)->CheckDeviceMultiSampleType(a,b,c,d,e,f) #define IDirect3D9Ex_CheckDepthStencilMatch(p,a,b,c,d,e) (p)->CheckDepthStencilMatch(a,b,c,d,e) #define IDirect3D9Ex_CheckDeviceFormatConversion(p,a,b,c,d) (p)->CheckDeviceFormatConversion(a,b,c,d) #define IDirect3D9Ex_GetDeviceCaps(p,a,b,c) (p)->GetDeviceCaps(a,b,c) #define IDirect3D9Ex_GetAdapterMonitor(p,a) (p)->GetAdapterMonitor(a) #define IDirect3D9Ex_CreateDevice(p,a,b,c,d,e,f) (p)->CreateDevice(a,b,c,d,e,f) /* IDirect3D9Ex */ #define IDirect3D9Ex_GetAdapterModeCountEx(p,a,b) (p)->GetAdapterModeCountEx(a,b) #define IDirect3D9Ex_EnumAdapterModesEx(p,a,b,c,d) (p)->EnumAdapterModesEx(a,b,c,d) #define IDirect3D9Ex_GetAdapterDisplayModeEx(p,a,b,c) (p)->GetAdapterDisplayModeEx(a,b,c) #define IDirect3D9Ex_CreateDeviceEx(p,a,b,c,d,e,f,g) (p)->CreateDeviceEx(a,b,c,d,e,f,g) #define IDirect3D9Ex_GetAdapterLUID(p,a,b) (p)->GetAdapterLUID(a,b) #endif #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DSwapChain9Ex, 0x91886caf, 0x1c3d, 0x4d2e, 0xa0, 0xab, 0x3e, 0x4c, 0x7d, 0x8d, 0x33, 0x3); #endif DEFINE_GUID(IID_IDirect3DSwapChain9Ex, 0x91886caf, 0x1c3d, 0x4d2e, 0xa0, 0xab, 0x3e, 0x4c, 0x7d, 0x8d, 0x33, 0x3); #define INTERFACE IDirect3DSwapChain9Ex DECLARE_INTERFACE_(IDirect3DSwapChain9Ex, IDirect3DSwapChain9) { /* IUnknown */ STDMETHOD_(HRESULT, QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* IDirect3DSwapChain9 */ STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region, DWORD flags) PURE; STDMETHOD(GetFrontBufferData)(THIS_ struct IDirect3DSurface9 *dst_surface) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT backbuffer_idx, D3DBACKBUFFER_TYPE backbuffer_type, struct IDirect3DSurface9 **backbuffer) PURE; STDMETHOD(GetRasterStatus)(THIS_ D3DRASTER_STATUS *raster_status) PURE; STDMETHOD(GetDisplayMode)(THIS_ D3DDISPLAYMODE *mode) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetPresentParameters)(THIS_ D3DPRESENT_PARAMETERS *parameters) PURE; /* IDirect3DSwapChain9Ex */ STDMETHOD(GetLastPresentCount)(THIS_ UINT *last_present_count) PURE; STDMETHOD(GetPresentStats)(THIS_ D3DPRESENTSTATS *stats) PURE; STDMETHOD(GetDisplayModeEx)(THIS_ D3DDISPLAYMODEEX *mode, D3DDISPLAYROTATION *rotation) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /* IUnknown */ #define IDirect3DSwapChain9Ex_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DSwapChain9Ex_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DSwapChain9Ex_Release(p) (p)->lpVtbl->Release(p) /* IDirect3DSwapChain9 */ #define IDirect3DSwapChain9Ex_Present(p,a,b,c,d,e) (p)->lpVtbl->Present(p,a,b,c,d,e) #define IDirect3DSwapChain9Ex_GetFrontBufferData(p,a) (p)->lpVtbl->GetFrontBufferData(p,a) #define IDirect3DSwapChain9Ex_GetBackBuffer(p,a,b,c) (p)->lpVtbl->GetBackBuffer(p,a,b,c) #define IDirect3DSwapChain9Ex_GetRasterStatus(p,a) (p)->lpVtbl->GetRasterStatus(p,a) #define IDirect3DSwapChain9Ex_GetDisplayMode(p,a) (p)->lpVtbl->GetDisplayMode(p,a) #define IDirect3DSwapChain9Ex_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DSwapChain9Ex_GetPresentParameters(p,a) (p)->lpVtbl->GetPresentParameters(p,a) /* IDirect3DSwapChain9Ex */ #define IDirect3DSwapChain9Ex_GetLastPresentCount(p,a) (p)->lpVtbl->GetLastPresentCount(p,a) #define IDirect3DSwapChain9Ex_GetPresentStats(p,a) (p)->lpVtbl->GetPresentStats(p,a) #define IDirect3DSwapChain9Ex_GetDisplayModeEx(p,a,b) (p)->lpVtbl->GetDisplayModeEx(p,a,b) #else /* IUnknown */ #define IDirect3DSwapChain9Ex_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DSwapChain9Ex_AddRef(p) (p)->AddRef() #define IDirect3DSwapChain9Ex_Release(p) (p)->Release() /* IDirect3DSwapChain9 */ #define IDirect3DSwapChain9Ex_Present(p,a,b,c,d,e) (p)->Present(a,b,c,d,e) #define IDirect3DSwapChain9Ex_GetFrontBufferData(p,a) (p)->GetFrontBufferData(a) #define IDirect3DSwapChain9Ex_GetBackBuffer(p,a,b,c) (p)->GetBackBuffer(a,b,c) #define IDirect3DSwapChain9Ex_GetRasterStatus(p,a) (p)->GetRasterStatus(a) #define IDirect3DSwapChain9Ex_GetDisplayMode(p,a) (p)->GetDisplayMode(a) #define IDirect3DSwapChain9Ex_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DSwapChain9Ex_GetPresentParameters(p,a) (p)->GetPresentParameters(a) /* IDirect3DSwapChain9Ex */ #define IDirect3DSwapChain9Ex_GetLastPresentCount(p,a) (p)->GetLastPresentCount(a) #define IDirect3DSwapChain9Ex_GetPresentStats(p,a) (p)->GetPresentStats(a) #define IDirect3DSwapChain9Ex_GetDisplayModeEx(p,a,b) (p)->GetDisplayModeEx(a,b) #endif #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DDevice9Ex, 0xb18b10ce, 0x2649, 0x405a, 0x87, 0xf, 0x95, 0xf7, 0x77, 0xd4, 0x31, 0x3a); #endif DEFINE_GUID(IID_IDirect3DDevice9Ex, 0xb18b10ce, 0x2649, 0x405a, 0x87, 0xf, 0x95, 0xf7, 0x77, 0xd4, 0x31, 0x3a); #define INTERFACE IDirect3DDevice9Ex DECLARE_INTERFACE_(IDirect3DDevice9Ex, IDirect3DDevice9) { /* IUnknown */ STDMETHOD_(HRESULT, QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /* IDirect3DDevice9 */ STDMETHOD(TestCooperativeLevel)(THIS) PURE; STDMETHOD_(UINT, GetAvailableTextureMem)(THIS) PURE; STDMETHOD(EvictManagedResources)(THIS) PURE; STDMETHOD(GetDirect3D)(THIS_ IDirect3D9 **d3d9) PURE; STDMETHOD(GetDeviceCaps)(THIS_ D3DCAPS9 *caps) PURE; STDMETHOD(GetDisplayMode)(THIS_ UINT swapchain_idx, D3DDISPLAYMODE *mode) PURE; STDMETHOD(GetCreationParameters)(THIS_ D3DDEVICE_CREATION_PARAMETERS *parameters) PURE; STDMETHOD(SetCursorProperties)(THIS_ UINT hotspot_x, UINT hotspot_y, IDirect3DSurface9 *bitmap) PURE; STDMETHOD_(void, SetCursorPosition)(THIS_ int x, int y, DWORD flags) PURE; STDMETHOD_(WINBOOL, ShowCursor)(THIS_ WINBOOL show) PURE; STDMETHOD(CreateAdditionalSwapChain)(THIS_ D3DPRESENT_PARAMETERS *parameters, IDirect3DSwapChain9 **swapchain) PURE; STDMETHOD(GetSwapChain)(THIS_ UINT swapchain_idx, IDirect3DSwapChain9 **swapchain) PURE; STDMETHOD_(UINT, GetNumberOfSwapChains)(THIS) PURE; STDMETHOD(Reset)(THIS_ D3DPRESENT_PARAMETERS *parameters) PURE; STDMETHOD(Present)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region) PURE; STDMETHOD(GetBackBuffer)(THIS_ UINT swapchain_idx, UINT backbuffer_idx, D3DBACKBUFFER_TYPE backbuffer_type, IDirect3DSurface9 **backbuffer) PURE; STDMETHOD(GetRasterStatus)(THIS_ UINT swapchain_idx, D3DRASTER_STATUS *raster_status) PURE; STDMETHOD(SetDialogBoxMode)(THIS_ WINBOOL enable) PURE; STDMETHOD_(void, SetGammaRamp)(THIS_ UINT swapchain_idx, DWORD flags, const D3DGAMMARAMP *ramp) PURE; STDMETHOD_(void, GetGammaRamp)(THIS_ UINT swapchain_idx, D3DGAMMARAMP *ramp) PURE; STDMETHOD(CreateTexture)(THIS_ UINT width, UINT height, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, IDirect3DTexture9 **texture, HANDLE *shared_handle) PURE; STDMETHOD(CreateVolumeTexture)(THIS_ UINT width, UINT height, UINT depth, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, IDirect3DVolumeTexture9 **texture, HANDLE *shared_handle) PURE; STDMETHOD(CreateCubeTexture)(THIS_ UINT edge_length, UINT levels, DWORD usage, D3DFORMAT format, D3DPOOL pool, IDirect3DCubeTexture9 **texture, HANDLE *shared_handle) PURE; STDMETHOD(CreateVertexBuffer)(THIS_ UINT size, DWORD usage, DWORD fvf, D3DPOOL pool, IDirect3DVertexBuffer9 **buffer, HANDLE *shared_handle) PURE; STDMETHOD(CreateIndexBuffer)(THIS_ UINT size, DWORD usage, D3DFORMAT format, D3DPOOL pool, IDirect3DIndexBuffer9 **buffer, HANDLE *shared_handle) PURE; STDMETHOD(CreateRenderTarget)(THIS_ UINT width, UINT height, D3DFORMAT format, D3DMULTISAMPLE_TYPE multisample_type, DWORD multisample_quality, WINBOOL lockable, IDirect3DSurface9 **surface, HANDLE *shared_handle) PURE; STDMETHOD(CreateDepthStencilSurface)(THIS_ UINT width, UINT height, D3DFORMAT format, D3DMULTISAMPLE_TYPE multisample_type, DWORD multisample_quality, WINBOOL discard, IDirect3DSurface9 **surface, HANDLE *shared_handle) PURE; STDMETHOD(UpdateSurface)(THIS_ IDirect3DSurface9 *src_surface, const RECT *src_rect, IDirect3DSurface9 *dst_surface, const POINT *dst_point) PURE; STDMETHOD(UpdateTexture)(THIS_ IDirect3DBaseTexture9 *src_texture, IDirect3DBaseTexture9 *dst_texture) PURE; STDMETHOD(GetRenderTargetData)(THIS_ IDirect3DSurface9 *render_target, IDirect3DSurface9 *dst_surface) PURE; STDMETHOD(GetFrontBufferData)(THIS_ UINT swapchain_idx, IDirect3DSurface9 *dst_surface) PURE; STDMETHOD(StretchRect)(THIS_ IDirect3DSurface9 *src_surface, const RECT *src_rect, IDirect3DSurface9 *dst_surface, const RECT *dst_rect, D3DTEXTUREFILTERTYPE filter) PURE; STDMETHOD(ColorFill)(THIS_ IDirect3DSurface9 *surface, const RECT *rect, D3DCOLOR colour) PURE; STDMETHOD(CreateOffscreenPlainSurface)(THIS_ UINT width, UINT height, D3DFORMAT format, D3DPOOL pool, IDirect3DSurface9 **surface, HANDLE *shared_handle) PURE; STDMETHOD(SetRenderTarget)(THIS_ DWORD idx, IDirect3DSurface9 *surface) PURE; STDMETHOD(GetRenderTarget)(THIS_ DWORD idx, IDirect3DSurface9 **surface) PURE; STDMETHOD(SetDepthStencilSurface)(THIS_ IDirect3DSurface9 *depth_stencil) PURE; STDMETHOD(GetDepthStencilSurface)(THIS_ IDirect3DSurface9 **depth_stencil) PURE; STDMETHOD(BeginScene)(THIS) PURE; STDMETHOD(EndScene)(THIS) PURE; STDMETHOD(Clear)(THIS_ DWORD rect_count, const D3DRECT *rects, DWORD flags, D3DCOLOR colour, float z, DWORD stencil) PURE; STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(GetTransform)(THIS_ D3DTRANSFORMSTATETYPE State, D3DMATRIX *matrix) PURE; STDMETHOD(MultiplyTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(SetViewport)(THIS_ const D3DVIEWPORT9 *viewport) PURE; STDMETHOD(GetViewport)(THIS_ D3DVIEWPORT9 *viewport) PURE; STDMETHOD(SetMaterial)(THIS_ const D3DMATERIAL9 *material) PURE; STDMETHOD(GetMaterial)(THIS_ D3DMATERIAL9 *material) PURE; STDMETHOD(SetLight)(THIS_ DWORD idx, const D3DLIGHT9 *light) PURE; STDMETHOD(GetLight)(THIS_ DWORD idx, D3DLIGHT9 *light) PURE; STDMETHOD(LightEnable)(THIS_ DWORD idx, WINBOOL enable) PURE; STDMETHOD(GetLightEnable)(THIS_ DWORD idx, WINBOOL *enable) PURE; STDMETHOD(SetClipPlane)(THIS_ DWORD idx, const float *plane) PURE; STDMETHOD(GetClipPlane)(THIS_ DWORD idx, float *plane) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE state, DWORD value) PURE; STDMETHOD(GetRenderState)(THIS_ D3DRENDERSTATETYPE state, DWORD *value) PURE; STDMETHOD(CreateStateBlock)(THIS_ D3DSTATEBLOCKTYPE type, IDirect3DStateBlock9 **stateblock) PURE; STDMETHOD(BeginStateBlock)(THIS) PURE; STDMETHOD(EndStateBlock)(THIS_ IDirect3DStateBlock9 **stateblock) PURE; STDMETHOD(SetClipStatus)(THIS_ const D3DCLIPSTATUS9 *clip_status) PURE; STDMETHOD(GetClipStatus)(THIS_ D3DCLIPSTATUS9 *clip_status) PURE; STDMETHOD(GetTexture)(THIS_ DWORD stage, IDirect3DBaseTexture9 **texture) PURE; STDMETHOD(SetTexture)(THIS_ DWORD stage, IDirect3DBaseTexture9 *texture) PURE; STDMETHOD(GetTextureStageState)(THIS_ DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD *value) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD stage, D3DTEXTURESTAGESTATETYPE state, DWORD value) PURE; STDMETHOD(GetSamplerState)(THIS_ DWORD sampler_idx, D3DSAMPLERSTATETYPE state, DWORD *value) PURE; STDMETHOD(SetSamplerState)(THIS_ DWORD sampler_idx, D3DSAMPLERSTATETYPE state, DWORD value) PURE; STDMETHOD(ValidateDevice)(THIS_ DWORD *pass_count) PURE; STDMETHOD(SetPaletteEntries)(THIS_ UINT palette_idx, const PALETTEENTRY *entries) PURE; STDMETHOD(GetPaletteEntries)(THIS_ UINT palette_idx, PALETTEENTRY *entries) PURE; STDMETHOD(SetCurrentTexturePalette)(THIS_ UINT palette_idx) PURE; STDMETHOD(GetCurrentTexturePalette)(THIS_ UINT *palette_idx) PURE; STDMETHOD(SetScissorRect)(THIS_ const RECT *rect) PURE; STDMETHOD(GetScissorRect)(THIS_ RECT *rect) PURE; STDMETHOD(SetSoftwareVertexProcessing)(THIS_ WINBOOL software) PURE; STDMETHOD_(WINBOOL, GetSoftwareVertexProcessing)(THIS) PURE; STDMETHOD(SetNPatchMode)(THIS_ float segment_count) PURE; STDMETHOD_(float, GetNPatchMode)(THIS) PURE; STDMETHOD(DrawPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT start_vertex, UINT primitive_count) PURE; STDMETHOD(DrawIndexedPrimitive)(THIS_ D3DPRIMITIVETYPE primitive_type, INT base_vertex_idx, UINT min_vertex_idx, UINT vertex_count, UINT start_idx, UINT primitive_count) PURE; STDMETHOD(DrawPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT primitive_count, const void *data, UINT stride) PURE; STDMETHOD(DrawIndexedPrimitiveUP)(THIS_ D3DPRIMITIVETYPE primitive_type, UINT min_vertex_idx, UINT vertex_count, UINT primitive_count, const void *index_data, D3DFORMAT index_format, const void *data, UINT stride) PURE; STDMETHOD(ProcessVertices)(THIS_ UINT src_start_idx, UINT dst_idx, UINT vertex_count, IDirect3DVertexBuffer9 *dst_buffer, IDirect3DVertexDeclaration9 *declaration, DWORD flags) PURE; STDMETHOD(CreateVertexDeclaration)(THIS_ const D3DVERTEXELEMENT9 *elements, IDirect3DVertexDeclaration9 **declaration) PURE; STDMETHOD(SetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9 *declaration) PURE; STDMETHOD(GetVertexDeclaration)(THIS_ IDirect3DVertexDeclaration9 **declaration) PURE; STDMETHOD(SetFVF)(THIS_ DWORD fvf) PURE; STDMETHOD(GetFVF)(THIS_ DWORD *fvf) PURE; STDMETHOD(CreateVertexShader)(THIS_ const DWORD *byte_code, IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetVertexShader)(THIS_ IDirect3DVertexShader9 *shader) PURE; STDMETHOD(GetVertexShader)(THIS_ IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetVertexShaderConstantF)(THIS_ UINT reg_idx, const float *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantF)(THIS_ UINT reg_idx, float *data, UINT count) PURE; STDMETHOD(SetVertexShaderConstantI)(THIS_ UINT reg_idx, const int *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantI)(THIS_ UINT reg_idx, int *data, UINT count) PURE; STDMETHOD(SetVertexShaderConstantB)(THIS_ UINT reg_idx, const WINBOOL *data, UINT count) PURE; STDMETHOD(GetVertexShaderConstantB)(THIS_ UINT reg_idx, WINBOOL *data, UINT count) PURE; STDMETHOD(SetStreamSource)(THIS_ UINT stream_idx, IDirect3DVertexBuffer9 *buffer, UINT offset, UINT stride) PURE; STDMETHOD(GetStreamSource)(THIS_ UINT stream_idx, IDirect3DVertexBuffer9 **buffer, UINT *offset, UINT *stride) PURE; STDMETHOD(SetStreamSourceFreq)(THIS_ UINT stream_idx, UINT frequency) PURE; STDMETHOD(GetStreamSourceFreq)(THIS_ UINT stream_idx, UINT *frequency) PURE; STDMETHOD(SetIndices)(THIS_ IDirect3DIndexBuffer9 *buffer) PURE; STDMETHOD(GetIndices)(THIS_ IDirect3DIndexBuffer9 **buffer) PURE; STDMETHOD(CreatePixelShader)(THIS_ const DWORD *byte_code, IDirect3DPixelShader9 **shader) PURE; STDMETHOD(SetPixelShader)(THIS_ IDirect3DPixelShader9 *shader) PURE; STDMETHOD(GetPixelShader)(THIS_ IDirect3DPixelShader9 **shader) PURE; STDMETHOD(SetPixelShaderConstantF)(THIS_ UINT reg_idx, const float *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantF)(THIS_ UINT reg_idx, float *data, UINT count) PURE; STDMETHOD(SetPixelShaderConstantI)(THIS_ UINT reg_idx, const int *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantI)(THIS_ UINT reg_idx, int *data, UINT count) PURE; STDMETHOD(SetPixelShaderConstantB)(THIS_ UINT reg_idx, const WINBOOL *data, UINT count) PURE; STDMETHOD(GetPixelShaderConstantB)(THIS_ UINT reg_idx, WINBOOL *data, UINT count) PURE; STDMETHOD(DrawRectPatch)(THIS_ UINT handle, const float *segment_count, const D3DRECTPATCH_INFO *patch_info) PURE; STDMETHOD(DrawTriPatch)(THIS_ UINT handle, const float *segment_count, const D3DTRIPATCH_INFO *patch_info) PURE; STDMETHOD(DeletePatch)(THIS_ UINT handle) PURE; STDMETHOD(CreateQuery)(THIS_ D3DQUERYTYPE type, IDirect3DQuery9 **query) PURE; /* IDirect3DDevice9Ex */ STDMETHOD(SetConvolutionMonoKernel)(THIS_ UINT width, UINT height, float *rows, float *columns) PURE; STDMETHOD(ComposeRects)(THIS_ IDirect3DSurface9 *src_surface, IDirect3DSurface9 *dst_surface, IDirect3DVertexBuffer9 *src_descs, UINT rect_count, IDirect3DVertexBuffer9 *dst_descs, D3DCOMPOSERECTSOP operation, INT offset_x, INT offset_y) PURE; STDMETHOD(PresentEx)(THIS_ const RECT *src_rect, const RECT *dst_rect, HWND dst_window_override, const RGNDATA *dirty_region, DWORD flags) PURE; STDMETHOD(GetGPUThreadPriority)(THIS_ INT *priority) PURE; STDMETHOD(SetGPUThreadPriority)(THIS_ INT priority) PURE; STDMETHOD(WaitForVBlank)(THIS_ UINT swapchain_idx) PURE; STDMETHOD(CheckResourceResidency)(THIS_ IDirect3DResource9 **resources, UINT32 resource_count) PURE; STDMETHOD(SetMaximumFrameLatency)(THIS_ UINT max_latency) PURE; STDMETHOD(GetMaximumFrameLatency)(THIS_ UINT *max_latency) PURE; STDMETHOD(CheckDeviceState)(THIS_ HWND dst_window) PURE; STDMETHOD(CreateRenderTargetEx)(THIS_ UINT width, UINT height, D3DFORMAT format, D3DMULTISAMPLE_TYPE multisample_type, DWORD multisample_quality, WINBOOL lockable, IDirect3DSurface9 **surface, HANDLE *shared_handle, DWORD usage) PURE; STDMETHOD(CreateOffscreenPlainSurfaceEx)(THIS_ UINT width, UINT Height, D3DFORMAT format, D3DPOOL pool, IDirect3DSurface9 **surface, HANDLE *shared_handle, DWORD usage) PURE; STDMETHOD(CreateDepthStencilSurfaceEx)(THIS_ UINT width, UINT height, D3DFORMAT format, D3DMULTISAMPLE_TYPE multisample_type, DWORD multisample_quality, WINBOOL discard, IDirect3DSurface9 **surface, HANDLE *shared_handle, DWORD usage) PURE; STDMETHOD(ResetEx)(THIS_ D3DPRESENT_PARAMETERS *parameters, D3DDISPLAYMODEEX *mode) PURE; STDMETHOD(GetDisplayModeEx)(THIS_ UINT swapchain_idx, D3DDISPLAYMODEEX *mode, D3DDISPLAYROTATION *rotation) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /* IUnknown */ #define IDirect3DDevice9Ex_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DDevice9Ex_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DDevice9Ex_Release(p) (p)->lpVtbl->Release(p) /* IDirect3DDevice9 */ #define IDirect3DDevice9Ex_TestCooperativeLevel(p) (p)->lpVtbl->TestCooperativeLevel(p) #define IDirect3DDevice9Ex_GetAvailableTextureMem(p) (p)->lpVtbl->GetAvailableTextureMem(p) #define IDirect3DDevice9Ex_EvictManagedResources(p) (p)->lpVtbl->EvictManagedResources(p) #define IDirect3DDevice9Ex_GetDirect3D(p,a) (p)->lpVtbl->GetDirect3D(p,a) #define IDirect3DDevice9Ex_GetDeviceCaps(p,a) (p)->lpVtbl->GetDeviceCaps(p,a) #define IDirect3DDevice9Ex_GetDisplayMode(p,a,b) (p)->lpVtbl->GetDisplayMode(p,a,b) #define IDirect3DDevice9Ex_GetCreationParameters(p,a) (p)->lpVtbl->GetCreationParameters(p,a) #define IDirect3DDevice9Ex_SetCursorProperties(p,a,b,c) (p)->lpVtbl->SetCursorProperties(p,a,b,c) #define IDirect3DDevice9Ex_SetCursorPosition(p,a,b,c) (p)->lpVtbl->SetCursorPosition(p,a,b,c) #define IDirect3DDevice9Ex_ShowCursor(p,a) (p)->lpVtbl->ShowCursor(p,a) #define IDirect3DDevice9Ex_CreateAdditionalSwapChain(p,a,b) (p)->lpVtbl->CreateAdditionalSwapChain(p,a,b) #define IDirect3DDevice9Ex_GetSwapChain(p,a,b) (p)->lpVtbl->GetSwapChain(p,a,b) #define IDirect3DDevice9Ex_GetNumberOfSwapChains(p) (p)->lpVtbl->GetNumberOfSwapChains(p) #define IDirect3DDevice9Ex_Reset(p,a) (p)->lpVtbl->Reset(p,a) #define IDirect3DDevice9Ex_Present(p,a,b,c,d) (p)->lpVtbl->Present(p,a,b,c,d) #define IDirect3DDevice9Ex_GetBackBuffer(p,a,b,c,d) (p)->lpVtbl->GetBackBuffer(p,a,b,c,d) #define IDirect3DDevice9Ex_GetRasterStatus(p,a,b) (p)->lpVtbl->GetRasterStatus(p,a,b) #define IDirect3DDevice9Ex_SetDialogBoxMode(p,a) (p)->lpVtbl->SetDialogBoxMode(p,a) #define IDirect3DDevice9Ex_SetGammaRamp(p,a,b,c) (p)->lpVtbl->SetGammaRamp(p,a,b,c) #define IDirect3DDevice9Ex_GetGammaRamp(p,a,b) (p)->lpVtbl->GetGammaRamp(p,a,b) #define IDirect3DDevice9Ex_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateTexture(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateCubeTexture(p,a,b,c,d,e,f,g) #define IDirect3DDevice9Ex_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateVertexBuffer(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->lpVtbl->CreateIndexBuffer(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateRenderTarget(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_UpdateSurface(p,a,b,c,d) (p)->lpVtbl->UpdateSurface(p,a,b,c,d) #define IDirect3DDevice9Ex_UpdateTexture(p,a,b) (p)->lpVtbl->UpdateTexture(p,a,b) #define IDirect3DDevice9Ex_GetRenderTargetData(p,a,b) (p)->lpVtbl->GetRenderTargetData(p,a,b) #define IDirect3DDevice9Ex_GetFrontBufferData(p,a,b) (p)->lpVtbl->GetFrontBufferData(p,a,b) #define IDirect3DDevice9Ex_StretchRect(p,a,b,c,d,e) (p)->lpVtbl->StretchRect(p,a,b,c,d,e) #define IDirect3DDevice9Ex_ColorFill(p,a,b,c) (p)->lpVtbl->ColorFill(p,a,b,c) #define IDirect3DDevice9Ex_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->lpVtbl->CreateOffscreenPlainSurface(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_SetRenderTarget(p,a,b) (p)->lpVtbl->SetRenderTarget(p,a,b) #define IDirect3DDevice9Ex_GetRenderTarget(p,a,b) (p)->lpVtbl->GetRenderTarget(p,a,b) #define IDirect3DDevice9Ex_SetDepthStencilSurface(p,a) (p)->lpVtbl->SetDepthStencilSurface(p,a) #define IDirect3DDevice9Ex_GetDepthStencilSurface(p,a) (p)->lpVtbl->GetDepthStencilSurface(p,a) #define IDirect3DDevice9Ex_BeginScene(p) (p)->lpVtbl->BeginScene(p) #define IDirect3DDevice9Ex_EndScene(p) (p)->lpVtbl->EndScene(p) #define IDirect3DDevice9Ex_Clear(p,a,b,c,d,e,f) (p)->lpVtbl->Clear(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_SetTransform(p,a,b) (p)->lpVtbl->SetTransform(p,a,b) #define IDirect3DDevice9Ex_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DDevice9Ex_MultiplyTransform(p,a,b) (p)->lpVtbl->MultiplyTransform(p,a,b) #define IDirect3DDevice9Ex_SetViewport(p,a) (p)->lpVtbl->SetViewport(p,a) #define IDirect3DDevice9Ex_GetViewport(p,a) (p)->lpVtbl->GetViewport(p,a) #define IDirect3DDevice9Ex_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DDevice9Ex_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DDevice9Ex_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) #define IDirect3DDevice9Ex_GetLight(p,a,b) (p)->lpVtbl->GetLight(p,a,b) #define IDirect3DDevice9Ex_LightEnable(p,a,b) (p)->lpVtbl->LightEnable(p,a,b) #define IDirect3DDevice9Ex_GetLightEnable(p,a,b) (p)->lpVtbl->GetLightEnable(p,a,b) #define IDirect3DDevice9Ex_SetClipPlane(p,a,b) (p)->lpVtbl->SetClipPlane(p,a,b) #define IDirect3DDevice9Ex_GetClipPlane(p,a,b) (p)->lpVtbl->GetClipPlane(p,a,b) #define IDirect3DDevice9Ex_SetRenderState(p,a,b) (p)->lpVtbl->SetRenderState(p,a,b) #define IDirect3DDevice9Ex_GetRenderState(p,a,b) (p)->lpVtbl->GetRenderState(p,a,b) #define IDirect3DDevice9Ex_CreateStateBlock(p,a,b) (p)->lpVtbl->CreateStateBlock(p,a,b) #define IDirect3DDevice9Ex_BeginStateBlock(p) (p)->lpVtbl->BeginStateBlock(p) #define IDirect3DDevice9Ex_EndStateBlock(p,a) (p)->lpVtbl->EndStateBlock(p,a) #define IDirect3DDevice9Ex_SetClipStatus(p,a) (p)->lpVtbl->SetClipStatus(p,a) #define IDirect3DDevice9Ex_GetClipStatus(p,a) (p)->lpVtbl->GetClipStatus(p,a) #define IDirect3DDevice9Ex_GetTexture(p,a,b) (p)->lpVtbl->GetTexture(p,a,b) #define IDirect3DDevice9Ex_SetTexture(p,a,b) (p)->lpVtbl->SetTexture(p,a,b) #define IDirect3DDevice9Ex_GetTextureStageState(p,a,b,c) (p)->lpVtbl->GetTextureStageState(p,a,b,c) #define IDirect3DDevice9Ex_SetTextureStageState(p,a,b,c) (p)->lpVtbl->SetTextureStageState(p,a,b,c) #define IDirect3DDevice9Ex_GetSamplerState(p,a,b,c) (p)->lpVtbl->GetSamplerState(p,a,b,c) #define IDirect3DDevice9Ex_SetSamplerState(p,a,b,c) (p)->lpVtbl->SetSamplerState(p,a,b,c) #define IDirect3DDevice9Ex_ValidateDevice(p,a) (p)->lpVtbl->ValidateDevice(p,a) #define IDirect3DDevice9Ex_SetPaletteEntries(p,a,b) (p)->lpVtbl->SetPaletteEntries(p,a,b) #define IDirect3DDevice9Ex_GetPaletteEntries(p,a,b) (p)->lpVtbl->GetPaletteEntries(p,a,b) #define IDirect3DDevice9Ex_SetCurrentTexturePalette(p,a) (p)->lpVtbl->SetCurrentTexturePalette(p,a) #define IDirect3DDevice9Ex_GetCurrentTexturePalette(p,a) (p)->lpVtbl->GetCurrentTexturePalette(p,a) #define IDirect3DDevice9Ex_SetScissorRect(p,a) (p)->lpVtbl->SetScissorRect(p,a) #define IDirect3DDevice9Ex_GetScissorRect(p,a) (p)->lpVtbl->GetScissorRect(p,a) #define IDirect3DDevice9Ex_SetSoftwareVertexProcessing(p,a) (p)->lpVtbl->SetSoftwareVertexProcessing(p,a) #define IDirect3DDevice9Ex_GetSoftwareVertexProcessing(p) (p)->lpVtbl->GetSoftwareVertexProcessing(p) #define IDirect3DDevice9Ex_SetNPatchMode(p,a) (p)->lpVtbl->SetNPatchMode(p,a) #define IDirect3DDevice9Ex_GetNPatchMode(p) (p)->lpVtbl->GetNPatchMode(p) #define IDirect3DDevice9Ex_DrawPrimitive(p,a,b,c) (p)->lpVtbl->DrawPrimitive(p,a,b,c) #define IDirect3DDevice9Ex_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->lpVtbl->DrawIndexedPrimitive(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_DrawPrimitiveUP(p,a,b,c,d) (p)->lpVtbl->DrawPrimitiveUP(p,a,b,c,d) #define IDirect3DDevice9Ex_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_ProcessVertices(p,a,b,c,d,e,f) (p)->lpVtbl->ProcessVertices(p,a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateVertexDeclaration(p,a,b) (p)->lpVtbl->CreateVertexDeclaration(p,a,b) #define IDirect3DDevice9Ex_SetVertexDeclaration(p,a) (p)->lpVtbl->SetVertexDeclaration(p,a) #define IDirect3DDevice9Ex_GetVertexDeclaration(p,a) (p)->lpVtbl->GetVertexDeclaration(p,a) #define IDirect3DDevice9Ex_SetFVF(p,a) (p)->lpVtbl->SetFVF(p,a) #define IDirect3DDevice9Ex_GetFVF(p,a) (p)->lpVtbl->GetFVF(p,a) #define IDirect3DDevice9Ex_CreateVertexShader(p,a,b) (p)->lpVtbl->CreateVertexShader(p,a,b) #define IDirect3DDevice9Ex_SetVertexShader(p,a) (p)->lpVtbl->SetVertexShader(p,a) #define IDirect3DDevice9Ex_GetVertexShader(p,a) (p)->lpVtbl->GetVertexShader(p,a) #define IDirect3DDevice9Ex_SetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantF(p,a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantF(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantF(p,a,b,c) #define IDirect3DDevice9Ex_SetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantI(p,a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantI(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantI(p,a,b,c) #define IDirect3DDevice9Ex_SetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->SetVertexShaderConstantB(p,a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantB(p,a,b,c) (p)->lpVtbl->GetVertexShaderConstantB(p,a,b,c) #define IDirect3DDevice9Ex_SetStreamSource(p,a,b,c,d) (p)->lpVtbl->SetStreamSource(p,a,b,c,d) #define IDirect3DDevice9Ex_GetStreamSource(p,a,b,c,d) (p)->lpVtbl->GetStreamSource(p,a,b,c,d) #define IDirect3DDevice9Ex_SetStreamSourceFreq(p,a,b) (p)->lpVtbl->SetStreamSourceFreq(p,a,b) #define IDirect3DDevice9Ex_GetStreamSourceFreq(p,a,b) (p)->lpVtbl->GetStreamSourceFreq(p,a,b) #define IDirect3DDevice9Ex_SetIndices(p,a) (p)->lpVtbl->SetIndices(p,a) #define IDirect3DDevice9Ex_GetIndices(p,a) (p)->lpVtbl->GetIndices(p,a) #define IDirect3DDevice9Ex_CreatePixelShader(p,a,b) (p)->lpVtbl->CreatePixelShader(p,a,b) #define IDirect3DDevice9Ex_SetPixelShader(p,a) (p)->lpVtbl->SetPixelShader(p,a) #define IDirect3DDevice9Ex_GetPixelShader(p,a) (p)->lpVtbl->GetPixelShader(p,a) #define IDirect3DDevice9Ex_SetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantF(p,a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantF(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantF(p,a,b,c) #define IDirect3DDevice9Ex_SetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantI(p,a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantI(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantI(p,a,b,c) #define IDirect3DDevice9Ex_SetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->SetPixelShaderConstantB(p,a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantB(p,a,b,c) (p)->lpVtbl->GetPixelShaderConstantB(p,a,b,c) #define IDirect3DDevice9Ex_DrawRectPatch(p,a,b,c) (p)->lpVtbl->DrawRectPatch(p,a,b,c) #define IDirect3DDevice9Ex_DrawTriPatch(p,a,b,c) (p)->lpVtbl->DrawTriPatch(p,a,b,c) #define IDirect3DDevice9Ex_DeletePatch(p,a) (p)->lpVtbl->DeletePatch(p,a) #define IDirect3DDevice9Ex_CreateQuery(p,a,b) (p)->lpVtbl->CreateQuery(p,a,b) /* IDirect3DDevice9Ex */ #define IDirect3DDevice9Ex_SetConvolutionMonoKernel(p,a,b,c,d) (p)->lpVtbl->SetConvolutionMonoKernel(p,a,b,c,d) #define IDirect3DDevice9Ex_ComposeRects(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->ComposeRects(p,a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_PresentEx(p,a,b,c,d,e) (p)->lpVtbl->PresentEx(p,a,b,c,d,e) #define IDirect3DDevice9Ex_GetGPUThreadPriority(p,a) (p)->lpVtbl->GetGPUThreadPriority(p,a) #define IDirect3DDevice9Ex_SetGPUThreadPriority(p,a) (p)->lpVtbl->SetGPUThreadPriority(p,a) #define IDirect3DDevice9Ex_WaitForVBlank(p,a) (p)->lpVtbl->WaitForVBlank(p,a) #define IDirect3DDevice9Ex_CheckResourceResidency(p,a,b) (p)->lpVtbl->CheckResourceResidency(p,a,b) #define IDirect3DDevice9Ex_SetMaximumFrameLatency(p,a) (p)->lpVtbl->SetMaximumFrameLatency(p,a) #define IDirect3DDevice9Ex_GetMaximumFrameLatency(p,a) (p)->lpVtbl->GetMaximumFrameLatency(p,a) #define IDirect3DDevice9Ex_CheckDeviceState(p,a) (p)->lpVtbl->CheckDeviceState(p,a) #define IDirect3DDevice9Ex_CreateRenderTargetEx(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateRenderTargetEx(p,a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_CreateOffscreenPlainSurfaceEx(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateOffscreenPlainSurfaceEx(p,a,b,c,d,e,f,g) #define IDirect3DDevice9Ex_CreateDepthStencilSurfaceEx(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateDepthStencilSurfaceEx(p,a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_ResetEx(p,a,b) (p)->lpVtbl->ResetEx(p,a,b) #define IDirect3DDevice9Ex_GetDisplayModeEx(p,a,b,c) (p)->lpVtbl->GetDisplayModeEx(p,a,b,c) #else /* IUnknown */ #define IDirect3DDevice9Ex_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DDevice9Ex_AddRef(p) (p)->AddRef() #define IDirect3DDevice9Ex_Release(p) (p)->Release() /* IDirect3DDevice9 */ #define IDirect3DDevice9Ex_TestCooperativeLevel(p) (p)->TestCooperativeLevel() #define IDirect3DDevice9Ex_GetAvailableTextureMem(p) (p)->GetAvailableTextureMem() #define IDirect3DDevice9Ex_EvictManagedResources(p) (p)->EvictManagedResources() #define IDirect3DDevice9Ex_GetDirect3D(p,a) (p)->GetDirect3D(a) #define IDirect3DDevice9Ex_GetDeviceCaps(p,a) (p)->GetDeviceCaps(a) #define IDirect3DDevice9Ex_GetDisplayMode(p,a,b) (p)->GetDisplayMode(a,b) #define IDirect3DDevice9Ex_GetCreationParameters(p,a) (p)->GetCreationParameters(a) #define IDirect3DDevice9Ex_SetCursorProperties(p,a,b,c) (p)->SetCursorProperties(a,b,c) #define IDirect3DDevice9Ex_SetCursorPosition(p,a,b,c) (p)->SetCursorPosition(a,b,c) #define IDirect3DDevice9Ex_ShowCursor(p,a) (p)->ShowCursor(a) #define IDirect3DDevice9Ex_CreateAdditionalSwapChain(p,a,b) (p)->CreateAdditionalSwapChain(a,b) #define IDirect3DDevice9Ex_GetSwapChain(p,a,b) (p)->GetSwapChain(a,b) #define IDirect3DDevice9Ex_GetNumberOfSwapChains(p) (p)->GetNumberOfSwapChains() #define IDirect3DDevice9Ex_Reset(p,a) (p)->Reset(a) #define IDirect3DDevice9Ex_Present(p,a,b,c,d) (p)->Present(a,b,c,d) #define IDirect3DDevice9Ex_GetBackBuffer(p,a,b,c,d) (p)->GetBackBuffer(a,b,c,d) #define IDirect3DDevice9Ex_GetRasterStatus(p,a,b) (p)->GetRasterStatus(a,b) #define IDirect3DDevice9Ex_SetDialogBoxMode(p,a) (p)->SetDialogBoxMode(a) #define IDirect3DDevice9Ex_SetGammaRamp(p,a,b,c) (p)->SetGammaRamp(a,b,c) #define IDirect3DDevice9Ex_GetGammaRamp(p,a,b) (p)->GetGammaRamp(a,b) #define IDirect3DDevice9Ex_CreateTexture(p,a,b,c,d,e,f,g,h) (p)->CreateTexture(a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_CreateVolumeTexture(p,a,b,c,d,e,f,g,h,i) (p)->CreateVolumeTexture(a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_CreateCubeTexture(p,a,b,c,d,e,f,g) (p)->CreateCubeTexture(a,b,c,d,e,f,g) #define IDirect3DDevice9Ex_CreateVertexBuffer(p,a,b,c,d,e,f) (p)->CreateVertexBuffer(a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateIndexBuffer(p,a,b,c,d,e,f) (p)->CreateIndexBuffer(a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateRenderTarget(p,a,b,c,d,e,f,g,h) (p)->CreateRenderTarget(a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_CreateDepthStencilSurface(p,a,b,c,d,e,f,g,h) (p)->CreateDepthStencilSurface(a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_UpdateSurface(p,a,b,c,d) (p)->UpdateSurface(a,b,c,d) #define IDirect3DDevice9Ex_UpdateTexture(p,a,b) (p)->UpdateTexture(a,b) #define IDirect3DDevice9Ex_GetRenderTargetData(p,a,b) (p)->GetRenderTargetData(a,b) #define IDirect3DDevice9Ex_GetFrontBufferData(p,a,b) (p)->GetFrontBufferData(a,b) #define IDirect3DDevice9Ex_StretchRect(p,a,b,c,d,e) (p)->StretchRect(a,b,c,d,e) #define IDirect3DDevice9Ex_ColorFill(p,a,b,c) (p)->ColorFill(a,b,c) #define IDirect3DDevice9Ex_CreateOffscreenPlainSurface(p,a,b,c,d,e,f) (p)->CreateOffscreenPlainSurface(a,b,c,d,e,f) #define IDirect3DDevice9Ex_SetRenderTarget(p,a,b) (p)->SetRenderTarget(a,b) #define IDirect3DDevice9Ex_GetRenderTarget(p,a,b) (p)->GetRenderTarget(a,b) #define IDirect3DDevice9Ex_SetDepthStencilSurface(p,a) (p)->SetDepthStencilSurface(a) #define IDirect3DDevice9Ex_GetDepthStencilSurface(p,a) (p)->GetDepthStencilSurface(a) #define IDirect3DDevice9Ex_BeginScene(p) (p)->BeginScene() #define IDirect3DDevice9Ex_EndScene(p) (p)->EndScene() #define IDirect3DDevice9Ex_Clear(p,a,b,c,d,e,f) (p)->Clear(a,b,c,d,e,f) #define IDirect3DDevice9Ex_SetTransform(p,a,b) (p)->SetTransform(a,b) #define IDirect3DDevice9Ex_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DDevice9Ex_MultiplyTransform(p,a,b) (p)->MultiplyTransform(a,b) #define IDirect3DDevice9Ex_SetViewport(p,a) (p)->SetViewport(a) #define IDirect3DDevice9Ex_GetViewport(p,a) (p)->GetViewport(a) #define IDirect3DDevice9Ex_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DDevice9Ex_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DDevice9Ex_SetLight(p,a,b) (p)->SetLight(a,b) #define IDirect3DDevice9Ex_GetLight(p,a,b) (p)->GetLight(a,b) #define IDirect3DDevice9Ex_LightEnable(p,a,b) (p)->LightEnable(a,b) #define IDirect3DDevice9Ex_GetLightEnable(p,a,b) (p)->GetLightEnable(a,b) #define IDirect3DDevice9Ex_SetClipPlane(p,a,b) (p)->SetClipPlane(a,b) #define IDirect3DDevice9Ex_GetClipPlane(p,a,b) (p)->GetClipPlane(a,b) #define IDirect3DDevice9Ex_SetRenderState(p,a,b) (p)->SetRenderState(a,b) #define IDirect3DDevice9Ex_GetRenderState(p,a,b) (p)->GetRenderState(a,b) #define IDirect3DDevice9Ex_CreateStateBlock(p,a,b) (p)->CreateStateBlock(a,b) #define IDirect3DDevice9Ex_BeginStateBlock(p) (p)->BeginStateBlock() #define IDirect3DDevice9Ex_EndStateBlock(p,a) (p)->EndStateBlock(a) #define IDirect3DDevice9Ex_SetClipStatus(p,a) (p)->SetClipStatus(a) #define IDirect3DDevice9Ex_GetClipStatus(p,a) (p)->GetClipStatus(a) #define IDirect3DDevice9Ex_GetTexture(p,a,b) (p)->GetTexture(a,b) #define IDirect3DDevice9Ex_SetTexture(p,a,b) (p)->SetTexture(a,b) #define IDirect3DDevice9Ex_GetTextureStageState(p,a,b,c) (p)->GetTextureStageState(a,b,c) #define IDirect3DDevice9Ex_SetTextureStageState(p,a,b,c) (p)->SetTextureStageState(a,b,c) #define IDirect3DDevice9Ex_GetSamplerState(p,a,b,c) (p)->GetSamplerState(a,b,c) #define IDirect3DDevice9Ex_SetSamplerState(p,a,b,c) (p)->SetSamplerState(a,b,c) #define IDirect3DDevice9Ex_ValidateDevice(p,a) (p)->ValidateDevice(a) #define IDirect3DDevice9Ex_SetPaletteEntries(p,a,b) (p)->SetPaletteEntries(a,b) #define IDirect3DDevice9Ex_GetPaletteEntries(p,a,b) (p)->GetPaletteEntries(a,b) #define IDirect3DDevice9Ex_SetCurrentTexturePalette(p,a) (p)->SetCurrentTexturePalette(a) #define IDirect3DDevice9Ex_GetCurrentTexturePalette(p,a) (p)->GetCurrentTexturePalette(a) #define IDirect3DDevice9Ex_SetScissorRect(p,a) (p)->SetScissorRect(a) #define IDirect3DDevice9Ex_GetScissorRect(p,a) (p)->GetScissorRect(a) #define IDirect3DDevice9Ex_SetSoftwareVertexProcessing(p,a) (p)->SetSoftwareVertexProcessing(a) #define IDirect3DDevice9Ex_GetSoftwareVertexProcessing(p) (p)->GetSoftwareVertexProcessing() #define IDirect3DDevice9Ex_SetNPatchMode(p,a) (p)->SetNPatchMode(a) #define IDirect3DDevice9Ex_GetNPatchMode(p) (p)->GetNPatchMode() #define IDirect3DDevice9Ex_DrawPrimitive(p,a,b,c) (p)->DrawPrimitive(a,b,c) #define IDirect3DDevice9Ex_DrawIndexedPrimitive(p,a,b,c,d,e,f) (p)->DrawIndexedPrimitive(a,b,c,d,e,f) #define IDirect3DDevice9Ex_DrawPrimitiveUP(p,a,b,c,d) (p)->DrawPrimitiveUP(a,b,c,d) #define IDirect3DDevice9Ex_DrawIndexedPrimitiveUP(p,a,b,c,d,e,f,g,h) (p)->DrawIndexedPrimitiveUP(a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_ProcessVertices(p,a,b,c,d,e,f) (p)->ProcessVertices(a,b,c,d,e,f) #define IDirect3DDevice9Ex_CreateVertexDeclaration(p,a,b) (p)->CreateVertexDeclaration(a,b) #define IDirect3DDevice9Ex_SetVertexDeclaration(p,a) (p)->SetVertexDeclaration(a) #define IDirect3DDevice9Ex_GetVertexDeclaration(p,a) (p)->GetVertexDeclaration(a) #define IDirect3DDevice9Ex_SetFVF(p,a) (p)->SetFVF(a) #define IDirect3DDevice9Ex_GetFVF(p,a) (p)->GetFVF(a) #define IDirect3DDevice9Ex_CreateVertexShader(p,a,b) (p)->CreateVertexShader(a,b) #define IDirect3DDevice9Ex_SetVertexShader(p,a) (p)->SetVertexShader(a) #define IDirect3DDevice9Ex_GetVertexShader(p,a) (p)->GetVertexShader(a) #define IDirect3DDevice9Ex_SetVertexShaderConstantF(p,a,b,c) (p)->SetVertexShaderConstantF(a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantF(p,a,b,c) (p)->GetVertexShaderConstantF(a,b,c) #define IDirect3DDevice9Ex_SetVertexShaderConstantI(p,a,b,c) (p)->SetVertexShaderConstantI(a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantI(p,a,b,c) (p)->GetVertexShaderConstantI(a,b,c) #define IDirect3DDevice9Ex_SetVertexShaderConstantB(p,a,b,c) (p)->SetVertexShaderConstantB(a,b,c) #define IDirect3DDevice9Ex_GetVertexShaderConstantB(p,a,b,c) (p)->GetVertexShaderConstantB(a,b,c) #define IDirect3DDevice9Ex_SetStreamSource(p,a,b,c,d) (p)->SetStreamSource(a,b,c,d) #define IDirect3DDevice9Ex_GetStreamSource(p,a,b,c,d) (p)->GetStreamSource(a,b,c,d) #define IDirect3DDevice9Ex_SetStreamSourceFreq(p,a,b) (p)->SetStreamSourceFreq(a,b) #define IDirect3DDevice9Ex_GetStreamSourceFreq(p,a,b) (p)->GetStreamSourceFreq(a,b) #define IDirect3DDevice9Ex_SetIndices(p,a) (p)->SetIndices(a) #define IDirect3DDevice9Ex_GetIndices(p,a) (p)->GetIndices(a) #define IDirect3DDevice9Ex_CreatePixelShader(p,a,b) (p)->CreatePixelShader(a,b) #define IDirect3DDevice9Ex_SetPixelShader(p,a) (p)->SetPixelShader(a) #define IDirect3DDevice9Ex_GetPixelShader(p,a) (p)->GetPixelShader(a) #define IDirect3DDevice9Ex_SetPixelShaderConstantF(p,a,b,c) (p)->SetPixelShaderConstantF(a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantF(p,a,b,c) (p)->GetPixelShaderConstantF(a,b,c) #define IDirect3DDevice9Ex_SetPixelShaderConstantI(p,a,b,c) (p)->SetPixelShaderConstantI(a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantI(p,a,b,c) (p)->GetPixelShaderConstantI(a,b,c) #define IDirect3DDevice9Ex_SetPixelShaderConstantB(p,a,b,c) (p)->SetPixelShaderConstantB(a,b,c) #define IDirect3DDevice9Ex_GetPixelShaderConstantB(p,a,b,c) (p)->GetPixelShaderConstantB(a,b,c) #define IDirect3DDevice9Ex_DrawRectPatch(p,a,b,c) (p)->DrawRectPatch(a,b,c) #define IDirect3DDevice9Ex_DrawTriPatch(p,a,b,c) (p)->DrawTriPatch(a,b,c) #define IDirect3DDevice9Ex_DeletePatch(p,a) (p)->DeletePatch(a) #define IDirect3DDevice9Ex_CreateQuery(p,a,b) (p)->CreateQuery(a,b) /* IDirect3DDevice9Ex */ #define IDirect3DDevice9Ex_SetConvolutionMonoKernel(p,a,b,c,d) (p)->SetConvolutionMonoKernel(a,b,c,d) #define IDirect3DDevice9Ex_ComposeRects(p,a,b,c,d,e,f,g,h) (p)->ComposeRects(a,b,c,d,e,f,g,h) #define IDirect3DDevice9Ex_PresentEx(p,a,b,c,d,e) (p)->PresentEx(a,b,c,d,e) #define IDirect3DDevice9Ex_GetGPUThreadPriority(p,a) (p)->GetGPUThreadPriority(a) #define IDirect3DDevice9Ex_SetGPUThreadPriority(p,a) (p)->SetGPUThreadPriority(a) #define IDirect3DDevice9Ex_WaitForVBlank(p,a) (p)->WaitForVBlank(a) #define IDirect3DDevice9Ex_CheckResourceResidency(p,a,b) (p)->CheckResourceResidency(a,b) #define IDirect3DDevice9Ex_SetMaximumFrameLatency(p,a) (p)->SetMaximumFrameLatency(a) #define IDirect3DDevice9Ex_GetMaximumFrameLatency(p,a) (p)->GetMaximumFrameLatency(a) #define IDirect3DDevice9Ex_CheckDeviceState(p,a) (p)->CheckDeviceState(a) #define IDirect3DDevice9Ex_CreateRenderTargetEx(p,a,b,c,d,e,f,g,h,i) (p)->CreateRenderTargetEx(a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_CreateOffscreenPlainSurfaceEx(p,a,b,c,d,e,f,g) (p)->CreateOffscreenPlainSurfaceEx(a,b,c,d,e,f,g) #define IDirect3DDevice9Ex_CreateDepthStencilSurfaceEx(p,a,b,c,d,e,f,g,h,i) (p)->CreateDepthStencilSurfaceEx(a,b,c,d,e,f,g,h,i) #define IDirect3DDevice9Ex_ResetEx(p,a,b) (p)->ResetEx(a,b) #define IDirect3DDevice9Ex_GetDisplayModeEx(p,a,b,c) (p)->GetDisplayModeEx(a,b,c) #endif #endif /* !defined(D3D_DISABLE_9EX) */ #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ int WINAPI D3DPERF_BeginEvent(D3DCOLOR color, const WCHAR *name); int WINAPI D3DPERF_EndEvent(void); DWORD WINAPI D3DPERF_GetStatus(void); WINBOOL WINAPI D3DPERF_QueryRepeatFrame(void); void WINAPI D3DPERF_SetMarker(D3DCOLOR color, const WCHAR *name); void WINAPI D3DPERF_SetOptions(DWORD options); void WINAPI D3DPERF_SetRegion(D3DCOLOR color, const WCHAR *name); IDirect3D9 * WINAPI Direct3DCreate9(UINT sdk_version); #ifndef D3D_DISABLE_9EX HRESULT WINAPI Direct3DCreate9Ex(UINT sdk_version, IDirect3D9Ex **d3d9ex); #endif #ifdef __cplusplus } /* extern "C" */ #endif /* defined(__cplusplus) */ #endif /* _D3D9_H_ */ dxvk-0~git20220822.9df86f2/d3d9caps.h000066400000000000000000000506421430055512200165710ustar00rootroot00000000000000/* * Copyright (C) 2002-2003 Jason Edmeades * Raphael Junqueira * * 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 */ #ifndef __WINE_D3D9CAPS_H #define __WINE_D3D9CAPS_H #ifdef __i386__ #include #endif /* * Definitions */ #define D3DCAPS_OVERLAY __MSABI_LONG(0x00000800) #define D3DCAPS_READ_SCANLINE __MSABI_LONG(0x00020000) #define D3DCURSORCAPS_COLOR 1 #define D3DCURSORCAPS_LOWRES 2 #define D3DDEVCAPS2_STREAMOFFSET __MSABI_LONG(0x00000001) #define D3DDEVCAPS2_DMAPNPATCH __MSABI_LONG(0x00000002) #define D3DDEVCAPS2_ADAPTIVETESSRTPATCH __MSABI_LONG(0x00000004) #define D3DDEVCAPS2_ADAPTIVETESSNPATCH __MSABI_LONG(0x00000008) #define D3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES __MSABI_LONG(0x00000010) #define D3DDEVCAPS2_PRESAMPLEDDMAPNPATCH __MSABI_LONG(0x00000020) #define D3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET __MSABI_LONG(0x00000040) #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x0000010 #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x0000020 #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x0000040 #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x0000080 #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x0000100 #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x0000200 #define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x0000400 #define D3DDEVCAPS_CANRENDERAFTERFLIP 0x0000800 #define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x0001000 #define D3DDEVCAPS_DRAWPRIMITIVES2 0x0002000 #define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x0004000 #define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x0008000 #define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x0010000 #define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x0020000 #define D3DDEVCAPS_HWRASTERIZATION 0x0080000 #define D3DDEVCAPS_PUREDEVICE 0x0100000 #define D3DDEVCAPS_QUINTICRTPATCHES 0x0200000 #define D3DDEVCAPS_RTPATCHES 0x0400000 #define D3DDEVCAPS_RTPATCHHANDLEZERO 0x0800000 #define D3DDEVCAPS_NPATCHES 0x1000000 #define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x00FFFF #define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x080000 #define D3DFVFCAPS_PSIZE 0x100000 #define D3DLINECAPS_TEXTURE 0x01 #define D3DLINECAPS_ZTEST 0x02 #define D3DLINECAPS_BLEND 0x04 #define D3DLINECAPS_ALPHACMP 0x08 #define D3DLINECAPS_FOG 0x10 #define D3DLINECAPS_ANTIALIAS 0x20 #define D3DPBLENDCAPS_ZERO __MSABI_LONG(0x00000001) #define D3DPBLENDCAPS_ONE __MSABI_LONG(0x00000002) #define D3DPBLENDCAPS_SRCCOLOR __MSABI_LONG(0x00000004) #define D3DPBLENDCAPS_INVSRCCOLOR __MSABI_LONG(0x00000008) #define D3DPBLENDCAPS_SRCALPHA __MSABI_LONG(0x00000010) #define D3DPBLENDCAPS_INVSRCALPHA __MSABI_LONG(0x00000020) #define D3DPBLENDCAPS_DESTALPHA __MSABI_LONG(0x00000040) #define D3DPBLENDCAPS_INVDESTALPHA __MSABI_LONG(0x00000080) #define D3DPBLENDCAPS_DESTCOLOR __MSABI_LONG(0x00000100) #define D3DPBLENDCAPS_INVDESTCOLOR __MSABI_LONG(0x00000200) #define D3DPBLENDCAPS_SRCALPHASAT __MSABI_LONG(0x00000400) #define D3DPBLENDCAPS_BOTHSRCALPHA __MSABI_LONG(0x00000800) #define D3DPBLENDCAPS_BOTHINVSRCALPHA __MSABI_LONG(0x00001000) #define D3DPBLENDCAPS_BLENDFACTOR __MSABI_LONG(0x00002000) #ifndef D3D_DISABLE_9EX #define D3DPBLENDCAPS_SRCCOLOR2 __MSABI_LONG(0x00004000) #define D3DPBLENDCAPS_INVSRCCOLOR2 __MSABI_LONG(0x00008000) #endif #define D3DPCMPCAPS_NEVER 0x01 #define D3DPCMPCAPS_LESS 0x02 #define D3DPCMPCAPS_EQUAL 0x04 #define D3DPCMPCAPS_LESSEQUAL 0x08 #define D3DPCMPCAPS_GREATER 0x10 #define D3DPCMPCAPS_NOTEQUAL 0x20 #define D3DPCMPCAPS_GREATEREQUAL 0x40 #define D3DPCMPCAPS_ALWAYS 0x80 #define D3DPMISCCAPS_MASKZ __MSABI_LONG(0x00000002) #define D3DPMISCCAPS_LINEPATTERNREP __MSABI_LONG(0x00000004) #define D3DPMISCCAPS_CULLNONE __MSABI_LONG(0x00000010) #define D3DPMISCCAPS_CULLCW __MSABI_LONG(0x00000020) #define D3DPMISCCAPS_CULLCCW __MSABI_LONG(0x00000040) #define D3DPMISCCAPS_COLORWRITEENABLE __MSABI_LONG(0x00000080) #define D3DPMISCCAPS_CLIPPLANESCALEDPOINTS __MSABI_LONG(0x00000100) #define D3DPMISCCAPS_CLIPTLVERTS __MSABI_LONG(0x00000200) #define D3DPMISCCAPS_TSSARGTEMP __MSABI_LONG(0x00000400) #define D3DPMISCCAPS_BLENDOP __MSABI_LONG(0x00000800) #define D3DPMISCCAPS_NULLREFERENCE __MSABI_LONG(0x00001000) #define D3DPMISCCAPS_INDEPENDENTWRITEMASKS __MSABI_LONG(0x00004000) #define D3DPMISCCAPS_PERSTAGECONSTANT __MSABI_LONG(0x00008000) #define D3DPMISCCAPS_FOGANDSPECULARALPHA __MSABI_LONG(0x00010000) #define D3DPMISCCAPS_SEPARATEALPHABLEND __MSABI_LONG(0x00020000) #define D3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS __MSABI_LONG(0x00040000) #define D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING __MSABI_LONG(0x00080000) #define D3DPMISCCAPS_FOGVERTEXCLAMPED __MSABI_LONG(0x00100000) #ifndef D3D_DISABLE_9EX #define D3DPMISCCAPS_POSTBLENDSRGBCONVERT __MSABI_LONG(0x00200000) #endif #define D3DPRASTERCAPS_DITHER __MSABI_LONG(0x00000001) #define D3DPRASTERCAPS_ZTEST __MSABI_LONG(0x00000010) #define D3DPRASTERCAPS_FOGVERTEX __MSABI_LONG(0x00000080) #define D3DPRASTERCAPS_FOGTABLE __MSABI_LONG(0x00000100) #define D3DPRASTERCAPS_MIPMAPLODBIAS __MSABI_LONG(0x00002000) #define D3DPRASTERCAPS_ZBUFFERLESSHSR __MSABI_LONG(0x00008000) #define D3DPRASTERCAPS_FOGRANGE __MSABI_LONG(0x00010000) #define D3DPRASTERCAPS_ANISOTROPY __MSABI_LONG(0x00020000) #define D3DPRASTERCAPS_WBUFFER __MSABI_LONG(0x00040000) #define D3DPRASTERCAPS_WFOG __MSABI_LONG(0x00100000) #define D3DPRASTERCAPS_ZFOG __MSABI_LONG(0x00200000) #define D3DPRASTERCAPS_COLORPERSPECTIVE __MSABI_LONG(0x00400000) #define D3DPRASTERCAPS_SCISSORTEST __MSABI_LONG(0x01000000) #define D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS __MSABI_LONG(0x02000000) #define D3DPRASTERCAPS_DEPTHBIAS __MSABI_LONG(0x04000000) #define D3DPRASTERCAPS_MULTISAMPLE_TOGGLE __MSABI_LONG(0x08000000) #define D3DPRESENT_INTERVAL_DEFAULT 0x00000000 #define D3DPRESENT_INTERVAL_ONE 0x00000001 #define D3DPRESENT_INTERVAL_TWO 0x00000002 #define D3DPRESENT_INTERVAL_THREE 0x00000004 #define D3DPRESENT_INTERVAL_FOUR 0x00000008 #define D3DPRESENT_INTERVAL_IMMEDIATE 0x80000000 #define D3DPSHADECAPS_COLORGOURAUDRGB 0x00008 #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00200 #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x04000 #define D3DPSHADECAPS_FOGGOURAUD 0x80000 #define D3DPTADDRESSCAPS_WRAP 0x01 #define D3DPTADDRESSCAPS_MIRROR 0x02 #define D3DPTADDRESSCAPS_CLAMP 0x04 #define D3DPTADDRESSCAPS_BORDER 0x08 #define D3DPTADDRESSCAPS_INDEPENDENTUV 0x10 #define D3DPTADDRESSCAPS_MIRRORONCE 0x20 #define D3DPTEXTURECAPS_PERSPECTIVE __MSABI_LONG(0x00000001) #define D3DPTEXTURECAPS_POW2 __MSABI_LONG(0x00000002) #define D3DPTEXTURECAPS_ALPHA __MSABI_LONG(0x00000004) #define D3DPTEXTURECAPS_SQUAREONLY __MSABI_LONG(0x00000020) #define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE __MSABI_LONG(0x00000040) #define D3DPTEXTURECAPS_ALPHAPALETTE __MSABI_LONG(0x00000080) #define D3DPTEXTURECAPS_NONPOW2CONDITIONAL __MSABI_LONG(0x00000100) #define D3DPTEXTURECAPS_PROJECTED __MSABI_LONG(0x00000400) #define D3DPTEXTURECAPS_CUBEMAP __MSABI_LONG(0x00000800) #define D3DPTEXTURECAPS_VOLUMEMAP __MSABI_LONG(0x00002000) #define D3DPTEXTURECAPS_MIPMAP __MSABI_LONG(0x00004000) #define D3DPTEXTURECAPS_MIPVOLUMEMAP __MSABI_LONG(0x00008000) #define D3DPTEXTURECAPS_MIPCUBEMAP __MSABI_LONG(0x00010000) #define D3DPTEXTURECAPS_CUBEMAP_POW2 __MSABI_LONG(0x00020000) #define D3DPTEXTURECAPS_VOLUMEMAP_POW2 __MSABI_LONG(0x00040000) #define D3DPTEXTURECAPS_NOPROJECTEDBUMPENV __MSABI_LONG(0x00200000) #define D3DPTFILTERCAPS_MINFPOINT __MSABI_LONG(0x00000100) #define D3DPTFILTERCAPS_MINFLINEAR __MSABI_LONG(0x00000200) #define D3DPTFILTERCAPS_MINFANISOTROPIC __MSABI_LONG(0x00000400) #define D3DPTFILTERCAPS_MINFPYRAMIDALQUAD __MSABI_LONG(0x00000800) #define D3DPTFILTERCAPS_MINFGAUSSIANQUAD __MSABI_LONG(0x00001000) #define D3DPTFILTERCAPS_MIPFPOINT __MSABI_LONG(0x00010000) #define D3DPTFILTERCAPS_MIPFLINEAR __MSABI_LONG(0x00020000) #ifndef D3D_DISABLE_9EX #define D3DPTFILTERCAPS_CONVOLUTIONMONO __MSABI_LONG(0x00040000) #endif #define D3DPTFILTERCAPS_MAGFPOINT __MSABI_LONG(0x01000000) #define D3DPTFILTERCAPS_MAGFLINEAR __MSABI_LONG(0x02000000) #define D3DPTFILTERCAPS_MAGFANISOTROPIC __MSABI_LONG(0x04000000) #define D3DPTFILTERCAPS_MAGFPYRAMIDALQUAD __MSABI_LONG(0x08000000) #define D3DPTFILTERCAPS_MAGFGAUSSIANQUAD __MSABI_LONG(0x10000000) #define D3DSTENCILCAPS_KEEP 0x01 #define D3DSTENCILCAPS_ZERO 0x02 #define D3DSTENCILCAPS_REPLACE 0x04 #define D3DSTENCILCAPS_INCRSAT 0x08 #define D3DSTENCILCAPS_DECRSAT 0x10 #define D3DSTENCILCAPS_INVERT 0x20 #define D3DSTENCILCAPS_INCR 0x40 #define D3DSTENCILCAPS_DECR 0x80 #define D3DSTENCILCAPS_TWOSIDED 0x100 #define D3DTEXOPCAPS_DISABLE 0x0000001 #define D3DTEXOPCAPS_SELECTARG1 0x0000002 #define D3DTEXOPCAPS_SELECTARG2 0x0000004 #define D3DTEXOPCAPS_MODULATE 0x0000008 #define D3DTEXOPCAPS_MODULATE2X 0x0000010 #define D3DTEXOPCAPS_MODULATE4X 0x0000020 #define D3DTEXOPCAPS_ADD 0x0000040 #define D3DTEXOPCAPS_ADDSIGNED 0x0000080 #define D3DTEXOPCAPS_ADDSIGNED2X 0x0000100 #define D3DTEXOPCAPS_SUBTRACT 0x0000200 #define D3DTEXOPCAPS_ADDSMOOTH 0x0000400 #define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x0000800 #define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x0001000 #define D3DTEXOPCAPS_BLENDFACTORALPHA 0x0002000 #define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x0004000 #define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x0008000 #define D3DTEXOPCAPS_PREMODULATE 0x0010000 #define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x0020000 #define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x0040000 #define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x0080000 #define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x0100000 #define D3DTEXOPCAPS_BUMPENVMAP 0x0200000 #define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x0400000 #define D3DTEXOPCAPS_DOTPRODUCT3 0x0800000 #define D3DTEXOPCAPS_MULTIPLYADD 0x1000000 #define D3DTEXOPCAPS_LERP 0x2000000 #define D3DVTXPCAPS_TEXGEN __MSABI_LONG(0x00000001) #define D3DVTXPCAPS_MATERIALSOURCE7 __MSABI_LONG(0x00000002) #define D3DVTXPCAPS_DIRECTIONALLIGHTS __MSABI_LONG(0x00000008) #define D3DVTXPCAPS_POSITIONALLIGHTS __MSABI_LONG(0x00000010) #define D3DVTXPCAPS_LOCALVIEWER __MSABI_LONG(0x00000020) #define D3DVTXPCAPS_TWEENING __MSABI_LONG(0x00000040) #define D3DVTXPCAPS_TEXGEN_SPHEREMAP __MSABI_LONG(0x00000100) #define D3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER __MSABI_LONG(0x00000200) #define D3DDTCAPS_UBYTE4 __MSABI_LONG(0x00000001) #define D3DDTCAPS_UBYTE4N __MSABI_LONG(0x00000002) #define D3DDTCAPS_SHORT2N __MSABI_LONG(0x00000004) #define D3DDTCAPS_SHORT4N __MSABI_LONG(0x00000008) #define D3DDTCAPS_USHORT2N __MSABI_LONG(0x00000010) #define D3DDTCAPS_USHORT4N __MSABI_LONG(0x00000020) #define D3DDTCAPS_UDEC3 __MSABI_LONG(0x00000040) #define D3DDTCAPS_DEC3N __MSABI_LONG(0x00000080) #define D3DDTCAPS_FLOAT16_2 __MSABI_LONG(0x00000100) #define D3DDTCAPS_FLOAT16_4 __MSABI_LONG(0x00000200) #define D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD __MSABI_LONG(0x00000020) #define D3DCAPS3_LINEAR_TO_SRGB_PRESENTATION __MSABI_LONG(0x00000080) #define D3DCAPS3_COPY_TO_VIDMEM __MSABI_LONG(0x00000100) #define D3DCAPS3_COPY_TO_SYSTEMMEM __MSABI_LONG(0x00000200) #define D3DCAPS3_DXVAHD __MSABI_LONG(0x00000400) #define D3DCAPS3_DXVAHD_LIMITED __MSABI_LONG(0x00000800) #define D3DCAPS3_RESERVED __MSABI_LONG(0x8000001F) #define D3DCAPS2_FULLSCREENGAMMA __MSABI_LONG(0x00020000) #define D3DCAPS2_CANCALIBRATEGAMMA __MSABI_LONG(0x00100000) #define D3DCAPS2_RESERVED __MSABI_LONG(0x02000000) #define D3DCAPS2_CANMANAGERESOURCE __MSABI_LONG(0x10000000) #define D3DCAPS2_DYNAMICTEXTURES __MSABI_LONG(0x20000000) #define D3DCAPS2_CANAUTOGENMIPMAP __MSABI_LONG(0x40000000) #ifndef D3D_DISABLE_9EX #define D3DCAPS2_CANSHARERESOURCE __MSABI_LONG(0x80000000) #endif #define D3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH 24 #define D3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH 0 #define D3DVS20_MAX_NUMTEMPS 32 #define D3DVS20_MIN_NUMTEMPS 12 #define D3DVS20_MAX_STATICFLOWCONTROLDEPTH 4 #define D3DVS20_MIN_STATICFLOWCONTROLDEPTH 1 #define D3DVS20CAPS_PREDICATION (1 << 0) #define D3DPS20CAPS_ARBITRARYSWIZZLE (1 << 0) #define D3DPS20CAPS_GRADIENTINSTRUCTIONS (1 << 1) #define D3DPS20CAPS_PREDICATION (1 << 2) #define D3DPS20CAPS_NODEPENDENTREADLIMIT (1 << 3) #define D3DPS20CAPS_NOTEXINSTRUCTIONLIMIT (1 << 4) #define D3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH 24 #define D3DPS20_MIN_DYNAMICFLOWCONTROLDEPTH 0 #define D3DPS20_MAX_NUMTEMPS 32 #define D3DPS20_MIN_NUMTEMPS 12 #define D3DPS20_MAX_STATICFLOWCONTROLDEPTH 4 #define D3DPS20_MIN_STATICFLOWCONTROLDEPTH 0 #define D3DPS20_MAX_NUMINSTRUCTIONSLOTS 512 #define D3DPS20_MIN_NUMINSTRUCTIONSLOTS 96 #define D3DMIN30SHADERINSTRUCTIONS 512 #define D3DMAX30SHADERINSTRUCTIONS 32768 typedef struct _D3DVSHADERCAPS2_0 { DWORD Caps; INT DynamicFlowControlDepth; INT NumTemps; INT StaticFlowControlDepth; } D3DVSHADERCAPS2_0; typedef struct _D3DPSHADERCAPS2_0 { DWORD Caps; INT DynamicFlowControlDepth; INT NumTemps; INT StaticFlowControlDepth; INT NumInstructionSlots; } D3DPSHADERCAPS2_0; /* * The d3dcaps9 structure */ typedef struct _D3DCAPS9 { 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, 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 PixelShader1xMaxValue; /* DX 9 */ DWORD DevCaps2; float MaxNpatchTessellationLevel; DWORD Reserved5; UINT MasterAdapterOrdinal; UINT AdapterOrdinalInGroup; UINT NumberOfAdaptersInGroup; DWORD DeclTypes; DWORD NumSimultaneousRTs; DWORD StretchRectFilterCaps; D3DVSHADERCAPS2_0 VS20Caps; D3DPSHADERCAPS2_0 PS20Caps; DWORD VertexTextureFilterCaps; DWORD MaxVShaderInstructionsExecuted; DWORD MaxPShaderInstructionsExecuted; DWORD MaxVertexShader30InstructionSlots; DWORD MaxPixelShader30InstructionSlots; } D3DCAPS9; #ifndef D3D_DISABLE_9EX #define D3DOVERLAYCAPS_FULLRANGERGB 0x00000001 #define D3DOVERLAYCAPS_LIMITEDRANGERGB 0x00000002 #define D3DOVERLAYCAPS_YCbCr_BT601 0x00000004 #define D3DOVERLAYCAPS_YCbCr_BT709 0x00000008 #define D3DOVERLAYCAPS_YCbCr_BT601_xvYCC 0x00000010 #define D3DOVERLAYCAPS_YCbCr_BT709_xvYCC 0x00000020 #define D3DOVERLAYCAPS_STRETCHX 0x00000040 #define D3DOVERLAYCAPS_STRETCHY 0x00000080 typedef struct _D3DOVERLAYCAPS { UINT Caps; UINT MaxOverlayDisplayWidth; UINT MaxOverlayDisplayHeight; } D3DOVERLAYCAPS; #define D3DCPCAPS_SOFTWARE 0x00000001 #define D3DCPCAPS_HARDWARE 0x00000002 #define D3DCPCAPS_PROTECTIONALWAYSON 0x00000004 #define D3DCPCAPS_PARTIALDECRYPTION 0x00000008 #define D3DCPCAPS_CONTENTKEY 0x00000010 #define D3DCPCAPS_FRESHENSESSIONKEY 0x00000020 #define D3DCPCAPS_ENCRYPTEDREADBACK 0x00000040 #define D3DCPCAPS_ENCRYPTEDREADBACKKEY 0x00000080 #define D3DCPCAPS_SEQUENTIAL_CTR_IV 0x00000100 #define D3DCPCAPS_ENCRYPTSLICEDATAONLY 0x00000200 typedef struct _D3DCONTENTPROTECTIONCAPS { DWORD Caps; GUID KeyExchangeType; UINT BufferAlignmentStart; UINT BlockAlignmentSize; ULONGLONG ProtectedMemorySize; } D3DCONTENTPROTECTIONCAPS; DEFINE_GUID(D3DCRYPTOTYPE_AES128_CTR, 0x9b6bd711, 0x4f74, 0x41c9, 0x9e, 0x7b, 0xb, 0xe2, 0xd7, 0xd9, 0x3b, 0x4f); DEFINE_GUID(D3DCRYPTOTYPE_PROPRIETARY, 0xab4e9afd, 0x1d1c, 0x46e6, 0xa7, 0x2f, 0x8, 0x69, 0x91, 0x7b, 0xd, 0xe8); DEFINE_GUID(D3DKEYEXCHANGE_RSAES_OAEP, 0xc1949895, 0xd72a, 0x4a1d, 0x8e, 0x5d, 0xed, 0x85, 0x7d, 0x17, 0x15, 0x20); DEFINE_GUID(D3DKEYEXCHANGE_DXVA, 0x43d3775c, 0x38e5, 0x4924, 0x8d, 0x86, 0xd3, 0xfc, 0xcf, 0x15, 0x3e, 0x9b); #endif #ifdef __i386__ #include #endif #endif dxvk-0~git20220822.9df86f2/d3d9types.h000066400000000000000000001503151430055512200170050ustar00rootroot00000000000000/* * Copyright (C) 2002-2003 Jason Edmeades * Copyright (C) 2002-2003 Raphael Junqueira * Copyright (C) 2005 Oliver Stieber * * 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 */ #ifndef __WINE_D3D9TYPES_H #define __WINE_D3D9TYPES_H #ifdef __i386__ #include #endif /***************************************************************************** * Direct 3D v9 #defines */ #define D3DCLEAR_TARGET __MSABI_LONG(0x00000001) #define D3DCLEAR_ZBUFFER __MSABI_LONG(0x00000002) #define D3DCLEAR_STENCIL __MSABI_LONG(0x00000004) #define D3DCLIPPLANE0 (1 << 0) #define D3DCLIPPLANE1 (1 << 1) #define D3DCLIPPLANE2 (1 << 2) #define D3DCLIPPLANE3 (1 << 3) #define D3DCLIPPLANE4 (1 << 4) #define D3DCLIPPLANE5 (1 << 5) #define D3DCOLOR_ARGB(a,r,g,b) ((D3DCOLOR)((((a)&0xffu)<<24)|(((r)&0xffu)<<16)|(((g)&0xffu)<<8)|((b)&0xffu))) #define D3DCOLOR_COLORVALUE(r,g,b,a) D3DCOLOR_RGBA((DWORD)((r)*255.f),(DWORD)((g)*255.f),(DWORD)((b)*255.f),(DWORD)((a)*255.f)) #define D3DCOLOR_RGBA(r,g,b,a) D3DCOLOR_ARGB(a,r,g,b) #define D3DCOLOR_XRGB(r,g,b) D3DCOLOR_ARGB(0xff,r,g,b) #define D3DCOLOR_XYUV(y,u,v) D3DCOLOR_ARGB(0xFF,y,u,v) #define D3DCOLOR_AYUV(a,y,u,v) D3DCOLOR_ARGB(a,y,u,v) #define D3DCS_LEFT __MSABI_LONG(0x001) #define D3DCS_RIGHT __MSABI_LONG(0x002) #define D3DCS_TOP __MSABI_LONG(0x004) #define D3DCS_BOTTOM __MSABI_LONG(0x008) #define D3DCS_FRONT __MSABI_LONG(0x010) #define D3DCS_BACK __MSABI_LONG(0x020) #define D3DCS_PLANE0 __MSABI_LONG(0x040) #define D3DCS_PLANE1 __MSABI_LONG(0x080) #define D3DCS_PLANE2 __MSABI_LONG(0x100) #define D3DCS_PLANE3 __MSABI_LONG(0x200) #define D3DCS_PLANE4 __MSABI_LONG(0x400) #define D3DCS_PLANE5 __MSABI_LONG(0x800) #define D3DCS_ALL __MSABI_LONG(0xFFF) #define D3DFVF_TEXTUREFORMAT1 3u #define D3DFVF_TEXTUREFORMAT2 0u #define D3DFVF_TEXTUREFORMAT3 1u #define D3DFVF_TEXTUREFORMAT4 2u #define D3DFVF_TEXCOORDSIZE1(CoordIndex) (D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE2(CoordIndex) (D3DFVF_TEXTUREFORMAT2) #define D3DFVF_TEXCOORDSIZE3(CoordIndex) (D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE4(CoordIndex) (D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16)) #define D3DLOCK_READONLY 0x0010 #define D3DLOCK_NOSYSLOCK 0x0800 #define D3DLOCK_NOOVERWRITE 0x1000 #define D3DLOCK_DISCARD 0x2000 #define D3DLOCK_DONOTWAIT 0x4000 #define D3DLOCK_NO_DIRTY_UPDATE 0x8000 #define D3DMAXUSERCLIPPLANES 32 #define D3DCLIPPLANE0 (1 << 0) #define D3DCLIPPLANE1 (1 << 1) #define D3DCLIPPLANE2 (1 << 2) #define D3DCLIPPLANE3 (1 << 3) #define D3DCLIPPLANE4 (1 << 4) #define D3DCLIPPLANE5 (1 << 5) #define D3DRENDERSTATE_WRAPBIAS __MSABI_LONG(128U) /* MSDN has this in d3d9caps.h, but it should be here */ #define D3DTSS_TCI_PASSTHRU 0x00000 #define D3DTSS_TCI_CAMERASPACENORMAL 0x10000 #define D3DTSS_TCI_CAMERASPACEPOSITION 0x20000 #define D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR 0x30000 #define D3DTSS_TCI_SPHEREMAP 0x40000 #define D3DTS_WORLD D3DTS_WORLDMATRIX(0) #define D3DTS_WORLD1 D3DTS_WORLDMATRIX(1) #define D3DTS_WORLD2 D3DTS_WORLDMATRIX(2) #define D3DTS_WORLD3 D3DTS_WORLDMATRIX(3) #define D3DTS_WORLDMATRIX(index) (D3DTRANSFORMSTATETYPE)(index + 256) #define D3DUSAGE_RENDERTARGET __MSABI_LONG(0x00000001) #define D3DUSAGE_DEPTHSTENCIL __MSABI_LONG(0x00000002) #define D3DUSAGE_WRITEONLY __MSABI_LONG(0x00000008) #define D3DUSAGE_SOFTWAREPROCESSING __MSABI_LONG(0x00000010) #define D3DUSAGE_DONOTCLIP __MSABI_LONG(0x00000020) #define D3DUSAGE_POINTS __MSABI_LONG(0x00000040) #define D3DUSAGE_RTPATCHES __MSABI_LONG(0x00000080) #define D3DUSAGE_NPATCHES __MSABI_LONG(0x00000100) #define D3DUSAGE_DYNAMIC __MSABI_LONG(0x00000200) #define D3DUSAGE_AUTOGENMIPMAP __MSABI_LONG(0x00000400) #define D3DUSAGE_DMAP __MSABI_LONG(0x00004000) /* Parts added with d3d9ex */ #if !defined(D3D_DISABLE_9EX) #define D3DUSAGE_RESTRICTED_CONTENT __MSABI_LONG(0x00000800) #define D3DUSAGE_RESTRICT_SHARED_RESOURCE_DRIVER __MSABI_LONG(0x00001000) #define D3DUSAGE_RESTRICT_SHARED_RESOURCE __MSABI_LONG(0x00002000) #define D3DUSAGE_NONSECURE __MSABI_LONG(0x00800000) #define D3DUSAGE_TEXTAPI __MSABI_LONG(0x10000000) #endif /* D3D_DISABLE_9EX */ #define D3DUSAGE_QUERY_LEGACYBUMPMAP __MSABI_LONG(0x00008000) #define D3DUSAGE_QUERY_SRGBREAD __MSABI_LONG(0x00010000) #define D3DUSAGE_QUERY_FILTER __MSABI_LONG(0x00020000) #define D3DUSAGE_QUERY_SRGBWRITE __MSABI_LONG(0x00040000) #define D3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING __MSABI_LONG(0x00080000) #define D3DUSAGE_QUERY_VERTEXTEXTURE __MSABI_LONG(0x00100000) #define D3DUSAGE_QUERY_WRAPANDMIP __MSABI_LONG(0x00200000) #define D3DWRAP_U 1 #define D3DWRAP_V 2 #define D3DWRAP_W 4 #define D3DWRAPCOORD_0 1 #define D3DWRAPCOORD_1 2 #define D3DWRAPCOORD_2 4 #define D3DWRAPCOORD_3 8 #define MAX_DEVICE_IDENTIFIER_STRING 512 #define D3DFVF_RESERVED0 0x0001 #define D3DFVF_POSITION_MASK 0x400E #define D3DFVF_XYZ 0x0002 #define D3DFVF_XYZRHW 0x0004 #define D3DFVF_XYZB1 0x0006 #define D3DFVF_XYZB2 0x0008 #define D3DFVF_XYZB3 0x000a #define D3DFVF_XYZB4 0x000c #define D3DFVF_XYZB5 0x000e #define D3DFVF_XYZW 0x4002 #define D3DFVF_NORMAL 0x0010 #define D3DFVF_PSIZE 0x0020 #define D3DFVF_DIFFUSE 0x0040 #define D3DFVF_SPECULAR 0x0080 #define D3DFVF_TEXCOUNT_MASK 0x0f00 #define D3DFVF_TEXCOUNT_SHIFT 8 #define D3DFVF_TEX0 0x0000 #define D3DFVF_TEX1 0x0100 #define D3DFVF_TEX2 0x0200 #define D3DFVF_TEX3 0x0300 #define D3DFVF_TEX4 0x0400 #define D3DFVF_TEX5 0x0500 #define D3DFVF_TEX6 0x0600 #define D3DFVF_TEX7 0x0700 #define D3DFVF_TEX8 0x0800 #define D3DFVF_LASTBETA_UBYTE4 0x1000 #define D3DFVF_LASTBETA_D3DCOLOR 0x8000 #define D3DFVF_RESERVED2 0x6000 #define D3DTA_SELECTMASK 0x0000000f #define D3DTA_DIFFUSE 0x00000000 #define D3DTA_CURRENT 0x00000001 #define D3DTA_TEXTURE 0x00000002 #define D3DTA_TFACTOR 0x00000003 #define D3DTA_SPECULAR 0x00000004 #define D3DTA_TEMP 0x00000005 #define D3DTA_CONSTANT 0x00000006 #define D3DTA_COMPLEMENT 0x00000010 #define D3DTA_ALPHAREPLICATE 0x00000020 #define D3DCOLORWRITEENABLE_RED (__MSABI_LONG(1)<<0) #define D3DCOLORWRITEENABLE_GREEN (__MSABI_LONG(1)<<1) #define D3DCOLORWRITEENABLE_BLUE (__MSABI_LONG(1)<<2) #define D3DCOLORWRITEENABLE_ALPHA (__MSABI_LONG(1)<<3) #define D3DPV_DONOTCOPYDATA (1 << 0) #define D3DSTREAMSOURCE_INDEXEDDATA (1u << 30) #define D3DSTREAMSOURCE_INSTANCEDATA (2u << 30) #define D3D_MAX_SIMULTANEOUS_RENDERTARGETS 4 #define MAXD3DDECLLENGTH 64 /* +end marker */ #define MAXD3DDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED #define MAXD3DDECLTYPE D3DDECLTYPE_UNUSED #define MAXD3DDECLUSAGE D3DDECLUSAGE_SAMPLE #define MAXD3DDECLUSAGEINDEX 15 #define D3DDMAPSAMPLER 256 #define D3DVERTEXTEXTURESAMPLER0 (D3DDMAPSAMPLER+1) #define D3DVERTEXTEXTURESAMPLER1 (D3DDMAPSAMPLER+2) #define D3DVERTEXTEXTURESAMPLER2 (D3DDMAPSAMPLER+3) #define D3DVERTEXTEXTURESAMPLER3 (D3DDMAPSAMPLER+4) #ifndef MAKEFOURCC #define MAKEFOURCC(ch0, ch1, ch2, ch3) \ ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \ ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 )) #endif /* Constants used by D3DPRESENT_PARAMETERS. when creating a device or swapchain */ #define D3DPRESENTFLAG_LOCKABLE_BACKBUFFER 0x00000001 /* Create a lockable backbuffer */ #define D3DPRESENTFLAG_DISCARD_DEPTHSTENCIL 0x00000002 /* Discard Z buffer */ #define D3DPRESENTFLAG_DEVICECLIP 0x00000004 /* Clip the window blited into the client area 2k + xp only */ #define D3DPRESENTFLAG_VIDEO 0x00000010 /* backbuffer 'may' contain video data */ #ifndef D3D_DISABLE_9EX #define D3DPRESENTFLAG_NOAUTOROTATE 0x00000020 /* d3d9ex, ignore display rotation */ #define D3DPRESENTFLAG_UNPRUNEDMODE 0x00000040 /* d3d9ex, specify invalid display modes */ #define D3DPRESENTFLAG_OVERLAY_LIMITEDRGB 0x00000080 #define D3DPRESENTFLAG_OVERLAY_YCbCr_BT709 0x00000100 #define D3DPRESENTFLAG_OVERLAY_YCbCr_xvYCC 0x00000200 #define D3DPRESENTFLAG_RESTRICTED_CONTENT 0x00000400 #define D3DPRESENTFLAG_RESTRICT_SHARED_RESOURCE_DRIVER 0x00000800 #endif #define D3DPRESENT_RATE_DEFAULT 0x00000000 /**************************** * Vertex Shaders Declaration */ typedef enum _D3DDECLUSAGE { D3DDECLUSAGE_POSITION = 0, D3DDECLUSAGE_BLENDWEIGHT = 1, D3DDECLUSAGE_BLENDINDICES = 2, D3DDECLUSAGE_NORMAL = 3, D3DDECLUSAGE_PSIZE = 4, D3DDECLUSAGE_TEXCOORD = 5, D3DDECLUSAGE_TANGENT = 6, D3DDECLUSAGE_BINORMAL = 7, D3DDECLUSAGE_TESSFACTOR = 8, D3DDECLUSAGE_POSITIONT = 9, D3DDECLUSAGE_COLOR = 10, D3DDECLUSAGE_FOG = 11, D3DDECLUSAGE_DEPTH = 12, D3DDECLUSAGE_SAMPLE = 13 } D3DDECLUSAGE; #define D3DMAXDECLUSAGE D3DDECLUSAGE_SAMPLE #define D3DMAXDECLUSAGEINDEX 15 #define D3DMAXDECLLENGTH 18 #define D3DMAXDECLUSAGE_DX8 D3DDECLUSAGE_TEXCOORD typedef enum _D3DDECLMETHOD { D3DDECLMETHOD_DEFAULT = 0, D3DDECLMETHOD_PARTIALU = 1, D3DDECLMETHOD_PARTIALV = 2, D3DDECLMETHOD_CROSSUV = 3, D3DDECLMETHOD_UV = 4, D3DDECLMETHOD_LOOKUP = 5, D3DDECLMETHOD_LOOKUPPRESAMPLED = 6 } D3DDECLMETHOD; #define D3DMAXDECLMETHOD D3DDECLMETHOD_LOOKUPPRESAMPLED typedef enum _D3DDECLTYPE { D3DDECLTYPE_FLOAT1 = 0, D3DDECLTYPE_FLOAT2 = 1, D3DDECLTYPE_FLOAT3 = 2, D3DDECLTYPE_FLOAT4 = 3, D3DDECLTYPE_D3DCOLOR = 4, D3DDECLTYPE_UBYTE4 = 5, D3DDECLTYPE_SHORT2 = 6, D3DDECLTYPE_SHORT4 = 7, /* VS 2.0 */ D3DDECLTYPE_UBYTE4N = 8, D3DDECLTYPE_SHORT2N = 9, D3DDECLTYPE_SHORT4N = 10, D3DDECLTYPE_USHORT2N = 11, D3DDECLTYPE_USHORT4N = 12, D3DDECLTYPE_UDEC3 = 13, D3DDECLTYPE_DEC3N = 14, D3DDECLTYPE_FLOAT16_2 = 15, D3DDECLTYPE_FLOAT16_4 = 16, D3DDECLTYPE_UNUSED = 17, } D3DDECLTYPE; #define D3DMAXDECLTYPE D3DDECLTYPE_UNUSED typedef struct _D3DVERTEXELEMENT9 { WORD Stream; WORD Offset; BYTE Type; BYTE Method; BYTE Usage; BYTE UsageIndex; } D3DVERTEXELEMENT9, *LPD3DVERTEXELEMENT9; typedef enum _D3DQUERYTYPE { D3DQUERYTYPE_VCACHE = 4, D3DQUERYTYPE_RESOURCEMANAGER = 5, D3DQUERYTYPE_VERTEXSTATS = 6, D3DQUERYTYPE_EVENT = 8, D3DQUERYTYPE_OCCLUSION = 9, D3DQUERYTYPE_TIMESTAMP = 10, D3DQUERYTYPE_TIMESTAMPDISJOINT = 11, D3DQUERYTYPE_TIMESTAMPFREQ = 12, D3DQUERYTYPE_PIPELINETIMINGS = 13, D3DQUERYTYPE_INTERFACETIMINGS = 14, D3DQUERYTYPE_VERTEXTIMINGS = 15, D3DQUERYTYPE_PIXELTIMINGS = 16, D3DQUERYTYPE_BANDWIDTHTIMINGS = 17, D3DQUERYTYPE_CACHEUTILIZATION = 18, #ifndef D3D_DISABLE_9EX D3DQUERYTYPE_MEMORYPRESSURE = 19, #endif } D3DQUERYTYPE; #define D3DISSUE_BEGIN (1 << 1) #define D3DISSUE_END (1 << 0) #define D3DGETDATA_FLUSH (1 << 0) #define D3DDECL_END() {0xFF,0,D3DDECLTYPE_UNUSED,0,0,0} #define D3DDP_MAXTEXCOORD 8 #define D3DVSD_MAKETOKENTYPE(TokenType) \ ((TokenType << D3DVSD_TOKENTYPESHIFT) & D3DVSD_TOKENTYPEMASK) #define D3DVSD_CONST(ConstantAddress, Count) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_CONSTMEM) | ((Count) << D3DVSD_CONSTCOUNTSHIFT) | (ConstantAddress)) #define D3DVSD_END() 0xFFFFFFFF #define D3DVSD_NOP() 0x00000000 #define D3DVSD_REG(VertexRegister, Type) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | ((Type) << D3DVSD_DATATYPESHIFT) | (VertexRegister)) #define D3DVSD_SKIP(Count) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAMDATA) | 0x10000000 | ((Count) << D3DVSD_SKIPCOUNTSHIFT)) #define D3DVSD_STREAM(StreamNumber) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (StreamNumber)) #define D3DVSD_STREAM_TESS() \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_STREAM) | (D3DVSD_STREAMTESSMASK)) #define D3DVSD_TESSNORMAL(RegisterIn, RegisterOut) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | ((RegisterIn) << D3DVSD_VERTEXREGINSHIFT) | ((0x02) << D3DVSD_DATATYPESHIFT) | (RegisterOut)) #define D3DVSD_TESSUV(Register) \ (D3DVSD_MAKETOKENTYPE(D3DVSD_TOKEN_TESSELLATOR) | 0x10000000 | ((0x01) << D3DVSD_DATATYPESHIFT) | (Register)) /******************************** * Pixel/Vertex Shaders Functions */ /** Maximum number of supported texture coordinates sets operation */ #define D3DDP_MAXTEXCOORD 8 /** opcode token mask */ #define D3DSI_OPCODE_MASK 0x0000FFFF #define D3DSI_INSTLENGTH_MASK 0x0F000000 #define D3DSI_INSTLENGTH_SHIFT 24 /** opcodes types for PS and VS */ typedef enum _D3DSHADER_INSTRUCTION_OPCODE_TYPE { D3DSIO_NOP = 0, D3DSIO_MOV = 1, D3DSIO_ADD = 2, D3DSIO_SUB = 3, D3DSIO_MAD = 4, D3DSIO_MUL = 5, D3DSIO_RCP = 6, D3DSIO_RSQ = 7, D3DSIO_DP3 = 8, D3DSIO_DP4 = 9, D3DSIO_MIN = 10, D3DSIO_MAX = 11, D3DSIO_SLT = 12, D3DSIO_SGE = 13, D3DSIO_EXP = 14, D3DSIO_LOG = 15, D3DSIO_LIT = 16, D3DSIO_DST = 17, D3DSIO_LRP = 18, D3DSIO_FRC = 19, D3DSIO_M4x4 = 20, D3DSIO_M4x3 = 21, D3DSIO_M3x4 = 22, D3DSIO_M3x3 = 23, D3DSIO_M3x2 = 24, D3DSIO_CALL = 25, D3DSIO_CALLNZ = 26, D3DSIO_LOOP = 27, D3DSIO_RET = 28, D3DSIO_ENDLOOP = 29, D3DSIO_LABEL = 30, D3DSIO_DCL = 31, D3DSIO_POW = 32, D3DSIO_CRS = 33, D3DSIO_SGN = 34, D3DSIO_ABS = 35, D3DSIO_NRM = 36, D3DSIO_SINCOS = 37, D3DSIO_REP = 38, D3DSIO_ENDREP = 39, D3DSIO_IF = 40, D3DSIO_IFC = 41, D3DSIO_ELSE = 42, D3DSIO_ENDIF = 43, D3DSIO_BREAK = 44, D3DSIO_BREAKC = 45, D3DSIO_MOVA = 46, D3DSIO_DEFB = 47, D3DSIO_DEFI = 48, D3DSIO_TEXCOORD = 64, D3DSIO_TEXKILL = 65, D3DSIO_TEX = 66, D3DSIO_TEXBEM = 67, D3DSIO_TEXBEML = 68, D3DSIO_TEXREG2AR = 69, D3DSIO_TEXREG2GB = 70, D3DSIO_TEXM3x2PAD = 71, D3DSIO_TEXM3x2TEX = 72, D3DSIO_TEXM3x3PAD = 73, D3DSIO_TEXM3x3TEX = 74, D3DSIO_TEXM3x3DIFF = 75, D3DSIO_TEXM3x3SPEC = 76, D3DSIO_TEXM3x3VSPEC = 77, D3DSIO_EXPP = 78, D3DSIO_LOGP = 79, D3DSIO_CND = 80, D3DSIO_DEF = 81, D3DSIO_TEXREG2RGB = 82, D3DSIO_TEXDP3TEX = 83, D3DSIO_TEXM3x2DEPTH = 84, D3DSIO_TEXDP3 = 85, D3DSIO_TEXM3x3 = 86, D3DSIO_TEXDEPTH = 87, D3DSIO_CMP = 88, D3DSIO_BEM = 89, D3DSIO_DP2ADD = 90, D3DSIO_DSX = 91, D3DSIO_DSY = 92, D3DSIO_TEXLDD = 93, D3DSIO_SETP = 94, D3DSIO_TEXLDL = 95, D3DSIO_BREAKP = 96, D3DSIO_PHASE = 0xFFFD, D3DSIO_COMMENT = 0xFFFE, D3DSIO_END = 0XFFFF, D3DSIO_FORCE_DWORD = 0X7FFFFFFF /** for 32-bit alignment */ } D3DSHADER_INSTRUCTION_OPCODE_TYPE; #define D3DSINCOSCONST1 -1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f #define D3DSINCOSCONST2 -0.020833334f, -0.12500000f, 1.0f, 0.50000000f #define D3DSHADER_INSTRUCTION_PREDICATED (1 << 28) #define D3DSI_TEXLD_PROJECT 0x00010000 #define D3DSI_TEXLD_BIAS 0x00020000 /** for parallelism */ #define D3DSI_COISSUE 0x40000000 #define D3DSP_DCL_USAGE_SHIFT 0 #define D3DSP_DCL_USAGE_MASK 0x0000000f #define D3DSP_DCL_USAGEINDEX_SHIFT 16 #define D3DSP_DCL_USAGEINDEX_MASK 0x000f0000 #define D3DSP_OPCODESPECIFICCONTROL_SHIFT 16 #define D3DSP_OPCODESPECIFICCONTROL_MASK 0x00ff0000 #define D3DSP_TEXTURETYPE_SHIFT 27 #define D3DSP_TEXTURETYPE_MASK 0x78000000 typedef enum _D3DSAMPLER_TEXTURE_TYPE { D3DSTT_UNKNOWN = 0 << D3DSP_TEXTURETYPE_SHIFT, D3DSTT_1D = 1 << D3DSP_TEXTURETYPE_SHIFT, D3DSTT_2D = 2 << D3DSP_TEXTURETYPE_SHIFT, D3DSTT_CUBE = 3 << D3DSP_TEXTURETYPE_SHIFT, D3DSTT_VOLUME = 4 << D3DSP_TEXTURETYPE_SHIFT, D3DSTT_FORCE_DWORD = 0x7FFFFFFF } D3DSAMPLER_TEXTURE_TYPE; #define D3DSP_REGNUM_MASK 0x000007FF /** destination parameter modifiers (.xyzw) */ #define D3DSP_WRITEMASK_0 0x00010000 /* .x r */ #define D3DSP_WRITEMASK_1 0x00020000 /* .y g */ #define D3DSP_WRITEMASK_2 0x00040000 /* .z b */ #define D3DSP_WRITEMASK_3 0x00080000 /* .w a */ #define D3DSP_WRITEMASK_ALL 0x000F0000 /* all */ #define D3DSP_DSTMOD_SHIFT 20 #define D3DSP_DSTMOD_MASK (0xF << D3DSP_DSTMOD_SHIFT) typedef enum _D3DSHADER_PARAM_DSTMOD_TYPE { D3DSPDM_NONE = 0 << D3DSP_DSTMOD_SHIFT, D3DSPDM_SATURATE = 1 << D3DSP_DSTMOD_SHIFT, D3DSPDM_PARTIALPRECISION = 2 << D3DSP_DSTMOD_SHIFT, D3DSPDM_MSAMPCENTROID = 4 << D3DSP_DSTMOD_SHIFT, D3DSPDM_FORCE_DWORD = 0x7FFFFFFF } D3DSHADER_PARAM_DSTMOD_TYPE; /** destination param */ #define D3DSP_DSTSHIFT_SHIFT 24 #define D3DSP_DSTSHIFT_MASK (0xF << D3DSP_DSTSHIFT_SHIFT) /** destination/source reg type */ #define D3DSP_REGTYPE_SHIFT 28 #define D3DSP_REGTYPE_SHIFT2 8 #define D3DSP_REGTYPE_MASK (0x7 << D3DSP_REGTYPE_SHIFT) #define D3DSP_REGTYPE_MASK2 0x00001800 typedef enum _D3DSHADER_PARAM_REGISTER_TYPE { D3DSPR_TEMP = 0, D3DSPR_INPUT = 1, D3DSPR_CONST = 2, D3DSPR_ADDR = 3, D3DSPR_TEXTURE = 3, D3DSPR_RASTOUT = 4, D3DSPR_ATTROUT = 5, D3DSPR_TEXCRDOUT = 6, D3DSPR_OUTPUT = 6, D3DSPR_CONSTINT = 7, D3DSPR_COLOROUT = 8, D3DSPR_DEPTHOUT = 9, D3DSPR_SAMPLER = 10, D3DSPR_CONST2 = 11, D3DSPR_CONST3 = 12, D3DSPR_CONST4 = 13, D3DSPR_CONSTBOOL = 14, D3DSPR_LOOP = 15, D3DSPR_TEMPFLOAT16 = 16, D3DSPR_MISCTYPE = 17, D3DSPR_LABEL = 18, D3DSPR_PREDICATE = 19, D3DSPR_FORCE_DWORD = 0x7fffffff } D3DSHADER_PARAM_REGISTER_TYPE; typedef enum _D3DSHADER_MISCTYPE_OFFSETS { D3DSMO_POSITION = 0, D3DSMO_FACE = 1 } D3DSHADER_MISCTYPE_OFFSETS; typedef enum _D3DVS_RASTOUT_OFFSETS { D3DSRO_POSITION = 0, D3DSRO_FOG = 1, D3DSRO_POINT_SIZE = 2, D3DSRO_FORCE_DWORD = 0x7FFFFFFF } D3DVS_RASTOUT_OFFSETS; #define D3DVS_ADDRESSMODE_SHIFT 13 #define D3DVS_ADDRESSMODE_MASK (0x1 << D3DVS_ADDRESSMODE_SHIFT) typedef enum _D3DVS_ADDRESSMODE_TYPE { D3DVS_ADDRMODE_ABSOLUTE = 0 << D3DVS_ADDRESSMODE_SHIFT, D3DVS_ADDRMODE_RELATIVE = 1 << D3DVS_ADDRESSMODE_SHIFT, D3DVS_ADDRMODE_FORCE_DWORD = 0x7FFFFFFF } D3DVS_ADDRESSMODE_TYPE; #define D3DSHADER_ADDRESSMODE_SHIFT 13 #define D3DSHADER_ADDRESSMODE_MASK (1 << D3DSHADER_ADDRESSMODE_SHIFT) typedef enum _D3DSHADER_ADDRESSMODE_TYPE { D3DSHADER_ADDRMODE_ABSOLUTE = 0 << D3DSHADER_ADDRESSMODE_SHIFT, D3DSHADER_ADDRMODE_RELATIVE = 1 << D3DSHADER_ADDRESSMODE_SHIFT, D3DSHADER_ADDRMODE_FORCE_DWORD = 0x7FFFFFFF } D3DSHADER_ADDRESSMODE_TYPE; #define D3DVS_SWIZZLE_SHIFT 16 #define D3DVS_SWIZZLE_MASK (0xFF << D3DVS_SWIZZLE_SHIFT) #define D3DSP_SWIZZLE_SHIFT 16 #define D3DSP_SWIZZLE_MASK (0xFF << D3DSP_SWIZZLE_SHIFT) #define D3DVS_X_X (0 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_Y (1 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_Z (2 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_X_W (3 << D3DVS_SWIZZLE_SHIFT) #define D3DVS_Y_X (0 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_Y (1 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_Z (2 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Y_W (3 << (D3DVS_SWIZZLE_SHIFT + 2)) #define D3DVS_Z_X (0 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_Y (1 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_Z (2 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_Z_W (3 << (D3DVS_SWIZZLE_SHIFT + 4)) #define D3DVS_W_X (0 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_Y (1 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_Z (2 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_W_W (3 << (D3DVS_SWIZZLE_SHIFT + 6)) #define D3DVS_NOSWIZZLE (D3DVS_X_X | D3DVS_Y_Y | D3DVS_Z_Z | D3DVS_W_W) #define D3DSP_NOSWIZZLE \ ((0 << (D3DSP_SWIZZLE_SHIFT + 0)) | (1 << (D3DSP_SWIZZLE_SHIFT + 2)) | (2 << (D3DSP_SWIZZLE_SHIFT + 4)) | (3 << (D3DSP_SWIZZLE_SHIFT + 6))) #define D3DSP_SRCMOD_SHIFT 24 #define D3DSP_SRCMOD_MASK (0xF << D3DSP_SRCMOD_SHIFT) typedef enum _D3DSHADER_PARAM_SRCMOD_TYPE { D3DSPSM_NONE = 0 << D3DSP_SRCMOD_SHIFT, D3DSPSM_NEG = 1 << D3DSP_SRCMOD_SHIFT, D3DSPSM_BIAS = 2 << D3DSP_SRCMOD_SHIFT, D3DSPSM_BIASNEG = 3 << D3DSP_SRCMOD_SHIFT, D3DSPSM_SIGN = 4 << D3DSP_SRCMOD_SHIFT, D3DSPSM_SIGNNEG = 5 << D3DSP_SRCMOD_SHIFT, D3DSPSM_COMP = 6 << D3DSP_SRCMOD_SHIFT, D3DSPSM_X2 = 7 << D3DSP_SRCMOD_SHIFT, D3DSPSM_X2NEG = 8 << D3DSP_SRCMOD_SHIFT, D3DSPSM_DZ = 9 << D3DSP_SRCMOD_SHIFT, D3DSPSM_DW = 10 << D3DSP_SRCMOD_SHIFT, D3DSPSM_ABS = 11 << D3DSP_SRCMOD_SHIFT, D3DSPSM_ABSNEG = 12 << D3DSP_SRCMOD_SHIFT, D3DSPSM_NOT = 13 << D3DSP_SRCMOD_SHIFT, D3DSPSM_FORCE_DWORD = 0x7FFFFFFF } D3DSHADER_PARAM_SRCMOD_TYPE; #define D3DPS_VERSION(major, minor) (0xFFFF0000 | ((major) << 8) | (minor)) #define D3DVS_VERSION(major, minor) (0xFFFE0000 | ((major) << 8) | (minor)) #define D3DSHADER_VERSION_MAJOR(version) (((version) >> 8) & 0xFF) #define D3DSHADER_VERSION_MINOR(version) (((version) >> 0) & 0xFF) #define D3DSI_COMMENTSIZE_SHIFT 16 #define D3DSI_COMMENTSIZE_MASK (0x7FFF << D3DSI_COMMENTSIZE_SHIFT) #define D3DSHADER_COMMENT(commentSize) \ ((((commentSize) << D3DSI_COMMENTSIZE_SHIFT) & D3DSI_COMMENTSIZE_MASK) | D3DSIO_COMMENT) #define D3DPS_END() 0x0000FFFF #define D3DVS_END() 0x0000FFFF /***************************************************************************** * Direct 3D v8 enumerated types */ typedef enum _D3DBACKBUFFER_TYPE { D3DBACKBUFFER_TYPE_MONO = 0, D3DBACKBUFFER_TYPE_LEFT = 1, D3DBACKBUFFER_TYPE_RIGHT = 2, D3DBACKBUFFER_TYPE_FORCE_DWORD = 0x7fffffff } D3DBACKBUFFER_TYPE; typedef enum _D3DBASISTYPE { D3DBASIS_BEZIER = 0, D3DBASIS_BSPLINE = 1, D3DBASIS_INTERPOLATE = 2, D3DBASIS_FORCE_DWORD = 0x7fffffff } D3DBASISTYPE; typedef enum _D3DBLEND { D3DBLEND_ZERO = 1, D3DBLEND_ONE = 2, D3DBLEND_SRCCOLOR = 3, D3DBLEND_INVSRCCOLOR = 4, D3DBLEND_SRCALPHA = 5, D3DBLEND_INVSRCALPHA = 6, D3DBLEND_DESTALPHA = 7, D3DBLEND_INVDESTALPHA = 8, D3DBLEND_DESTCOLOR = 9, D3DBLEND_INVDESTCOLOR = 10, D3DBLEND_SRCALPHASAT = 11, D3DBLEND_BOTHSRCALPHA = 12, D3DBLEND_BOTHINVSRCALPHA = 13, D3DBLEND_BLENDFACTOR = 14, D3DBLEND_INVBLENDFACTOR = 15, #ifndef D3D_DISABLE_9EX D3DBLEND_SRCCOLOR2 = 16, D3DBLEND_INVSRCCOLOR2 = 17, #endif D3DBLEND_FORCE_DWORD = 0x7fffffff } D3DBLEND; typedef enum _D3DBLENDOP { D3DBLENDOP_ADD = 1, D3DBLENDOP_SUBTRACT = 2, D3DBLENDOP_REVSUBTRACT = 3, D3DBLENDOP_MIN = 4, D3DBLENDOP_MAX = 5, D3DBLENDOP_FORCE_DWORD = 0x7fffffff } D3DBLENDOP; typedef enum _D3DCMPFUNC { D3DCMP_NEVER = 1, D3DCMP_LESS = 2, D3DCMP_EQUAL = 3, D3DCMP_LESSEQUAL = 4, D3DCMP_GREATER = 5, D3DCMP_NOTEQUAL = 6, D3DCMP_GREATEREQUAL = 7, D3DCMP_ALWAYS = 8, D3DCMP_FORCE_DWORD = 0x7fffffff } D3DCMPFUNC; typedef enum _D3DCUBEMAP_FACES { D3DCUBEMAP_FACE_POSITIVE_X = 0, D3DCUBEMAP_FACE_NEGATIVE_X = 1, D3DCUBEMAP_FACE_POSITIVE_Y = 2, D3DCUBEMAP_FACE_NEGATIVE_Y = 3, D3DCUBEMAP_FACE_POSITIVE_Z = 4, D3DCUBEMAP_FACE_NEGATIVE_Z = 5, D3DCUBEMAP_FACE_FORCE_DWORD = 0xffffffff } D3DCUBEMAP_FACES; typedef enum _D3DCULL { D3DCULL_NONE = 1, D3DCULL_CW = 2, D3DCULL_CCW = 3, D3DCULL_FORCE_DWORD = 0x7fffffff } D3DCULL; typedef enum _D3DDEBUGMONITORTOKENS { D3DDMT_ENABLE = 0, D3DDMT_DISABLE = 1, D3DDMT_FORCE_DWORD = 0x7fffffff } D3DDEBUGMONITORTOKENS; typedef enum _D3DDEGREETYPE { D3DDEGREE_LINEAR = 1, D3DDEGREE_QUADRATIC = 2, D3DDEGREE_CUBIC = 3, D3DDEGREE_QUINTIC = 5, D3DDEGREE_FORCE_DWORD = 0x7fffffff } D3DDEGREETYPE; typedef enum _D3DDEVTYPE { D3DDEVTYPE_HAL = 1, D3DDEVTYPE_REF = 2, D3DDEVTYPE_SW = 3, D3DDEVTYPE_NULLREF = 4, D3DDEVTYPE_FORCE_DWORD = 0xffffffff } D3DDEVTYPE; typedef enum _D3DFILLMODE { D3DFILL_POINT = 1, D3DFILL_WIREFRAME = 2, D3DFILL_SOLID = 3, D3DFILL_FORCE_DWORD = 0x7fffffff } D3DFILLMODE; typedef enum _D3DFOGMODE { D3DFOG_NONE = 0, D3DFOG_EXP = 1, D3DFOG_EXP2 = 2, D3DFOG_LINEAR = 3, D3DFOG_FORCE_DWORD = 0x7fffffff } D3DFOGMODE; typedef enum _D3DFORMAT { D3DFMT_UNKNOWN = 0, D3DFMT_R8G8B8 = 20, D3DFMT_A8R8G8B8 = 21, D3DFMT_X8R8G8B8 = 22, D3DFMT_R5G6B5 = 23, D3DFMT_X1R5G5B5 = 24, D3DFMT_A1R5G5B5 = 25, D3DFMT_A4R4G4B4 = 26, D3DFMT_R3G3B2 = 27, D3DFMT_A8 = 28, D3DFMT_A8R3G3B2 = 29, D3DFMT_X4R4G4B4 = 30, D3DFMT_A2B10G10R10 = 31, D3DFMT_A8B8G8R8 = 32, D3DFMT_X8B8G8R8 = 33, D3DFMT_G16R16 = 34, D3DFMT_A2R10G10B10 = 35, D3DFMT_A16B16G16R16 = 36, D3DFMT_A8P8 = 40, D3DFMT_P8 = 41, D3DFMT_L8 = 50, D3DFMT_A8L8 = 51, D3DFMT_A4L4 = 52, D3DFMT_V8U8 = 60, D3DFMT_L6V5U5 = 61, D3DFMT_X8L8V8U8 = 62, D3DFMT_Q8W8V8U8 = 63, D3DFMT_V16U16 = 64, D3DFMT_A2W10V10U10 = 67, D3DFMT_UYVY = MAKEFOURCC('U', 'Y', 'V', 'Y'), D3DFMT_YUY2 = MAKEFOURCC('Y', 'U', 'Y', '2'), D3DFMT_DXT1 = MAKEFOURCC('D', 'X', 'T', '1'), D3DFMT_DXT2 = MAKEFOURCC('D', 'X', 'T', '2'), D3DFMT_DXT3 = MAKEFOURCC('D', 'X', 'T', '3'), D3DFMT_DXT4 = MAKEFOURCC('D', 'X', 'T', '4'), D3DFMT_DXT5 = MAKEFOURCC('D', 'X', 'T', '5'), D3DFMT_MULTI2_ARGB8 = MAKEFOURCC('M', 'E', 'T', '1'), D3DFMT_G8R8_G8B8 = MAKEFOURCC('G', 'R', 'G', 'B'), D3DFMT_R8G8_B8G8 = MAKEFOURCC('R', 'G', 'B', 'G'), D3DFMT_D16_LOCKABLE = 70, D3DFMT_D32 = 71, D3DFMT_D15S1 = 73, D3DFMT_D24S8 = 75, D3DFMT_D24X8 = 77, D3DFMT_D24X4S4 = 79, D3DFMT_D16 = 80, D3DFMT_L16 = 81, D3DFMT_D32F_LOCKABLE = 82, D3DFMT_D24FS8 = 83, #ifndef D3D_DISABLE_9EX D3DFMT_D32_LOCKABLE = 84, D3DFMT_S8_LOCKABLE = 85, #endif D3DFMT_VERTEXDATA = 100, D3DFMT_INDEX16 = 101, D3DFMT_INDEX32 = 102, D3DFMT_Q16W16V16U16 = 110, /* Floating point formats */ D3DFMT_R16F = 111, D3DFMT_G16R16F = 112, D3DFMT_A16B16G16R16F = 113, /* IEEE formats */ D3DFMT_R32F = 114, D3DFMT_G32R32F = 115, D3DFMT_A32B32G32R32F = 116, D3DFMT_CxV8U8 = 117, #ifndef D3D_DISABLE_9EX D3DFMT_A1 = 118, D3DFMT_A2B10G10R10_XR_BIAS = 119, D3DFMT_BINARYBUFFER = 199, #endif D3DFMT_FORCE_DWORD = 0xFFFFFFFF } D3DFORMAT; typedef enum _D3DLIGHTTYPE { D3DLIGHT_POINT = 1, D3DLIGHT_SPOT = 2, D3DLIGHT_DIRECTIONAL = 3, D3DLIGHT_FORCE_DWORD = 0x7fffffff } D3DLIGHTTYPE; typedef enum _D3DMATERIALCOLORSOURCE { D3DMCS_MATERIAL = 0, D3DMCS_COLOR1 = 1, D3DMCS_COLOR2 = 2, D3DMCS_FORCE_DWORD = 0x7fffffff } D3DMATERIALCOLORSOURCE; typedef enum _D3DMULTISAMPLE_TYPE { D3DMULTISAMPLE_NONE = 0, D3DMULTISAMPLE_NONMASKABLE = 1, D3DMULTISAMPLE_2_SAMPLES = 2, D3DMULTISAMPLE_3_SAMPLES = 3, D3DMULTISAMPLE_4_SAMPLES = 4, D3DMULTISAMPLE_5_SAMPLES = 5, D3DMULTISAMPLE_6_SAMPLES = 6, D3DMULTISAMPLE_7_SAMPLES = 7, D3DMULTISAMPLE_8_SAMPLES = 8, D3DMULTISAMPLE_9_SAMPLES = 9, D3DMULTISAMPLE_10_SAMPLES = 10, D3DMULTISAMPLE_11_SAMPLES = 11, D3DMULTISAMPLE_12_SAMPLES = 12, D3DMULTISAMPLE_13_SAMPLES = 13, D3DMULTISAMPLE_14_SAMPLES = 14, D3DMULTISAMPLE_15_SAMPLES = 15, D3DMULTISAMPLE_16_SAMPLES = 16, D3DMULTISAMPLE_FORCE_DWORD = 0x7fffffff } D3DMULTISAMPLE_TYPE; #if 0 typedef enum _D3DORDERTYPE { D3DORDER_LINEAR = 1, D3DORDER_QUADRATIC = 2, D3DORDER_CUBIC = 3, D3DORDER_QUINTIC = 5, D3DORDER_FORCE_DWORD = 0x7fffffff } D3DORDERTYPE; #endif typedef enum _D3DPATCHEDGESTYLE { D3DPATCHEDGE_DISCRETE = 0, D3DPATCHEDGE_CONTINUOUS = 1, D3DPATCHEDGE_FORCE_DWORD = 0x7fffffff, } D3DPATCHEDGESTYLE; typedef enum _D3DPOOL { D3DPOOL_DEFAULT = 0, D3DPOOL_MANAGED = 1, D3DPOOL_SYSTEMMEM = 2, D3DPOOL_SCRATCH = 3, D3DPOOL_FORCE_DWORD = 0x7fffffff } D3DPOOL; typedef enum _D3DPRIMITIVETYPE { D3DPT_POINTLIST = 1, D3DPT_LINELIST = 2, D3DPT_LINESTRIP = 3, D3DPT_TRIANGLELIST = 4, D3DPT_TRIANGLESTRIP = 5, D3DPT_TRIANGLEFAN = 6, D3DPT_FORCE_DWORD = 0x7fffffff } D3DPRIMITIVETYPE; typedef enum _D3DRENDERSTATETYPE { D3DRS_ZENABLE = 7, D3DRS_FILLMODE = 8, D3DRS_SHADEMODE = 9, D3DRS_ZWRITEENABLE = 14, D3DRS_ALPHATESTENABLE = 15, D3DRS_LASTPIXEL = 16, D3DRS_SRCBLEND = 19, D3DRS_DESTBLEND = 20, D3DRS_CULLMODE = 22, D3DRS_ZFUNC = 23, D3DRS_ALPHAREF = 24, D3DRS_ALPHAFUNC = 25, D3DRS_DITHERENABLE = 26, D3DRS_ALPHABLENDENABLE = 27, D3DRS_FOGENABLE = 28, D3DRS_SPECULARENABLE = 29, D3DRS_FOGCOLOR = 34, D3DRS_FOGTABLEMODE = 35, D3DRS_FOGSTART = 36, D3DRS_FOGEND = 37, D3DRS_FOGDENSITY = 38, D3DRS_RANGEFOGENABLE = 48, D3DRS_STENCILENABLE = 52, D3DRS_STENCILFAIL = 53, D3DRS_STENCILZFAIL = 54, D3DRS_STENCILPASS = 55, D3DRS_STENCILFUNC = 56, D3DRS_STENCILREF = 57, D3DRS_STENCILMASK = 58, D3DRS_STENCILWRITEMASK = 59, D3DRS_TEXTUREFACTOR = 60, D3DRS_WRAP0 = 128, D3DRS_WRAP1 = 129, D3DRS_WRAP2 = 130, D3DRS_WRAP3 = 131, D3DRS_WRAP4 = 132, D3DRS_WRAP5 = 133, D3DRS_WRAP6 = 134, D3DRS_WRAP7 = 135, D3DRS_CLIPPING = 136, D3DRS_LIGHTING = 137, D3DRS_AMBIENT = 139, D3DRS_FOGVERTEXMODE = 140, D3DRS_COLORVERTEX = 141, D3DRS_LOCALVIEWER = 142, D3DRS_NORMALIZENORMALS = 143, D3DRS_DIFFUSEMATERIALSOURCE = 145, D3DRS_SPECULARMATERIALSOURCE = 146, D3DRS_AMBIENTMATERIALSOURCE = 147, D3DRS_EMISSIVEMATERIALSOURCE = 148, D3DRS_VERTEXBLEND = 151, D3DRS_CLIPPLANEENABLE = 152, D3DRS_POINTSIZE = 154, D3DRS_POINTSIZE_MIN = 155, D3DRS_POINTSPRITEENABLE = 156, D3DRS_POINTSCALEENABLE = 157, D3DRS_POINTSCALE_A = 158, D3DRS_POINTSCALE_B = 159, D3DRS_POINTSCALE_C = 160, D3DRS_MULTISAMPLEANTIALIAS = 161, D3DRS_MULTISAMPLEMASK = 162, D3DRS_PATCHEDGESTYLE = 163, D3DRS_DEBUGMONITORTOKEN = 165, D3DRS_POINTSIZE_MAX = 166, D3DRS_INDEXEDVERTEXBLENDENABLE = 167, D3DRS_COLORWRITEENABLE = 168, D3DRS_TWEENFACTOR = 170, D3DRS_BLENDOP = 171, D3DRS_POSITIONDEGREE = 172, D3DRS_NORMALDEGREE = 173, D3DRS_SCISSORTESTENABLE = 174, D3DRS_SLOPESCALEDEPTHBIAS = 175, D3DRS_ANTIALIASEDLINEENABLE = 176, D3DRS_MINTESSELLATIONLEVEL = 178, D3DRS_MAXTESSELLATIONLEVEL = 179, D3DRS_ADAPTIVETESS_X = 180, D3DRS_ADAPTIVETESS_Y = 181, D3DRS_ADAPTIVETESS_Z = 182, D3DRS_ADAPTIVETESS_W = 183, D3DRS_ENABLEADAPTIVETESSELLATION= 184, D3DRS_TWOSIDEDSTENCILMODE = 185, D3DRS_CCW_STENCILFAIL = 186, D3DRS_CCW_STENCILZFAIL = 187, D3DRS_CCW_STENCILPASS = 188, D3DRS_CCW_STENCILFUNC = 189, D3DRS_COLORWRITEENABLE1 = 190, D3DRS_COLORWRITEENABLE2 = 191, D3DRS_COLORWRITEENABLE3 = 192, D3DRS_BLENDFACTOR = 193, D3DRS_SRGBWRITEENABLE = 194, D3DRS_DEPTHBIAS = 195, D3DRS_WRAP8 = 198, D3DRS_WRAP9 = 199, D3DRS_WRAP10 = 200, D3DRS_WRAP11 = 201, D3DRS_WRAP12 = 202, D3DRS_WRAP13 = 203, D3DRS_WRAP14 = 204, D3DRS_WRAP15 = 205, D3DRS_SEPARATEALPHABLENDENABLE = 206, D3DRS_SRCBLENDALPHA = 207, D3DRS_DESTBLENDALPHA = 208, D3DRS_BLENDOPALPHA = 209, D3DRS_FORCE_DWORD = 0x7fffffff } D3DRENDERSTATETYPE; typedef enum _D3DRESOURCETYPE { D3DRTYPE_SURFACE = 1, D3DRTYPE_VOLUME = 2, D3DRTYPE_TEXTURE = 3, D3DRTYPE_VOLUMETEXTURE = 4, D3DRTYPE_CUBETEXTURE = 5, D3DRTYPE_VERTEXBUFFER = 6, D3DRTYPE_INDEXBUFFER = 7, D3DRTYPE_FORCE_DWORD = 0x7fffffff } D3DRESOURCETYPE; #define D3DRTYPECOUNT (D3DRTYPE_INDEXBUFFER+1) typedef enum _D3DSHADEMODE { D3DSHADE_FLAT = 1, D3DSHADE_GOURAUD = 2, D3DSHADE_PHONG = 3, D3DSHADE_FORCE_DWORD = 0x7fffffff } D3DSHADEMODE; typedef enum _D3DSTATEBLOCKTYPE { D3DSBT_ALL = 1, D3DSBT_PIXELSTATE = 2, D3DSBT_VERTEXSTATE = 3, D3DSBT_FORCE_DWORD = 0xffffffff } D3DSTATEBLOCKTYPE; typedef enum _D3DSTENCILOP { D3DSTENCILOP_KEEP = 1, D3DSTENCILOP_ZERO = 2, D3DSTENCILOP_REPLACE = 3, D3DSTENCILOP_INCRSAT = 4, D3DSTENCILOP_DECRSAT = 5, D3DSTENCILOP_INVERT = 6, D3DSTENCILOP_INCR = 7, D3DSTENCILOP_DECR = 8, D3DSTENCILOP_FORCE_DWORD = 0x7fffffff } D3DSTENCILOP; typedef enum _D3DSWAPEFFECT { D3DSWAPEFFECT_DISCARD = 1, D3DSWAPEFFECT_FLIP = 2, D3DSWAPEFFECT_COPY = 3, #ifndef D3D_DISABLE_9EX D3DSWAPEFFECT_OVERLAY = 4, D3DSWAPEFFECT_FLIPEX = 5, #endif D3DSWAPEFFECT_FORCE_DWORD = 0xFFFFFFFF } D3DSWAPEFFECT; typedef enum _D3DTEXTUREADDRESS { D3DTADDRESS_WRAP = 1, D3DTADDRESS_MIRROR = 2, D3DTADDRESS_CLAMP = 3, D3DTADDRESS_BORDER = 4, D3DTADDRESS_MIRRORONCE = 5, D3DTADDRESS_FORCE_DWORD = 0x7fffffff } D3DTEXTUREADDRESS; typedef enum _D3DTEXTUREFILTERTYPE { D3DTEXF_NONE = 0, D3DTEXF_POINT = 1, D3DTEXF_LINEAR = 2, D3DTEXF_ANISOTROPIC = 3, D3DTEXF_FLATCUBIC = 4, D3DTEXF_GAUSSIANCUBIC = 5, D3DTEXF_PYRAMIDALQUAD = 6, D3DTEXF_GAUSSIANQUAD = 7, #ifndef D3D_DISABLE_9EX D3DTEXF_CONVOLUTIONMONO = 8, #endif D3DTEXF_FORCE_DWORD = 0x7fffffff } D3DTEXTUREFILTERTYPE; typedef enum _D3DTEXTUREOP { D3DTOP_DISABLE = 1, D3DTOP_SELECTARG1 = 2, D3DTOP_SELECTARG2 = 3, D3DTOP_MODULATE = 4, D3DTOP_MODULATE2X = 5, D3DTOP_MODULATE4X = 6, D3DTOP_ADD = 7, D3DTOP_ADDSIGNED = 8, D3DTOP_ADDSIGNED2X = 9, D3DTOP_SUBTRACT = 10, D3DTOP_ADDSMOOTH = 11, D3DTOP_BLENDDIFFUSEALPHA = 12, D3DTOP_BLENDTEXTUREALPHA = 13, D3DTOP_BLENDFACTORALPHA = 14, D3DTOP_BLENDTEXTUREALPHAPM = 15, D3DTOP_BLENDCURRENTALPHA = 16, D3DTOP_PREMODULATE = 17, D3DTOP_MODULATEALPHA_ADDCOLOR = 18, D3DTOP_MODULATECOLOR_ADDALPHA = 19, D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20, D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21, D3DTOP_BUMPENVMAP = 22, D3DTOP_BUMPENVMAPLUMINANCE = 23, D3DTOP_DOTPRODUCT3 = 24, D3DTOP_MULTIPLYADD = 25, D3DTOP_LERP = 26, D3DTOP_FORCE_DWORD = 0x7fffffff, } D3DTEXTUREOP; typedef enum _D3DTEXTURESTAGESTATETYPE { D3DTSS_COLOROP = 1, D3DTSS_COLORARG1 = 2, D3DTSS_COLORARG2 = 3, D3DTSS_ALPHAOP = 4, D3DTSS_ALPHAARG1 = 5, D3DTSS_ALPHAARG2 = 6, D3DTSS_BUMPENVMAT00 = 7, D3DTSS_BUMPENVMAT01 = 8, D3DTSS_BUMPENVMAT10 = 9, D3DTSS_BUMPENVMAT11 = 10, D3DTSS_TEXCOORDINDEX = 11, D3DTSS_BUMPENVLSCALE = 22, D3DTSS_BUMPENVLOFFSET = 23, D3DTSS_TEXTURETRANSFORMFLAGS = 24, D3DTSS_COLORARG0 = 26, D3DTSS_ALPHAARG0 = 27, D3DTSS_RESULTARG = 28, D3DTSS_CONSTANT = 32, D3DTSS_FORCE_DWORD = 0x7fffffff } D3DTEXTURESTAGESTATETYPE; typedef enum _D3DTEXTURETRANSFORMFLAGS { D3DTTFF_DISABLE = 0, D3DTTFF_COUNT1 = 1, D3DTTFF_COUNT2 = 2, D3DTTFF_COUNT3 = 3, D3DTTFF_COUNT4 = 4, D3DTTFF_PROJECTED = 256, D3DTTFF_FORCE_DWORD = 0x7fffffff } D3DTEXTURETRANSFORMFLAGS; typedef enum _D3DTRANSFORMSTATETYPE { D3DTS_VIEW = 2, D3DTS_PROJECTION = 3, D3DTS_TEXTURE0 = 16, D3DTS_TEXTURE1 = 17, D3DTS_TEXTURE2 = 18, D3DTS_TEXTURE3 = 19, D3DTS_TEXTURE4 = 20, D3DTS_TEXTURE5 = 21, D3DTS_TEXTURE6 = 22, D3DTS_TEXTURE7 = 23, D3DTS_FORCE_DWORD = 0x7fffffff } D3DTRANSFORMSTATETYPE; typedef enum _D3DVERTEXBLENDFLAGS { D3DVBF_DISABLE = 0, D3DVBF_1WEIGHTS = 1, D3DVBF_2WEIGHTS = 2, D3DVBF_3WEIGHTS = 3, D3DVBF_TWEENING = 255, D3DVBF_0WEIGHTS = 256 } D3DVERTEXBLENDFLAGS; typedef enum _D3DZBUFFERTYPE { D3DZB_FALSE = 0, D3DZB_TRUE = 1, D3DZB_USEW = 2, D3DZB_FORCE_DWORD = 0x7fffffff } D3DZBUFFERTYPE; typedef enum _D3DSAMPLERSTATETYPE { D3DSAMP_ADDRESSU = 1, D3DSAMP_ADDRESSV = 2, D3DSAMP_ADDRESSW = 3, D3DSAMP_BORDERCOLOR = 4, D3DSAMP_MAGFILTER = 5, D3DSAMP_MINFILTER = 6, D3DSAMP_MIPFILTER = 7, D3DSAMP_MIPMAPLODBIAS = 8, D3DSAMP_MAXMIPLEVEL = 9, D3DSAMP_MAXANISOTROPY = 10, D3DSAMP_SRGBTEXTURE = 11, D3DSAMP_ELEMENTINDEX = 12, D3DSAMP_DMAPOFFSET = 13, D3DSAMP_FORCE_DWORD = 0x7fffffff, } D3DSAMPLERSTATETYPE; /***************************************************************************** * Direct 3D v9 typedefs */ #ifndef D3DCOLOR_DEFINED typedef DWORD D3DCOLOR; #define D3DCOLOR_DEFINED #endif /***************************************************************************** * Direct 3D v9 structures */ typedef struct _D3DADAPTER_IDENTIFIER9 { char Driver[MAX_DEVICE_IDENTIFIER_STRING]; char Description[MAX_DEVICE_IDENTIFIER_STRING]; char DeviceName[32]; LARGE_INTEGER DriverVersion; DWORD VendorId; DWORD DeviceId; DWORD SubSysId; DWORD Revision; GUID DeviceIdentifier; DWORD WHQLLevel; } D3DADAPTER_IDENTIFIER9; typedef struct _D3DBOX { UINT Left; UINT Top; UINT Right; UINT Bottom; UINT Front; UINT Back; } D3DBOX; typedef struct _D3DCLIPSTATUS9 { DWORD ClipUnion; DWORD ClipIntersection; } D3DCLIPSTATUS9; #ifndef D3DCOLORVALUE_DEFINED typedef struct _D3DCOLORVALUE { float r; float g; float b; float a; } D3DCOLORVALUE; #define D3DCOLORVALUE_DEFINED #endif typedef struct _D3DDEVICE_CREATION_PARAMETERS { UINT AdapterOrdinal; D3DDEVTYPE DeviceType; HWND hFocusWindow; DWORD BehaviorFlags; } D3DDEVICE_CREATION_PARAMETERS; typedef struct _D3DDEVINFO_D3D9BANDWIDTHTIMINGS { float MaxBandwidthUtilized; float FrontEndUploadMemoryUtilizedPercent; float VertexRateUtilizedPercent; float TriangleSetupRateUtilizedPercent; float FillRateUtilizedPercent; } D3DDEVINFO_D3D9BANDWIDTHTIMINGS; typedef struct _D3DDEVINFO_D3D9CACHEUTILIZATION { float TextureCacheHitRate; float PostTransformVertexCacheHitRate; } D3DDEVINFO_D3D9CACHEUTILIZATION; typedef struct _D3DDEVINFO_D3D9INTERFACETIMINGS { float WaitingForGPUToUseApplicationResourceTimePercent; float WaitingForGPUToAcceptMoreCommandsTimePercent; float WaitingForGPUToStayWithinLatencyTimePercent; float WaitingForGPUExclusiveResourceTimePercent; float WaitingForGPUOtherTimePercent; } D3DDEVINFO_D3D9INTERFACETIMINGS; typedef struct _D3DDEVINFO_D3D9PIPELINETIMINGS { float VertexProcessingTimePercent; float PixelProcessingTimePercent; float OtherGPUProcessingTimePercent; float GPUIdleTimePercent; } D3DDEVINFO_D3D9PIPELINETIMINGS; typedef struct _D3DDEVINFO_D3D9STAGETIMINGS { float MemoryProcessingPercent; float ComputationProcessingPercent; } D3DDEVINFO_D3D9STAGETIMINGS; /* Vertex cache optimization hints. */ typedef struct D3DDEVINFO_VCACHE { /* Must be a 4 char code FOURCC (e.g. CACH) */ DWORD Pattern; /* 0 to get the longest strips, 1 vertex cache */ DWORD OptMethod; /* Cache size to use (only valid if OptMethod==1) */ DWORD CacheSize; /* internal for deciding when to restart strips, non user modifiable (only valid if OptMethod==1) */ DWORD MagicNumber; } D3DDEVINFO_VCACHE; typedef struct D3DRESOURCESTATS { WINBOOL bThrashing; DWORD ApproxBytesDownloaded; DWORD NumEvicts; DWORD NumVidCreates; DWORD LastPri; DWORD NumUsed; DWORD NumUsedInVidMem; DWORD WorkingSet; DWORD WorkingSetBytes; DWORD TotalManaged; DWORD TotalBytes; } D3DRESOURCESTATS; typedef struct _D3DDEVINFO_D3DRESOURCEMANAGER { D3DRESOURCESTATS stats[D3DRTYPECOUNT]; } D3DDEVINFO_D3DRESOURCEMANAGER; typedef struct _D3DDEVINFO_D3DVERTEXSTATS { DWORD NumRenderedTriangles; DWORD NumExtraClippingTriangles; } D3DDEVINFO_D3DVERTEXSTATS; typedef struct _D3DDISPLAYMODE { UINT Width; UINT Height; UINT RefreshRate; D3DFORMAT Format; } D3DDISPLAYMODE; typedef struct _D3DGAMMARAMP { WORD red [256]; WORD green[256]; WORD blue [256]; } D3DGAMMARAMP; typedef struct _D3DINDEXBUFFER_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; } D3DINDEXBUFFER_DESC; #ifndef D3DVECTOR_DEFINED typedef struct _D3DVECTOR { float x; float y; float z; } D3DVECTOR; #define D3DVECTOR_DEFINED #endif typedef struct _D3DLIGHT9 { D3DLIGHTTYPE Type; D3DCOLORVALUE Diffuse; D3DCOLORVALUE Specular; D3DCOLORVALUE Ambient; D3DVECTOR Position; D3DVECTOR Direction; float Range; float Falloff; float Attenuation0; float Attenuation1; float Attenuation2; float Theta; float Phi; } D3DLIGHT9; typedef struct _D3DLINEPATTERN { WORD wRepeatFactor; WORD wLinePattern; } D3DLINEPATTERN; typedef struct _D3DLOCKED_BOX { INT RowPitch; INT SlicePitch; void* pBits; } D3DLOCKED_BOX; typedef struct _D3DLOCKED_RECT { INT Pitch; void* pBits; } D3DLOCKED_RECT; typedef struct _D3DMATERIAL9 { D3DCOLORVALUE Diffuse; D3DCOLORVALUE Ambient; D3DCOLORVALUE Specular; D3DCOLORVALUE Emissive; float Power; } D3DMATERIAL9; #ifndef D3DMATRIX_DEFINED typedef struct _D3DMATRIX { union { struct { float _11, _12, _13, _14; float _21, _22, _23, _24; float _31, _32, _33, _34; float _41, _42, _43, _44; } DUMMYSTRUCTNAME; float m[4][4]; } DUMMYUNIONNAME; } D3DMATRIX; #define D3DMATRIX_DEFINED #endif typedef struct _D3DPRESENT_PARAMETERS_ { UINT BackBufferWidth; UINT BackBufferHeight; D3DFORMAT BackBufferFormat; UINT BackBufferCount; D3DMULTISAMPLE_TYPE MultiSampleType; DWORD MultiSampleQuality; D3DSWAPEFFECT SwapEffect; HWND hDeviceWindow; WINBOOL Windowed; WINBOOL EnableAutoDepthStencil; D3DFORMAT AutoDepthStencilFormat; DWORD Flags; UINT FullScreen_RefreshRateInHz; UINT PresentationInterval; } D3DPRESENT_PARAMETERS; typedef struct _D3DRANGE { UINT Offset; UINT Size; } D3DRANGE; typedef struct _D3DRASTER_STATUS { WINBOOL InVBlank; UINT ScanLine; } D3DRASTER_STATUS; #ifndef D3DRECT_DEFINED typedef struct _D3DRECT { LONG x1; LONG y1; LONG x2; LONG y2; } D3DRECT; #define D3DRECT_DEFINED #endif typedef struct _D3DRECTPATCH_INFO { UINT StartVertexOffsetWidth; UINT StartVertexOffsetHeight; UINT Width; UINT Height; UINT Stride; D3DBASISTYPE Basis; D3DDEGREETYPE Degree; } D3DRECTPATCH_INFO; typedef struct _D3DSURFACE_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; D3DMULTISAMPLE_TYPE MultiSampleType; DWORD MultiSampleQuality; UINT Width; UINT Height; } D3DSURFACE_DESC; typedef struct _D3DTRIPATCH_INFO { UINT StartVertexOffset; UINT NumVertices; D3DBASISTYPE Basis; D3DDEGREETYPE Degree; } D3DTRIPATCH_INFO; typedef struct _D3DVERTEXBUFFER_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Size; DWORD FVF; } D3DVERTEXBUFFER_DESC; typedef struct _D3DVIEWPORT9 { DWORD X; DWORD Y; DWORD Width; DWORD Height; float MinZ; float MaxZ; } D3DVIEWPORT9; typedef struct _D3DVOLUME_DESC { D3DFORMAT Format; D3DRESOURCETYPE Type; DWORD Usage; D3DPOOL Pool; UINT Width; UINT Height; UINT Depth; } D3DVOLUME_DESC; /* Parts added with d3d9ex */ #if !defined(D3D_DISABLE_9EX) typedef enum D3DSCANLINEORDERING { D3DSCANLINEORDERING_UNKNOWN, D3DSCANLINEORDERING_PROGRESSIVE, D3DSCANLINEORDERING_INTERLACED, } D3DSCANLINEORDERING; typedef struct D3DDISPLAYMODEFILTER { UINT Size; D3DFORMAT Format; D3DSCANLINEORDERING ScanLineOrdering; } D3DDISPLAYMODEFILTER; typedef struct D3DDISPLAYMODEEX { UINT Size; UINT Width; UINT Height; UINT RefreshRate; D3DFORMAT Format; D3DSCANLINEORDERING ScanLineOrdering; } D3DDISPLAYMODEEX; typedef enum D3DDISPLAYROTATION { D3DDISPLAYROTATION_IDENTITY = 1, D3DDISPLAYROTATION_90, D3DDISPLAYROTATION_180, D3DDISPLAYROTATION_270 } D3DDISPLAYROTATION; typedef struct _D3DMEMORYPRESSURE { UINT64 BytesEvictedFromProcess; UINT64 SizeOfInefficientAllocation; DWORD LevelOfEfficiency; } D3DMEMORYPRESSURE; typedef enum _D3DCOMPOSERECTSOP{ D3DCOMPOSERECTS_COPY = 1, D3DCOMPOSERECTS_OR, D3DCOMPOSERECTS_AND, D3DCOMPOSERECTS_NEG, D3DCOMPOSERECTS_FORCE_DWORD = 0x7fffffff } D3DCOMPOSERECTSOP; typedef struct _D3DPRESENTSTATS { UINT PresentCount; UINT PresentRefreshCount; UINT SyncRefreshCount; LARGE_INTEGER SyncQPCTime; LARGE_INTEGER SyncGPUTime; } D3DPRESENTSTATS; #endif /* D3D_DISABLE_9EX */ typedef enum _D3DSHADER_COMPARISON { D3DSPC_RESERVED0 = 0, D3DSPC_GT, D3DSPC_EQ, D3DSPC_GE, D3DSPC_LT, D3DSPC_NE, D3DSPC_LE, D3DSPC_RESERVED1, } D3DSHADER_COMPARISON; #ifdef __i386__ #include #endif #endif /* __WINE_D3D9TYPES_H */ dxvk-0~git20220822.9df86f2/d3dcaps.h000066400000000000000000000422321430055512200164740ustar00rootroot00000000000000/* * Copyright (C) 2000 Peter Hunnisett * * 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 */ #ifndef __WINE_D3DCAPS_H #define __WINE_D3DCAPS_H #include #ifdef __i386__ #include #endif typedef struct _D3DTRANSFORMCAPS { DWORD dwSize; DWORD dwCaps; } D3DTRANSFORMCAPS, *LPD3DTRANSFORMCAPS; #define D3DTRANSFORMCAPS_CLIP __MSABI_LONG(0x00000001) typedef struct _D3DLIGHTINGCAPS { DWORD dwSize; DWORD dwCaps; DWORD dwLightingModel; DWORD dwNumLights; } D3DLIGHTINGCAPS, *LPD3DLIGHTINGCAPS; #define D3DLIGHTINGMODEL_RGB 0x00000001 #define D3DLIGHTINGMODEL_MONO 0x00000002 #define D3DLIGHTCAPS_POINT 0x00000001 #define D3DLIGHTCAPS_SPOT 0x00000002 #define D3DLIGHTCAPS_DIRECTIONAL 0x00000004 #define D3DLIGHTCAPS_PARALLELPOINT 0x00000008 #define D3DLIGHTCAPS_GLSPOT 0x00000010 typedef struct _D3dPrimCaps { DWORD dwSize; DWORD dwMiscCaps; DWORD dwRasterCaps; DWORD dwZCmpCaps; DWORD dwSrcBlendCaps; DWORD dwDestBlendCaps; DWORD dwAlphaCmpCaps; DWORD dwShadeCaps; DWORD dwTextureCaps; DWORD dwTextureFilterCaps; DWORD dwTextureBlendCaps; DWORD dwTextureAddressCaps; DWORD dwStippleWidth; DWORD dwStippleHeight; } D3DPRIMCAPS, *LPD3DPRIMCAPS; #define D3DPMISCCAPS_MASKPLANES 0x00000001 #define D3DPMISCCAPS_MASKZ 0x00000002 #define D3DPMISCCAPS_LINEPATTERNREP 0x00000004 #define D3DPMISCCAPS_CONFORMANT 0x00000008 #define D3DPMISCCAPS_CULLNONE 0x00000010 #define D3DPMISCCAPS_CULLCW 0x00000020 #define D3DPMISCCAPS_CULLCCW 0x00000040 #define D3DPRASTERCAPS_DITHER 0x00000001 #define D3DPRASTERCAPS_ROP2 0x00000002 #define D3DPRASTERCAPS_XOR 0x00000004 #define D3DPRASTERCAPS_PAT 0x00000008 #define D3DPRASTERCAPS_ZTEST 0x00000010 #define D3DPRASTERCAPS_SUBPIXEL 0x00000020 #define D3DPRASTERCAPS_SUBPIXELX 0x00000040 #define D3DPRASTERCAPS_FOGVERTEX 0x00000080 #define D3DPRASTERCAPS_FOGTABLE 0x00000100 #define D3DPRASTERCAPS_STIPPLE 0x00000200 #define D3DPRASTERCAPS_ANTIALIASSORTDEPENDENT 0x00000400 #define D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT 0x00000800 #define D3DPRASTERCAPS_ANTIALIASEDGES 0x00001000 #define D3DPRASTERCAPS_MIPMAPLODBIAS 0x00002000 #define D3DPRASTERCAPS_ZBIAS 0x00004000 #define D3DPRASTERCAPS_ZBUFFERLESSHSR 0x00008000 #define D3DPRASTERCAPS_FOGRANGE 0x00010000 #define D3DPRASTERCAPS_ANISOTROPY 0x00020000 #define D3DPRASTERCAPS_WBUFFER 0x00040000 #define D3DPRASTERCAPS_TRANSLUCENTSORTINDEPENDENT 0x00080000 #define D3DPRASTERCAPS_WFOG 0x00100000 #define D3DPRASTERCAPS_ZFOG 0x00200000 #define D3DPCMPCAPS_NEVER 0x00000001 #define D3DPCMPCAPS_LESS 0x00000002 #define D3DPCMPCAPS_EQUAL 0x00000004 #define D3DPCMPCAPS_LESSEQUAL 0x00000008 #define D3DPCMPCAPS_GREATER 0x00000010 #define D3DPCMPCAPS_NOTEQUAL 0x00000020 #define D3DPCMPCAPS_GREATEREQUAL 0x00000040 #define D3DPCMPCAPS_ALWAYS 0x00000080 #define D3DPBLENDCAPS_ZERO 0x00000001 #define D3DPBLENDCAPS_ONE 0x00000002 #define D3DPBLENDCAPS_SRCCOLOR 0x00000004 #define D3DPBLENDCAPS_INVSRCCOLOR 0x00000008 #define D3DPBLENDCAPS_SRCALPHA 0x00000010 #define D3DPBLENDCAPS_INVSRCALPHA 0x00000020 #define D3DPBLENDCAPS_DESTALPHA 0x00000040 #define D3DPBLENDCAPS_INVDESTALPHA 0x00000080 #define D3DPBLENDCAPS_DESTCOLOR 0x00000100 #define D3DPBLENDCAPS_INVDESTCOLOR 0x00000200 #define D3DPBLENDCAPS_SRCALPHASAT 0x00000400 #define D3DPBLENDCAPS_BOTHSRCALPHA 0x00000800 #define D3DPBLENDCAPS_BOTHINVSRCALPHA 0x00001000 #define D3DPSHADECAPS_COLORFLATMONO 0x00000001 #define D3DPSHADECAPS_COLORFLATRGB 0x00000002 #define D3DPSHADECAPS_COLORGOURAUDMONO 0x00000004 #define D3DPSHADECAPS_COLORGOURAUDRGB 0x00000008 #define D3DPSHADECAPS_COLORPHONGMONO 0x00000010 #define D3DPSHADECAPS_COLORPHONGRGB 0x00000020 #define D3DPSHADECAPS_SPECULARFLATMONO 0x00000040 #define D3DPSHADECAPS_SPECULARFLATRGB 0x00000080 #define D3DPSHADECAPS_SPECULARGOURAUDMONO 0x00000100 #define D3DPSHADECAPS_SPECULARGOURAUDRGB 0x00000200 #define D3DPSHADECAPS_SPECULARPHONGMONO 0x00000400 #define D3DPSHADECAPS_SPECULARPHONGRGB 0x00000800 #define D3DPSHADECAPS_ALPHAFLATBLEND 0x00001000 #define D3DPSHADECAPS_ALPHAFLATSTIPPLED 0x00002000 #define D3DPSHADECAPS_ALPHAGOURAUDBLEND 0x00004000 #define D3DPSHADECAPS_ALPHAGOURAUDSTIPPLED 0x00008000 #define D3DPSHADECAPS_ALPHAPHONGBLEND 0x00010000 #define D3DPSHADECAPS_ALPHAPHONGSTIPPLED 0x00020000 #define D3DPSHADECAPS_FOGFLAT 0x00040000 #define D3DPSHADECAPS_FOGGOURAUD 0x00080000 #define D3DPSHADECAPS_FOGPHONG 0x00100000 #define D3DPTEXTURECAPS_PERSPECTIVE 0x00000001 #define D3DPTEXTURECAPS_POW2 0x00000002 #define D3DPTEXTURECAPS_ALPHA 0x00000004 #define D3DPTEXTURECAPS_TRANSPARENCY 0x00000008 #define D3DPTEXTURECAPS_BORDER 0x00000010 #define D3DPTEXTURECAPS_SQUAREONLY 0x00000020 #define D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE 0x00000040 #define D3DPTEXTURECAPS_ALPHAPALETTE 0x00000080 #define D3DPTEXTURECAPS_NONPOW2CONDITIONAL __MSABI_LONG(0x00000100) /* yes actually 0x00000200 is unused - or at least unreleased */ #define D3DPTEXTURECAPS_PROJECTED 0x00000400 #define D3DPTEXTURECAPS_CUBEMAP 0x00000800 #define D3DPTEXTURECAPS_COLORKEYBLEND 0x00001000 #define D3DPTFILTERCAPS_NEAREST 0x00000001 #define D3DPTFILTERCAPS_LINEAR 0x00000002 #define D3DPTFILTERCAPS_MIPNEAREST 0x00000004 #define D3DPTFILTERCAPS_MIPLINEAR 0x00000008 #define D3DPTFILTERCAPS_LINEARMIPNEAREST 0x00000010 #define D3DPTFILTERCAPS_LINEARMIPLINEAR 0x00000020 /* yes - missing numbers */ #define D3DPTFILTERCAPS_MINFPOINT 0x00000100 #define D3DPTFILTERCAPS_MINFLINEAR 0x00000200 #define D3DPTFILTERCAPS_MINFANISOTROPIC 0x00000400 /* yes - missing numbers */ #define D3DPTFILTERCAPS_MIPFPOINT 0x00010000 #define D3DPTFILTERCAPS_MIPFLINEAR 0x00020000 /* yes - missing numbers */ #define D3DPTFILTERCAPS_MAGFPOINT 0x01000000 #define D3DPTFILTERCAPS_MAGFLINEAR 0x02000000 #define D3DPTFILTERCAPS_MAGFANISOTROPIC 0x04000000 #define D3DPTFILTERCAPS_MAGFAFLATCUBIC 0x08000000 #define D3DPTFILTERCAPS_MAGFGAUSSIANCUBIC 0x10000000 #define D3DPTBLENDCAPS_DECAL 0x00000001 #define D3DPTBLENDCAPS_MODULATE 0x00000002 #define D3DPTBLENDCAPS_DECALALPHA 0x00000004 #define D3DPTBLENDCAPS_MODULATEALPHA 0x00000008 #define D3DPTBLENDCAPS_DECALMASK 0x00000010 #define D3DPTBLENDCAPS_MODULATEMASK 0x00000020 #define D3DPTBLENDCAPS_COPY 0x00000040 #define D3DPTBLENDCAPS_ADD 0x00000080 #define D3DPTADDRESSCAPS_WRAP 0x00000001 #define D3DPTADDRESSCAPS_MIRROR 0x00000002 #define D3DPTADDRESSCAPS_CLAMP 0x00000004 #define D3DPTADDRESSCAPS_BORDER 0x00000008 #define D3DPTADDRESSCAPS_INDEPENDENTUV 0x00000010 typedef struct _D3DDeviceDesc { DWORD dwSize; DWORD dwFlags; D3DCOLORMODEL dcmColorModel; DWORD dwDevCaps; D3DTRANSFORMCAPS dtcTransformCaps; WINBOOL bClipping; D3DLIGHTINGCAPS dlcLightingCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMaxBufferSize; DWORD dwMaxVertexCount; DWORD dwMinTextureWidth,dwMinTextureHeight; DWORD dwMaxTextureWidth,dwMaxTextureHeight; DWORD dwMinStippleWidth,dwMaxStippleWidth; DWORD dwMinStippleHeight,dwMaxStippleHeight; DWORD dwMaxTextureRepeat; DWORD dwMaxTextureAspectRatio; DWORD dwMaxAnisotropy; D3DVALUE dvGuardBandLeft; D3DVALUE dvGuardBandTop; D3DVALUE dvGuardBandRight; D3DVALUE dvGuardBandBottom; D3DVALUE dvExtentsAdjust; DWORD dwStencilCaps; DWORD dwFVFCaps; DWORD dwTextureOpCaps; WORD wMaxTextureBlendStages; WORD wMaxSimultaneousTextures; } D3DDEVICEDESC,*LPD3DDEVICEDESC; #define D3DDEVICEDESCSIZE (sizeof(D3DDEVICEDESC)) typedef struct _D3DDeviceDesc7 { DWORD dwDevCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMinTextureWidth, dwMinTextureHeight; DWORD dwMaxTextureWidth, dwMaxTextureHeight; DWORD dwMaxTextureRepeat; DWORD dwMaxTextureAspectRatio; DWORD dwMaxAnisotropy; D3DVALUE dvGuardBandLeft; D3DVALUE dvGuardBandTop; D3DVALUE dvGuardBandRight; D3DVALUE dvGuardBandBottom; D3DVALUE dvExtentsAdjust; DWORD dwStencilCaps; DWORD dwFVFCaps; DWORD dwTextureOpCaps; WORD wMaxTextureBlendStages; WORD wMaxSimultaneousTextures; DWORD dwMaxActiveLights; D3DVALUE dvMaxVertexW; GUID deviceGUID; WORD wMaxUserClipPlanes; WORD wMaxVertexBlendMatrices; DWORD dwVertexProcessingCaps; DWORD dwReserved1; DWORD dwReserved2; DWORD dwReserved3; DWORD dwReserved4; } D3DDEVICEDESC7, *LPD3DDEVICEDESC7; #define D3DDEVICEDESC7SIZE (sizeof(D3DDEVICEDESC7)) #define D3DDD_COLORMODEL 0x00000001 #define D3DDD_DEVCAPS 0x00000002 #define D3DDD_TRANSFORMCAPS 0x00000004 #define D3DDD_LIGHTINGCAPS 0x00000008 #define D3DDD_BCLIPPING 0x00000010 #define D3DDD_LINECAPS 0x00000020 #define D3DDD_TRICAPS 0x00000040 #define D3DDD_DEVICERENDERBITDEPTH 0x00000080 #define D3DDD_DEVICEZBUFFERBITDEPTH 0x00000100 #define D3DDD_MAXBUFFERSIZE 0x00000200 #define D3DDD_MAXVERTEXCOUNT 0x00000400 #define D3DDEVCAPS_FLOATTLVERTEX 0x00000001 #define D3DDEVCAPS_SORTINCREASINGZ 0x00000002 #define D3DDEVCAPS_SORTDECREASINGZ 0X00000004 #define D3DDEVCAPS_SORTEXACT 0x00000008 #define D3DDEVCAPS_EXECUTESYSTEMMEMORY 0x00000010 #define D3DDEVCAPS_EXECUTEVIDEOMEMORY 0x00000020 #define D3DDEVCAPS_TLVERTEXSYSTEMMEMORY 0x00000040 #define D3DDEVCAPS_TLVERTEXVIDEOMEMORY 0x00000080 #define D3DDEVCAPS_TEXTURESYSTEMMEMORY 0x00000100 #define D3DDEVCAPS_TEXTUREVIDEOMEMORY 0x00000200 #define D3DDEVCAPS_DRAWPRIMTLVERTEX 0x00000400 #define D3DDEVCAPS_CANRENDERAFTERFLIP 0x00000800 #define D3DDEVCAPS_TEXTURENONLOCALVIDMEM 0x00001000 #define D3DDEVCAPS_DRAWPRIMITIVES2 0x00002000 #define D3DDEVCAPS_SEPARATETEXTUREMEMORIES 0x00004000 #define D3DDEVCAPS_DRAWPRIMITIVES2EX 0x00008000 #define D3DDEVCAPS_HWTRANSFORMANDLIGHT 0x00010000 #define D3DDEVCAPS_CANBLTSYSTONONLOCAL 0x00020000 #define D3DDEVCAPS_HWRASTERIZATION 0x00080000 #define D3DSTENCILCAPS_KEEP 0x00000001 #define D3DSTENCILCAPS_ZERO 0x00000002 #define D3DSTENCILCAPS_REPLACE 0x00000004 #define D3DSTENCILCAPS_INCRSAT 0x00000008 #define D3DSTENCILCAPS_DECRSAT 0x00000010 #define D3DSTENCILCAPS_INVERT 0x00000020 #define D3DSTENCILCAPS_INCR 0x00000040 #define D3DSTENCILCAPS_DECR 0x00000080 #define D3DTEXOPCAPS_DISABLE 0x00000001 #define D3DTEXOPCAPS_SELECTARG1 0x00000002 #define D3DTEXOPCAPS_SELECTARG2 0x00000004 #define D3DTEXOPCAPS_MODULATE 0x00000008 #define D3DTEXOPCAPS_MODULATE2X 0x00000010 #define D3DTEXOPCAPS_MODULATE4X 0x00000020 #define D3DTEXOPCAPS_ADD 0x00000040 #define D3DTEXOPCAPS_ADDSIGNED 0x00000080 #define D3DTEXOPCAPS_ADDSIGNED2X 0x00000100 #define D3DTEXOPCAPS_SUBTRACT 0x00000200 #define D3DTEXOPCAPS_ADDSMOOTH 0x00000400 #define D3DTEXOPCAPS_BLENDDIFFUSEALPHA 0x00000800 #define D3DTEXOPCAPS_BLENDTEXTUREALPHA 0x00001000 #define D3DTEXOPCAPS_BLENDFACTORALPHA 0x00002000 #define D3DTEXOPCAPS_BLENDTEXTUREALPHAPM 0x00004000 #define D3DTEXOPCAPS_BLENDCURRENTALPHA 0x00008000 #define D3DTEXOPCAPS_PREMODULATE 0x00010000 #define D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR 0x00020000 #define D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA 0x00040000 #define D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR 0x00080000 #define D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA 0x00100000 #define D3DTEXOPCAPS_BUMPENVMAP 0x00200000 #define D3DTEXOPCAPS_BUMPENVMAPLUMINANCE 0x00400000 #define D3DTEXOPCAPS_DOTPRODUCT3 0x00800000 #define D3DFVFCAPS_TEXCOORDCOUNTMASK 0x0000FFFF #define D3DFVFCAPS_DONOTSTRIPELEMENTS 0x00080000 #define D3DVTXPCAPS_TEXGEN 0x00000001 #define D3DVTXPCAPS_MATERIALSOURCE7 0x00000002 #define D3DVTXPCAPS_VERTEXFOG 0x00000004 #define D3DVTXPCAPS_DIRECTIONALLIGHTS 0x00000008 #define D3DVTXPCAPS_POSITIONALLIGHTS 0x00000010 #define D3DVTXPCAPS_LOCALVIEWER 0x00000020 typedef HRESULT (CALLBACK *LPD3DENUMDEVICESCALLBACK)(GUID *guid, char *description, char *name, D3DDEVICEDESC *hal_desc, D3DDEVICEDESC *hel_desc, void *ctx); typedef HRESULT (CALLBACK *LPD3DENUMDEVICESCALLBACK7)(char *description, char *name, D3DDEVICEDESC7 *desc, void *ctx); #define D3DFDS_COLORMODEL 0x00000001 #define D3DFDS_GUID 0x00000002 #define D3DFDS_HARDWARE 0x00000004 #define D3DFDS_TRIANGLES 0x00000008 #define D3DFDS_LINES 0x00000010 #define D3DFDS_MISCCAPS 0x00000020 #define D3DFDS_RASTERCAPS 0x00000040 #define D3DFDS_ZCMPCAPS 0x00000080 #define D3DFDS_ALPHACMPCAPS 0x00000100 #define D3DFDS_SRCBLENDCAPS 0x00000200 #define D3DFDS_DSTBLENDCAPS 0x00000400 #define D3DFDS_SHADECAPS 0x00000800 #define D3DFDS_TEXTURECAPS 0x00001000 #define D3DFDS_TEXTUREFILTERCAPS 0x00002000 #define D3DFDS_TEXTUREBLENDCAPS 0x00004000 #define D3DFDS_TEXTUREADDRESSCAPS 0x00008000 typedef struct _D3DFINDDEVICESEARCH { DWORD dwSize; DWORD dwFlags; WINBOOL bHardware; D3DCOLORMODEL dcmColorModel; GUID guid; DWORD dwCaps; D3DPRIMCAPS dpcPrimCaps; } D3DFINDDEVICESEARCH,*LPD3DFINDDEVICESEARCH; typedef struct _D3DFINDDEVICERESULT { DWORD dwSize; GUID guid; D3DDEVICEDESC ddHwDesc; D3DDEVICEDESC ddSwDesc; } D3DFINDDEVICERESULT,*LPD3DFINDDEVICERESULT; typedef struct _D3DExecuteBufferDesc { DWORD dwSize; DWORD dwFlags; DWORD dwCaps; DWORD dwBufferSize; void *lpData; } D3DEXECUTEBUFFERDESC, *LPD3DEXECUTEBUFFERDESC; #define D3DDEB_BUFSIZE 0x00000001 #define D3DDEB_CAPS 0x00000002 #define D3DDEB_LPDATA 0x00000004 #define D3DDEBCAPS_SYSTEMMEMORY 0x00000001 #define D3DDEBCAPS_VIDEOMEMORY 0x00000002 #define D3DDEBCAPS_MEM (D3DDEBCAPS_SYSTEMMEMORY|D3DDEBCAPS_VIDEOMEMORY) /* = 0x3 */ typedef struct _D3DDEVINFO_TEXTUREMANAGER { WINBOOL bThrashing; DWORD dwApproxBytesDownloaded; DWORD dwNumEvicts; DWORD dwNumVidCreates; DWORD dwNumTexturesUsed; DWORD dwNumUsedTexInVid; DWORD dwWorkingSet; DWORD dwWorkingSetBytes; DWORD dwTotalManaged; DWORD dwTotalBytes; DWORD dwLastPri; } D3DDEVINFO_TEXTUREMANAGER, *LPD3DDEVINFO_TEXTUREMANAGER; typedef struct _D3DDEVINFO_TEXTURING { DWORD dwNumLoads; DWORD dwApproxBytesLoaded; DWORD dwNumPreLoads; DWORD dwNumSet; DWORD dwNumCreates; DWORD dwNumDestroys; DWORD dwNumSetPriorities; DWORD dwNumSetLODs; DWORD dwNumLocks; DWORD dwNumGetDCs; } D3DDEVINFO_TEXTURING, *LPD3DDEVINFO_TEXTURING; #ifdef __i386__ #include #endif #endif dxvk-0~git20220822.9df86f2/d3dcommon.h000066400000000000000000001031551430055512200170400ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/d3dcommon.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __d3dcommon_h__ #define __d3dcommon_h__ /* Forward declarations */ #ifndef __ID3D10Blob_FWD_DEFINED__ #define __ID3D10Blob_FWD_DEFINED__ typedef interface ID3D10Blob ID3D10Blob; #ifdef __cplusplus interface ID3D10Blob; #endif /* __cplusplus */ #endif #ifndef __ID3DDestructionNotifier_FWD_DEFINED__ #define __ID3DDestructionNotifier_FWD_DEFINED__ typedef interface ID3DDestructionNotifier ID3DDestructionNotifier; #ifdef __cplusplus interface ID3DDestructionNotifier; #endif /* __cplusplus */ #endif #ifndef __ID3DInclude_FWD_DEFINED__ #define __ID3DInclude_FWD_DEFINED__ typedef interface ID3DInclude ID3DInclude; #ifdef __cplusplus interface ID3DInclude; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #ifdef __cplusplus extern "C" { #endif typedef struct _D3D_SHADER_MACRO { const char *Name; const char *Definition; } D3D_SHADER_MACRO; typedef struct _D3D_SHADER_MACRO *LPD3D_SHADER_MACRO; /***************************************************************************** * ID3D10Blob interface */ #ifndef __ID3D10Blob_INTERFACE_DEFINED__ #define __ID3D10Blob_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3D10Blob, 0x8ba5fb08, 0x5195, 0x40e2, 0xac,0x58, 0x0d,0x98,0x9c,0x3a,0x01,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8ba5fb08-5195-40e2-ac58-0d989c3a0102") ID3D10Blob : public IUnknown { virtual void * STDMETHODCALLTYPE GetBufferPointer( ) = 0; virtual SIZE_T STDMETHODCALLTYPE GetBufferSize( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3D10Blob, 0x8ba5fb08, 0x5195, 0x40e2, 0xac,0x58, 0x0d,0x98,0x9c,0x3a,0x01,0x02) #endif #else typedef struct ID3D10BlobVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3D10Blob *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3D10Blob *This); ULONG (STDMETHODCALLTYPE *Release)( ID3D10Blob *This); /*** ID3D10Blob methods ***/ void * (STDMETHODCALLTYPE *GetBufferPointer)( ID3D10Blob *This); SIZE_T (STDMETHODCALLTYPE *GetBufferSize)( ID3D10Blob *This); END_INTERFACE } ID3D10BlobVtbl; interface ID3D10Blob { CONST_VTBL ID3D10BlobVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3D10Blob_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3D10Blob_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3D10Blob_Release(This) (This)->lpVtbl->Release(This) /*** ID3D10Blob methods ***/ #define ID3D10Blob_GetBufferPointer(This) (This)->lpVtbl->GetBufferPointer(This) #define ID3D10Blob_GetBufferSize(This) (This)->lpVtbl->GetBufferSize(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3D10Blob_QueryInterface(ID3D10Blob* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3D10Blob_AddRef(ID3D10Blob* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3D10Blob_Release(ID3D10Blob* This) { return This->lpVtbl->Release(This); } /*** ID3D10Blob methods ***/ static FORCEINLINE void * ID3D10Blob_GetBufferPointer(ID3D10Blob* This) { return This->lpVtbl->GetBufferPointer(This); } static FORCEINLINE SIZE_T ID3D10Blob_GetBufferSize(ID3D10Blob* This) { return This->lpVtbl->GetBufferSize(This); } #endif #endif #endif #endif /* __ID3D10Blob_INTERFACE_DEFINED__ */ typedef ID3D10Blob *LPD3D10BLOB; typedef ID3D10Blob ID3DBlob; typedef ID3DBlob *LPD3DBLOB; #define IID_ID3DBlob IID_ID3D10Blob typedef void (__stdcall *PFN_DESTRUCTION_CALLBACK)(void *data); /***************************************************************************** * ID3DDestructionNotifier interface */ #ifndef __ID3DDestructionNotifier_INTERFACE_DEFINED__ #define __ID3DDestructionNotifier_INTERFACE_DEFINED__ DEFINE_GUID(IID_ID3DDestructionNotifier, 0xa06eb39a, 0x50da, 0x425b, 0x8c,0x31, 0x4e,0xec,0xd6,0xc2,0x70,0xf3); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a06eb39a-50da-425b-8c31-4eecd6c270f3") ID3DDestructionNotifier : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RegisterDestructionCallback( PFN_DESTRUCTION_CALLBACK callback_func, void *data, UINT *callback_id) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterDestructionCallback( UINT callback_id) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ID3DDestructionNotifier, 0xa06eb39a, 0x50da, 0x425b, 0x8c,0x31, 0x4e,0xec,0xd6,0xc2,0x70,0xf3) #endif #else typedef struct ID3DDestructionNotifierVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ID3DDestructionNotifier *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ID3DDestructionNotifier *This); ULONG (STDMETHODCALLTYPE *Release)( ID3DDestructionNotifier *This); /*** ID3DDestructionNotifier methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterDestructionCallback)( ID3DDestructionNotifier *This, PFN_DESTRUCTION_CALLBACK callback_func, void *data, UINT *callback_id); HRESULT (STDMETHODCALLTYPE *UnregisterDestructionCallback)( ID3DDestructionNotifier *This, UINT callback_id); END_INTERFACE } ID3DDestructionNotifierVtbl; interface ID3DDestructionNotifier { CONST_VTBL ID3DDestructionNotifierVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID3DDestructionNotifier_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID3DDestructionNotifier_AddRef(This) (This)->lpVtbl->AddRef(This) #define ID3DDestructionNotifier_Release(This) (This)->lpVtbl->Release(This) /*** ID3DDestructionNotifier methods ***/ #define ID3DDestructionNotifier_RegisterDestructionCallback(This,callback_func,data,callback_id) (This)->lpVtbl->RegisterDestructionCallback(This,callback_func,data,callback_id) #define ID3DDestructionNotifier_UnregisterDestructionCallback(This,callback_id) (This)->lpVtbl->UnregisterDestructionCallback(This,callback_id) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ID3DDestructionNotifier_QueryInterface(ID3DDestructionNotifier* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ID3DDestructionNotifier_AddRef(ID3DDestructionNotifier* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ID3DDestructionNotifier_Release(ID3DDestructionNotifier* This) { return This->lpVtbl->Release(This); } /*** ID3DDestructionNotifier methods ***/ static FORCEINLINE HRESULT ID3DDestructionNotifier_RegisterDestructionCallback(ID3DDestructionNotifier* This,PFN_DESTRUCTION_CALLBACK callback_func,void *data,UINT *callback_id) { return This->lpVtbl->RegisterDestructionCallback(This,callback_func,data,callback_id); } static FORCEINLINE HRESULT ID3DDestructionNotifier_UnregisterDestructionCallback(ID3DDestructionNotifier* This,UINT callback_id) { return This->lpVtbl->UnregisterDestructionCallback(This,callback_id); } #endif #endif #endif #endif /* __ID3DDestructionNotifier_INTERFACE_DEFINED__ */ typedef enum _D3D_INCLUDE_TYPE { D3D_INCLUDE_LOCAL = 0, D3D_INCLUDE_SYSTEM = 1, D3D10_INCLUDE_LOCAL = D3D_INCLUDE_LOCAL, D3D10_INCLUDE_SYSTEM = D3D_INCLUDE_SYSTEM, D3D_INCLUDE_FORCE_DWORD = 0x7fffffff } D3D_INCLUDE_TYPE; /***************************************************************************** * ID3DInclude interface */ #ifndef __ID3DInclude_INTERFACE_DEFINED__ #define __ID3DInclude_INTERFACE_DEFINED__ #if defined(__cplusplus) && !defined(CINTERFACE) interface ID3DInclude { BEGIN_INTERFACE virtual HRESULT STDMETHODCALLTYPE Open( D3D_INCLUDE_TYPE include_type, const char *filename, const void *parent_data, const void **data, UINT *bytes) = 0; virtual HRESULT STDMETHODCALLTYPE Close( const void *data) = 0; END_INTERFACE }; #else typedef struct ID3DIncludeVtbl { BEGIN_INTERFACE /*** ID3DInclude methods ***/ HRESULT (STDMETHODCALLTYPE *Open)( ID3DInclude *This, D3D_INCLUDE_TYPE include_type, const char *filename, const void *parent_data, const void **data, UINT *bytes); HRESULT (STDMETHODCALLTYPE *Close)( ID3DInclude *This, const void *data); END_INTERFACE } ID3DIncludeVtbl; interface ID3DInclude { CONST_VTBL ID3DIncludeVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** ID3DInclude methods ***/ #define ID3DInclude_Open(This,include_type,filename,parent_data,data,bytes) (This)->lpVtbl->Open(This,include_type,filename,parent_data,data,bytes) #define ID3DInclude_Close(This,data) (This)->lpVtbl->Close(This,data) #else /*** ID3DInclude methods ***/ static FORCEINLINE HRESULT ID3DInclude_Open(ID3DInclude* This,D3D_INCLUDE_TYPE include_type,const char *filename,const void *parent_data,const void **data,UINT *bytes) { return This->lpVtbl->Open(This,include_type,filename,parent_data,data,bytes); } static FORCEINLINE HRESULT ID3DInclude_Close(ID3DInclude* This,const void *data) { return This->lpVtbl->Close(This,data); } #endif #endif #endif #endif /* __ID3DInclude_INTERFACE_DEFINED__ */ typedef ID3DInclude *LPD3DINCLUDE; typedef enum D3D_DRIVER_TYPE { D3D_DRIVER_TYPE_UNKNOWN = 0, D3D_DRIVER_TYPE_HARDWARE = 1, D3D_DRIVER_TYPE_REFERENCE = 2, D3D_DRIVER_TYPE_NULL = 3, D3D_DRIVER_TYPE_SOFTWARE = 4, D3D_DRIVER_TYPE_WARP = 5 } D3D_DRIVER_TYPE; typedef enum D3D_FEATURE_LEVEL { D3D_FEATURE_LEVEL_9_1 = 0x9100, D3D_FEATURE_LEVEL_9_2 = 0x9200, D3D_FEATURE_LEVEL_9_3 = 0x9300, D3D_FEATURE_LEVEL_10_0 = 0xa000, D3D_FEATURE_LEVEL_10_1 = 0xa100, D3D_FEATURE_LEVEL_11_0 = 0xb000, D3D_FEATURE_LEVEL_11_1 = 0xb100, D3D_FEATURE_LEVEL_12_0 = 0xc000, D3D_FEATURE_LEVEL_12_1 = 0xc100 } D3D_FEATURE_LEVEL; #define D3D_FL9_1_REQ_TEXTURE1D_U_DIMENSION 2048 #define D3D_FL9_3_REQ_TEXTURE1D_U_DIMENSION 4096 #define D3D_FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION 2048 #define D3D_FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION 4096 #define D3D_FL9_1_REQ_TEXTURECUBE_DIMENSION 512 #define D3D_FL9_3_REQ_TEXTURECUBE_DIMENSION 4096 #define D3D_FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION 256 #define D3D_FL9_1_DEFAULT_MAX_ANISOTROPY 2 #define D3D_FL9_1_IA_PRIMITIVE_MAX_COUNT 65535 #define D3D_FL9_2_IA_PRIMITIVE_MAX_COUNT 1048575 #define D3D_FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT 1 #define D3D_FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT 4 #define D3D_FL9_1_MAX_TEXTURE_REPEAT 128 #define D3D_FL9_2_MAX_TEXTURE_REPEAT 2048 #define D3D_FL9_3_MAX_TEXTURE_REPEAT 8192 typedef enum _D3D_SHADER_VARIABLE_CLASS { D3D_SVC_SCALAR = 0, D3D_SVC_VECTOR = 1, D3D_SVC_MATRIX_ROWS = 2, D3D_SVC_MATRIX_COLUMNS = 3, D3D_SVC_OBJECT = 4, D3D_SVC_STRUCT = 5, D3D_SVC_INTERFACE_CLASS = 6, D3D_SVC_INTERFACE_POINTER = 7, D3D10_SVC_SCALAR = 0, D3D10_SVC_VECTOR = 1, D3D10_SVC_MATRIX_ROWS = 2, D3D10_SVC_MATRIX_COLUMNS = 3, D3D10_SVC_OBJECT = 4, D3D10_SVC_STRUCT = 5, D3D11_SVC_INTERFACE_CLASS = 6, D3D11_SVC_INTERFACE_POINTER = 7, D3D_SVC_FORCE_DWORD = 0x7fffffff } D3D_SHADER_VARIABLE_CLASS; typedef enum _D3D_SHADER_VARIABLE_FLAGS { D3D_SVF_USERPACKED = 0x1, D3D_SVF_USED = 0x2, D3D_SVF_INTERFACE_POINTER = 0x4, D3D_SVF_INTERFACE_PARAMETER = 0x8, D3D10_SVF_USERPACKED = D3D_SVF_USERPACKED, D3D10_SVF_USED = D3D_SVF_USED, D3D11_SVF_INTERFACE_POINTER = D3D_SVF_INTERFACE_POINTER, D3D11_SVF_INTERFACE_PARAMETER = D3D_SVF_INTERFACE_PARAMETER, D3D_SVF_FORCE_DWORD = 0x7fffffff } D3D_SHADER_VARIABLE_FLAGS; typedef enum _D3D_SHADER_VARIABLE_TYPE { D3D_SVT_VOID = 0, D3D_SVT_BOOL = 1, D3D_SVT_INT = 2, D3D_SVT_FLOAT = 3, D3D_SVT_STRING = 4, D3D_SVT_TEXTURE = 5, D3D_SVT_TEXTURE1D = 6, D3D_SVT_TEXTURE2D = 7, D3D_SVT_TEXTURE3D = 8, D3D_SVT_TEXTURECUBE = 9, D3D_SVT_SAMPLER = 10, D3D_SVT_SAMPLER1D = 11, D3D_SVT_SAMPLER2D = 12, D3D_SVT_SAMPLER3D = 13, D3D_SVT_SAMPLERCUBE = 14, D3D_SVT_PIXELSHADER = 15, D3D_SVT_VERTEXSHADER = 16, D3D_SVT_PIXELFRAGMENT = 17, D3D_SVT_VERTEXFRAGMENT = 18, D3D_SVT_UINT = 19, D3D_SVT_UINT8 = 20, D3D_SVT_GEOMETRYSHADER = 21, D3D_SVT_RASTERIZER = 22, D3D_SVT_DEPTHSTENCIL = 23, D3D_SVT_BLEND = 24, D3D_SVT_BUFFER = 25, D3D_SVT_CBUFFER = 26, D3D_SVT_TBUFFER = 27, D3D_SVT_TEXTURE1DARRAY = 28, D3D_SVT_TEXTURE2DARRAY = 29, D3D_SVT_RENDERTARGETVIEW = 30, D3D_SVT_DEPTHSTENCILVIEW = 31, D3D_SVT_TEXTURE2DMS = 32, D3D_SVT_TEXTURE2DMSARRAY = 33, D3D_SVT_TEXTURECUBEARRAY = 34, D3D_SVT_HULLSHADER = 35, D3D_SVT_DOMAINSHADER = 36, D3D_SVT_INTERFACE_POINTER = 37, D3D_SVT_COMPUTESHADER = 38, D3D_SVT_DOUBLE = 39, D3D_SVT_RWTEXTURE1D = 40, D3D_SVT_RWTEXTURE1DARRAY = 41, D3D_SVT_RWTEXTURE2D = 42, D3D_SVT_RWTEXTURE2DARRAY = 43, D3D_SVT_RWTEXTURE3D = 44, D3D_SVT_RWBUFFER = 45, D3D_SVT_BYTEADDRESS_BUFFER = 46, D3D_SVT_RWBYTEADDRESS_BUFFER = 47, D3D_SVT_STRUCTURED_BUFFER = 48, D3D_SVT_RWSTRUCTURED_BUFFER = 49, D3D_SVT_APPEND_STRUCTURED_BUFFER = 50, D3D_SVT_CONSUME_STRUCTURED_BUFFER = 51, D3D_SVT_MIN8FLOAT = 52, D3D_SVT_MIN10FLOAT = 53, D3D_SVT_MIN16FLOAT = 54, D3D_SVT_MIN12INT = 55, D3D_SVT_MIN16INT = 56, D3D_SVT_MIN16UINT = 57, D3D10_SVT_VOID = 0, D3D10_SVT_BOOL = 1, D3D10_SVT_INT = 2, D3D10_SVT_FLOAT = 3, D3D10_SVT_STRING = 4, D3D10_SVT_TEXTURE = 5, D3D10_SVT_TEXTURE1D = 6, D3D10_SVT_TEXTURE2D = 7, D3D10_SVT_TEXTURE3D = 8, D3D10_SVT_TEXTURECUBE = 9, D3D10_SVT_SAMPLER = 10, D3D10_SVT_SAMPLER1D = 11, D3D10_SVT_SAMPLER2D = 12, D3D10_SVT_SAMPLER3D = 13, D3D10_SVT_SAMPLERCUBE = 14, D3D10_SVT_PIXELSHADER = 15, D3D10_SVT_VERTEXSHADER = 16, D3D10_SVT_PIXELFRAGMENT = 17, D3D10_SVT_VERTEXFRAGMENT = 18, D3D10_SVT_UINT = 19, D3D10_SVT_UINT8 = 20, D3D10_SVT_GEOMETRYSHADER = 21, D3D10_SVT_RASTERIZER = 22, D3D10_SVT_DEPTHSTENCIL = 23, D3D10_SVT_BLEND = 24, D3D10_SVT_BUFFER = 25, D3D10_SVT_CBUFFER = 26, D3D10_SVT_TBUFFER = 27, D3D10_SVT_TEXTURE1DARRAY = 28, D3D10_SVT_TEXTURE2DARRAY = 29, D3D10_SVT_RENDERTARGETVIEW = 30, D3D10_SVT_DEPTHSTENCILVIEW = 31, D3D10_SVT_TEXTURE2DMS = 32, D3D10_SVT_TEXTURE2DMSARRAY = 33, D3D10_SVT_TEXTURECUBEARRAY = 34, D3D11_SVT_HULLSHADER = 35, D3D11_SVT_DOMAINSHADER = 36, D3D11_SVT_INTERFACE_POINTER = 37, D3D11_SVT_COMPUTESHADER = 38, D3D11_SVT_DOUBLE = 39, D3D11_SVT_RWTEXTURE1D = 40, D3D11_SVT_RWTEXTURE1DARRAY = 41, D3D11_SVT_RWTEXTURE2D = 42, D3D11_SVT_RWTEXTURE2DARRAY = 43, D3D11_SVT_RWTEXTURE3D = 44, D3D11_SVT_RWBUFFER = 45, D3D11_SVT_BYTEADDRESS_BUFFER = 46, D3D11_SVT_RWBYTEADDRESS_BUFFER = 47, D3D11_SVT_STRUCTURED_BUFFER = 48, D3D11_SVT_RWSTRUCTURED_BUFFER = 49, D3D11_SVT_APPEND_STRUCTURED_BUFFER = 50, D3D11_SVT_CONSUME_STRUCTURED_BUFFER = 51, D3D_SVT_FORCE_DWORD = 0x7fffffff } D3D_SHADER_VARIABLE_TYPE; typedef enum _D3D_SHADER_INPUT_FLAGS { D3D_SIF_USERPACKED = 0x1, D3D_SIF_COMPARISON_SAMPLER = 0x2, D3D_SIF_TEXTURE_COMPONENT_0 = 0x4, D3D_SIF_TEXTURE_COMPONENT_1 = 0x8, D3D_SIF_TEXTURE_COMPONENTS = 0xc, D3D_SIF_UNUSED = 0x10, D3D10_SIF_USERPACKED = D3D_SIF_USERPACKED, D3D10_SIF_COMPARISON_SAMPLER = D3D_SIF_COMPARISON_SAMPLER, D3D10_SIF_TEXTURE_COMPONENT_0 = D3D_SIF_TEXTURE_COMPONENT_0, D3D10_SIF_TEXTURE_COMPONENT_1 = D3D_SIF_TEXTURE_COMPONENT_1, D3D10_SIF_TEXTURE_COMPONENTS = D3D_SIF_TEXTURE_COMPONENTS, D3D_SIF_FORCE_DWORD = 0x7fffffff } D3D_SHADER_INPUT_FLAGS; typedef enum D3D_PRIMITIVE { D3D_PRIMITIVE_UNDEFINED = 0, D3D_PRIMITIVE_POINT = 1, D3D_PRIMITIVE_LINE = 2, D3D_PRIMITIVE_TRIANGLE = 3, D3D_PRIMITIVE_LINE_ADJ = 6, D3D_PRIMITIVE_TRIANGLE_ADJ = 7, D3D_PRIMITIVE_1_CONTROL_POINT_PATCH = 8, D3D_PRIMITIVE_2_CONTROL_POINT_PATCH = 9, D3D_PRIMITIVE_3_CONTROL_POINT_PATCH = 10, D3D_PRIMITIVE_4_CONTROL_POINT_PATCH = 11, D3D_PRIMITIVE_5_CONTROL_POINT_PATCH = 12, D3D_PRIMITIVE_6_CONTROL_POINT_PATCH = 13, D3D_PRIMITIVE_7_CONTROL_POINT_PATCH = 14, D3D_PRIMITIVE_8_CONTROL_POINT_PATCH = 15, D3D_PRIMITIVE_9_CONTROL_POINT_PATCH = 16, D3D_PRIMITIVE_10_CONTROL_POINT_PATCH = 17, D3D_PRIMITIVE_11_CONTROL_POINT_PATCH = 18, D3D_PRIMITIVE_12_CONTROL_POINT_PATCH = 19, D3D_PRIMITIVE_13_CONTROL_POINT_PATCH = 20, D3D_PRIMITIVE_14_CONTROL_POINT_PATCH = 21, D3D_PRIMITIVE_15_CONTROL_POINT_PATCH = 22, D3D_PRIMITIVE_16_CONTROL_POINT_PATCH = 23, D3D_PRIMITIVE_17_CONTROL_POINT_PATCH = 24, D3D_PRIMITIVE_18_CONTROL_POINT_PATCH = 25, D3D_PRIMITIVE_19_CONTROL_POINT_PATCH = 26, D3D_PRIMITIVE_20_CONTROL_POINT_PATCH = 27, D3D_PRIMITIVE_21_CONTROL_POINT_PATCH = 28, D3D_PRIMITIVE_22_CONTROL_POINT_PATCH = 29, D3D_PRIMITIVE_23_CONTROL_POINT_PATCH = 30, D3D_PRIMITIVE_24_CONTROL_POINT_PATCH = 31, D3D_PRIMITIVE_25_CONTROL_POINT_PATCH = 32, D3D_PRIMITIVE_26_CONTROL_POINT_PATCH = 33, D3D_PRIMITIVE_27_CONTROL_POINT_PATCH = 34, D3D_PRIMITIVE_28_CONTROL_POINT_PATCH = 35, D3D_PRIMITIVE_29_CONTROL_POINT_PATCH = 36, D3D_PRIMITIVE_30_CONTROL_POINT_PATCH = 37, D3D_PRIMITIVE_31_CONTROL_POINT_PATCH = 38, D3D_PRIMITIVE_32_CONTROL_POINT_PATCH = 39, D3D10_PRIMITIVE_UNDEFINED = 0, D3D10_PRIMITIVE_POINT = 1, D3D10_PRIMITIVE_LINE = 2, D3D10_PRIMITIVE_TRIANGLE = 3, D3D10_PRIMITIVE_LINE_ADJ = 6, D3D10_PRIMITIVE_TRIANGLE_ADJ = 7, D3D11_PRIMITIVE_UNDEFINED = 0, D3D11_PRIMITIVE_POINT = 1, D3D11_PRIMITIVE_LINE = 2, D3D11_PRIMITIVE_TRIANGLE = 3, D3D11_PRIMITIVE_LINE_ADJ = 6, D3D11_PRIMITIVE_TRIANGLE_ADJ = 7, D3D11_PRIMITIVE_1_CONTROL_POINT_PATCH = 8, D3D11_PRIMITIVE_2_CONTROL_POINT_PATCH = 9, D3D11_PRIMITIVE_3_CONTROL_POINT_PATCH = 10, D3D11_PRIMITIVE_4_CONTROL_POINT_PATCH = 11, D3D11_PRIMITIVE_5_CONTROL_POINT_PATCH = 12, D3D11_PRIMITIVE_6_CONTROL_POINT_PATCH = 13, D3D11_PRIMITIVE_7_CONTROL_POINT_PATCH = 14, D3D11_PRIMITIVE_8_CONTROL_POINT_PATCH = 15, D3D11_PRIMITIVE_9_CONTROL_POINT_PATCH = 16, D3D11_PRIMITIVE_10_CONTROL_POINT_PATCH = 17, D3D11_PRIMITIVE_11_CONTROL_POINT_PATCH = 18, D3D11_PRIMITIVE_12_CONTROL_POINT_PATCH = 19, D3D11_PRIMITIVE_13_CONTROL_POINT_PATCH = 20, D3D11_PRIMITIVE_14_CONTROL_POINT_PATCH = 21, D3D11_PRIMITIVE_15_CONTROL_POINT_PATCH = 22, D3D11_PRIMITIVE_16_CONTROL_POINT_PATCH = 23, D3D11_PRIMITIVE_17_CONTROL_POINT_PATCH = 24, D3D11_PRIMITIVE_18_CONTROL_POINT_PATCH = 25, D3D11_PRIMITIVE_19_CONTROL_POINT_PATCH = 26, D3D11_PRIMITIVE_20_CONTROL_POINT_PATCH = 27, D3D11_PRIMITIVE_21_CONTROL_POINT_PATCH = 28, D3D11_PRIMITIVE_22_CONTROL_POINT_PATCH = 29, D3D11_PRIMITIVE_23_CONTROL_POINT_PATCH = 30, D3D11_PRIMITIVE_24_CONTROL_POINT_PATCH = 31, D3D11_PRIMITIVE_25_CONTROL_POINT_PATCH = 32, D3D11_PRIMITIVE_26_CONTROL_POINT_PATCH = 33, D3D11_PRIMITIVE_27_CONTROL_POINT_PATCH = 34, D3D11_PRIMITIVE_28_CONTROL_POINT_PATCH = 35, D3D11_PRIMITIVE_29_CONTROL_POINT_PATCH = 36, D3D11_PRIMITIVE_30_CONTROL_POINT_PATCH = 37, D3D11_PRIMITIVE_31_CONTROL_POINT_PATCH = 38, D3D11_PRIMITIVE_32_CONTROL_POINT_PATCH = 39 } D3D_PRIMITIVE; typedef enum D3D_PRIMITIVE_TOPOLOGY { D3D_PRIMITIVE_TOPOLOGY_UNDEFINED = 0, D3D_PRIMITIVE_TOPOLOGY_POINTLIST = 1, D3D_PRIMITIVE_TOPOLOGY_LINELIST = 2, D3D_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, D3D_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, D3D_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, D3D_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, D3D_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13, D3D_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33, D3D_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34, D3D_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35, D3D_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36, D3D_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37, D3D_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38, D3D_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39, D3D_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40, D3D_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41, D3D_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42, D3D_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43, D3D_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44, D3D_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45, D3D_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46, D3D_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47, D3D_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48, D3D_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49, D3D_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50, D3D_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51, D3D_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52, D3D_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53, D3D_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54, D3D_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55, D3D_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56, D3D_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57, D3D_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58, D3D_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59, D3D_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60, D3D_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61, D3D_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62, D3D_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63, D3D_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64, D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED = 0, D3D10_PRIMITIVE_TOPOLOGY_POINTLIST = 1, D3D10_PRIMITIVE_TOPOLOGY_LINELIST = 2, D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13, D3D11_PRIMITIVE_TOPOLOGY_UNDEFINED = 0, D3D11_PRIMITIVE_TOPOLOGY_POINTLIST = 1, D3D11_PRIMITIVE_TOPOLOGY_LINELIST = 2, D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, D3D11_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, D3D11_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13, D3D11_PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST = 33, D3D11_PRIMITIVE_TOPOLOGY_2_CONTROL_POINT_PATCHLIST = 34, D3D11_PRIMITIVE_TOPOLOGY_3_CONTROL_POINT_PATCHLIST = 35, D3D11_PRIMITIVE_TOPOLOGY_4_CONTROL_POINT_PATCHLIST = 36, D3D11_PRIMITIVE_TOPOLOGY_5_CONTROL_POINT_PATCHLIST = 37, D3D11_PRIMITIVE_TOPOLOGY_6_CONTROL_POINT_PATCHLIST = 38, D3D11_PRIMITIVE_TOPOLOGY_7_CONTROL_POINT_PATCHLIST = 39, D3D11_PRIMITIVE_TOPOLOGY_8_CONTROL_POINT_PATCHLIST = 40, D3D11_PRIMITIVE_TOPOLOGY_9_CONTROL_POINT_PATCHLIST = 41, D3D11_PRIMITIVE_TOPOLOGY_10_CONTROL_POINT_PATCHLIST = 42, D3D11_PRIMITIVE_TOPOLOGY_11_CONTROL_POINT_PATCHLIST = 43, D3D11_PRIMITIVE_TOPOLOGY_12_CONTROL_POINT_PATCHLIST = 44, D3D11_PRIMITIVE_TOPOLOGY_13_CONTROL_POINT_PATCHLIST = 45, D3D11_PRIMITIVE_TOPOLOGY_14_CONTROL_POINT_PATCHLIST = 46, D3D11_PRIMITIVE_TOPOLOGY_15_CONTROL_POINT_PATCHLIST = 47, D3D11_PRIMITIVE_TOPOLOGY_16_CONTROL_POINT_PATCHLIST = 48, D3D11_PRIMITIVE_TOPOLOGY_17_CONTROL_POINT_PATCHLIST = 49, D3D11_PRIMITIVE_TOPOLOGY_18_CONTROL_POINT_PATCHLIST = 50, D3D11_PRIMITIVE_TOPOLOGY_19_CONTROL_POINT_PATCHLIST = 51, D3D11_PRIMITIVE_TOPOLOGY_20_CONTROL_POINT_PATCHLIST = 52, D3D11_PRIMITIVE_TOPOLOGY_21_CONTROL_POINT_PATCHLIST = 53, D3D11_PRIMITIVE_TOPOLOGY_22_CONTROL_POINT_PATCHLIST = 54, D3D11_PRIMITIVE_TOPOLOGY_23_CONTROL_POINT_PATCHLIST = 55, D3D11_PRIMITIVE_TOPOLOGY_24_CONTROL_POINT_PATCHLIST = 56, D3D11_PRIMITIVE_TOPOLOGY_25_CONTROL_POINT_PATCHLIST = 57, D3D11_PRIMITIVE_TOPOLOGY_26_CONTROL_POINT_PATCHLIST = 58, D3D11_PRIMITIVE_TOPOLOGY_27_CONTROL_POINT_PATCHLIST = 59, D3D11_PRIMITIVE_TOPOLOGY_28_CONTROL_POINT_PATCHLIST = 60, D3D11_PRIMITIVE_TOPOLOGY_29_CONTROL_POINT_PATCHLIST = 61, D3D11_PRIMITIVE_TOPOLOGY_30_CONTROL_POINT_PATCHLIST = 62, D3D11_PRIMITIVE_TOPOLOGY_31_CONTROL_POINT_PATCHLIST = 63, D3D11_PRIMITIVE_TOPOLOGY_32_CONTROL_POINT_PATCHLIST = 64 } D3D_PRIMITIVE_TOPOLOGY; typedef enum D3D_TESSELLATOR_DOMAIN { D3D_TESSELLATOR_DOMAIN_UNDEFINED = 0, D3D_TESSELLATOR_DOMAIN_ISOLINE = 1, D3D_TESSELLATOR_DOMAIN_TRI = 2, D3D_TESSELLATOR_DOMAIN_QUAD = 3, D3D11_TESSELLATOR_DOMAIN_UNDEFINED = 0, D3D11_TESSELLATOR_DOMAIN_ISOLINE = 1, D3D11_TESSELLATOR_DOMAIN_TRI = 2, D3D11_TESSELLATOR_DOMAIN_QUAD = 3 } D3D_TESSELLATOR_DOMAIN; typedef enum D3D_TESSELLATOR_PARTITIONING { D3D_TESSELLATOR_PARTITIONING_UNDEFINED = 0, D3D_TESSELLATOR_PARTITIONING_INTEGER = 1, D3D_TESSELLATOR_PARTITIONING_POW2 = 2, D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3, D3D_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4, D3D11_TESSELLATOR_PARTITIONING_UNDEFINED = 0, D3D11_TESSELLATOR_PARTITIONING_INTEGER = 1, D3D11_TESSELLATOR_PARTITIONING_POW2 = 2, D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_ODD = 3, D3D11_TESSELLATOR_PARTITIONING_FRACTIONAL_EVEN = 4 } D3D_TESSELLATOR_PARTITIONING; typedef enum D3D_TESSELLATOR_OUTPUT_PRIMITIVE { D3D_TESSELLATOR_OUTPUT_UNDEFINED = 0, D3D_TESSELLATOR_OUTPUT_POINT = 1, D3D_TESSELLATOR_OUTPUT_LINE = 2, D3D_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3, D3D_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4, D3D11_TESSELLATOR_OUTPUT_UNDEFINED = 0, D3D11_TESSELLATOR_OUTPUT_POINT = 1, D3D11_TESSELLATOR_OUTPUT_LINE = 2, D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CW = 3, D3D11_TESSELLATOR_OUTPUT_TRIANGLE_CCW = 4 } D3D_TESSELLATOR_OUTPUT_PRIMITIVE; typedef enum D3D_MIN_PRECISION { D3D_MIN_PRECISION_DEFAULT = 0, D3D_MIN_PRECISION_FLOAT_16 = 1, D3D_MIN_PRECISION_FLOAT_2_8 = 2, D3D_MIN_PRECISION_RESERVED = 3, D3D_MIN_PRECISION_SINT_16 = 4, D3D_MIN_PRECISION_UINT_16 = 5, D3D_MIN_PRECISION_ANY_16 = 0xf0, D3D_MIN_PRECISION_ANY_10 = 0xf1 } D3D_MIN_PRECISION; typedef enum D3D_CBUFFER_TYPE { D3D_CT_CBUFFER = 0, D3D_CT_TBUFFER = 1, D3D_CT_INTERFACE_POINTERS = 2, D3D_CT_RESOURCE_BIND_INFO = 3, D3D10_CT_CBUFFER = 0, D3D10_CT_TBUFFER = 1, D3D11_CT_CBUFFER = 0, D3D11_CT_TBUFFER = 1, D3D11_CT_INTERFACE_POINTERS = 2, D3D11_CT_RESOURCE_BIND_INFO = 3 } D3D_CBUFFER_TYPE; typedef enum D3D_SRV_DIMENSION { D3D_SRV_DIMENSION_UNKNOWN = 0, D3D_SRV_DIMENSION_BUFFER = 1, D3D_SRV_DIMENSION_TEXTURE1D = 2, D3D_SRV_DIMENSION_TEXTURE1DARRAY = 3, D3D_SRV_DIMENSION_TEXTURE2D = 4, D3D_SRV_DIMENSION_TEXTURE2DARRAY = 5, D3D_SRV_DIMENSION_TEXTURE2DMS = 6, D3D_SRV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D_SRV_DIMENSION_TEXTURE3D = 8, D3D_SRV_DIMENSION_TEXTURECUBE = 9, D3D_SRV_DIMENSION_TEXTURECUBEARRAY = 10, D3D_SRV_DIMENSION_BUFFEREX = 11, D3D10_SRV_DIMENSION_UNKNOWN = 0, D3D10_SRV_DIMENSION_BUFFER = 1, D3D10_SRV_DIMENSION_TEXTURE1D = 2, D3D10_SRV_DIMENSION_TEXTURE1DARRAY = 3, D3D10_SRV_DIMENSION_TEXTURE2D = 4, D3D10_SRV_DIMENSION_TEXTURE2DARRAY = 5, D3D10_SRV_DIMENSION_TEXTURE2DMS = 6, D3D10_SRV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D10_SRV_DIMENSION_TEXTURE3D = 8, D3D10_SRV_DIMENSION_TEXTURECUBE = 9, D3D10_1_SRV_DIMENSION_UNKNOWN = 0, D3D10_1_SRV_DIMENSION_BUFFER = 1, D3D10_1_SRV_DIMENSION_TEXTURE1D = 2, D3D10_1_SRV_DIMENSION_TEXTURE1DARRAY = 3, D3D10_1_SRV_DIMENSION_TEXTURE2D = 4, D3D10_1_SRV_DIMENSION_TEXTURE2DARRAY = 5, D3D10_1_SRV_DIMENSION_TEXTURE2DMS = 6, D3D10_1_SRV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D10_1_SRV_DIMENSION_TEXTURE3D = 8, D3D10_1_SRV_DIMENSION_TEXTURECUBE = 9, D3D10_1_SRV_DIMENSION_TEXTURECUBEARRAY = 10, D3D11_SRV_DIMENSION_UNKNOWN = 0, D3D11_SRV_DIMENSION_BUFFER = 1, D3D11_SRV_DIMENSION_TEXTURE1D = 2, D3D11_SRV_DIMENSION_TEXTURE1DARRAY = 3, D3D11_SRV_DIMENSION_TEXTURE2D = 4, D3D11_SRV_DIMENSION_TEXTURE2DARRAY = 5, D3D11_SRV_DIMENSION_TEXTURE2DMS = 6, D3D11_SRV_DIMENSION_TEXTURE2DMSARRAY = 7, D3D11_SRV_DIMENSION_TEXTURE3D = 8, D3D11_SRV_DIMENSION_TEXTURECUBE = 9, D3D11_SRV_DIMENSION_TEXTURECUBEARRAY = 10, D3D11_SRV_DIMENSION_BUFFEREX = 11 } D3D_SRV_DIMENSION; typedef enum D3D_REGISTER_COMPONENT_TYPE { D3D_REGISTER_COMPONENT_UNKNOWN = 0, D3D_REGISTER_COMPONENT_UINT32 = 1, D3D_REGISTER_COMPONENT_SINT32 = 2, D3D_REGISTER_COMPONENT_FLOAT32 = 3, D3D10_REGISTER_COMPONENT_UNKNOWN = 0, D3D10_REGISTER_COMPONENT_UINT32 = 1, D3D10_REGISTER_COMPONENT_SINT32 = 2, D3D10_REGISTER_COMPONENT_FLOAT32 = 3 } D3D_REGISTER_COMPONENT_TYPE; typedef enum D3D_RESOURCE_RETURN_TYPE { D3D_RETURN_TYPE_UNORM = 1, D3D_RETURN_TYPE_SNORM = 2, D3D_RETURN_TYPE_SINT = 3, D3D_RETURN_TYPE_UINT = 4, D3D_RETURN_TYPE_FLOAT = 5, D3D_RETURN_TYPE_MIXED = 6, D3D_RETURN_TYPE_DOUBLE = 7, D3D_RETURN_TYPE_CONTINUED = 8, D3D10_RETURN_TYPE_UNORM = 1, D3D10_RETURN_TYPE_SNORM = 2, D3D10_RETURN_TYPE_SINT = 3, D3D10_RETURN_TYPE_UINT = 4, D3D10_RETURN_TYPE_FLOAT = 5, D3D10_RETURN_TYPE_MIXED = 6, D3D11_RETURN_TYPE_UNORM = 1, D3D11_RETURN_TYPE_SNORM = 2, D3D11_RETURN_TYPE_SINT = 3, D3D11_RETURN_TYPE_UINT = 4, D3D11_RETURN_TYPE_FLOAT = 5, D3D11_RETURN_TYPE_MIXED = 6, D3D11_RETURN_TYPE_DOUBLE = 7, D3D11_RETURN_TYPE_CONTINUED = 8 } D3D_RESOURCE_RETURN_TYPE; typedef enum D3D_NAME { D3D_NAME_UNDEFINED = 0, D3D_NAME_POSITION = 1, D3D_NAME_CLIP_DISTANCE = 2, D3D_NAME_CULL_DISTANCE = 3, D3D_NAME_RENDER_TARGET_ARRAY_INDEX = 4, D3D_NAME_VIEWPORT_ARRAY_INDEX = 5, D3D_NAME_VERTEX_ID = 6, D3D_NAME_PRIMITIVE_ID = 7, D3D_NAME_INSTANCE_ID = 8, D3D_NAME_IS_FRONT_FACE = 9, D3D_NAME_SAMPLE_INDEX = 10, D3D_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11, D3D_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12, D3D_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13, D3D_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14, D3D_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15, D3D_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16, D3D_NAME_BARYCENTRICS = 23, D3D_NAME_SHADINGRATE = 24, D3D_NAME_CULLPRIMITIVE = 25, D3D_NAME_TARGET = 64, D3D_NAME_DEPTH = 65, D3D_NAME_COVERAGE = 66, D3D_NAME_DEPTH_GREATER_EQUAL = 67, D3D_NAME_DEPTH_LESS_EQUAL = 68, D3D10_NAME_UNDEFINED = 0, D3D10_NAME_POSITION = 1, D3D10_NAME_CLIP_DISTANCE = 2, D3D10_NAME_CULL_DISTANCE = 3, D3D10_NAME_RENDER_TARGET_ARRAY_INDEX = 4, D3D10_NAME_VIEWPORT_ARRAY_INDEX = 5, D3D10_NAME_VERTEX_ID = 6, D3D10_NAME_PRIMITIVE_ID = 7, D3D10_NAME_INSTANCE_ID = 8, D3D10_NAME_IS_FRONT_FACE = 9, D3D10_NAME_SAMPLE_INDEX = 10, D3D11_NAME_FINAL_QUAD_EDGE_TESSFACTOR = 11, D3D11_NAME_FINAL_QUAD_INSIDE_TESSFACTOR = 12, D3D11_NAME_FINAL_TRI_EDGE_TESSFACTOR = 13, D3D11_NAME_FINAL_TRI_INSIDE_TESSFACTOR = 14, D3D11_NAME_FINAL_LINE_DETAIL_TESSFACTOR = 15, D3D11_NAME_FINAL_LINE_DENSITY_TESSFACTOR = 16, D3D10_NAME_TARGET = 64, D3D10_NAME_DEPTH = 65, D3D10_NAME_COVERAGE = 66, D3D11_NAME_DEPTH_GREATER_EQUAL = 67, D3D11_NAME_DEPTH_LESS_EQUAL = 68 } D3D_NAME; typedef enum _D3D_SHADER_INPUT_TYPE { D3D_SIT_CBUFFER = 0, D3D_SIT_TBUFFER = 1, D3D_SIT_TEXTURE = 2, D3D_SIT_SAMPLER = 3, D3D_SIT_UAV_RWTYPED = 4, D3D_SIT_STRUCTURED = 5, D3D_SIT_UAV_RWSTRUCTURED = 6, D3D_SIT_BYTEADDRESS = 7, D3D_SIT_UAV_RWBYTEADDRESS = 8, D3D_SIT_UAV_APPEND_STRUCTURED = 9, D3D_SIT_UAV_CONSUME_STRUCTURED = 10, D3D_SIT_UAV_RWSTRUCTURED_WITH_COUNTER = 11, D3D_SIT_RTACCELERATIONSTRUCTURE = 12, D3D_SIT_UAV_FEEDBACKTEXTURE = 13, D3D10_SIT_CBUFFER = 0, D3D10_SIT_TBUFFER = 1, D3D10_SIT_TEXTURE = 2, D3D10_SIT_SAMPLER = 3, D3D11_SIT_UAV_RWTYPED = 4, D3D11_SIT_STRUCTURED = 5, D3D11_SIT_UAV_RWSTRUCTURED = 6, D3D11_SIT_BYTEADDRESS = 7, D3D11_SIT_UAV_RWBYTEADDRESS = 8, D3D11_SIT_UAV_APPEND_STRUCTURED = 9, D3D11_SIT_UAV_CONSUME_STRUCTURED = 10, D3D11_SIT_UAV_RWSTRUCTURED_WITH_COUNTER = 11 } D3D_SHADER_INPUT_TYPE; typedef enum _D3D_SHADER_CBUFFER_FLAGS { D3D_CBF_USERPACKED = 0x1, D3D10_CBF_USERPACKED = D3D_CBF_USERPACKED, D3D_CBF_FORCE_DWORD = 0x7fffffff } D3D_SHADER_CBUFFER_FLAGS; typedef enum _D3D_PARAMETER_FLAGS { D3D_PF_NONE = 0, D3D_PF_IN = 1, D3D_PF_OUT = 2, D3D_PF_FORCE_DWORD = 0x7fffffff } D3D_PARAMETER_FLAGS; typedef enum _D3D_INTERPOLATION_MODE { D3D_INTERPOLATION_UNDEFINED = 0, D3D_INTERPOLATION_CONSTANT = 1, D3D_INTERPOLATION_LINEAR = 2, D3D_INTERPOLATION_LINEAR_CENTROID = 3, D3D_INTERPOLATION_LINEAR_NOPERSPECTIVE = 4, D3D_INTERPOLATION_LINEAR_NOPERSPECTIVE_CENTROID = 5, D3D_INTERPOLATION_LINEAR_SAMPLE = 6, D3D_INTERPOLATION_LINEAR_NOPERSPECTIVE_SAMPLE = 7 } D3D_INTERPOLATION_MODE; DEFINE_GUID(WKPDID_D3DDebugObjectName,0x429b8c22,0x9188,0x4b0c,0x87,0x42,0xac,0xb0,0xbf,0x85,0xc2,0x00); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __d3dcommon_h__ */ dxvk-0~git20220822.9df86f2/d3dcompiler.h000066400000000000000000000172741430055512200173700ustar00rootroot00000000000000#include <_mingw_unicode.h> /* * Copyright 2010 Matteo Bruni for CodeWeavers * * 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 */ #ifndef __D3DCOMPILER_H__ #define __D3DCOMPILER_H__ #include "d3d11shader.h" #include "d3d12shader.h" #ifdef __cplusplus extern "C" { #endif #if defined(_MSC_VER) || defined(__MINGW32__) #define D3DCOMPILER_DLL_W L"d3dcompiler_47.dll" #else static const WCHAR D3DCOMPILER_DLL_W[] = {'d','3','d','c','o','m','p','i','l','e','r','_','4','7','.','d','l','l',0}; #endif #define D3DCOMPILER_DLL_A "d3dcompiler_47.dll" #define D3DCOMPILER_DLL __MINGW_NAME_AW(D3DCOMPILER_DLL_) #ifndef D3D_COMPILER_VERSION #define D3D_COMPILER_VERSION 47 #endif #define D3DCOMPILE_DEBUG 0x00000001 #define D3DCOMPILE_SKIP_VALIDATION 0x00000002 #define D3DCOMPILE_SKIP_OPTIMIZATION 0x00000004 #define D3DCOMPILE_PACK_MATRIX_ROW_MAJOR 0x00000008 #define D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR 0x00000010 #define D3DCOMPILE_PARTIAL_PRECISION 0x00000020 #define D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT 0x00000040 #define D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT 0x00000080 #define D3DCOMPILE_NO_PRESHADER 0x00000100 #define D3DCOMPILE_AVOID_FLOW_CONTROL 0x00000200 #define D3DCOMPILE_PREFER_FLOW_CONTROL 0x00000400 #define D3DCOMPILE_ENABLE_STRICTNESS 0x00000800 #define D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY 0x00001000 #define D3DCOMPILE_IEEE_STRICTNESS 0x00002000 #define D3DCOMPILE_OPTIMIZATION_LEVEL0 0x00004000 #define D3DCOMPILE_OPTIMIZATION_LEVEL1 0x00000000 #define D3DCOMPILE_OPTIMIZATION_LEVEL2 0x0000c000 #define D3DCOMPILE_OPTIMIZATION_LEVEL3 0x00008000 #define D3DCOMPILE_RESERVED16 0x00010000 #define D3DCOMPILE_RESERVED17 0x00020000 #define D3DCOMPILE_WARNINGS_ARE_ERRORS 0x00040000 #define D3DCOMPILE_RESOURCES_MAY_ALIAS 0x00080000 #define D3DCOMPILE_ENABLE_UNBOUNDED_DESCRIPTOR_TABLES 0x00100000 #define D3DCOMPILE_ALL_RESOURCES_BOUND 0x00200000 #define D3DCOMPILE_DEBUG_NAME_FOR_SOURCE 0x00400000 #define D3DCOMPILE_DEBUG_NAME_FOR_BINARY 0x00800000 #define D3DCOMPILE_EFFECT_CHILD_EFFECT 0x00000001 #define D3DCOMPILE_EFFECT_ALLOW_SLOW_OPS 0x00000002 #define D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_LATEST 0x00000000 #define D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_0 0x00000010 #define D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_1 0x00000020 #define D3D_DISASM_ENABLE_COLOR_CODE 0x00000001 #define D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS 0x00000002 #define D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING 0x00000004 #define D3D_DISASM_ENABLE_INSTRUCTION_CYCLE 0x00000008 #define D3D_DISASM_DISABLE_DEBUG_INFO 0x00000010 #define D3D_DISASM_ENABLE_INSTRUCTION_OFFSET 0x00000020 #define D3D_DISASM_INSTRUCTION_ONLY 0x00000040 #define D3D_DISASM_PRINT_HEX_LITERALS 0x00000080 #define D3D_COMPILE_STANDARD_FILE_INCLUDE ((ID3DInclude *)(UINT_PTR)1) HRESULT WINAPI D3DCompile(const void *data, SIZE_T data_size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages); typedef HRESULT (WINAPI *pD3DCompile)(const void *data, SIZE_T data_size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, const char *target, UINT sflags, UINT eflags, ID3DBlob **shader, ID3DBlob **error_messages); HRESULT WINAPI D3DCompile2(const void *data, SIZE_T data_size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, const char *entrypoint, const char *target, UINT sflags, UINT eflags, UINT secondary_flags, const void *secondary_data, SIZE_T secondary_data_size, ID3DBlob **shader, ID3DBlob **error_messages); typedef enum D3DCOMPILER_STRIP_FLAGS { D3DCOMPILER_STRIP_REFLECTION_DATA = 0x1, D3DCOMPILER_STRIP_DEBUG_INFO = 0x2, D3DCOMPILER_STRIP_TEST_BLOBS = 0x4, D3DCOMPILER_STRIP_PRIVATE_DATA = 0x8, D3DCOMPILER_STRIP_ROOT_SIGNATURE = 0x10, D3DCOMPILER_STRIP_FORCE_DWORD = 0x7fffffff } D3DCOMPILER_STRIP_FLAGS; HRESULT WINAPI D3DStripShader(const void *data, SIZE_T data_size, UINT flags, ID3DBlob **blob); typedef enum D3D_BLOB_PART { D3D_BLOB_INPUT_SIGNATURE_BLOB, D3D_BLOB_OUTPUT_SIGNATURE_BLOB, D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB, D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB, D3D_BLOB_ALL_SIGNATURE_BLOB, D3D_BLOB_DEBUG_INFO, D3D_BLOB_LEGACY_SHADER, D3D_BLOB_XNA_PREPASS_SHADER, D3D_BLOB_XNA_SHADER, D3D_BLOB_PDB, D3D_BLOB_PRIVATE_DATA, D3D_BLOB_ROOT_SIGNATURE, D3D_BLOB_DEBUG_NAME, D3D_BLOB_TEST_ALTERNATE_SHADER = 0x8000, D3D_BLOB_TEST_COMPILE_DETAILS, D3D_BLOB_TEST_COMPILE_PERF, D3D_BLOB_TEST_COMPILE_REPORT } D3D_BLOB_PART; HRESULT WINAPI D3DDisassemble(const void *data, SIZE_T data_size, UINT flags, const char *comments, ID3DBlob **disassembly); typedef HRESULT (WINAPI *pD3DDisassemble)(const void *data, SIZE_T data_size, UINT flags, const char *comments, ID3DBlob **disassembly); HRESULT WINAPI D3DCompileFromFile(const WCHAR *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *includes, const char *entrypoint, const char *target, UINT flags1, UINT flags2, ID3DBlob **code, ID3DBlob **errors); HRESULT WINAPI D3DGetBlobPart(const void *data, SIZE_T data_size, D3D_BLOB_PART part, UINT flags, ID3DBlob **blob); HRESULT WINAPI D3DGetInputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DGetOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DGetInputAndOutputSignatureBlob(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DGetDebugInfo(const void *data, SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DReadFileToBlob(const WCHAR *filename, ID3DBlob **contents); HRESULT WINAPI D3DWriteBlobToFile(ID3DBlob *blob, const WCHAR *filename, WINBOOL overwrite); HRESULT WINAPI D3DReflect(const void *data, SIZE_T data_size, REFIID riid, void **reflector); HRESULT WINAPI D3DCreateBlob(SIZE_T data_size, ID3DBlob **blob); HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, ID3DBlob **shader, ID3DBlob **error_messages); typedef HRESULT (WINAPI *pD3DPreprocess)(const void *data, SIZE_T size, const char *filename, const D3D_SHADER_MACRO *defines, ID3DInclude *include, ID3DBlob **shader, ID3DBlob **error_messages); HRESULT WINAPI D3DLoadModule(const void *data, SIZE_T size, ID3D11Module **module); #ifdef __cplusplus } #endif #endif dxvk-0~git20220822.9df86f2/d3dhal.h000066400000000000000000000427331430055512200163200ustar00rootroot00000000000000/* * Direct3D driver interface * (DirectX 7 version) * * Copyright (C) 2001 Ove Kaaven * * 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 */ #ifndef __WINE_D3DHAL_H #define __WINE_D3DHAL_H #ifdef __cplusplus extern "C" { #endif #include /***************************************************************************** * device info structures */ typedef struct _D3DDeviceDesc_V1 { DWORD dwSize; DWORD dwFlags; D3DCOLORMODEL dcmColorModel; DWORD dwDevCaps; D3DTRANSFORMCAPS dtcTransformCaps; WINBOOL bClipping; D3DLIGHTINGCAPS dlcLightingCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMaxBufferSize; DWORD dwMaxVertexCount; } D3DDEVICEDESC_V1,*LPD3DDEVICEDESC_V1; typedef struct _D3DDeviceDesc_V2 { DWORD dwSize; DWORD dwFlags; D3DCOLORMODEL dcmColorModel; DWORD dwDevCaps; D3DTRANSFORMCAPS dtcTransformCaps; WINBOOL bClipping; D3DLIGHTINGCAPS dlcLightingCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMaxBufferSize; DWORD dwMaxVertexCount; /* DirectX 5 */ DWORD dwMinTextureWidth; DWORD dwMinTextureHeight; DWORD dwMaxTextureWidth; DWORD dwMaxTextureHeight; DWORD dwMinStippleWidth; DWORD dwMaxStippleWidth; DWORD dwMinStippleHeight; DWORD dwMaxStippleHeight; } D3DDEVICEDESC_V2, *LPD3DDEVICEDESC_V2; typedef struct _D3DDeviceDesc_V3 { DWORD dwSize; DWORD dwFlags; D3DCOLORMODEL dcmColorModel; DWORD dwDevCaps; D3DTRANSFORMCAPS dtcTransformCaps; WINBOOL bClipping; D3DLIGHTINGCAPS dlcLightingCaps; D3DPRIMCAPS dpcLineCaps; D3DPRIMCAPS dpcTriCaps; DWORD dwDeviceRenderBitDepth; DWORD dwDeviceZBufferBitDepth; DWORD dwMaxBufferSize; DWORD dwMaxVertexCount; /* DirectX 5 */ DWORD dwMinTextureWidth; DWORD dwMinTextureHeight; DWORD dwMaxTextureWidth; DWORD dwMaxTextureHeight; DWORD dwMinStippleWidth; DWORD dwMaxStippleWidth; DWORD dwMinStippleHeight; DWORD dwMaxStippleHeight; /* DirectX 6 */ DWORD dwMaxTextureRepeat; DWORD dwMaxTextureAspectRatio; DWORD dwMaxAnisotropy; D3DVALUE dvGuardBandLeft; D3DVALUE dvGuardBandTop; D3DVALUE dvGuardBandRight; D3DVALUE dvGuardBandBottom; D3DVALUE dvExtentsAdjust; DWORD dwStencilCaps; DWORD dwFVFCaps; DWORD dwTextureOpCaps; WORD wMaxTextureBlendStages; WORD wMaxSimultaneousTextures; } D3DDEVICEDESC_V3, *LPD3DDEVICEDESC_V3; typedef struct _D3DHAL_GLOBALDRIVERDATA { DWORD dwSize; D3DDEVICEDESC_V1 hwCaps; DWORD dwNumVertices; DWORD dwNumClipVertices; DWORD dwNumTextureFormats; LPDDSURFACEDESC lpTextureFormats; } D3DHAL_GLOBALDRIVERDATA,*LPD3DHAL_GLOBALDRIVERDATA; typedef struct _D3DHAL_D3DEXTENDEDCAPS { DWORD dwSize; /* DirectX 5 */ DWORD dwMinTextureWidth, dwMaxTextureWidth; DWORD dwMinTextureHeight, dwMaxTextureHeight; DWORD dwMinStippleWidth, dwMaxStippleWidth; DWORD dwMinStippleHeight, dwMaxStippleHeight; /* DirectX 6 */ DWORD dwMaxTextureRepeat; DWORD dwMaxTextureAspectRatio; DWORD dwMaxAnisotropy; D3DVALUE dvGuardBandLeft; D3DVALUE dvGuardBandTop; D3DVALUE dvGuardBandRight; D3DVALUE dvGuardBandBottom; D3DVALUE dvExtentsAdjust; DWORD dwStencilCaps; DWORD dwFVFCaps; DWORD dwTextureOpCaps; WORD wMaxTextureBlendStages; WORD wMaxSimultaneousTextures; /* DirectX 7 */ DWORD dwMaxActiveLights; D3DVALUE dvMaxVertexW; WORD wMaxUserClipPlanes; WORD wMaxVertexBlendMatrices; DWORD dwVertexProcessingCaps; DWORD dwReserved1; DWORD dwReserved2; DWORD dwReserved3; DWORD dwReserved4; } D3DHAL_D3DEXTENDEDCAPS,*LPD3DHAL_D3DEXTENDEDCAPS; /***************************************************************************** * d3d->driver callbacks */ typedef struct _D3DHAL_CONTEXTCREATEDATA *LPD3DHAL_CONTEXTCREATEDATA; typedef struct _D3DHAL_CONTEXTDESTROYDATA *LPD3DHAL_CONTEXTDESTROYDATA; typedef struct _D3DHAL_CONTEXTDESTROYALLDATA *LPD3DHAL_CONTEXTDESTROYALLDATA; typedef struct _D3DHAL_SCENECAPTUREDATA *LPD3DHAL_SCENECAPTUREDATA; typedef struct _D3DHAL_RENDERSTATEDATA *LPD3DHAL_RENDERSTATEDATA; typedef struct _D3DHAL_RENDERPRIMITIVEDATA *LPD3DHAL_RENDERPRIMITIVEDATA; typedef struct _D3DHAL_TEXTURECREATEDATA *LPD3DHAL_TEXTURECREATEDATA; typedef struct _D3DHAL_TEXTUREDESTROYDATA *LPD3DHAL_TEXTUREDESTROYDATA; typedef struct _D3DHAL_TEXTURESWAPDATA *LPD3DHAL_TEXTURESWAPDATA; typedef struct _D3DHAL_TEXTUREGETSURFDATA *LPD3DHAL_TEXTUREGETSURFDATA; typedef struct _D3DHAL_GETSTATEDATA *LPD3DHAL_GETSTATEDATA; typedef DWORD (PASCAL *LPD3DHAL_CONTEXTCREATECB) (LPD3DHAL_CONTEXTCREATEDATA); typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYCB) (LPD3DHAL_CONTEXTDESTROYDATA); typedef DWORD (PASCAL *LPD3DHAL_CONTEXTDESTROYALLCB)(LPD3DHAL_CONTEXTDESTROYALLDATA); typedef DWORD (PASCAL *LPD3DHAL_SCENECAPTURECB) (LPD3DHAL_SCENECAPTUREDATA); typedef DWORD (PASCAL *LPD3DHAL_RENDERSTATECB) (LPD3DHAL_RENDERSTATEDATA); typedef DWORD (PASCAL *LPD3DHAL_RENDERPRIMITIVECB) (LPD3DHAL_RENDERPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTURECREATECB) (LPD3DHAL_TEXTURECREATEDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTUREDESTROYCB) (LPD3DHAL_TEXTUREDESTROYDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTURESWAPCB) (LPD3DHAL_TEXTURESWAPDATA); typedef DWORD (PASCAL *LPD3DHAL_TEXTUREGETSURFCB) (LPD3DHAL_TEXTUREGETSURFDATA); typedef DWORD (PASCAL *LPD3DHAL_GETSTATECB) (LPD3DHAL_GETSTATEDATA); typedef struct _D3DHAL_CALLBACKS { DWORD dwSize; LPD3DHAL_CONTEXTCREATECB ContextCreate; LPD3DHAL_CONTEXTDESTROYCB ContextDestroy; LPD3DHAL_CONTEXTDESTROYALLCB ContextDestroyAll; LPD3DHAL_SCENECAPTURECB SceneCapture; LPVOID lpReserved10; LPVOID lpReserved11; LPD3DHAL_RENDERSTATECB RenderState; LPD3DHAL_RENDERPRIMITIVECB RenderPrimitive; DWORD dwReserved; LPD3DHAL_TEXTURECREATECB TextureCreate; LPD3DHAL_TEXTUREDESTROYCB TextureDestroy; LPD3DHAL_TEXTURESWAPCB TextureSwap; LPD3DHAL_TEXTUREGETSURFCB TextureGetSurf; /* now why did MS create CALLBACKS2 and CALLBACKS3 structures if * all these reserved fields were available? we may never know */ LPVOID lpReserved12; LPVOID lpReserved13; LPVOID lpReserved14; LPVOID lpReserved15; LPVOID lpReserved16; LPVOID lpReserved17; LPVOID lpReserved18; LPVOID lpReserved19; LPVOID lpReserved20; LPVOID lpReserved21; LPD3DHAL_GETSTATECB GetState; DWORD dwReserved0; DWORD dwReserved1; DWORD dwReserved2; DWORD dwReserved3; DWORD dwReserved4; DWORD dwReserved5; DWORD dwReserved6; DWORD dwReserved7; DWORD dwReserved8; DWORD dwReserved9; } D3DHAL_CALLBACKS,*LPD3DHAL_CALLBACKS; typedef struct _D3DHAL_SETRENDERTARGETDATA *LPD3DHAL_SETRENDERTARGETDATA; typedef struct _D3DHAL_CLEARDATA *LPD3DHAL_CLEARDATA; typedef struct _D3DHAL_DRAWONEPRIMITIVEDATA *LPD3DHAL_DRAWONEPRIMITIVEDATA; typedef struct _D3DHAL_DRAWONEINDEXEDPRIMITIVEDATA *LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA; typedef struct _D3DHAL_DRAWPRIMITIVESDATA *LPD3DHAL_DRAWPRIMITIVESDATA; typedef DWORD (PASCAL *LPD3DHAL_SETRENDERTARGETCB) (LPD3DHAL_SETRENDERTARGETDATA); typedef DWORD (PASCAL *LPD3DHAL_CLEARCB) (LPD3DHAL_CLEARDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWONEPRIMITIVECB) (LPD3DHAL_DRAWONEPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB)(LPD3DHAL_DRAWONEINDEXEDPRIMITIVEDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVESCB) (LPD3DHAL_DRAWPRIMITIVESDATA); typedef struct _D3DHAL_CALLBACKS2 { DWORD dwSize; DWORD dwFlags; LPD3DHAL_SETRENDERTARGETCB SetRenderTarget; LPD3DHAL_CLEARCB Clear; LPD3DHAL_DRAWONEPRIMITIVECB DrawOnePrimitive; LPD3DHAL_DRAWONEINDEXEDPRIMITIVECB DrawOneIndexedPrimitive; LPD3DHAL_DRAWPRIMITIVESCB DrawPrimitives; } D3DHAL_CALLBACKS2,*LPD3DHAL_CALLBACKS2; typedef struct _D3DHAL_CLEAR2DATA *LPD3DHAL_CLEAR2DATA; typedef struct _D3DHAL_VALIDATETEXTURESTAGESTATEDATA *LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA; typedef struct _D3DHAL_DRAWPRIMITIVES2DATA *LPD3DHAL_DRAWPRIMITIVES2DATA; typedef DWORD (PASCAL *LPD3DHAL_CLEAR2CB) (LPD3DHAL_CLEAR2DATA); typedef DWORD (PASCAL *LPD3DHAL_VALIDATETEXTURESTAGESTATECB)(LPD3DHAL_VALIDATETEXTURESTAGESTATEDATA); typedef DWORD (PASCAL *LPD3DHAL_DRAWPRIMITIVES2CB) (LPD3DHAL_DRAWPRIMITIVES2DATA); typedef struct _D3DHAL_CALLBACKS3 { DWORD dwSize; DWORD dwFlags; LPD3DHAL_CLEAR2CB Clear2; LPVOID lpvReserved; LPD3DHAL_VALIDATETEXTURESTAGESTATECB ValidateTextureStageState; LPD3DHAL_DRAWPRIMITIVES2CB DrawPrimitives2; } D3DHAL_CALLBACKS3,*LPD3DHAL_CALLBACKS3; /***************************************************************************** * parameter structures */ typedef struct _D3DHAL_CONTEXTCREATEDATA { union { LPDDRAWI_DIRECTDRAW_GBL lpDDGbl; /* pre-DirectX 7 */ LPDDRAWI_DIRECTDRAW_LCL lpDDLcl; /* DirectX 7 */ } DUMMYUNIONNAME1; union { LPDIRECTDRAWSURFACE lpDDS; LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl; /* DirectX 7 */ } DUMMYUNIONNAME2; union { LPDIRECTDRAWSURFACE lpDDSZ; LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl; /* DirectX 7 */ } DUMMYUNIONNAME3; union { DWORD dwPID; ULONG_PTR dwrstates; } DUMMYUNIONNAME4; ULONG_PTR dwhContext; HRESULT ddrval; } D3DHAL_CONTEXTCREATEDATA; typedef struct _D3DHAL_CONTEXTDESTROYDATA { ULONG_PTR dwhContext; HRESULT ddrval; } D3DHAL_CONTEXTDESTROYDATA; typedef struct _D3DHAL_CONTEXTDESTROYALLDATA { DWORD dwPID; HRESULT ddrval; } D3DHAL_CONTEXTDESTROYALLDATA; typedef struct _D3DHAL_SCENECAPTUREDATA { ULONG_PTR dwhContext; DWORD dwFlag; HRESULT ddrval; } D3DHAL_SCENECAPTUREDATA; #define D3DHAL_SCENE_CAPTURE_START 0x00000000 #define D3DHAL_SCENE_CAPTURE_END 0x00000001 typedef struct _D3DHAL_SETRENDERTARGETDATA { ULONG_PTR dwhContext; union { LPDIRECTDRAWSURFACE lpDDS; LPDDRAWI_DDRAWSURFACE_LCL lpDDSLcl; } DUMMYUNIONNAME1; union { LPDIRECTDRAWSURFACE lpDDSZ; LPDDRAWI_DDRAWSURFACE_LCL lpDDSZLcl; } DUMMYUNIONNAME2; HRESULT ddrval; } D3DHAL_SETRENDERTARGETDATA; typedef struct _D3DHAL_DRAWPRIMITIVES2DATA { ULONG_PTR dwhContext; DWORD dwFlags; DWORD dwVertexType; LPDDRAWI_DDRAWSURFACE_LCL lpDDCommands; DWORD dwCommandOffset; DWORD dwCommandLength; union { LPDDRAWI_DDRAWSURFACE_LCL lpDDVertex; LPVOID lpVertices; } DUMMYUNIONNAME1; DWORD dwVertexOffset; DWORD dwVertexLength; DWORD dwReqVertexBufSize; DWORD dwReqCommandBufSize; LPDWORD lpdwRStates; union { DWORD dwVertexSize; HRESULT ddrval; } DUMMYUNIONNAME2; DWORD dwErrorOffset; } D3DHAL_DRAWPRIMITIVES2DATA; #define D3DHALDP2_USERMEMVERTICES 0x00000001 #define D3DHALDP2_EXECUTEBUFFER 0x00000002 #define D3DHALDP2_SWAPVERTEXBUFFER 0x00000004 #define D3DHALDP2_SWAPCOMMANDBUFFER 0x00000008 #define D3DHALDP2_REQVERTEXBUFSIZE 0x00000010 #define D3DHALDP2_REQCOMMANDBUFSIZE 0x00000020 #define D3DHALDP2_VIDMEMVERTEXBUF 0x00000040 #define D3DHALDP2_VIDMEMCOMMANDBUF 0x00000080 /***************************************************************************** * DrawPrimitives2 command structures */ typedef struct _D3DHAL_DP2COMMAND { BYTE bCommand; BYTE bReserved; union { WORD wPrimitiveCount; WORD wStateCount; } DUMMYUNIONNAME; } D3DHAL_DP2COMMAND,*LPD3DHAL_DP2COMMAND; typedef enum _D3DHAL_DP2OPERATION { D3DDP2OP_POINTS = 1, D3DDP2OP_INDEXEDLINELIST = 2, D3DDP2OP_INDEXEDTRIANGLELIST = 3, D3DDP2OP_RENDERSTATE = 8, D3DDP2OP_LINELIST = 15, D3DDP2OP_LINESTRIP = 16, D3DDP2OP_INDEXEDLINESTRIP = 17, D3DDP2OP_TRIANGLELIST = 18, D3DDP2OP_TRIANGLESTRIP = 19, D3DDP2OP_INDEXEDTRIANGLESTRIP = 20, D3DDP2OP_TRIANGLEFAN = 21, D3DDP2OP_INDEXEDTRIANGLEFAN = 22, D3DDP2OP_TRIANGLEFAN_IMM = 23, D3DDP2OP_LINELIST_IMM = 24, D3DDP2OP_TEXTURESTAGESTATE = 25, D3DDP2OP_INDEXEDTRIANGLELIST2 = 26, D3DDP2OP_INDEXEDLINELIST2 = 27, D3DDP2OP_VIEWPORTINFO = 28, D3DDP2OP_WINFO = 29, /* pre-DirectX 7 interfaces */ D3DDP2OP_SETPALETTE = 30, D3DDP2OP_UPDATEPALETTE = 31, /* DirectX 7 interfaces */ D3DDP2OP_ZRANGE = 32, D3DDP2OP_SETMATERIAL = 33, D3DDP2OP_SETLIGHT = 34, D3DDP2OP_CREATELIGHT = 35, D3DDP2OP_SETTRANSFORM = 36, D3DDP2OP_TEXBLT = 38, D3DDP2OP_STATESET = 39, D3DDP2OP_SETPRIORITY = 40, /* all interfaces */ D3DDP2OP_SETRENDERTARGET = 41, D3DDP2OP_CLEAR = 42, /* DirectX 7 interfaces */ D3DDP2OP_SETTEXLOD = 43, D3DPP2OP_SETCLIPPLANE = 44 } D3DHAL_DP2OPERATION; /* point primitives */ typedef struct _D3DHAL_POINTS { WORD wCount; WORD wVStart; } D3DHAL_DP2POINTS,*LPD3DHAL_DP2POINTS; /* line primitives */ typedef struct _D3DHAL_DP2STARTVERTEX { WORD wVStart; } D3DHAL_DP2STARTVERTEX,*LPD3DHAL_DP2STARTVERTEX; typedef struct _D3DHAL_DP2LINELIST { WORD wVStart; } D3DHAL_DP2LINELIST,*LPD3DHAL_DP2LINELIST; typedef struct _D3DHAL_DP2INDEXEDLINELIST { WORD wV1; WORD wV2; } D3DHAL_DP2INDEXEDLINELIST,*LPD3DHAL_DP2INDEXEDLINELIST; typedef struct _D3DHAL_DP2LINESTRIP { WORD wVStart; } D3DHAL_DP2LINESTRIP,*LPD3DHAL_DP2LINESTRIP; typedef struct _D3DHAL_DP2INDEXEDLINESTRIP { WORD wV[2]; } D3DHAL_DP2INDEXEDLINESTRIP,*LPD3DHAL_DP2INDEXEDLINESTRIP; /* triangle primitives */ typedef struct _D3DHAL_DP2TRIANGLELIST { WORD wVStart; } D3DHAL_DP2TRIANGLELIST,*LPD3DHAL_DP2TRIANGLELIST; typedef struct _D3DHAL_DP2INDEXEDTRIANGLELIST { WORD wV1; WORD wV2; WORD wV3; WORD wFlags; } D3DHAL_DP2INDEXEDTRIANGLELIST,*LPD3DHAL_DP2INDEXEDTRIANGLELIST; typedef struct _D3DHAL_DP2INDEXEDTRIANGLELIST2 { WORD wV1; WORD wV2; WORD wV3; } D3DHAL_DP2INDEXEDTRIANGLELIST2,*LPD3DHAL_DP2INDEXEDTRIANGLELIST2; typedef struct _D3DHAL_DP2TRIANGLESTRIP { WORD wVStart; } D3DHAL_DP2TRIANGLESTRIP,*LPD3DHAL_DP2TRIANGLESTRIP; typedef struct _D3DHAL_DP2INDEXEDTRIANGLESTRIP { WORD wV[3]; } D3DHAL_DP2INDEXEDTRIANGLESTRIP,*LPD3DHAL_DP2INDEXEDTRIANGLESTRIP; typedef struct _D3DHAL_DP2TRIANGLEFAN { WORD wVStart; } D3DHAL_DP2TRIANGLEFAN,*LPD3DHAL_DP2TRIANGLEFAN; typedef struct _D3DHAL_DP2INDEXEDTRIANGLEFAN { WORD wV[3]; } D3DHAL_DP2INDEXEDTRIANGLEFAN,*LPD3DHAL_DP2INDEXEDTRIANGLEFAN; typedef struct _D3DHAL_DP2TRIANGLEFAN_IMM { DWORD dwEdgeFlags; } D3DHAL_DP2TRIANGLEFAN_IMM,*LPD3DHAL_DP2TRIANGLEFAN_IMM; /* render states */ typedef struct _D3DHAL_DP2RENDERSTATE { D3DRENDERSTATETYPE RenderState; union { D3DVALUE dvState; DWORD dwState; } DUMMYUNIONNAME; } D3DHAL_DP2RENDERSTATE,*LPD3DHAL_DP2RENDERSTATE; typedef struct _D3DHAL_DP2TEXTURESTAGESTATE { WORD wStage; WORD TSState; DWORD dwValue; } D3DHAL_DP2TEXTURESTAGESTATE,*LPD3DHAL_DP2TEXTURESTAGESTATE; #define D3DTSS_TEXTUREMAP 0 typedef struct _D3DHAL_DP2VIEWPORTINFO { DWORD dwX; DWORD dwY; DWORD dwWidth; DWORD dwHeight; } D3DHAL_DP2VIEWPORTINFO,*LPD3DHAL_DP2VIEWPORTINFO; typedef struct _D3DHAL_DP2WINFO { D3DVALUE dwWNear; D3DVALUE dwWFar; } D3DHAL_DP2WINFO,*LPD3DHAL_DP2WINFO; typedef struct _D3DHAL_DP2SETPALETTE { DWORD dwPaletteHandle; DWORD dwPaletteFlags; DWORD dwSurfaceHandle; } D3DHAL_DP2SETPALETTE,*LPD3DHAL_DP2SETPALETTE; typedef struct _D3DHAL_DP2UPDATEPALETTE { DWORD dwPaletteHandle; WORD wStartIndex; WORD wNumEntries; } D3DHAL_DP2UPDATEPALETTE,*LPD3DHAL_DP2UPDATEPALETTE; typedef struct _D3DHAL_DP2ZRANGE { D3DVALUE dvMinZ; D3DVALUE dvMaxZ; } D3DHAL_DP2ZRANGE,*LPD3DHAL_DP2ZRANGE; typedef D3DMATERIAL7 D3DHAL_DP2SETMATERIAL,*LPD3DHAL_DP2SETMATERIAL; typedef struct _D3DHAL_DP2SETLIGHT { DWORD dwIndex; DWORD dwDataType; } D3DHAL_DP2SETLIGHT,*LPD3DHAL_DP2SETLIGHT; #define D3DHAL_SETLIGHT_ENABLE 0 #define D3DHAL_SETLIGHT_DISABLE 1 #define D3DHAL_SETLIGHT_DATA 2 typedef struct _D3DHAL_DP2CREATELIGHT { DWORD dwIndex; } D3DHAL_DP2CREATELIGHT,*LPD3DHAL_DP2CREATELIGHT; typedef struct _D3DHAL_DP2SETTRANSFORM { D3DTRANSFORMSTATETYPE xfrmType; D3DMATRIX matrix; } D3DHAL_DP2SETTRANSFORM,*LPD3DHAL_DP2SETTRANSFORM; typedef struct _D3DHAL_DP2TEXBLT { DWORD dwDDDestSurface; DWORD dwDDSrcSurface; POINT pDest; RECTL rSrc; DWORD dwFlags; } D3DHAL_DP2TEXBLT,*LPD3DHAL_DP2TEXBLT; typedef struct _D3DHAL_DP2STATESET { DWORD dwOperation; DWORD dwParam; D3DSTATEBLOCKTYPE sbType; } D3DHAL_DP2STATESET,*LPD3DHAL_DP2STATESET; #define D3DHAL_STATESETBEGIN 0 #define D3DHAL_STATESETEND 1 #define D3DHAL_STATESETDELETE 2 #define D3DHAL_STATESETEXECUTE 3 #define D3DHAL_STATESETCAPTURE 4 typedef struct _D3DHAL_DP2SETPRIORITY { DWORD dwDDSurface; DWORD dwPriority; } D3DHAL_DP2SETPRIORITY,*LPD3DHAL_DP2SETPRIORITY; typedef struct _D3DHAL_DP2SETRENDERTARGET { DWORD hRenderTarget; DWORD hZBuffer; } D3DHAL_DP2SETRENDERTARGET,*LPD3DHAL_DP2SETRENDERTARGET; typedef struct _D3DHAL_DP2CLEAR { DWORD dwFlags; DWORD dwFillColor; D3DVALUE dvFillDepth; DWORD dwFillStencil; RECT Rects[1]; } D3DHAL_DP2CLEAR,*LPD3DHAL_DP2CLEAR; typedef struct _D3DHAL_DP2SETTEXLOD { DWORD dwDDSurface; DWORD dwLOD; } D3DHAL_DP2SETTEXLOD,*LPD3DHAL_DP2SETTEXLOD; #ifdef __cplusplus } /* extern "C" */ #endif #endif /* __WINE_D3DHAL_H */ dxvk-0~git20220822.9df86f2/d3drm.h000066400000000000000000001141641430055512200161700ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2005 Peter Berg Larsen * Copyright (C) 2010 Christian Costa * * 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 */ #ifndef __D3DRM_H__ #define __D3DRM_H__ #include typedef struct IDirect3DRM *LPDIRECT3DRM, **LPLPDIRECT3DRM; #include #ifdef __cplusplus extern "C" { #endif /* Direct3DRM Object CLSID */ DEFINE_GUID(CLSID_CDirect3DRM, 0x4516ec41, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); /* Direct3DRM Interface GUIDs */ DEFINE_GUID(IID_IDirect3DRM, 0x2bc49361, 0x8327, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRM2, 0x4516ecc8, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRM3, 0x4516ec83, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); typedef struct IDirect3DRM2 *LPDIRECT3DRM2, **LPLPDIRECT3DRM2; typedef struct IDirect3DRM3 *LPDIRECT3DRM3, **LPLPDIRECT3DRM3; HRESULT WINAPI Direct3DRMCreate(struct IDirect3DRM **d3drm); /***************************************************************************** * IDirect3DRMObject interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRM DECLARE_INTERFACE_(IDirect3DRM,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRM methods ***/ STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame *parent, IDirect3DRMFrame **frame) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder **mesh_builder) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE; STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation **animation) PURE; STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet **set) PURE; STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture **texture) PURE; STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE; STDMETHOD(CreateLightRGB)(THIS_ D3DRMLIGHTTYPE type, D3DVALUE r, D3DVALUE g, D3DVALUE b, IDirect3DRMLight **light) PURE; STDMETHOD(CreateMaterial)(THIS_ D3DVALUE power, IDirect3DRMMaterial **material) PURE; STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice **device) PURE; STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw, IDirectDrawSurface *surface, IDirect3DRMDevice **device) PURE; STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D *d3d, IDirect3DDevice *d3d_device, IDirect3DRMDevice **device) PURE; STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height, IDirect3DRMDevice **device) PURE; STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface, IDirect3DRMTexture **texture) PURE; STDMETHOD(CreateShadow)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, IDirect3DRMVisual **shadow) PURE; STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice *device, IDirect3DRMFrame *camera, DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport **viewport) PURE; STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv, IDirect3DRMWrap **wrap) PURE; STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE; STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture **texture) PURE; STDMETHOD(LoadTextureFromResource)(THIS_ HRSRC resource, IDirect3DRMTexture **texture) PURE; STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE; STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE; STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE; STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE; STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE; STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE; STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE; STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags, D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx, IDirect3DRMFrame *parent_frame) PURE; STDMETHOD(Tick)(THIS_ D3DVALUE) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRM_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRM_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRM_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRM methods ***/ #define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d) #define IDirect3DRM_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b) #define IDirect3DRM_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #define IDirect3DRM_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a) #define IDirect3DRM_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRM_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a) #define IDirect3DRM_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a) #define IDirect3DRM_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b) #define IDirect3DRM_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c) #define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e) #define IDirect3DRM_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3DRM_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c) #define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d) #define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c) #define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e) #define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b) #define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i) #define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g) #define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c) #define IDirect3DRM_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b) #define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->lpVtbl->LoadTextureFromResource(p,a,b) #define IDirect3DRM_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a) #define IDirect3DRM_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a) #define IDirect3DRM_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b) #define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a) #define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a) #define IDirect3DRM_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a) #define IDirect3DRM_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b) #define IDirect3DRM_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b) #define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM_Tick(p,a) (p)->lpVtbl->Tick(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRM_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRM_AddRef(p) (p)->AddRef() #define IDirect3DRM_Release(p) (p)->Release() /*** IDirect3DRM methods ***/ #define IDirect3DRM_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d) #define IDirect3DRM_CreateFrame(p,a,b) (p)->CreateFrame(a,b) #define IDirect3DRM_CreateMesh(p,a) (p)->CreateMesh(a) #define IDirect3DRM_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a) #define IDirect3DRM_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRM_CreateAnimation(p,a) (p)->CreateAnimation(a) #define IDirect3DRM_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a) #define IDirect3DRM_CreateTexture(p,a,b) (p)->CreateTexture(a,b) #define IDirect3DRM_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c) #define IDirect3DRM_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e) #define IDirect3DRM_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3DRM_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c) #define IDirect3DRM_CreateDeviceFromSurface(p,a,b,c,d) (p)->CreateDeviceFromSurface(a,b,c,d) #define IDirect3DRM_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c) #define IDirect3DRM_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e) #define IDirect3DRM_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b) #define IDirect3DRM_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i) #define IDirect3DRM_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g) #define IDirect3DRM_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c) #define IDirect3DRM_LoadTexture(p,a,b) (p)->LoadTexture(a,b) #define IDirect3DRM_LoadTextureFromResource(p,a,b) (p)->LoadTextureFromResource(a,b) #define IDirect3DRM_SetSearchPath(p,a) (p)->SetSearchPath(a) #define IDirect3DRM_AddSearchPath(p,a) (p)->AddSearchPath(a) #define IDirect3DRM_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b) #define IDirect3DRM_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a) #define IDirect3DRM_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a) #define IDirect3DRM_GetDevices(p,a) (p)->GetDevices(a) #define IDirect3DRM_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b) #define IDirect3DRM_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b) #define IDirect3DRM_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM_Tick(p,a) (p)->Tick(a) #endif /***************************************************************************** * IDirect3DRM2 interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRM2 DECLARE_INTERFACE_(IDirect3DRM2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRM2 methods ***/ STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame *parent, IDirect3DRMFrame2 **frame) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder2 **mesh_builder) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE; STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation **animation) PURE; STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet **set) PURE; STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture2 **texture) PURE; STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE; STDMETHOD(CreateLightRGB)(THIS_ D3DRMLIGHTTYPE type, D3DVALUE r, D3DVALUE g, D3DVALUE b, IDirect3DRMLight **light) PURE; STDMETHOD(CreateMaterial)(THIS_ D3DVALUE power, IDirect3DRMMaterial **material) PURE; STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice2 **device) PURE; STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw, IDirectDrawSurface *surface, IDirect3DRMDevice2 **device) PURE; STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *d3d_device, IDirect3DRMDevice2 **device) PURE; STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height, IDirect3DRMDevice2 **device) PURE; STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface, IDirect3DRMTexture2 **texture) PURE; STDMETHOD(CreateShadow)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, IDirect3DRMVisual **shadow) PURE; STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice *device, IDirect3DRMFrame *camera, DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport **viewport) PURE; STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv, IDirect3DRMWrap **wrap) PURE; STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE; STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture2 **texture) PURE; STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE module, const char *resource_name, const char *resource_type, IDirect3DRMTexture2 **texture) PURE; STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE; STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE; STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE; STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE; STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE; STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE; STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE; STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags, D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx, IDirect3DRMFrame *parent_frame) PURE; STDMETHOD(Tick)(THIS_ D3DVALUE) PURE; STDMETHOD(CreateProgressiveMesh)(THIS_ IDirect3DRMProgressiveMesh **mesh) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRM2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRM2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRM2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRM2 methods ***/ #define IDirect3DRM2_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d) #define IDirect3DRM2_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b) #define IDirect3DRM2_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #define IDirect3DRM2_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a) #define IDirect3DRM2_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRM2_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a) #define IDirect3DRM2_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a) #define IDirect3DRM2_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b) #define IDirect3DRM2_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c) #define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e) #define IDirect3DRM2_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3DRM2_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c) #define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d) #define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c) #define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e) #define IDirect3DRM2_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b) #define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i) #define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g) #define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM2_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c) #define IDirect3DRM2_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b) #define IDirect3DRM2_LoadTextureFromResource(p,a,b,c,d) (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d) #define IDirect3DRM2_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a) #define IDirect3DRM2_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a) #define IDirect3DRM2_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b) #define IDirect3DRM2_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a) #define IDirect3DRM2_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a) #define IDirect3DRM2_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a) #define IDirect3DRM2_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b) #define IDirect3DRM2_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b) #define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM2_Tick(p,a) (p)->lpVtbl->Tick(p,a) #define IDirect3DRM2_CreateProgressiveMesh(p,a) (p)->lpVtbl->CreateProgressiveMesh(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRM2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRM2_AddRef(p) (p)->AddRef() #define IDirect3DRM2_Release(p) (p)->Release() /*** IDirect3DRM2 methods ***/ #define IDirect3DRM2_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d) #define IDirect3DRM2_CreateFrame(p,a,b) (p)->CreateFrame(a,b) #define IDirect3DRM2_CreateMesh(p,a) (p)->CreateMesh(a) #define IDirect3DRM2_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a) #define IDirect3DRM2_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRM2_CreateAnimation(p,a) (p)->CreateAnimation(a) #define IDirect3DRM2_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a) #define IDirect3DRM2_CreateTexture(p,a,b) (p)->CreateTexture(a,b) #define IDirect3DRM2_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c) #define IDirect3DRM2_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e) #define IDirect3DRM2_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3DRM2_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c) #define IDirect3DRM2_CreateDeviceFromSurface(p,a,b,c,d) (p)->CreateDeviceFromSurface(a,b,c,d) #define IDirect3DRM2_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c) #define IDirect3DRM2_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e) #define IDirect3DRM2_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b) #define IDirect3DRM2_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i) #define IDirect3DRM2_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g) #define IDirect3DRM2_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM2_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c) #define IDirect3DRM2_LoadTexture(p,a,b) (p)->LoadTexture(a,b) #define IDirect3DRM2_LoadTextureFromResource(p,a,b,c,d) (p)->LoadTextureFromResource(a,b,c,d) #define IDirect3DRM2_SetSearchPath(p,a) (p)->SetSearchPath(a) #define IDirect3DRM2_AddSearchPath(p,a) (p)->AddSearchPath(a) #define IDirect3DRM2_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b) #define IDirect3DRM2_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a) #define IDirect3DRM2_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a) #define IDirect3DRM2_GetDevices(p,a) (p)->GetDevices(a) #define IDirect3DRM2_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b) #define IDirect3DRM2_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b) #define IDirect3DRM2_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM2_Tick(p,a) (p)->Tick(a) #define IDirect3DRM2_CreateProgressiveMesh(p,a) (p)->CreateProgressiveMesh(a) #endif /***************************************************************************** * IDirect3DRM3 interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRM3 DECLARE_INTERFACE_(IDirect3DRM3,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRM2 methods ***/ STDMETHOD(CreateObject)(THIS_ REFCLSID clsid, IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(CreateFrame)(THIS_ IDirect3DRMFrame3 *parent, IDirect3DRMFrame3 **frame) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; STDMETHOD(CreateMeshBuilder)(THIS_ IDirect3DRMMeshBuilder3 **mesh_builder) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace2 **face) PURE; STDMETHOD(CreateAnimation)(THIS_ IDirect3DRMAnimation2 **animation) PURE; STDMETHOD(CreateAnimationSet)(THIS_ IDirect3DRMAnimationSet2 **set) PURE; STDMETHOD(CreateTexture)(THIS_ D3DRMIMAGE *image, IDirect3DRMTexture3 **texture) PURE; STDMETHOD(CreateLight)(THIS_ D3DRMLIGHTTYPE type, D3DCOLOR color, IDirect3DRMLight **light) PURE; STDMETHOD(CreateLightRGB)(THIS_ D3DRMLIGHTTYPE type, D3DVALUE r, D3DVALUE g, D3DVALUE b, IDirect3DRMLight **light) PURE; STDMETHOD(CreateMaterial)(THIS_ D3DVALUE, IDirect3DRMMaterial2 **material) PURE; STDMETHOD(CreateDevice)(THIS_ DWORD width, DWORD height, IDirect3DRMDevice3 **device) PURE; STDMETHOD(CreateDeviceFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw, IDirectDrawSurface *surface, DWORD flags, IDirect3DRMDevice3 **device) PURE; STDMETHOD(CreateDeviceFromD3D)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *d3d_device, IDirect3DRMDevice3 **device) PURE; STDMETHOD(CreateDeviceFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height, IDirect3DRMDevice3 **device) PURE; STDMETHOD(CreateTextureFromSurface)(THIS_ IDirectDrawSurface *surface, IDirect3DRMTexture3 **texture) PURE; STDMETHOD(CreateShadow)(THIS_ IUnknown *object, IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, IDirect3DRMShadow2 **shadow) PURE; STDMETHOD(CreateViewport)(THIS_ IDirect3DRMDevice3 *device, IDirect3DRMFrame3 *camera, DWORD x, DWORD y, DWORD width, DWORD height, IDirect3DRMViewport2 **viewport) PURE; STDMETHOD(CreateWrap)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame3 *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv, IDirect3DRMWrap **wrap) PURE; STDMETHOD(CreateUserVisual)(THIS_ D3DRMUSERVISUALCALLBACK cb, void *ctx, IDirect3DRMUserVisual **visual) PURE; STDMETHOD(LoadTexture)(THIS_ const char *filename, IDirect3DRMTexture3 **texture) PURE; STDMETHOD(LoadTextureFromResource)(THIS_ HMODULE module, const char *resource_name, const char *resource_type, IDirect3DRMTexture3 **texture) PURE; STDMETHOD(SetSearchPath)(THIS_ const char *path) PURE; STDMETHOD(AddSearchPath)(THIS_ const char *path) PURE; STDMETHOD(GetSearchPath)(THIS_ DWORD *size, char *path) PURE; STDMETHOD(SetDefaultTextureColors)(THIS_ DWORD) PURE; STDMETHOD(SetDefaultTextureShades)(THIS_ DWORD) PURE; STDMETHOD(GetDevices)(THIS_ IDirect3DRMDeviceArray **array) PURE; STDMETHOD(GetNamedObject)(THIS_ const char *name, IDirect3DRMObject **object) PURE; STDMETHOD(EnumerateObjects)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(Load)(THIS_ void *source, void *object_id, IID **iids, DWORD iid_count, D3DRMLOADOPTIONS flags, D3DRMLOADCALLBACK load_cb, void *load_ctx, D3DRMLOADTEXTURECALLBACK load_tex_cb, void *load_tex_ctx, IDirect3DRMFrame3 *parent_frame) PURE; STDMETHOD(Tick)(THIS_ D3DVALUE) PURE; STDMETHOD(CreateProgressiveMesh)(THIS_ IDirect3DRMProgressiveMesh **mesh) PURE; STDMETHOD(RegisterClient)(THIS_ REFGUID guid, DWORD *id) PURE; STDMETHOD(UnregisterClient)(THIS_ REFGUID rguid) PURE; STDMETHOD(CreateClippedVisual)(THIS_ IDirect3DRMVisual *visual, IDirect3DRMClippedVisual **clipped_visual) PURE; STDMETHOD(SetOptions)(THIS_ DWORD) PURE; STDMETHOD(GetOptions)(THIS_ DWORD *flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRM3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRM3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRM3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRM3 methods ***/ #define IDirect3DRM3_CreateObject(p,a,b,c,d) (p)->lpVtbl->CreateObject(p,a,b,c,d) #define IDirect3DRM3_CreateFrame(p,a,b) (p)->lpVtbl->CreateFrame(p,a,b) #define IDirect3DRM3_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #define IDirect3DRM3_CreateMeshBuilder(p,a) (p)->lpVtbl->CreateMeshBuilder(p,a) #define IDirect3DRM3_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRM3_CreateAnimation(p,a) (p)->lpVtbl->CreateAnimation(p,a) #define IDirect3DRM3_CreateAnimationSet(p,a) (p)->lpVtbl->CreateAnimationSet(p,a) #define IDirect3DRM3_CreateTexture(p,a,b) (p)->lpVtbl->CreateTexture(p,a,b) #define IDirect3DRM3_CreateLight(p,a,b,c) (p)->lpVtbl->CreateLight(p,a,b,c) #define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e) (p)->lpVtbl->CreateLightRGB(p,a,b,c,d,e) #define IDirect3DRM3_CreateMaterial(p,a,b) (p)->lpVtbl->CreateMaterial(p,a,b) #define IDirect3DRM3_CreateDevice(p,a,b,c) (p)->lpVtbl->CreateDevice(p,a,b,c) #define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromSurface(p,a,b,c,d,e) #define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c) (p)->lpVtbl->CreateDeviceFromD3D(p,a,b,c) #define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->lpVtbl->CreateDeviceFromClipper(p,a,b,c,d,e) #define IDirect3DRM3_CreateTextureFromSurface(p,a,b) (p)->lpVtbl->CreateTextureFromSurface(p,a,b) #define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->CreateShadow(p,a,b,c,d,e,f,g,h,i) #define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g) (p)->lpVtbl->CreateViewport(p,a,b,c,d,e,f,g) #define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->lpVtbl->CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM3_CreateUserVisual(p,a,b,c) (p)->lpVtbl->CreateUserVisual(p,a,b,c) #define IDirect3DRM3_LoadTexture(p,a,b) (p)->lpVtbl->LoadTexture(p,a,b) #define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d) (p)->lpVtbl->LoadTextureFromResource(p,a,b,c,d) #define IDirect3DRM3_SetSearchPath(p,a) (p)->lpVtbl->SetSearchPath(p,a) #define IDirect3DRM3_AddSearchPath(p,a) (p)->lpVtbl->AddSearchPath(p,a) #define IDirect3DRM3_GetSearchPath(p,a,b) (p)->lpVtbl->GetSearchPath(p,a,b) #define IDirect3DRM3_SetDefaultTextureColors(p,a) (p)->lpVtbl->SetDefaultTextureColors(p,a) #define IDirect3DRM3_SetDefaultTextureShades(p,a) (p)->lpVtbl->SetDefaultTextureShades(p,a) #define IDirect3DRM3_GetDevices(p,a) (p)->lpVtbl->GetDevices(p,a) #define IDirect3DRM3_GetNamedObject(p,a,b) (p)->lpVtbl->GetNamedObject(p,a,b) #define IDirect3DRM3_EnumerateObjects(p,a,b) (p)->lpVtbl->EnumerateObjects(p,a,b) #define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM3_Tick(p,a) (p)->lpVtbl->Tick(p,a) #define IDirect3DRM3_CreateProgressiveMesh(p,a) (p)->lpVtbl->CreateProgressiveMesh(p,a) #define IDirect3DRM3_RegisterClient(p,a,b) (p)->lpVtbl->RegisterClient(p,a,b) #define IDirect3DRM3_UnregisterClient(p,a) (p)->lpVtbl->UnregisterClient(p,a) #define IDirect3DRM3_CreateClippedVisual(p,a,b) (p)->lpVtbl->CreateClippedVisual(p,a,b) #define IDirect3DRM3_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a) #define IDirect3DRM3_GetOptions(p,a) (p)->lpVtbl->GetOptions(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRM3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRM3_AddRef(p) (p)->AddRef() #define IDirect3DRM3_Release(p) (p)->Release() /*** IDirect3DRM3 methods ***/ #define IDirect3DRM3_CreateObject(p,a,b,c,d) (p)->CreateObject(a,b,c,d) #define IDirect3DRM3_CreateFrame(p,a,b) (p)->CreateFrame(a,b) #define IDirect3DRM3_CreateMesh(p,a) (p)->CreateMesh(a) #define IDirect3DRM3_CreateMeshBuilder(p,a) (p)->CreateMeshBuilder(a) #define IDirect3DRM3_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRM3_CreateAnimation(p,a) (p)->CreateAnimation(a) #define IDirect3DRM3_CreateAnimationSet(p,a) (p)->CreateAnimationSet(a) #define IDirect3DRM3_CreateTexture(p,a,b) (p)->CreateTexture(a,b) #define IDirect3DRM3_CreateLight(p,a,b,c) (p)->CreateLight(a,b,c) #define IDirect3DRM3_CreateLightRGB(p,a,b,c,d,e) (p)->CreateLightRGB(a,b,c,d,e) #define IDirect3DRM3_CreateMaterial(p,a,b) (p)->CreateMaterial(a,b) #define IDirect3DRM3_CreateDevice(p,a,b,c) (p)->CreateDevice(a,b,c) #define IDirect3DRM3_CreateDeviceFromSurface(p,a,b,c,d,e) (p)->CreateDeviceFromSurface(a,b,c,d,e) #define IDirect3DRM3_CreateDeviceFromD3D(p,a,b,c) (p)->CreateDeviceFromD3D(a,b,c) #define IDirect3DRM3_CreateDeviceFromClipper(p,a,b,c,d,e) (p)->CreateDeviceFromClipper(a,b,c,d,e) #define IDirect3DRM3_CreateTextureFromSurface(p,a,b) (p)->CreateTextureFromSurface(a,b) #define IDirect3DRM3_CreateShadow(p,a,b,c,d,e,f,g,h,i) (p)->CreateShadow(a,b,c,d,e,f,g,h,i) #define IDirect3DRM3_CreateViewport(p,a,b,c,d,e,f,g) (p)->CreateViewport(a,b,c,d,e,f,g) #define IDirect3DRM3_CreateWrap(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) (p)->CreateWrap(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,q) #define IDirect3DRM3_CreateUserVisual(p,a,b,c) (p)->CreateUserVisual(a,b,c) #define IDirect3DRM3_LoadTexture(p,a,b) (p)->LoadTexture(a,b) #define IDirect3DRM3_LoadTextureFromResource(p,a,b,c,d) (p)->LoadTextureFromResource(a,b,c,d) #define IDirect3DRM3_SetSearchPath(p,a) (p)->SetSearchPath(a) #define IDirect3DRM3_AddSearchPath(p,a) (p)->AddSearchPath(a) #define IDirect3DRM3_GetSearchPath(p,a,b) (p)->GetSearchPath(a,b) #define IDirect3DRM3_SetDefaultTextureColors(p,a) (p)->SetDefaultTextureColors(a) #define IDirect3DRM3_SetDefaultTextureShades(p,a) (p)->SetDefaultTextureShades(a) #define IDirect3DRM3_GetDevices(p,a) (p)->GetDevices(a) #define IDirect3DRM3_GetNamedObject(p,a,b) (p)->GetNamedObject(a,b) #define IDirect3DRM3_EnumerateObjects(p,a,b) (p)->EnumerateObjects(a,b) #define IDirect3DRM3_Load(p,a,b,c,d,e,f,g,h,i,j) (p)->Load(a,b,c,d,e,f,g,h,i,j) #define IDirect3DRM3_Tick(p,a) (p)->Tick(a) #define IDirect3DRM3_CreateProgressiveMesh(p,a) (p)->CreateProgressiveMesh(a) #define IDirect3DRM3_RegisterClient(p,a,b) (p)->RegisterClient(a,b) #define IDirect3DRM3_UnregisterClient(p,a) (p)->UnregisterClient(a) #define IDirect3DRM3_CreateClippedVisual(p,a,b) (p)->CreateClippedVisual(a,b) #define IDirect3DRM3_SetOptions(p,a) (p)->SetOptions(a) #define IDirect3DRM3_GetOptions(p,a) (p)->GetOptions(a) #endif #define D3DRM_OK DD_OK #define D3DRMERR_BADOBJECT MAKE_DDHRESULT(781) #define D3DRMERR_BADTYPE MAKE_DDHRESULT(782) #define D3DRMERR_BADALLOC MAKE_DDHRESULT(783) #define D3DRMERR_FACEUSED MAKE_DDHRESULT(784) #define D3DRMERR_NOTFOUND MAKE_DDHRESULT(785) #define D3DRMERR_NOTDONEYET MAKE_DDHRESULT(786) #define D3DRMERR_FILENOTFOUND MAKE_DDHRESULT(787) #define D3DRMERR_BADFILE MAKE_DDHRESULT(788) #define D3DRMERR_BADDEVICE MAKE_DDHRESULT(789) #define D3DRMERR_BADVALUE MAKE_DDHRESULT(790) #define D3DRMERR_BADMAJORVERSION MAKE_DDHRESULT(791) #define D3DRMERR_BADMINORVERSION MAKE_DDHRESULT(792) #define D3DRMERR_UNABLETOEXECUTE MAKE_DDHRESULT(793) #define D3DRMERR_LIBRARYNOTFOUND MAKE_DDHRESULT(794) #define D3DRMERR_INVALIDLIBRARY MAKE_DDHRESULT(795) #define D3DRMERR_PENDING MAKE_DDHRESULT(796) #define D3DRMERR_NOTENOUGHDATA MAKE_DDHRESULT(797) #define D3DRMERR_REQUESTTOOLARGE MAKE_DDHRESULT(798) #define D3DRMERR_REQUESTTOOSMALL MAKE_DDHRESULT(799) #define D3DRMERR_CONNECTIONLOST MAKE_DDHRESULT(800) #define D3DRMERR_LOADABORTED MAKE_DDHRESULT(801) #define D3DRMERR_NOINTERNET MAKE_DDHRESULT(802) #define D3DRMERR_BADCACHEFILE MAKE_DDHRESULT(803) #define D3DRMERR_BOXNOTSET MAKE_DDHRESULT(804) #define D3DRMERR_BADPMDATA MAKE_DDHRESULT(805) #define D3DRMERR_CLIENTNOTREGISTERED MAKE_DDHRESULT(806) #define D3DRMERR_NOTCREATEDFROMDDS MAKE_DDHRESULT(807) #define D3DRMERR_NOSUCHKEY MAKE_DDHRESULT(808) #define D3DRMERR_INCOMPATABLEKEY MAKE_DDHRESULT(809) #define D3DRMERR_ELEMENTINUSE MAKE_DDHRESULT(810) #define D3DRMERR_TEXTUREFORMATNOTFOUND MAKE_DDHRESULT(811) #define D3DRMERR_NOTAGGREGATED MAKE_DDHRESULT(812) #ifdef __cplusplus } #endif #endif /* __D3DRM_H__ */ dxvk-0~git20220822.9df86f2/d3drmdef.h000066400000000000000000000360751430055512200166530ustar00rootroot00000000000000/* * Copyright 2007,2010 Vijay Kiran Kamuju * Copyright 2007 David ADAM * Copyright 2010 Christian Costa * * 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 */ #ifndef __D3DRMDEFS_H__ #define __D3DRMDEFS_H__ #include #include #if defined(__cplusplus) extern "C" { #endif typedef struct _D3DRMVECTOR4D { D3DVALUE x; D3DVALUE y; D3DVALUE z; D3DVALUE w; } D3DRMVECTOR4D, *LPD3DRMVECTOR4D; typedef D3DVALUE D3DRMMATRIX4D[4][4]; typedef struct _D3DRMQUATERNION { D3DVALUE s; D3DVECTOR v; } D3DRMQUATERNION, *LPD3DRMQUATERNION; typedef struct _D3DRMRAY { D3DVECTOR dvDir; D3DVECTOR dvPos; } D3DRMRAY, *LPD3DRMRAY; typedef struct _D3DRMBOX { D3DVECTOR min; D3DVECTOR max; } D3DRMBOX, *LPD3DRMBOX; typedef void (*D3DRMWRAPCALLBACK)(D3DVECTOR *vec, int *u, int *v, D3DVECTOR *a, D3DVECTOR *b, void *ctx); typedef enum _D3DRMLIGHTTYPE { D3DRMLIGHT_AMBIENT, D3DRMLIGHT_POINT, D3DRMLIGHT_SPOT, D3DRMLIGHT_DIRECTIONAL, D3DRMLIGHT_PARALLELPOINT } D3DRMLIGHTTYPE, *LPD3DRMLIGHTTYPE; typedef enum _D3DRMSHADEMODE { D3DRMSHADE_FLAT = 0, D3DRMSHADE_GOURAUD = 1, D3DRMSHADE_PHONG = 2, D3DRMSHADE_MASK = 7, D3DRMSHADE_MAX = 8 } D3DRMSHADEMODE, *LPD3DRMSHADEMODE; typedef enum _D3DRMLIGHTMODE { D3DRMLIGHT_OFF = 0 * D3DRMSHADE_MAX, D3DRMLIGHT_ON = 1 * D3DRMSHADE_MAX, D3DRMLIGHT_MASK = 7 * D3DRMSHADE_MAX, D3DRMLIGHT_MAX = 8 * D3DRMSHADE_MAX } D3DRMLIGHTMODE, *LPD3DRMLIGHTMODE; typedef enum _D3DRMFILLMODE { D3DRMFILL_POINTS = 0 * D3DRMLIGHT_MAX, D3DRMFILL_WIREFRAME = 1 * D3DRMLIGHT_MAX, D3DRMFILL_SOLID = 2 * D3DRMLIGHT_MAX, D3DRMFILL_MASK = 7 * D3DRMLIGHT_MAX, D3DRMFILL_MAX = 8 * D3DRMLIGHT_MAX } D3DRMFILLMODE, *LPD3DRMFILLMODE; typedef DWORD D3DRMRENDERQUALITY, *LPD3DRMRENDERQUALITY; #define D3DRMRENDER_WIREFRAME (D3DRMSHADE_FLAT+D3DRMLIGHT_OFF+D3DRMFILL_WIREFRAME) #define D3DRMRENDER_UNLITFLAT (D3DRMSHADE_FLAT+D3DRMLIGHT_OFF+D3DRMFILL_SOLID) #define D3DRMRENDER_FLAT (D3DRMSHADE_FLAT+D3DRMLIGHT_ON+D3DRMFILL_SOLID) #define D3DRMRENDER_GOURAUD (D3DRMSHADE_GOURAUD+D3DRMLIGHT_ON+D3DRMFILL_SOLID) #define D3DRMRENDER_PHONG (D3DRMSHADE_PHONG+D3DRMLIGHT_ON+D3DRMFILL_SOLID) #define D3DRMRENDERMODE_BLENDEDTRANSPARENCY 1 #define D3DRMRENDERMODE_SORTEDTRANSPARENCY 2 #define D3DRMRENDERMODE_LIGHTINMODELSPACE 8 #define D3DRMRENDERMODE_VIEWDEPENDENTSPECULAR 16 #define D3DRMRENDERMODE_DISABLESORTEDALPHAZWRITE 32 typedef enum _D3DRMTEXTUREQUALITY { D3DRMTEXTURE_NEAREST, D3DRMTEXTURE_LINEAR, D3DRMTEXTURE_MIPNEAREST, D3DRMTEXTURE_MIPLINEAR, D3DRMTEXTURE_LINEARMIPNEAREST, D3DRMTEXTURE_LINEARMIPLINEAR } D3DRMTEXTUREQUALITY, *LPD3DRMTEXTUREQUALITY; #define D3DRMTEXTURE_FORCERESIDENT 0x00000001 #define D3DRMTEXTURE_STATIC 0x00000002 #define D3DRMTEXTURE_DOWNSAMPLEPOINT 0x00000004 #define D3DRMTEXTURE_DOWNSAMPLEBILINEAR 0x00000008 #define D3DRMTEXTURE_DOWNSAMPLEREDUCEDEPTH 0x00000010 #define D3DRMTEXTURE_DOWNSAMPLENONE 0x00000020 #define D3DRMTEXTURE_CHANGEDPIXELS 0x00000040 #define D3DRMTEXTURE_CHANGEDPALETTE 0x00000080 #define D3DRMTEXTURE_INVALIDATEONLY 0x00000100 #define D3DRMSHADOW_TRUEALPHA 0x00000001 typedef enum _D3DRMCOMBINETYPE { D3DRMCOMBINE_REPLACE, D3DRMCOMBINE_BEFORE, D3DRMCOMBINE_AFTER } D3DRMCOMBINETYPE, *LPD3DRMCOMBINETYPE; typedef D3DCOLORMODEL D3DRMCOLORMODEL, *LPD3DRMCOLORMODEL; typedef enum _D3DRMPALETTEFLAGS { D3DRMPALETTE_FREE, D3DRMPALETTE_READONLY, D3DRMPALETTE_RESERVED } D3DRMPALETTEFLAGS, *LPD3DRMPALETTEFLAGS; typedef struct _D3DRMPALETTEENTRY { unsigned char red; unsigned char green; unsigned char blue; unsigned char flags; } D3DRMPALETTEENTRY, *LPD3DRMPALETTEENTRY; typedef struct _D3DRMIMAGE { int width; int height; int aspectx; int aspecty; int depth; int rgb; int bytes_per_line; void* buffer1; void* buffer2; ULONG red_mask; ULONG green_mask; ULONG blue_mask; ULONG alpha_mask; int palette_size; D3DRMPALETTEENTRY* palette; } D3DRMIMAGE, *LPD3DRMIMAGE; typedef enum _D3DRMWRAPTYPE { D3DRMWRAP_FLAT, D3DRMWRAP_CYLINDER, D3DRMWRAP_SPHERE, D3DRMWRAP_CHROME, D3DRMWRAP_SHEET, D3DRMWRAP_BOX } D3DRMWRAPTYPE, *LPD3DRMWRAPTYPE; #define D3DRMWIREFRAME_CULL 1 #define D3DRMWIREFRAME_HIDDENLINE 2 typedef enum _D3DRMPROJECTIONTYPE { D3DRMPROJECT_PERSPECTIVE, D3DRMPROJECT_ORTHOGRAPHIC, D3DRMPROJECT_RIGHTHANDPERSPECTIVE, D3DRMPROJECT_RIGHTHANDORTHOGRAPHIC } D3DRMPROJECTIONTYPE, *LPD3DRMPROJECTIONTYPE; #define D3DRMOPTIONS_LEFTHANDED 0x00000001 #define D3DRMOPTIONS_RIGHTHANDED 0x00000002 typedef enum _D3DRMXOFFORMAT { D3DRMXOF_BINARY, D3DRMXOF_COMPRESSED, D3DRMXOF_TEXT } D3DRMXOFFORMAT, *LPD3DRMXOFFORMAT; typedef DWORD D3DRMSAVEOPTIONS; #define D3DRMXOFSAVE_NORMALS 1 #define D3DRMXOFSAVE_TEXTURECOORDINATES 2 #define D3DRMXOFSAVE_MATERIALS 4 #define D3DRMXOFSAVE_TEXTURENAMES 8 #define D3DRMXOFSAVE_ALL 15 #define D3DRMXOFSAVE_TEMPLATES 16 #define D3DRMXOFSAVE_TEXTURETOPOLOGY 32 typedef enum _D3DRMCOLORSOURCE { D3DRMCOLOR_FROMFACE, D3DRMCOLOR_FROMVERTEX } D3DRMCOLORSOURCE, *LPD3DRMCOLORSOURCE; typedef enum _D3DRMFRAMECONSTRAINT { D3DRMCONSTRAIN_Z, D3DRMCONSTRAIN_Y, D3DRMCONSTRAIN_X } D3DRMFRAMECONSTRAINT, *LPD3DRMFRAMECONSTRAINT; typedef enum _D3DRMMATERIALMODE { D3DRMMATERIAL_FROMMESH, D3DRMMATERIAL_FROMPARENT, D3DRMMATERIAL_FROMFRAME } D3DRMMATERIALMODE, *LPD3DRMMATERIALMODE; typedef enum _D3DRMFOGMODE { D3DRMFOG_LINEAR, D3DRMFOG_EXPONENTIAL, D3DRMFOG_EXPONENTIALSQUARED } D3DRMFOGMODE, *LPD3DRMFOGMODE; typedef enum _D3DRMZBUFFERMODE { D3DRMZBUFFER_FROMPARENT, D3DRMZBUFFER_ENABLE, D3DRMZBUFFER_DISABLE } D3DRMZBUFFERMODE, *LPD3DRMZBUFFERMODE; typedef enum _D3DRMSORTMODE { D3DRMSORT_FROMPARENT, D3DRMSORT_NONE, D3DRMSORT_FRONTTOBACK, D3DRMSORT_BACKTOFRONT } D3DRMSORTMODE, *LPD3DRMSORTMODE; typedef struct _D3DRMMATERIALOVERRIDE { DWORD dwSize; DWORD dwFlags; D3DCOLORVALUE dcDiffuse; D3DCOLORVALUE dcAmbient; D3DCOLORVALUE dcEmissive; D3DCOLORVALUE dcSpecular; D3DVALUE dvPower; IUnknown *lpD3DRMTex; } D3DRMMATERIALOVERRIDE, *LPD3DRMMATERIALOVERRIDE; #define D3DRMMATERIALOVERRIDE_DIFFUSE_ALPHAONLY 0x00000001 #define D3DRMMATERIALOVERRIDE_DIFFUSE_RGBONLY 0x00000002 #define D3DRMMATERIALOVERRIDE_DIFFUSE 0x00000003 #define D3DRMMATERIALOVERRIDE_AMBIENT 0x00000004 #define D3DRMMATERIALOVERRIDE_EMISSIVE 0x00000008 #define D3DRMMATERIALOVERRIDE_SPECULAR 0x00000010 #define D3DRMMATERIALOVERRIDE_POWER 0x00000020 #define D3DRMMATERIALOVERRIDE_TEXTURE 0x00000040 #define D3DRMMATERIALOVERRIDE_DIFFUSE_ALPHAMULTIPLY 0x00000080 #define D3DRMMATERIALOVERRIDE_ALL 0x000000FF #define D3DRMFPTF_ALPHA 0x00000001 #define D3DRMFPTF_NOALPHA 0x00000002 #define D3DRMFPTF_PALETTIZED 0x00000004 #define D3DRMFPTF_NOTPALETTIZED 0x00000008 #define D3DRMSTATECHANGE_UPDATEONLY 0x000000001 #define D3DRMSTATECHANGE_VOLATILE 0x000000002 #define D3DRMSTATECHANGE_NONVOLATILE 0x000000004 #define D3DRMSTATECHANGE_RENDER 0x000000020 #define D3DRMSTATECHANGE_LIGHT 0x000000040 #define D3DRMDEVICE_NOZBUFFER 0x00000001 #define D3DRMCALLBACK_PREORDER 0 #define D3DRMCALLBACK_POSTORDER 1 #define D3DRMRAYPICK_ONLYBOUNDINGBOXES 0x01 #define D3DRMRAYPICK_IGNOREFURTHERPRIMITIVES 0x02 #define D3DRMRAYPICK_INTERPOLATEUV 0x04 #define D3DRMRAYPICK_INTERPOLATECOLOR 0x08 #define D3DRMRAYPICK_INTERPOLATENORMAL 0x10 #define D3DRMADDFACES_VERTICESONLY 1 #define D3DRMGENERATENORMALS_PRECOMPACT 1 #define D3DRMGENERATENORMALS_USECREASEANGLE 2 #define D3DRMMESHBUILDER_DIRECTPARENT 1 #define D3DRMMESHBUILDER_ROOTMESH 2 #define D3DRMMESHBUILDER_RENDERENABLE 0x00000001 #define D3DRMMESHBUILDER_PICKENABLE 0x00000002 #define D3DRMADDMESHBUILDER_DONTCOPYAPPDATA 1 #define D3DRMADDMESHBUILDER_FLATTENSUBMESHES 2 #define D3DRMADDMESHBUILDER_NOSUBMESHES 4 #define D3DRMMESHBUILDERAGE_GEOMETRY 0x00000001 #define D3DRMMESHBUILDERAGE_MATERIALS 0x00000002 #define D3DRMMESHBUILDERAGE_TEXTURES 0x00000004 #define D3DRMFVF_TYPE 0x00000001 #define D3DRMFVF_NORMAL 0x00000002 #define D3DRMFVF_COLOR 0x00000004 #define D3DRMFVF_TEXTURECOORDS 0x00000008 #define D3DRMVERTEX_STRIP 0x00000001 #define D3DRMVERTEX_FAN 0x00000002 #define D3DRMVERTEX_LIST 0x00000004 #define D3DRMCLEAR_TARGET 0x00000001 #define D3DRMCLEAR_ZBUFFER 0x00000002 #define D3DRMCLEAR_DIRTYRECTS 0x00000004 #define D3DRMCLEAR_ALL (D3DRMCLEAR_TARGET | D3DRMCLEAR_ZBUFFER | D3DRMCLEAR_DIRTYRECTS) #define D3DRMFOGMETHOD_VERTEX 0x00000001 #define D3DRMFOGMETHOD_TABLE 0x00000002 #define D3DRMFOGMETHOD_ANY 0x00000004 #define D3DRMFRAME_RENDERENABLE 0x00000001 #define D3DRMFRAME_PICKENABLE 0x00000002 typedef DWORD D3DRMANIMATIONOPTIONS; #define D3DRMANIMATION_OPEN 0x00000001 #define D3DRMANIMATION_CLOSED 0x00000002 #define D3DRMANIMATION_LINEARPOSITION 0x00000004 #define D3DRMANIMATION_SPLINEPOSITION 0x00000008 #define D3DRMANIMATION_SCALEANDROTATION 0x00000010 #define D3DRMANIMATION_POSITION 0x00000020 typedef DWORD D3DRMINTERPOLATIONOPTIONS; #define D3DRMINTERPOLATION_OPEN 0x0001 #define D3DRMINTERPOLATION_CLOSED 0x0002 #define D3DRMINTERPOLATION_NEAREST 0x0100 #define D3DRMINTERPOLATION_LINEAR 0x0004 #define D3DRMINTERPOLATION_SPLINE 0x0008 #define D3DRMINTERPOLATION_VERTEXCOLOR 0x0040 #define D3DRMINTERPOLATION_SLERPNORMALS 0x0080 typedef DWORD D3DRMLOADOPTIONS; #define D3DRMLOAD_FROMFILE __MSABI_LONG(0x000) #define D3DRMLOAD_FROMRESOURCE __MSABI_LONG(0x001) #define D3DRMLOAD_FROMMEMORY __MSABI_LONG(0x002) #define D3DRMLOAD_FROMSTREAM __MSABI_LONG(0x004) #define D3DRMLOAD_FROMURL __MSABI_LONG(0x008) #define D3DRMLOAD_BYNAME __MSABI_LONG(0x010) #define D3DRMLOAD_BYPOSITION __MSABI_LONG(0x020) #define D3DRMLOAD_BYGUID __MSABI_LONG(0x040) #define D3DRMLOAD_FIRST __MSABI_LONG(0x080) #define D3DRMLOAD_INSTANCEBYREFERENCE __MSABI_LONG(0x100) #define D3DRMLOAD_INSTANCEBYCOPYING __MSABI_LONG(0x200) #define D3DRMLOAD_ASYNCHRONOUS __MSABI_LONG(0x400) typedef struct _D3DRMLOADRESOURCE { HMODULE hModule; const char *lpName; const char *lpType; } D3DRMLOADRESOURCE, *LPD3DRMLOADRESOURCE; typedef struct _D3DRMLOADMEMORY { void *lpMemory; DWORD dSize; } D3DRMLOADMEMORY, *LPD3DRMLOADMEMORY; #define D3DRMPMESHSTATUS_VALID 0x01 #define D3DRMPMESHSTATUS_INTERRUPTED 0x02 #define D3DRMPMESHSTATUS_BASEMESHCOMPLETE 0x04 #define D3DRMPMESHSTATUS_COMPLETE 0x08 #define D3DRMPMESHSTATUS_RENDERABLE 0x10 #define D3DRMPMESHEVENT_BASEMESH 0x01 #define D3DRMPMESHEVENT_COMPLETE 0x02 typedef struct _D3DRMPMESHLOADSTATUS { DWORD dwSize; DWORD dwPMeshSize; DWORD dwBaseMeshSize; DWORD dwBytesLoaded; DWORD dwVerticesLoaded; DWORD dwFacesLoaded; HRESULT dwLoadResult; DWORD dwFlags; } D3DRMPMESHLOADSTATUS, *LPD3DRMPMESHLOADSTATUS; typedef enum _D3DRMUSERVISUALREASON { D3DRMUSERVISUAL_CANSEE, D3DRMUSERVISUAL_RENDER } D3DRMUSERVISUALREASON, *LPD3DRMUSERVISUALREASON; typedef struct _D3DRMANIMATIONKEY { DWORD dwSize; DWORD dwKeyType; D3DVALUE dvTime; DWORD dwID; #if !defined(__cplusplus) || !defined(D3D_OVERLOADS) union { D3DRMQUATERNION dqRotateKey; D3DVECTOR dvScaleKey; D3DVECTOR dvPositionKey; } DUMMYUNIONNAME; #else D3DVALUE dvK[4]; #endif } D3DRMANIMATIONKEY; typedef D3DRMANIMATIONKEY *LPD3DRMANIMATIONKEY; #define D3DRMANIMATION_ROTATEKEY 0x01 #define D3DRMANIMATION_SCALEKEY 0x02 #define D3DRMANIMATION_POSITIONKEY 0x03 typedef DWORD D3DRMMAPPING, D3DRMMAPPINGFLAG, *LPD3DRMMAPPING; static const D3DRMMAPPINGFLAG D3DRMMAP_WRAPU = 1; static const D3DRMMAPPINGFLAG D3DRMMAP_WRAPV = 2; static const D3DRMMAPPINGFLAG D3DRMMAP_PERSPCORRECT = 4; typedef struct _D3DRMVERTEX { D3DVECTOR position; D3DVECTOR normal; D3DVALUE tu; D3DVALUE tv; D3DCOLOR color; } D3DRMVERTEX, *LPD3DRMVERTEX; typedef LONG D3DRMGROUPINDEX; static const D3DRMGROUPINDEX D3DRMGROUP_ALLGROUPS = -1; void WINAPI D3DRMMatrixFromQuaternion(D3DRMMATRIX4D m, D3DRMQUATERNION *q); D3DRMQUATERNION * WINAPI D3DRMQuaternionFromRotation(D3DRMQUATERNION *x, D3DVECTOR *axis, D3DVALUE theta); D3DRMQUATERNION * WINAPI D3DRMQuaternionMultiply(D3DRMQUATERNION *ret, D3DRMQUATERNION *x, D3DRMQUATERNION *y); D3DRMQUATERNION * WINAPI D3DRMQuaternionSlerp(D3DRMQUATERNION *ret, D3DRMQUATERNION *x, D3DRMQUATERNION *y, D3DVALUE alpha); D3DVECTOR * WINAPI D3DRMVectorAdd(D3DVECTOR *ret, D3DVECTOR *x, D3DVECTOR *y); D3DVECTOR * WINAPI D3DRMVectorCrossProduct(D3DVECTOR *ret, D3DVECTOR *x, D3DVECTOR *y); D3DVALUE WINAPI D3DRMVectorDotProduct(D3DVECTOR *x, D3DVECTOR *y); D3DVECTOR * WINAPI D3DRMVectorNormalize(D3DVECTOR *x); #define D3DRMVectorNormalise D3DRMVectorNormalize D3DVALUE WINAPI D3DRMVectorModulus(D3DVECTOR *x); D3DVECTOR * WINAPI D3DRMVectorRandom(D3DVECTOR *ret); D3DVECTOR * WINAPI D3DRMVectorRotate(D3DVECTOR *ret, D3DVECTOR *x, D3DVECTOR *axis, D3DVALUE theta); D3DVECTOR * WINAPI D3DRMVectorReflect(D3DVECTOR *ret, D3DVECTOR *ray, D3DVECTOR *normal); D3DVECTOR * WINAPI D3DRMVectorScale(D3DVECTOR *ret, D3DVECTOR *x, D3DVALUE scale); D3DVECTOR * WINAPI D3DRMVectorSubtract(D3DVECTOR *ret, D3DVECTOR *x, D3DVECTOR *y); D3DCOLOR WINAPI D3DRMCreateColorRGB(D3DVALUE, D3DVALUE, D3DVALUE); D3DCOLOR WINAPI D3DRMCreateColorRGBA(D3DVALUE, D3DVALUE, D3DVALUE, D3DVALUE); D3DVALUE WINAPI D3DRMColorGetAlpha(D3DCOLOR); D3DVALUE WINAPI D3DRMColorGetBlue(D3DCOLOR); D3DVALUE WINAPI D3DRMColorGetGreen(D3DCOLOR); D3DVALUE WINAPI D3DRMColorGetRed(D3DCOLOR); #if defined(__cplusplus) } #endif #endif dxvk-0~git20220822.9df86f2/d3drmobj.h000066400000000000000000011764151430055512200166730ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2008 Vijay Kiran Kamuju * Copyright (C) 2010 Christian Costa * * 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 */ #ifndef __D3DRMOBJ_H__ #define __D3DRMOBJ_H__ #include #define VIRTUAL #include #include #ifdef __cplusplus extern "C" { #endif /* Direct3DRM object CLSIDs */ DEFINE_GUID(CLSID_CDirect3DRMDevice, 0x4fa3568e, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMViewport, 0x4fa3568f, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMFrame, 0x4fa35690, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMMesh, 0x4fa35691, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMMeshBuilder, 0x4fa35692, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMFace, 0x4fa35693, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMLight, 0x4fa35694, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMTexture, 0x4fa35695, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMWrap, 0x4fa35696, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMMaterial, 0x4fa35697, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMAnimation, 0x4fa35698, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMAnimationSet, 0x4fa35699, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMUserVisual, 0x4fa3569a, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMShadow, 0x4fa3569b, 0x623f, 0x11cf, 0xac, 0x4a, 0x0, 0x0, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(CLSID_CDirect3DRMViewportInterpolator, 0xde9eaa1, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMFrameInterpolator, 0xde9eaa2, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMMeshInterpolator, 0xde9eaa3, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMLightInterpolator, 0xde9eaa6, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMMaterialInterpolator, 0xde9eaa7, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMTextureInterpolator, 0xde9eaa8, 0x3b84, 0x11d0, 0x9b, 0x6d, 0x0, 0x0, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMProgressiveMesh, 0x4516ec40, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(CLSID_CDirect3DRMClippedVisual, 0x5434e72d, 0x6d66, 0x11d1, 0xbb, 0xb, 0x0, 0x0, 0xf8, 0x75, 0x86, 0x5a); /* Direct3DRM object interface GUIDs */ DEFINE_GUID(IID_IDirect3DRMObject, 0xeb16cb00, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMObject2, 0x4516ec7c, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMDevice, 0xe9e19280, 0x6e05, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMDevice2, 0x4516ec78, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMDevice3, 0x549f498b, 0xbfeb, 0x11d1, 0x8e, 0xd8, 0x00, 0xa0, 0xc9, 0x67, 0xa4, 0x82); DEFINE_GUID(IID_IDirect3DRMViewport, 0xeb16cb02, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMViewport2, 0x4a1b1be6, 0xbfed, 0x11d1, 0x8e, 0xd8, 0x00, 0xa0, 0xc9, 0x67, 0xa4, 0x82); DEFINE_GUID(IID_IDirect3DRMFrame, 0xeb16cb03, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMFrame2, 0xc3dfbd60, 0x3988, 0x11d0, 0x9e, 0xc2, 0x00, 0x00, 0xc0, 0x29, 0x1a, 0xc3); DEFINE_GUID(IID_IDirect3DRMFrame3, 0xff6b7f70, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66); DEFINE_GUID(IID_IDirect3DRMVisual, 0xeb16cb04, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMMesh, 0xa3a80d01, 0x6e12, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMMeshBuilder, 0xa3a80d02, 0x6e12, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMMeshBuilder2, 0x4516ec77, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMMeshBuilder3, 0x4516ec82, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMFace, 0xeb16cb07, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMFace2, 0x4516ec81, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMLight, 0xeb16cb08, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMTexture, 0xeb16cb09, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMTexture2, 0x120f30c0, 0x1629, 0x11d0, 0x94, 0x1c, 0x00, 0x80, 0xc8, 0x0c, 0xfa, 0x7b); DEFINE_GUID(IID_IDirect3DRMTexture3, 0xff6b7f73, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66); DEFINE_GUID(IID_IDirect3DRMWrap, 0xeb16cb0a, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMMaterial, 0xeb16cb0b, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMMaterial2, 0xff6b7f75, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66); DEFINE_GUID(IID_IDirect3DRMAnimation, 0xeb16cb0d, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMAnimation2, 0xff6b7f77, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66); DEFINE_GUID(IID_IDirect3DRMAnimationSet, 0xeb16cb0e, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMAnimationSet2, 0xff6b7f79, 0xa40e, 0x11d1, 0x91, 0xf9, 0x00, 0x00, 0xf8, 0x75, 0x8e, 0x66); DEFINE_GUID(IID_IDirect3DRMObjectArray, 0x242f6bc2, 0x3849, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMDeviceArray, 0xeb16cb10, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMViewportArray, 0xeb16cb11, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMFrameArray, 0xeb16cb12, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMVisualArray, 0xeb16cb13, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMLightArray, 0xeb16cb14, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMPickedArray, 0xeb16cb16, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMFaceArray, 0xeb16cb17, 0xd271, 0x11ce, 0xac, 0x48, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMAnimationArray, 0xd5f1cae0, 0x4bd7, 0x11d1, 0xb9, 0x74, 0x00, 0x60, 0x08, 0x3e, 0x45, 0xf3); DEFINE_GUID(IID_IDirect3DRMUserVisual, 0x59163de0, 0x6d43, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMShadow, 0xaf359780, 0x6ba3, 0x11cf, 0xac, 0x4a, 0x00, 0x00, 0xc0, 0x38, 0x25, 0xa1); DEFINE_GUID(IID_IDirect3DRMShadow2, 0x86b44e25, 0x9c82, 0x11d1, 0xbb, 0x0b, 0x00, 0xa0, 0xc9, 0x81, 0xa0, 0xa6); DEFINE_GUID(IID_IDirect3DRMInterpolator, 0x242f6bc1, 0x3849, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMProgressiveMesh, 0x4516ec79, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMPicked2Array, 0x4516ec7b, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); DEFINE_GUID(IID_IDirect3DRMClippedVisual, 0x5434e733, 0x6d66, 0x11d1, 0xbb, 0x0b, 0x00, 0x00, 0xf8, 0x75, 0x86, 0x5a); /***************************************************************************** * Predeclare the interfaces */ typedef struct IDirect3DRMObject *LPDIRECT3DRMOBJECT, **LPLPDIRECT3DRMOBJECT; typedef struct IDirect3DRMObject2 *LPDIRECT3DRMOBJECT2, **LPLPDIRECT3DRMOBJECT2; typedef struct IDirect3DRMDevice *LPDIRECT3DRMDEVICE, **LPLPDIRECT3DRMDEVICE; typedef struct IDirect3DRMDevice2 *LPDIRECT3DRMDEVICE2, **LPLPDIRECT3DRMDEVICE2; typedef struct IDirect3DRMDevice3 *LPDIRECT3DRMDEVICE3, **LPLPDIRECT3DRMDEVICE3; typedef struct IDirect3DRMViewport *LPDIRECT3DRMVIEWPORT, **LPLPDIRECT3DRMVIEWPORT; typedef struct IDirect3DRMViewport2 *LPDIRECT3DRMVIEWPORT2, **LPLPDIRECT3DRMVIEWPORT2; typedef struct IDirect3DRMFrame *LPDIRECT3DRMFRAME, **LPLPDIRECT3DRMFRAME; typedef struct IDirect3DRMFrame2 *LPDIRECT3DRMFRAME2, **LPLPDIRECT3DRMFRAME2; typedef struct IDirect3DRMFrame3 *LPDIRECT3DRMFRAME3, **LPLPDIRECT3DRMFRAME3; typedef struct IDirect3DRMVisual *LPDIRECT3DRMVISUAL, **LPLPDIRECT3DRMVISUAL; typedef struct IDirect3DRMMesh *LPDIRECT3DRMMESH, **LPLPDIRECT3DRMMESH; typedef struct IDirect3DRMMeshBuilder *LPDIRECT3DRMMESHBUILDER, **LPLPDIRECT3DRMMESHBUILDER; typedef struct IDirect3DRMMeshBuilder2 *LPDIRECT3DRMMESHBUILDER2, **LPLPDIRECT3DRMMESHBUILDER2; typedef struct IDirect3DRMMeshBuilder3 *LPDIRECT3DRMMESHBUILDER3, **LPLPDIRECT3DRMMESHBUILDER3; typedef struct IDirect3DRMFace *LPDIRECT3DRMFACE, **LPLPDIRECT3DRMFACE; typedef struct IDirect3DRMFace2 *LPDIRECT3DRMFACE2, **LPLPDIRECT3DRMFACE2; typedef struct IDirect3DRMLight *LPDIRECT3DRMLIGHT, **LPLPDIRECT3DRMLIGHT; typedef struct IDirect3DRMTexture *LPDIRECT3DRMTEXTURE, **LPLPDIRECT3DRMTEXTURE; typedef struct IDirect3DRMTexture2 *LPDIRECT3DRMTEXTURE2, **LPLPDIRECT3DRMTEXTURE2; typedef struct IDirect3DRMTexture3 *LPDIRECT3DRMTEXTURE3, **LPLPDIRECT3DRMTEXTURE3; typedef struct IDirect3DRMWrap *LPDIRECT3DRMWRAP, **LPLPDIRECT3DRMWRAP; typedef struct IDirect3DRMMaterial *LPDIRECT3DRMMATERIAL, **LPLPDIRECT3DRMMATERIAL; typedef struct IDirect3DRMMaterial2 *LPDIRECT3DRMMATERIAL2, **LPLPDIRECT3DRMMATERIAL2; typedef struct IDirect3DRMAnimation *LPDIRECT3DRMANIMATION, **LPLPDIRECT3DRMANIMATION; typedef struct IDirect3DRMAnimation2 *LPDIRECT3DRMANIMATION2, **LPLPDIRECT3DRMANIMATION2; typedef struct IDirect3DRMAnimationSet *LPDIRECT3DRMANIMATIONSET, **LPLPDIRECT3DRMANIMATIONSET; typedef struct IDirect3DRMAnimationSet2 *LPDIRECT3DRMANIMATIONSET2, **LPLPDIRECT3DRMANIMATIONSET2; typedef struct IDirect3DRMUserVisual *LPDIRECT3DRMUSERVISUAL, **LPLPDIRECT3DRMUSERVISUAL; typedef struct IDirect3DRMShadow *LPDIRECT3DRMSHADOW, **LPLPDIRECT3DRMSHADOW; typedef struct IDirect3DRMShadow2 *LPDIRECT3DRMSHADOW2, **LPLPDIRECT3DRMSHADOW2; typedef struct IDirect3DRMArray *LPDIRECT3DRMARRAY, **LPLPDIRECT3DRMARRAY; typedef struct IDirect3DRMObjectArray *LPDIRECT3DRMOBJECTARRAY, **LPLPDIRECT3DRMOBJECTARRAY; typedef struct IDirect3DRMDeviceArray *LPDIRECT3DRMDEVICEARRAY, **LPLPDIRECT3DRMDEVICEARRAY; typedef struct IDirect3DRMFaceArray *LPDIRECT3DRMFACEARRAY, **LPLPDIRECT3DRMFACEARRAY; typedef struct IDirect3DRMViewportArray *LPDIRECT3DRMVIEWPORTARRAY, **LPLPDIRECT3DRMVIEWPORTARRAY; typedef struct IDirect3DRMFrameArray *LPDIRECT3DRMFRAMEARRAY, **LPLPDIRECT3DRMFRAMEARRAY; typedef struct IDirect3DRMAnimationArray *LPDIRECT3DRMANIMATIONARRAY, **LPLPDIRECT3DRMANIMATIONARRAY; typedef struct IDirect3DRMVisualArray *LPDIRECT3DRMVISUALARRAY, **LPLPDIRECT3DRMVISUALARRAY; typedef struct IDirect3DRMPickedArray *LPDIRECT3DRMPICKEDARRAY, **LPLPDIRECT3DRMPICKEDARRAY; typedef struct IDirect3DRMPicked2Array *LPDIRECT3DRMPICKED2ARRAY, **LPLPDIRECT3DRMPICKED2ARRAY; typedef struct IDirect3DRMLightArray *LPDIRECT3DRMLIGHTARRAY, **LPLPDIRECT3DRMLIGHTARRAY; typedef struct IDirect3DRMProgressiveMesh *LPDIRECT3DRMPROGRESSIVEMESH, **LPLPDIRECT3DRMPROGRESSIVEMESH; typedef struct IDirect3DRMClippedVisual *LPDIRECT3DRMCLIPPEDVISUAL, **LPLPDIRECT3DRMCLIPPEDVISUAL; /* ******************************************************************** Types and structures ******************************************************************** */ typedef void (__cdecl *D3DRMOBJECTCALLBACK)(struct IDirect3DRMObject *obj, void *arg); typedef void (__cdecl *D3DRMFRAMEMOVECALLBACK)(struct IDirect3DRMFrame *frame, void *ctx, D3DVALUE delta); typedef void (__cdecl *D3DRMFRAME3MOVECALLBACK)(struct IDirect3DRMFrame3 *frame, void *ctx, D3DVALUE delta); typedef void (__cdecl *D3DRMUPDATECALLBACK)(struct IDirect3DRMDevice *device, void *ctx, int count, D3DRECT *rects); typedef void (__cdecl *D3DRMDEVICE3UPDATECALLBACK)(struct IDirect3DRMDevice3 *device, void *ctx, int count, D3DRECT *rects); typedef int (__cdecl *D3DRMUSERVISUALCALLBACK)(struct IDirect3DRMUserVisual *visual, void *ctx, D3DRMUSERVISUALREASON reason, struct IDirect3DRMDevice *device, struct IDirect3DRMViewport *viewport); typedef HRESULT (__cdecl *D3DRMLOADTEXTURECALLBACK)(char *tex_name, void *arg, struct IDirect3DRMTexture **texture); typedef HRESULT (__cdecl *D3DRMLOADTEXTURE3CALLBACK)(char *tex_name, void *arg, struct IDirect3DRMTexture3 **texture); typedef void (__cdecl *D3DRMLOADCALLBACK)(struct IDirect3DRMObject *object, REFIID objectguid, void *arg); typedef HRESULT (__cdecl *D3DRMDOWNSAMPLECALLBACK)(struct IDirect3DRMTexture3 *texture, void *ctx, IDirectDrawSurface *src_surface, IDirectDrawSurface *dst_surface); typedef HRESULT (__cdecl *D3DRMVALIDATIONCALLBACK)(struct IDirect3DRMTexture3 *texture, void *ctx, DWORD flags, DWORD rect_count, RECT *rects); typedef struct _D3DRMPICKDESC { ULONG ulFaceIdx; LONG lGroupIdx; D3DVECTOR vPosition; } D3DRMPICKDESC, *LPD3DRMPICKDESC; typedef struct _D3DRMPICKDESC2 { ULONG ulFaceIdx; LONG lGroupIdx; D3DVECTOR vPosition; D3DVALUE tu; D3DVALUE tv; D3DVECTOR dvNormal; D3DCOLOR dcColor; } D3DRMPICKDESC2, *LPD3DRMPICKDESC2; /***************************************************************************** * IDirect3DRMObject interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRMObject DECLARE_INTERFACE_(IDirect3DRMObject,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMObject_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMObject_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMObject_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMObject_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMObject_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMObject_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMObject_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMObject_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMObject_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMObject_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMObject_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMObject_AddRef(p) (p)->AddRef() #define IDirect3DRMObject_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMObject_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMObject_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMObject_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMObject_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMObject_GetAppData(p) (p)->GetAppData() #define IDirect3DRMObject_SetName(p,a) (p)->SetName(a) #define IDirect3DRMObject_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMObject_GetClassName(p,a,b) (p)->GetClassName(a,b) #endif /***************************************************************************** * IDirect3DRMObject2 interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRMObject2 DECLARE_INTERFACE_(IDirect3DRMObject2,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject2 methods ***/ STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(GetClientData)(THIS_ DWORD id, void **data) PURE; STDMETHOD(GetDirect3DRM)(THIS_ struct IDirect3DRM **d3drm) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(SetClientData)(THIS_ DWORD id, void *data, DWORD flags) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetAge)(THIS_ DWORD flags, DWORD *age) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMObject2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMObject2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMObject2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject2 methods ***/ #define IDirect3DRMObject2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMObject2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMObject2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMObject2_GetClientData(p,a,b) (p)->lpVtbl->SetClientData(p,a,b) #define IDirect3DRMObject2_GetDirect3DRM(p,a) (p)->lpVtbl->GetDirect3DRM(p,a) #define IDirect3DRMObject2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMObject2_SetClientData(p,a,b,c) (p)->lpVtbl->SetClientData(p,a,b,c) #define IDirect3DRMObject2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMObject2_GetAge(p,a,b) (p)->lpVtbl->GetAge(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMObject2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMObject2_AddRef(p) (p)->AddRef() #define IDirect3DRMObject2_Release(p) (p)->Release() /*** IDirect3DRMObject2 methods ***/ #define IDirect3DRMObject2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMObject2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMObject2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMObject2_GetClientData(p,a,b) (p)->SetClientData(a,b) #define IDirect3DRMObject2_GetDirect3DRM(p,a) (p)->GetDirect3DRM(a) #define IDirect3DRMObject2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMObject2_SetClientData(p,a,b,c) (p)->SetClientData(a,b,c) #define IDirect3DRMObject2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMObject2_GetAge(p,a,b) (p)->GetAge(a,b) #endif /***************************************************************************** * IDirect3DRMVisual interface */ #define INTERFACE IDirect3DRMVisual DECLARE_INTERFACE_(IDirect3DRMVisual,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMVisual_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMVisual_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMVisual_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMVisual_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMVisual_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMVisual_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMVisual_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMVisual_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMVisual_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMVisual_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMVisual_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMVisual_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMVisual_AddRef(p) (p)->AddRef() #define IDirect3DRMVisual_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMVisual_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMVisual_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMVisual_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMVisual_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMVisual_GetAppData(p) (p)->GetAppData() #define IDirect3DRMVisual_SetName(p,a) (p)->SetName(a) #define IDirect3DRMVisual_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMVisual_GetClassName(p,a,b) (p)->GetClassName(a,b) #endif /***************************************************************************** * IDirect3DRMDevice interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRMDevice DECLARE_INTERFACE_(IDirect3DRMDevice,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMDevice methods ***/ STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE; STDMETHOD(InitFromD3D)(THIS_ IDirect3D *d3d, IDirect3DDevice *d3d_device) PURE; STDMETHOD(InitFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height) PURE; STDMETHOD(Update)(THIS) PURE; STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE; STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE; STDMETHOD(SetDither)(THIS_ WINBOOL) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE; STDMETHOD(GetViewports)(THIS_ struct IDirect3DRMViewportArray **array) PURE; STDMETHOD_(WINBOOL, GetDither)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetHeight)(THIS) PURE; STDMETHOD_(DWORD, GetWidth)(THIS) PURE; STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE; STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE; STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE; STDMETHOD(GetDirect3DDevice)(THIS_ IDirect3DDevice **d3d_device) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMDevice_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMDevice_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMDevice_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMDevice_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMDevice_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMDevice_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMDevice_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMDevice_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMDevice_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMDevice_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice_Init(p,a,b) (p)->lpVtbl->Init(p,a,b) #define IDirect3DRMDevice_InitFromD3D(p,a,b) (p)->lpVtbl->InitFromD3D(p,a,b) #define IDirect3DRMDevice_InitFromClipper(p,a,b,c,d) (p)->lpVtbl->InitFromClipper(p,a,b,c,d) #define IDirect3DRMDevice_Update(p) (p)->lpVtbl->Update(p) #define IDirect3DRMDevice_AddUpdateCallback(p,a,b) (p)->lpVtbl->AddUpdateCallback(p,a,b) #define IDirect3DRMDevice_DeleteUpdateCallback(p,a,b) (p)->lpVtbl->DeleteUpdateCallback(p,a,b) #define IDirect3DRMDevice_SetBufferCount(p,a) (p)->lpVtbl->SetBufferCount(p,a) #define IDirect3DRMDevice_GetBufferCount(p) (p)->lpVtbl->GetBufferCount(p) #define IDirect3DRMDevice_SetDither(p,a) (p)->lpVtbl->SetDither(p,a) #define IDirect3DRMDevice_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMDevice_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMDevice_SetTextureQuality(p,a) (p)->lpVtbl->SetTextureQuality(p,a) #define IDirect3DRMDevice_GetViewports(p,a) (p)->lpVtbl->GetViewports(p,a) #define IDirect3DRMDevice_GetDither(p) (p)->lpVtbl->GetDither(p) #define IDirect3DRMDevice_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMDevice_GetHeight(p) (p)->lpVtbl->GetHeight(p) #define IDirect3DRMDevice_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define IDirect3DRMDevice_GetTrianglesDrawn(p) (p)->lpVtbl->GetTrianglesDrawn(p) #define IDirect3DRMDevice_GetWireframeOptions(p) (p)->lpVtbl->GetWireframeOptions(p) #define IDirect3DRMDevice_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMDevice_GetColorModel(p) (p)->lpVtbl->GetColorModel(p) #define IDirect3DRMDevice_GetTextureQuality(p) (p)->lpVtbl->GetTextureQuality(p) #define IDirect3DRMDevice_GetDirect3DDevice(p,a) (p)->lpVtbl->GetDirect3DDevice(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMDevice_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMDevice_AddRef(p) (p)->AddRef() #define IDirect3DRMDevice_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMDevice_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMDevice_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMDevice_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMDevice_GetAppData(p) (p)->GetAppData() #define IDirect3DRMDevice_SetName(p,a) (p)->SetName(a) #define IDirect3DRMDevice_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMDevice_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice_Init(p,a,b) (p)->Init(a,b) #define IDirect3DRMDevice_InitFromD3D(p,a,b) (p)->InitFromD3D(a,b) #define IDirect3DRMDevice_InitFromClipper(p,a,b,c,d) (p)->InitFromClipper(a,b,c,d) #define IDirect3DRMDevice_Update(p) (p)->Update() #define IDirect3DRMDevice_AddUpdateCallback(p,a,b) (p)->AddUpdateCallback(a,b) #define IDirect3DRMDevice_DeleteUpdateCallback(p,a,b) (p)->DeleteUpdateCallback(a,b) #define IDirect3DRMDevice_SetBufferCount(p,a) (p)->SetBufferCount(a) #define IDirect3DRMDevice_GetBufferCount(p) (p)->GetBufferCount() #define IDirect3DRMDevice_SetDither(p,a) (p)->SetDither(a) #define IDirect3DRMDevice_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMDevice_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMDevice_SetTextureQuality(p,a) (p)->SetTextureQuality(a) #define IDirect3DRMDevice_GetViewports(p,a) (p)->GetViewports(a) #define IDirect3DRMDevice_GetDither(p) (p)->GetDither() #define IDirect3DRMDevice_GetShades(p) (p)->GetShades() #define IDirect3DRMDevice_GetHeight(p) (p)->GetHeight() #define IDirect3DRMDevice_GetWidth(p) (p)->GetWidth() #define IDirect3DRMDevice_GetTrianglesDrawn(p) (p)->GetTrianglesDrawn() #define IDirect3DRMDevice_GetWireframeOptions(p) (p)->GetWireframeOptions() #define IDirect3DRMDevice_GetQuality(p) (p)->GetQuality() #define IDirect3DRMDevice_GetColorModel(p) (p)->GetColorModel() #define IDirect3DRMDevice_GetTextureQuality(p) (p)->GetTextureQuality() #define IDirect3DRMDevice_GetDirect3DDevice(p,a) (p)->GetDirect3DDevice(a) #endif /***************************************************************************** * IDirect3DRMDevice2 interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRMDevice2 DECLARE_INTERFACE_(IDirect3DRMDevice2,IDirect3DRMDevice) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMDevice methods ***/ STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE; STDMETHOD(InitFromD3D)(THIS_ IDirect3D *d3d, IDirect3DDevice *d3d_device) PURE; STDMETHOD(InitFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height) PURE; STDMETHOD(Update)(THIS) PURE; STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE; STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE; STDMETHOD(SetDither)(THIS_ WINBOOL) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE; STDMETHOD(GetViewports)(THIS_ struct IDirect3DRMViewportArray **array) PURE; STDMETHOD_(WINBOOL, GetDither)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetHeight)(THIS) PURE; STDMETHOD_(DWORD, GetWidth)(THIS) PURE; STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE; STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE; STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE; STDMETHOD(GetDirect3DDevice)(THIS_ IDirect3DDevice **d3d_device) PURE; /*** IDirect3DRMDevice2 methods ***/ STDMETHOD(InitFromD3D2)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *device) PURE; STDMETHOD(InitFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw, IDirectDrawSurface *surface) PURE; STDMETHOD(SetRenderMode)(THIS_ DWORD flags) PURE; STDMETHOD_(DWORD, GetRenderMode)(THIS) PURE; STDMETHOD(GetDirect3DDevice2)(THIS_ IDirect3DDevice2 **device) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMDevice2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMDevice2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMDevice2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMDevice2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMDevice2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMDevice2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMDevice2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMDevice2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMDevice2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMDevice2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice2_Init(p,a,b) (p)->lpVtbl->Init(p,a,b) #define IDirect3DRMDevice2_InitFromD3D(p,a,b) (p)->lpVtbl->InitFromD3D(p,a,b) #define IDirect3DRMDevice2_InitFromClipper(p,a,b,c,d) (p)->lpVtbl->InitFromClipper(p,a,b,c,d) #define IDirect3DRMDevice2_Update(p) (p)->lpVtbl->Update(p) #define IDirect3DRMDevice2_AddUpdateCallback(p,a,b) (p)->lpVtbl->AddUpdateCallback(p,a,b) #define IDirect3DRMDevice2_DeleteUpdateCallback(p,a,b) (p)->lpVtbl->DeleteUpdateCallback(p,a,b) #define IDirect3DRMDevice2_SetBufferCount(p,a) (p)->lpVtbl->SetBufferCount(p,a) #define IDirect3DRMDevice2_GetBufferCount(p) (p)->lpVtbl->GetBufferCount(p) #define IDirect3DRMDevice2_SetDither(p,a) (p)->lpVtbl->SetDither(p,a) #define IDirect3DRMDevice2_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMDevice2_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMDevice2_SetTextureQuality(p,a) (p)->lpVtbl->SetTextureQuality(p,a) #define IDirect3DRMDevice2_GetViewports(p,a) (p)->lpVtbl->GetViewports(p,a) #define IDirect3DRMDevice2_GetDither(p) (p)->lpVtbl->GetDither(p) #define IDirect3DRMDevice2_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMDevice2_GetHeight(p) (p)->lpVtbl->GetHeight(p) #define IDirect3DRMDevice2_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define IDirect3DRMDevice2_GetTrianglesDrawn(p) (p)->lpVtbl->GetTrianglesDrawn(p) #define IDirect3DRMDevice2_GetWireframeOptions(p) (p)->lpVtbl->GetWireframeOptions(p) #define IDirect3DRMDevice2_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMDevice2_GetColorModel(p) (p)->lpVtbl->GetColorModel(p) #define IDirect3DRMDevice2_GetTextureQuality(p) (p)->lpVtbl->GetTextureQuality(p) #define IDirect3DRMDevice2_GetDirect3DDevice(p,a) (p)->lpVtbl->GetDirect3DDevice(p,a) /*** IDirect3DRMDevice2 methods ***/ #define IDirect3DRMDevice2_InitFromD3D2(p,a,b) (p)->lpVtbl->InitFromD3D2(p,a,b) #define IDirect3DRMDevice2_InitFromSurface(p,a,b,c) (p)->lpVtbl->InitFromSurface(p,a,b,c) #define IDirect3DRMDevice2_SetRenderMode(p,a) (p)->lpVtbl->SetRenderMode(p,a) #define IDirect3DRMDevice2_GetRenderMode(p) (p)->lpVtbl->GetRenderMode(p) #define IDirect3DRMDevice2_GetDirect3DDevice2(p,a) (p)->lpVtbl->GetDirect3DDevice2(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMDevice2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMDevice2_AddRef(p) (p)->AddRef() #define IDirect3DRMDevice2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMDevice2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMDevice2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMDevice2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMDevice2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMDevice2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMDevice2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMDevice2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice2_Init(p,a,b) (p)->Init(a,b) #define IDirect3DRMDevice2_InitFromD3D(p,a,b) (p)->InitFromD3D(a,b) #define IDirect3DRMDevice2_InitFromClipper(p,a,b,c,d) (p)->InitFromClipper(a,b,c,d) #define IDirect3DRMDevice2_Update(p) (p)->Update() #define IDirect3DRMDevice2_AddUpdateCallback(p,a,b) (p)->AddUpdateCallback(a,b) #define IDirect3DRMDevice2_DeleteUpdateCallback(p,a,b) (p)->DeleteUpdateCallback(a,b) #define IDirect3DRMDevice2_SetBufferCount(p,a) (p)->SetBufferCount(a) #define IDirect3DRMDevice2_GetBufferCount(p) (p)->GetBufferCount() #define IDirect3DRMDevice2_SetDither(p,a) (p)->SetDither(a) #define IDirect3DRMDevice2_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMDevice2_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMDevice2_SetTextureQuality(p,a) (p)->SetTextureQuality(a) #define IDirect3DRMDevice2_GetViewports(p,a) (p)->GetViewports(a) #define IDirect3DRMDevice2_GetDither(p) (p)->GetDither() #define IDirect3DRMDevice2_GetShades(p) (p)->GetShades() #define IDirect3DRMDevice2_GetHeight(p) (p)->GetHeight() #define IDirect3DRMDevice2_GetWidth(p) (p)->GetWidth() #define IDirect3DRMDevice2_GetTrianglesDrawn(p) (p)->GetTrianglesDrawn() #define IDirect3DRMDevice2_GetWireframeOptions(p) (p)->GetWireframeOptions() #define IDirect3DRMDevice2_GetQuality(p) (p)->GetQuality() #define IDirect3DRMDevice2_GetColorModel(p) (p)->GetColorModel() #define IDirect3DRMDevice2_GetTextureQuality(p) (p)->GetTextureQuality() #define IDirect3DRMDevice2_GetDirect3DDevice(p,a) (p)->GetDirect3DDevice(a) /*** IDirect3DRMDevice2 methods ***/ #define IDirect3DRMDevice2_InitFromD3D2(p,a,b) (p)->InitFromD3D2(a,b) #define IDirect3DRMDevice2_InitFromSurface(p,a,b,c) (p)->InitFromSurface(a,b,c) #define IDirect3DRMDevice2_SetRenderMode(p,a) (p)->SetRenderMode(a) #define IDirect3DRMDevice2_GetRenderMode(p) (p)->GetRenderMode() #define IDirect3DRMDevice2_GetDirect3DDevice2(p,a) (p)->GetDirect3DDevice2(a) #endif /***************************************************************************** * IDirect3DRMDevice3 interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetClassName #endif #define INTERFACE IDirect3DRMDevice3 DECLARE_INTERFACE_(IDirect3DRMDevice3,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMDevice methods ***/ STDMETHOD(Init)(THIS_ ULONG width, ULONG height) PURE; STDMETHOD(InitFromD3D)(THIS_ IDirect3D *d3d, IDirect3DDevice *d3d_device) PURE; STDMETHOD(InitFromClipper)(THIS_ IDirectDrawClipper *clipper, GUID *guid, int width, int height) PURE; STDMETHOD(Update)(THIS) PURE; STDMETHOD(AddUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteUpdateCallback)(THIS_ D3DRMUPDATECALLBACK cb, void *ctx) PURE; STDMETHOD(SetBufferCount)(THIS_ DWORD) PURE; STDMETHOD_(DWORD, GetBufferCount)(THIS) PURE; STDMETHOD(SetDither)(THIS_ WINBOOL) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetTextureQuality)(THIS_ D3DRMTEXTUREQUALITY) PURE; STDMETHOD(GetViewports)(THIS_ struct IDirect3DRMViewportArray **array) PURE; STDMETHOD_(WINBOOL, GetDither)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetHeight)(THIS) PURE; STDMETHOD_(DWORD, GetWidth)(THIS) PURE; STDMETHOD_(DWORD, GetTrianglesDrawn)(THIS) PURE; STDMETHOD_(DWORD, GetWireframeOptions)(THIS) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(D3DCOLORMODEL, GetColorModel)(THIS) PURE; STDMETHOD_(D3DRMTEXTUREQUALITY, GetTextureQuality)(THIS) PURE; STDMETHOD(GetDirect3DDevice)(THIS_ IDirect3DDevice **d3d_device) PURE; /*** IDirect3DRMDevice2 methods ***/ STDMETHOD(InitFromD3D2)(THIS_ IDirect3D2 *d3d, IDirect3DDevice2 *device) PURE; STDMETHOD(InitFromSurface)(THIS_ GUID *guid, IDirectDraw *ddraw, IDirectDrawSurface *surface) PURE; STDMETHOD(SetRenderMode)(THIS_ DWORD flags) PURE; STDMETHOD_(DWORD, GetRenderMode)(THIS) PURE; STDMETHOD(GetDirect3DDevice2)(THIS_ IDirect3DDevice2 **device) PURE; /*** IDirect3DRMDevice3 methods ***/ STDMETHOD(FindPreferredTextureFormat)(THIS_ DWORD BitDepths, DWORD flags, DDPIXELFORMAT *format) PURE; STDMETHOD(RenderStateChange)(THIS_ D3DRENDERSTATETYPE drsType, DWORD val, DWORD flags) PURE; STDMETHOD(LightStateChange)(THIS_ D3DLIGHTSTATETYPE drsType, DWORD val, DWORD flags) PURE; STDMETHOD(GetStateChangeOptions)(THIS_ DWORD state_class, DWORD state_idx, DWORD *flags) PURE; STDMETHOD(SetStateChangeOptions)(THIS_ DWORD StateClass, DWORD StateNum, DWORD flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMDevice3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMDevice3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMDevice3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice3_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMDevice3_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMDevice3_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMDevice3_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMDevice3_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMDevice3_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMDevice3_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMDevice3_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice3_Init(p,a,b) (p)->lpVtbl->Init(p,a,b) #define IDirect3DRMDevice3_InitFromD3D(p,a,b) (p)->lpVtbl->InitFromD3D(p,a,b) #define IDirect3DRMDevice3_InitFromClipper(p,a,b,c,d) (p)->lpVtbl->InitFromClipper(p,a,b,c,d) #define IDirect3DRMDevice3_Update(p) (p)->lpVtbl->Update(p) #define IDirect3DRMDevice3_AddUpdateCallback(p,a,b) (p)->lpVtbl->AddUpdateCallback(p,a,b) #define IDirect3DRMDevice3_DeleteUpdateCallback(p,a,b) (p)->lpVtbl->DeleteUpdateCallback(p,a,b) #define IDirect3DRMDevice3_SetBufferCount(p,a) (p)->lpVtbl->SetBufferCount(p,a) #define IDirect3DRMDevice3_GetBufferCount(p) (p)->lpVtbl->GetBufferCount(p) #define IDirect3DRMDevice3_SetDither(p,a) (p)->lpVtbl->SetDither(p,a) #define IDirect3DRMDevice3_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMDevice3_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMDevice3_SetTextureQuality(p,a) (p)->lpVtbl->SetTextureQuality(p,a) #define IDirect3DRMDevice3_GetViewports(p,a) (p)->lpVtbl->GetViewports(p,a) #define IDirect3DRMDevice3_GetDither(p) (p)->lpVtbl->GetDither(p) #define IDirect3DRMDevice3_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMDevice3_GetHeight(p) (p)->lpVtbl->GetHeight(p) #define IDirect3DRMDevice3_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define IDirect3DRMDevice3_GetTrianglesDrawn(p) (p)->lpVtbl->GetTrianglesDrawn(p) #define IDirect3DRMDevice3_GetWireframeOptions(p) (p)->lpVtbl->GetWireframeOptions(p) #define IDirect3DRMDevice3_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMDevice3_GetColorModel(p) (p)->lpVtbl->GetColorModel(p) #define IDirect3DRMDevice3_GetTextureQuality(p) (p)->lpVtbl->GetTextureQuality(p) #define IDirect3DRMDevice3_GetDirect3DDevice(p,a) (p)->lpVtbl->GetDirect3DDevice(p,a) /*** IDirect3DRMDevice2 methods ***/ #define IDirect3DRMDevice3_InitFromD3D2(p,a,b) (p)->lpVtbl->InitFromD3D2(p,a,b) #define IDirect3DRMDevice3_InitFromSurface(p,a,b,c) (p)->lpVtbl->InitFromSurface(p,a,b,c) #define IDirect3DRMDevice3_SetRenderMode(p,a) (p)->lpVtbl->SetRenderMode(p,a) #define IDirect3DRMDevice3_GetRenderMode(p) (p)->lpVtbl->GetRenderMode(p) #define IDirect3DRMDevice3_GetDirect3DDevice2(p,a) (p)->lpVtbl->GetDirect3DDevice2(p,a) /*** IDirect3DRMDevice3 methods ***/ #define IDirect3DRMDevice3_FindPreferredTextureFormat(p,a,b,c) (p)->lpVtbl->FindPreferredTextureFormat(p,a,b,c) #define IDirect3DRMDevice3_RenderStateChange(p,a,b,c) (p)->lpVtbl->RenderStateChange(p,a,b,c) #define IDirect3DRMDevice3_LightStateChange(p,a,b,c) (p)->lpVtbl->LightStateChange(p,a,b,c) #define IDirect3DRMDevice3_GetStateChangeOptions(p,a,b,c) (p)->lpVtbl->GetStateChangeOptions(p,a,b,c) #define IDirect3DRMDevice3_SetStateChangeOptions(p,a,b,c) (p)->lpVtbl->SetStateChangeOptions(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMDevice3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMDevice3_AddRef(p) (p)->AddRef() #define IDirect3DRMDevice3_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMDevice3_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMDevice3_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMDevice3_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMDevice3_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMDevice3_GetAppData(p) (p)->GetAppData() #define IDirect3DRMDevice3_SetName(p,a) (p)->SetName(a) #define IDirect3DRMDevice3_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMDevice3_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMDevice methods ***/ #define IDirect3DRMDevice3_Init(p,a,b) (p)->Init(a,b) #define IDirect3DRMDevice3_InitFromD3D(p,a,b) (p)->InitFromD3D(a,b) #define IDirect3DRMDevice3_InitFromClipper(p,a,b,c,d) (p)->InitFromClipper(a,b,c,d) #define IDirect3DRMDevice3_Update(p) (p)->Update() #define IDirect3DRMDevice3_AddUpdateCallback(p,a,b) (p)->AddUpdateCallback(a,b) #define IDirect3DRMDevice3_DeleteUpdateCallback(p,a,b) (p)->DeleteUpdateCallback(a,b) #define IDirect3DRMDevice3_SetBufferCount(p,a) (p)->SetBufferCount(a) #define IDirect3DRMDevice3_GetBufferCount(p) (p)->GetBufferCount() #define IDirect3DRMDevice3_SetDither(p,a) (p)->SetDither(a) #define IDirect3DRMDevice3_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMDevice3_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMDevice3_SetTextureQuality(p,a) (p)->SetTextureQuality(a) #define IDirect3DRMDevice3_GetViewports(p,a) (p)->GetViewports(a) #define IDirect3DRMDevice3_GetDither(p) (p)->GetDither() #define IDirect3DRMDevice3_GetShades(p) (p)->GetShades() #define IDirect3DRMDevice3_GetHeight(p) (p)->GetHeight() #define IDirect3DRMDevice3_GetWidth(p) (p)->GetWidth() #define IDirect3DRMDevice3_GetTrianglesDrawn(p) (p)->GetTrianglesDrawn() #define IDirect3DRMDevice3_GetWireframeOptions(p) (p)->GetWireframeOptions() #define IDirect3DRMDevice3_GetQuality(p) (p)->GetQuality() #define IDirect3DRMDevice3_GetColorModel(p) (p)->GetColorModel() #define IDirect3DRMDevice3_GetTextureQuality(p) (p)->GetTextureQuality() #define IDirect3DRMDevice3_GetDirect3DDevice(p,a) (p)->GetDirect3DDevice(a) /*** IDirect3DRMDevice2 methods ***/ #define IDirect3DRMDevice3_InitFromD3D2(p,a,b) (p)->InitFromD3D2(a,b) #define IDirect3DRMDevice3_InitFromSurface(p,a,b,c) (p)->InitFromSurface(a,b,c) #define IDirect3DRMDevice3_SetRenderMode(p,a) (p)->SetRenderMode(a) #define IDirect3DRMDevice3_GetRenderMode(p) (p)->GetRenderMode() #define IDirect3DRMDevice3_GetDirect3DDevice2(p,a) (p)->GetDirect3DDevice2(a) /*** IDirect3DRMDevice3 methods ***/ #define IDirect3DRMDevice3_FindPreferredTextureFormat(p,a,b,c) (p)->FindPreferredTextureFormat(a,b,c) #define IDirect3DRMDevice3_RenderStateChange(p,a,b,c) (p)->RenderStateChange(a,b,c) #define IDirect3DRMDevice3_LightStateChange(p,a,b,c) (p)->LightStateChange(a,b,c) #define IDirect3DRMDevice3_GetStateChangeOptions(p,a,b,c) (p)->GetStateChangeOptions(a,b,c) #define IDirect3DRMDevice3_SetStateChangeOptions(p,a,b,c) (p)->SetStateChangeOptions(a,b,c) #endif /***************************************************************************** * IDirect3DRMViewport interface */ #define INTERFACE IDirect3DRMViewport DECLARE_INTERFACE_(IDirect3DRMViewport,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMViewport methods ***/ STDMETHOD(Init) (THIS_ IDirect3DRMDevice *device, struct IDirect3DRMFrame *camera, DWORD x, DWORD y, DWORD width, DWORD height) PURE; STDMETHOD(Clear)(THIS) PURE; STDMETHOD(Render)(THIS_ struct IDirect3DRMFrame *frame) PURE; STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE; STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE; STDMETHOD(SetField)(THIS_ D3DVALUE) PURE; STDMETHOD(SetUniformScaling)(THIS_ WINBOOL) PURE; STDMETHOD(SetCamera)(THIS_ struct IDirect3DRMFrame *camera) PURE; STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE; STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE; STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE; STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE; STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE; STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE; STDMETHOD(GetCamera)(THIS_ struct IDirect3DRMFrame **camera) PURE; STDMETHOD(GetDevice)(THIS_ IDirect3DRMDevice **device) PURE; STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE; STDMETHOD(Pick)(THIS_ LONG x, LONG y, struct IDirect3DRMPickedArray **visuals) PURE; STDMETHOD_(WINBOOL, GetUniformScaling)(THIS) PURE; STDMETHOD_(LONG, GetX)(THIS) PURE; STDMETHOD_(LONG, GetY)(THIS) PURE; STDMETHOD_(DWORD, GetWidth)(THIS) PURE; STDMETHOD_(DWORD, GetHeight)(THIS) PURE; STDMETHOD_(D3DVALUE, GetField)(THIS) PURE; STDMETHOD_(D3DVALUE, GetBack)(THIS) PURE; STDMETHOD_(D3DVALUE, GetFront)(THIS) PURE; STDMETHOD_(D3DRMPROJECTIONTYPE, GetProjection)(THIS) PURE; STDMETHOD(GetDirect3DViewport)(THIS_ IDirect3DViewport **viewport) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMViewport_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMViewport_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMViewport_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMViewport_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMViewport_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMViewport_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMViewport_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMViewport_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMViewport_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMViewport_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMViewport methods ***/ #define IDirect3DRMViewport_Init(p,a,b,c,d,e,f) (p)->lpVtbl->Init(p,a,b,c,d,e,f) #define IDirect3DRMViewport_Clear(p) (p)->lpVtbl->Clear(p) #define IDirect3DRMViewport_Render(p,a) (p)->lpVtbl->Render(p,a) #define IDirect3DRMViewport_SetFront(p,a) (p)->lpVtbl->SetFront(p,a) #define IDirect3DRMViewport_SetBack(p,a) (p)->lpVtbl->SetBack(p,a) #define IDirect3DRMViewport_SetField(p,a) (p)->lpVtbl->SetField(p,a) #define IDirect3DRMViewport_SetUniformScaling(p,a) (p)->lpVtbl->SetUniformScaling(p,a) #define IDirect3DRMViewport_SetCamera(p,a) (p)->lpVtbl->SetCamera(p,a) #define IDirect3DRMViewport_SetProjection(p,a) (p)->lpVtbl->SetProjection(p,a) #define IDirect3DRMViewport_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b) #define IDirect3DRMViewport_InverseTransform(p,a,b) (p)->lpVtbl->InverseTransform(p,a,b) #define IDirect3DRMViewport_Configure(p,a,b,c,d) (p)->lpVtbl->Configure(p,a,b,c,d) #define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d) (p)->lpVtbl->ForceUpdate(p,a,b,c,d) #define IDirect3DRMViewport_SetPlane(p,a,b,c,d) (p)->lpVtbl->SetPlane(p,a,b,c,d) #define IDirect3DRMViewport_GetCamera(p,a) (p)->lpVtbl->GetCamera(p,a) #define IDirect3DRMViewport_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DRMViewport_GetPlane(p,a,b,c,d) (p)->lpVtbl->GetPlane(p,a,b,c,d) #define IDirect3DRMViewport_Pick(p,a,b,c) (p)->lpVtbl->Pick(p,a,b,c) #define IDirect3DRMViewport_GetUniformScaling(p) (p)->lpVtbl->GetUniformScaling(p) #define IDirect3DRMViewport_GetX(p) (p)->lpVtbl->GetX(p) #define IDirect3DRMViewport_GetY(p) (p)->lpVtbl->GetY(p) #define IDirect3DRMViewport_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define IDirect3DRMViewport_GetHeight(p) (p)->lpVtbl->GetHeight(p) #define IDirect3DRMViewport_GetField(p) (p)->lpVtbl->GetField(p) #define IDirect3DRMViewport_GetBack(p) (p)->lpVtbl->GetBack(p) #define IDirect3DRMViewport_GetFront(p) (p)->lpVtbl->GetFront(p) #define IDirect3DRMViewport_GetProjection(p) (p)->lpVtbl->GetProjection(p) #define IDirect3DRMViewport_GetDirect3DViewport(p,a) (p)->lpVtbl->GetDirect3DViewport(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMViewport_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMViewport_AddRef(p) (p)->AddRef() #define IDirect3DRMViewport_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMViewport_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMViewport_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMViewport_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMViewport_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMViewport_GetAppData(p) (p)->GetAppData() #define IDirect3DRMViewport_SetName(p,a) (p)->SetName(a) #define IDirect3DRMViewport_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMViewport_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMViewport methods ***/ #define IDirect3DRMViewport_Init(p,a,b,c,d,e,f) (p)->Init(a,b,c,d,e,f) #define IDirect3DRMViewport_Clear(p) (p)->Clear() #define IDirect3DRMViewport_Render(p,a) (p)->Render(a) #define IDirect3DRMViewport_SetFront(p,a) (p)->SetFront(a) #define IDirect3DRMViewport_SetBack(p,a) (p)->SetBack(a) #define IDirect3DRMViewport_SetField(p,a) (p)->SetField(a) #define IDirect3DRMViewport_SetUniformScaling(p,a) (p)->SetUniformScaling(a) #define IDirect3DRMViewport_SetCamera(p,a) (p)->SetCamera(a) #define IDirect3DRMViewport_SetProjection(p,a) (p)->SetProjection(a) #define IDirect3DRMViewport_Transform(p,a,b) (p)->Transform(a,b) #define IDirect3DRMViewport_InverseTransform(p,a,b) (p)->InverseTransform(a,b) #define IDirect3DRMViewport_Configure(p,a,b,c,d) (p)->Configure(a,b,c,d) #define IDirect3DRMViewport_ForceUpdate(p,a,b,c,d) (p)->ForceUpdate(a,b,c,d) #define IDirect3DRMViewport_SetPlane(p,a,b,c,d) (p)->SetPlane(a,b,c,d) #define IDirect3DRMViewport_GetCamera(p,a) (p)->GetCamera(a) #define IDirect3DRMViewport_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DRMViewport_GetPlane(p,a,b,c,d) (p)->GetPlane(a,b,c,d) #define IDirect3DRMViewport_Pick(p,a,b,c) (p)->Pick(a,b,c) #define IDirect3DRMViewport_GetUniformScaling(p) (p)->GetUniformScaling() #define IDirect3DRMViewport_GetX(p) (p)->GetX() #define IDirect3DRMViewport_GetY(p) (p)->GetY() #define IDirect3DRMViewport_GetWidth(p) (p)->GetWidth() #define IDirect3DRMViewport_GetHeight(p) (p)->GetHeight() #define IDirect3DRMViewport_GetField(p) (p)->GetField() #define IDirect3DRMViewport_GetBack(p) (p)->GetBack() #define IDirect3DRMViewport_GetFront(p) (p)->GetFront() #define IDirect3DRMViewport_GetProjection(p) (p)->GetProjection() #define IDirect3DRMViewport_GetDirect3DViewport(p,a) (p)->GetDirect3DViewport(a) #endif /***************************************************************************** * IDirect3DRMViewport2 interface */ #define INTERFACE IDirect3DRMViewport2 DECLARE_INTERFACE_(IDirect3DRMViewport2,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMViewport2 methods ***/ STDMETHOD(Init) (THIS_ IDirect3DRMDevice3 *device, struct IDirect3DRMFrame3 *camera, DWORD x, DWORD y, DWORD width, DWORD height) PURE; STDMETHOD(Clear)(THIS_ DWORD flags) PURE; STDMETHOD(Render)(THIS_ struct IDirect3DRMFrame3 *frame) PURE; STDMETHOD(SetFront)(THIS_ D3DVALUE) PURE; STDMETHOD(SetBack)(THIS_ D3DVALUE) PURE; STDMETHOD(SetField)(THIS_ D3DVALUE) PURE; STDMETHOD(SetUniformScaling)(THIS_ WINBOOL) PURE; STDMETHOD(SetCamera)(THIS_ struct IDirect3DRMFrame3 *camera) PURE; STDMETHOD(SetProjection)(THIS_ D3DRMPROJECTIONTYPE) PURE; STDMETHOD(Transform)(THIS_ D3DRMVECTOR4D *d, D3DVECTOR *s) PURE; STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DRMVECTOR4D *s) PURE; STDMETHOD(Configure)(THIS_ LONG x, LONG y, DWORD width, DWORD height) PURE; STDMETHOD(ForceUpdate)(THIS_ DWORD x1, DWORD y1, DWORD x2, DWORD y2) PURE; STDMETHOD(SetPlane)(THIS_ D3DVALUE left, D3DVALUE right, D3DVALUE bottom, D3DVALUE top) PURE; STDMETHOD(GetCamera)(THIS_ struct IDirect3DRMFrame3 **camera) PURE; STDMETHOD(GetDevice)(THIS_ IDirect3DRMDevice3 **device) PURE; STDMETHOD(GetPlane)(THIS_ D3DVALUE *left, D3DVALUE *right, D3DVALUE *bottom, D3DVALUE *top) PURE; STDMETHOD(Pick)(THIS_ LONG x, LONG y, struct IDirect3DRMPickedArray **visuals) PURE; STDMETHOD_(WINBOOL, GetUniformScaling)(THIS) PURE; STDMETHOD_(LONG, GetX)(THIS) PURE; STDMETHOD_(LONG, GetY)(THIS) PURE; STDMETHOD_(DWORD, GetWidth)(THIS) PURE; STDMETHOD_(DWORD, GetHeight)(THIS) PURE; STDMETHOD_(D3DVALUE, GetField)(THIS) PURE; STDMETHOD_(D3DVALUE, GetBack)(THIS) PURE; STDMETHOD_(D3DVALUE, GetFront)(THIS) PURE; STDMETHOD_(D3DRMPROJECTIONTYPE, GetProjection)(THIS) PURE; STDMETHOD(GetDirect3DViewport)(THIS_ IDirect3DViewport **viewport) PURE; STDMETHOD(TransformVectors)(THIS_ DWORD vector_count, D3DRMVECTOR4D *dst_vectors, D3DVECTOR *src_vectors) PURE; STDMETHOD(InverseTransformVectors)(THIS_ DWORD vector_count, D3DVECTOR *dst_vectors, D3DRMVECTOR4D *src_vectors) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMViewport2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMViewport2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMViewport2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMViewport_2Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMViewport2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMViewport2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMViewport2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMViewport2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMViewport2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMViewport2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMViewport2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMViewport2 methods ***/ #define IDirect3DRMViewport2_Init(p,a,b,c,d,e,f) (p)->lpVtbl->Init(p,a,b,c,d,e,f) #define IDirect3DRMViewport2_Clear(p,a) (p)->lpVtbl->Clear(p,a) #define IDirect3DRMViewport2_Render(p,a) (p)->lpVtbl->Render(p,a) #define IDirect3DRMViewport2_SetFront(p,a) (p)->lpVtbl->SetFront(p,a) #define IDirect3DRMViewport2_SetBack(p,a) (p)->lpVtbl->SetBack(p,a) #define IDirect3DRMViewport2_SetField(p,a) (p)->lpVtbl->SetField(p,a) #define IDirect3DRMViewport2_SetUniformScaling(p,a) (p)->lpVtbl->SetUniformScaling(p,a) #define IDirect3DRMViewport2_SetCamera(p,a) (p)->lpVtbl->SetCamera(p,a) #define IDirect3DRMViewport2_SetProjection(p,a) (p)->lpVtbl->SetProjection(p,a) #define IDirect3DRMViewport2_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b) #define IDirect3DRMViewport2_InverseTransform(p,a,b) (p)->lpVtbl->InverseTransform(p,a,b) #define IDirect3DRMViewport2_Configure(p,a,b,c,d) (p)->lpVtbl->Configure(p,a,b,c,d) #define IDirect3DRMViewport2_ForceUpdate(p,a,b,c,d) (p)->lpVtbl->ForceUpdate(p,a,b,c,d) #define IDirect3DRMViewport2_SetPlane(p,a,b,c,d) (p)->lpVtbl->SetPlane(p,a,b,c,d) #define IDirect3DRMViewport2_GetCamera(p,a) (p)->lpVtbl->GetCamera(p,a) #define IDirect3DRMViewport2_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define IDirect3DRMViewport2_GetPlane(p,a,b,c,d) (p)->lpVtbl->GetPlane(p,a,b,c,d) #define IDirect3DRMViewport2_Pick(p,a,b,c) (p)->lpVtbl->Pick(p,a,b,c) #define IDirect3DRMViewport2_GetUniformScaling(p) (p)->lpVtbl->GetUniformScaling(p) #define IDirect3DRMViewport2_GetX(p) (p)->lpVtbl->GetX(p) #define IDirect3DRMViewport2_GetY(p) (p)->lpVtbl->GetY(p) #define IDirect3DRMViewport2_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define IDirect3DRMViewport2_GetHeight(p) (p)->lpVtbl->GetHeight(p) #define IDirect3DRMViewport2_GetField(p) (p)->lpVtbl->GetField(p) #define IDirect3DRMViewport2_GetBack(p) (p)->lpVtbl->GetBack(p) #define IDirect3DRMViewport2_GetFront(p) (p)->lpVtbl->GetFront(p) #define IDirect3DRMViewport2_GetProjection(p) (p)->lpVtbl->GetProjection(p) #define IDirect3DRMViewport2_GetDirect3DViewport(p,a) (p)->lpVtbl->GetDirect3DViewport(p,a) #define IDirect3DRMViewport2_TransformVectors(p,a,b,c) (p)->lpVtbl->TransformVectors(p,a,b,c) #define IDirect3DRMViewport2_InverseTransformVectors(p,a,b,c) (p)->lpVtbl->InverseTransformVectors(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMViewport2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMViewport2_AddRef(p) (p)->AddRef() #define IDirect3DRMViewport2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMViewport2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMViewport2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMViewport2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMViewport2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMViewport2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMViewport2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMViewport2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMViewport2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMViewport2 methods ***/ #define IDirect3DRMViewport2_Init(p,a,b,c,d,e,f) (p)->Init(a,b,c,d,e,f) #define IDirect3DRMViewport2_Clear(p) (p)->Clear() #define IDirect3DRMViewport2_Render(p,a) (p)->Render(a) #define IDirect3DRMViewport2_SetFront(p,a) (p)->SetFront(a) #define IDirect3DRMViewport2_SetBack(p,a) (p)->SetBack(a) #define IDirect3DRMViewport2_SetField(p,a) (p)->SetField(a) #define IDirect3DRMViewport2_SetUniformScaling(p,a) (p)->SetUniformScaling(a) #define IDirect3DRMViewport2_SetCamera(p,a) (p)->SetCamera(a) #define IDirect3DRMViewport2_SetProjection(p,a) (p)->SetProjection(a) #define IDirect3DRMViewport2_Transform(p,a,b) (p)->Transform(a,b) #define IDirect3DRMViewport2_InverseTransform(p,a,b) (p)->InverseTransform(a,b) #define IDirect3DRMViewport2_Configure(p,a,b,c,d) (p)->Configure(a,b,c,d) #define IDirect3DRMViewport2_ForceUpdate(p,a,b,c,d) (p)->ForceUpdate(a,b,c,d) #define IDirect3DRMViewport2_SetPlane(p,a,b,c,d) (p)->SetPlane(a,b,c,d) #define IDirect3DRMViewport2_GetCamera(p,a) (p)->GetCamera(a) #define IDirect3DRMViewport2_GetDevice(p,a) (p)->GetDevice(a) #define IDirect3DRMViewport2_GetPlane(p,a,b,c,d) (p)->GetPlane(a,b,c,d) #define IDirect3DRMViewport2_Pick(p,a,b,c) (p)->Pick(a,b,c) #define IDirect3DRMViewport2_GetUniformScaling(p) (p)->GetUniformScaling() #define IDirect3DRMViewport2_GetX(p) (p)->GetX() #define IDirect3DRMViewport2_GetY(p) (p)->GetY() #define IDirect3DRMViewport2_GetWidth(p) (p)->GetWidth() #define IDirect3DRMViewport2_GetHeight(p) (p)->GetHeight() #define IDirect3DRMViewport2_GetField(p) (p)->GetField() #define IDirect3DRMViewport2_GetBack(p) (p)->GetBack() #define IDirect3DRMViewport2_GetFront(p) (p)->GetFront() #define IDirect3DRMViewport2_GetProjection(p) (p)->GetProjection() #define IDirect3DRMViewport2_GetDirect3DViewport(p,a) (p)->GetDirect3DViewport(a) #define IDirect3DRMViewport2_TransformVectors(p,a,b,c) (p)->TransformVectors(a,b,c) #define IDirect3DRMViewport2_InverseTransformVectors(p,a,b,c) (p)->InverseTransformVectors(a,b,c) #endif /***************************************************************************** * IDirect3DRMFrame interface */ #define INTERFACE IDirect3DRMFrame DECLARE_INTERFACE_(IDirect3DRMFrame,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMFrame methods ***/ STDMETHOD(AddChild)(THIS_ IDirect3DRMFrame *child) PURE; STDMETHOD(AddLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK cb, void *ctx) PURE; STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE; STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(AddVisual)(THIS_ IDirect3DRMVisual *visual) PURE; STDMETHOD(GetChildren)(THIS_ struct IDirect3DRMFrameArray **children) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; STDMETHOD(GetLights)(THIS_ struct IDirect3DRMLightArray **lights) PURE; STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE; STDMETHOD(GetParent)(THIS_ IDirect3DRMFrame **parent) PURE; STDMETHOD(GetPosition)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *return_position) PURE; STDMETHOD(GetRotation)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *axis, D3DVALUE *return_theta) PURE; STDMETHOD(GetScene)(THIS_ IDirect3DRMFrame **scene) PURE; STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE; STDMETHOD(GetTexture)(THIS_ struct IDirect3DRMTexture **texture) PURE; STDMETHOD(GetTransform)(THIS_ D3DRMMATRIX4D return_matrix) PURE; STDMETHOD(GetVelocity)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *return_velocity, WINBOOL with_rotation) PURE; STDMETHOD(GetOrientation)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *dir, D3DVECTOR *up) PURE; STDMETHOD(GetVisuals)(THIS_ struct IDirect3DRMVisualArray **visuals) PURE; STDMETHOD(GetTextureTopology)(THIS_ WINBOOL *wrap_u, WINBOOL *wrap_v) PURE; STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx)PURE; STDMETHOD(LookAt)(THIS_ IDirect3DRMFrame *target, IDirect3DRMFrame *reference, D3DRMFRAMECONSTRAINT constraint) PURE; STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE; STDMETHOD(DeleteChild)(THIS_ IDirect3DRMFrame *child) PURE; STDMETHOD(DeleteLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteVisual)(THIS_ IDirect3DRMVisual *visual) PURE; STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE; STDMETHOD(GetSceneBackgroundDepth)(THIS_ IDirectDrawSurface **surface) PURE; STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE; STDMETHOD_(WINBOOL, GetSceneFogEnable)(THIS) PURE; STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE; STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end, D3DVALUE *return_density) PURE; STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetSceneBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(SetSceneBackgroundImage)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetSceneFogEnable)(THIS_ WINBOOL) PURE; STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE; STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE; STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE; STDMETHOD(SetOrientation)(THIS_ IDirect3DRMFrame *reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE; STDMETHOD(SetPosition)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetRotation)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(SetVelocity)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, WINBOOL with_rotation) PURE; STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE; STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFrame_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFrame_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFrame_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMFrame_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMFrame_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMFrame_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMFrame_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMFrame_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMFrame_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMFrame_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMFrame methods ***/ #define IDirect3DRMFrame_AddChild(p,a) (p)->lpVtbl->AddChild(p,a) #define IDirect3DRMFrame_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DRMFrame_AddMoveCallback(p,a,b) (p)->lpVtbl->AddMoveCallback(p,a,b) #define IDirect3DRMFrame_AddTransform(p,a,b) (p)->lpVtbl->AddTransform(p,a,b) #define IDirect3DRMFrame_AddTranslation(p,a,b,c,d) (p)->lpVtbl->AddTranslation(p,a,b,c,d) #define IDirect3DRMFrame_AddScale(p,a,b,c,d) (p)->lpVtbl->AddScale(p,a,b,c,d) #define IDirect3DRMFrame_AddRotation(p,a,b,c,d,e) (p)->lpVtbl->AddRotation(p,a,b,c,d,e) #define IDirect3DRMFrame_AddVisual(p,a) (p)->lpVtbl->AddVisual(p,a) #define IDirect3DRMFrame_GetChildren(p,a) (p)->lpVtbl->GetChildren(p,a) #define IDirect3DRMFrame_GetColor(p) (p)->lpVtbl->GetColor(p) #define IDirect3DRMFrame_GetLights(p,a) (p)->lpVtbl->GetLights(p,a) #define IDirect3DRMFrame_GetMaterialMode(p) (p)->lpVtbl->GetMaterialMode(p) #define IDirect3DRMFrame_GetParent(p,a) (p)->lpVtbl->GetParent(p,a) #define IDirect3DRMFrame_GetPosition(p,a,b) (p)->lpVtbl->GetPosition(p,a,b) #define IDirect3DRMFrame_GetRotation(p,a,b,c) (p)->lpVtbl->GetRotation(p,a,b,c) #define IDirect3DRMFrame_GetScene(p,a) (p)->lpVtbl->GetScene(p,a) #define IDirect3DRMFrame_GetSortMode(p) (p)->lpVtbl->GetSortMode(p) #define IDirect3DRMFrame_GetTexture(p,a) (p)->lpVtbl->GetTexture(p,a) #define IDirect3DRMFrame_GetTransform(p,a) (p)->lpVtbl->GetTransform(p,a) #define IDirect3DRMFrame_GetVelocity(p,a,b,c) (p)->lpVtbl->GetVelocity(p,a,b,c) #define IDirect3DRMFrame_GetOrientation(p,a,b,c) (p)->lpVtbl->GetOrientation(p,a,b,c) #define IDirect3DRMFrame_GetVisuals(p,a) (p)->lpVtbl->GetVisuals(p,a) #define IDirect3DRMFrame_GetTextureTopology(p,a,b) (p)->lpVtbl->GetTextureTopology(p,a,b) #define IDirect3DRMFrame_InverseTransform(p,a,b) (p)->lpVtbl->InverseTransform(p,a,b) #define IDirect3DRMFrame_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMFrame_LookAt(p,a,b,c) (p)->lpVtbl->LookAt(p,a,b,c) #define IDirect3DRMFrame_Move(p,a) (p)->lpVtbl->Move(p,a) #define IDirect3DRMFrame_DeleteChild(p,a) (p)->lpVtbl->DeleteChild(p,a) #define IDirect3DRMFrame_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DRMFrame_DeleteMoveCallback(p,a,b) (p)->lpVtbl->DeleteMoveCallback(p,a,b) #define IDirect3DRMFrame_DeleteVisual(p,a) (p)->lpVtbl->DeleteVisual(p,a) #define IDirect3DRMFrame_GetSceneBackground(p) (p)->lpVtbl->GetSceneBackground(p) #define IDirect3DRMFrame_GetSceneBackgroundDepth(p,a) (p)->lpVtbl->GetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame_GetSceneFogColor(p) (p)->lpVtbl->GetSceneFogColor(p) #define IDirect3DRMFrame_GetSceneFogEnable(p) (p)->lpVtbl->GetSceneFogEnable(p) #define IDirect3DRMFrame_GetSceneFogMode(p) (p)->lpVtbl->GetSceneFogMode(p) #define IDirect3DRMFrame_GetSceneFogParams(p,a,b,c) (p)->lpVtbl->GetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame_SetSceneBackground(p,a) (p)->lpVtbl->SetSceneBackground(p,a) #define IDirect3DRMFrame_SetSceneBackgroundRGB(p,a,b,c) (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c) #define IDirect3DRMFrame_SetSceneBackgroundDepth(p,a) (p)->lpVtbl->SetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame_SetSceneBackgroundImage(p,a) (p)->lpVtbl->SetSceneBackgroundImage(p,a) #define IDirect3DRMFrame_SetSceneFogEnable(p,a) (p)->lpVtbl->SetSceneFogEnable(p,a) #define IDirect3DRMFrame_SetSceneFogColor(p,a) (p)->lpVtbl->SetSceneFogColor(p,a) #define IDirect3DRMFrame_SetSceneFogMode(p,a) (p)->lpVtbl->SetSceneFogMode(p,a) #define IDirect3DRMFrame_SetSceneFogParams(p,a,b,c) (p)->lpVtbl->SetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMFrame_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMFrame_GetZbufferMode(p) (p)->lpVtbl->GetZbufferMode(p) #define IDirect3DRMFrame_SetMaterialMode(p,a) (p)->lpVtbl->SetMaterialMode(p,a) #define IDirect3DRMFrame_SetOrientation(p,a,b,c,d,e,f,g) (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g) #define IDirect3DRMFrame_SetPosition(p,a,b,c,d) (p)->lpVtbl->SetPosition(p,a,b,c,d) #define IDirect3DRMFrame_SetRotation(p,a,b,c,d,e) (p)->lpVtbl->SetRotation(p,a,b,c,d,e) #define IDirect3DRMFrame_SetSortMode(p,a) (p)->lpVtbl->SetSortMode(p,a) #define IDirect3DRMFrame_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMFrame_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMFrame_SetVelocity(p,a,b,c,d,e) (p)->lpVtbl->SetVelocity(p,a,b,c,d,e) #define IDirect3DRMFrame_SetZbufferMode(p,a) (p)->lpVtbl->SetZbufferMode(p,a) #define IDirect3DRMFrame_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMFrame_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFrame_AddRef(p) (p)->AddRef() #define IDirect3DRMFrame_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMFrame_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMFrame_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMFrame_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMFrame_GetAppData(p) (p)->GetAppData() #define IDirect3DRMFrame_SetName(p,a) (p)->SetName(a) #define IDirect3DRMFrame_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMFrame_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMFrame methods ***/ #define IDirect3DRMFrame_AddChild(p,a) (p)->AddChild(a) #define IDirect3DRMFrame_AddLight(p,a) (p)->AddLight(a) #define IDirect3DRMFrame_AddMoveCallback(p,a,b) (p)->AddMoveCallback(a,b) #define IDirect3DRMFrame_AddTransform(p,a,b) (p)->AddTransform(a,b) #define IDirect3DRMFrame_AddTranslation(p,a,b,c,d) (p)->AddTranslation(a,b,c,d) #define IDirect3DRMFrame_AddScale(p,a,b,c,d) (p)->AddScale(a,b,c,d) #define IDirect3DRMFrame_AddRotation(p,a,b,c,d,e) (p)->AddRotation(a,b,c,d,e) #define IDirect3DRMFrame_AddVisual(p,a) (p)->AddVisual(a) #define IDirect3DRMFrame_GetChildren(p,a) (p)->GetChildren(a) #define IDirect3DRMFrame_GetColor(p) (p)->GetColor() #define IDirect3DRMFrame_GetLights(p,a) (p)->GetLights(a) #define IDirect3DRMFrame_GetMaterialMode(p) (p)->GetMaterialMode() #define IDirect3DRMFrame_GetParent(p,a) (p)->GetParent(a) #define IDirect3DRMFrame_GetPosition(p,a,b) (p)->GetPosition(a,b) #define IDirect3DRMFrame_GetRotation(p,a,b,c) (p)->GetRotation(a,b,c) #define IDirect3DRMFrame_GetScene(p,a) (p)->GetScene(a) #define IDirect3DRMFrame_GetSortMode(p) (p)->GetSortMode() #define IDirect3DRMFrame_GetTexture(p,a) (p)->GetTexture(a) #define IDirect3DRMFrame_GetTransform(p,a) (p)->GetTransform(a) #define IDirect3DRMFrame_GetVelocity(p,a,b,c) (p)->GetVelocity(a,b,c) #define IDirect3DRMFrame_GetOrientation(p,a,b,c) (p)->GetOrientation(a,b,c) #define IDirect3DRMFrame_GetVisuals(p,a) (p)->GetVisuals(a) #define IDirect3DRMFrame_GetTextureTopology(p,a,b) (p)->GetTextureTopology(a,b) #define IDirect3DRMFrame_InverseTransform(p,a,b) (p)->InverseTransform(a,b) #define IDirect3DRMFrame_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMFrame_LookAt(p,a,b,c) (p)->LookAt(a,b,c) #define IDirect3DRMFrame_Move(p,a) (p)->Move(a) #define IDirect3DRMFrame_DeleteChild(p,a) (p)->DeleteChild(a) #define IDirect3DRMFrame_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DRMFrame_DeleteMoveCallback(p,a,b) (p)->DeleteMoveCallback(a,b) #define IDirect3DRMFrame_DeleteVisual(p,a) (p)->DeleteVisual(a) #define IDirect3DRMFrame_GetSceneBackground(p) (p)->GetSceneBackground() #define IDirect3DRMFrame_GetSceneBackgroundDepth(p,a) (p)->GetSceneBackgroundDepth(a) #define IDirect3DRMFrame_GetSceneFogColor(p) (p)->GetSceneFogColor() #define IDirect3DRMFrame_GetSceneFogEnable(p) (p)->GetSceneFogEnable() #define IDirect3DRMFrame_GetSceneFogMode(p) (p)->GetSceneFogMode() #define IDirect3DRMFrame_GetSceneFogParams(p,a,b,c) (p)->GetSceneFogParams(a,b,c) #define IDirect3DRMFrame_SetSceneBackground(p,a) (p)->SetSceneBackground(a) #define IDirect3DRMFrame_SetSceneBackgroundRGB(p,a,b,c) (p)->SetSceneBackgroundRGB(a,b,c) #define IDirect3DRMFrame_SetSceneBackgroundDepth(p,a) (p)->SetSceneBackgroundDepth(a) #define IDirect3DRMFrame_SetSceneBackgroundImage(p,a) (p)->SetSceneBackgroundImage(a) #define IDirect3DRMFrame_SetSceneFogEnable(p,a) (p)->SetSceneFogEnable(a) #define IDirect3DRMFrame_SetSceneFogColor(p,a) (p)->SetSceneFogColor(a) #define IDirect3DRMFrame_SetSceneFogMode(p,a) (p)->SetSceneFogMode(a) #define IDirect3DRMFrame_SetSceneFogParams(p,a,b,c) (p)->SetSceneFogParams(a,b,c) #define IDirect3DRMFrame_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMFrame_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMFrame_GetZbufferMode(p) (p)->GetZbufferMode() #define IDirect3DRMFrame_SetMaterialMode(p,a) (p)->SetMaterialMode(a) #define IDirect3DRMFrame_SetOrientation(p,a,b,c,d,e,f,g) (p)->SetOrientation(a,b,c,d,e,f,g) #define IDirect3DRMFrame_SetPosition(p,a,b,c,d) (p)->SetPosition(a,b,c,d) #define IDirect3DRMFrame_SetRotation(p,a,b,c,d,e) (p)->SetRotation(a,b,c,d,e) #define IDirect3DRMFrame_SetSortMode(p,a) (p)->SetSortMode(a) #define IDirect3DRMFrame_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMFrame_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMFrame_SetVelocity(p,a,b,c,d,e) (p)->SetVelocity(a,b,c,d,e) #define IDirect3DRMFrame_SetZbufferMode(p,a) (p)->SetZbufferMode(a) #define IDirect3DRMFrame_Transform(p,a,b) (p)->Transform(a,b) #endif /***************************************************************************** * IDirect3DRMFrame2 interface */ #define INTERFACE IDirect3DRMFrame2 DECLARE_INTERFACE_(IDirect3DRMFrame2,IDirect3DRMFrame) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMFrame methods ***/ STDMETHOD(AddChild)(THIS_ IDirect3DRMFrame *child) PURE; STDMETHOD(AddLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK cb, void *ctx) PURE; STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE; STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(AddVisual)(THIS_ IDirect3DRMVisual *visual) PURE; STDMETHOD(GetChildren)(THIS_ struct IDirect3DRMFrameArray **children) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; STDMETHOD(GetLights)(THIS_ struct IDirect3DRMLightArray **lights) PURE; STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE; STDMETHOD(GetParent)(THIS_ IDirect3DRMFrame **parent) PURE; STDMETHOD(GetPosition)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *return_position) PURE; STDMETHOD(GetRotation)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *axis, D3DVALUE *return_theta) PURE; STDMETHOD(GetScene)(THIS_ IDirect3DRMFrame **scene) PURE; STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE; STDMETHOD(GetTexture)(THIS_ struct IDirect3DRMTexture **texture) PURE; STDMETHOD(GetTransform)(THIS_ D3DRMMATRIX4D return_matrix) PURE; STDMETHOD(GetVelocity)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *return_velocity, WINBOOL with_rotation) PURE; STDMETHOD(GetOrientation)(THIS_ IDirect3DRMFrame *reference, D3DVECTOR *dir, D3DVECTOR *up) PURE; STDMETHOD(GetVisuals)(THIS_ struct IDirect3DRMVisualArray **visuals) PURE; STDMETHOD(GetTextureTopology)(THIS_ WINBOOL *wrap_u, WINBOOL *wrap_v) PURE; STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx)PURE; STDMETHOD(LookAt)(THIS_ IDirect3DRMFrame *target, IDirect3DRMFrame *reference, D3DRMFRAMECONSTRAINT constraint) PURE; STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE; STDMETHOD(DeleteChild)(THIS_ IDirect3DRMFrame *child) PURE; STDMETHOD(DeleteLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAMEMOVECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteVisual)(THIS_ IDirect3DRMVisual *visual) PURE; STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE; STDMETHOD(GetSceneBackgroundDepth)(THIS_ IDirectDrawSurface **surface) PURE; STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE; STDMETHOD_(WINBOOL, GetSceneFogEnable)(THIS) PURE; STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE; STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end, D3DVALUE *return_density) PURE; STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetSceneBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(SetSceneBackgroundImage)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetSceneFogEnable)(THIS_ WINBOOL) PURE; STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE; STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE; STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE; STDMETHOD(SetOrientation)(THIS_ IDirect3DRMFrame *reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE; STDMETHOD(SetPosition)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetRotation)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(SetVelocity)(THIS_ IDirect3DRMFrame *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, WINBOOL with_rotation) PURE; STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE; STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; /*** IDirect3DRMFrame2 methods ***/ STDMETHOD(AddMoveCallback2)(THIS_ D3DRMFRAMEMOVECALLBACK cb, void *ctx, DWORD flags) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD_(WINBOOL, GetBoxEnable)(THIS) PURE; STDMETHOD(GetAxes)(THIS_ D3DVECTOR *dir, D3DVECTOR *up); STDMETHOD(GetMaterial)(THIS_ struct IDirect3DRMMaterial **material) PURE; STDMETHOD_(WINBOOL, GetInheritAxes)(THIS); STDMETHOD(GetHierarchyBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD(SetBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD(SetBoxEnable)(THIS_ WINBOOL) PURE; STDMETHOD(SetAxes)(THIS_ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz); STDMETHOD(SetInheritAxes)(THIS_ WINBOOL inherit_from_parent); STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial *material) PURE; STDMETHOD(SetQuaternion)(THIS_ IDirect3DRMFrame *reference, D3DRMQUATERNION *q) PURE; STDMETHOD(RayPick)(THIS_ IDirect3DRMFrame *reference, D3DRMRAY *ray, DWORD flags, struct IDirect3DRMPicked2Array **return_visuals) PURE; STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT format, D3DRMSAVEOPTIONS flags); }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFrame2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFrame2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFrame2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMFrame2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMFrame2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMFrame2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMFrame2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMFrame2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMFrame2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMFrame2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMFrame methods ***/ #define IDirect3DRMFrame2_AddChild(p,a) (p)->lpVtbl->AddChild(p,a) #define IDirect3DRMFrame2_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DRMFrame2_AddMoveCallback(p,a,b) (p)->lpVtbl->AddMoveCallback(p,a,b) #define IDirect3DRMFrame2_AddTransform(p,a,b) (p)->lpVtbl->AddTransform(p,a,b) #define IDirect3DRMFrame2_AddTranslation(p,a,b,c,d) (p)->lpVtbl->AddTranslation(p,a,b,c,d) #define IDirect3DRMFrame2_AddScale(p,a,b,c,d) (p)->lpVtbl->AddScale(p,a,b,c,d) #define IDirect3DRMFrame2_AddRotation(p,a,b,c,d,e) (p)->lpVtbl->AddRotation(p,a,b,c,d,e) #define IDirect3DRMFrame2_AddVisual(p,a) (p)->lpVtbl->AddVisual(p,a) #define IDirect3DRMFrame2_GetChildren(p,a) (p)->lpVtbl->GetChildren(p,a) #define IDirect3DRMFrame2_GetColor(p) (p)->lpVtbl->GetColor(p) #define IDirect3DRMFrame2_GetLights(p,a) (p)->lpVtbl->GetLights(p,a) #define IDirect3DRMFrame2_GetMaterialMode(p) (p)->lpVtbl->GetMaterialMode(p) #define IDirect3DRMFrame2_GetParent(p,a) (p)->lpVtbl->GetParent(p,a) #define IDirect3DRMFrame2_GetPosition(p,a,b) (p)->lpVtbl->GetPosition(p,a,b) #define IDirect3DRMFrame2_GetRotation(p,a,b,c) (p)->lpVtbl->GetRotation(p,a,b,c) #define IDirect3DRMFrame2_GetScene(p,a) (p)->lpVtbl->GetScene(p,a) #define IDirect3DRMFrame2_GetSortMode(p) (p)->lpVtbl->GetSortMode(p) #define IDirect3DRMFrame2_GetTexture(p,a) (p)->lpVtbl->GetTexture(p,a) #define IDirect3DRMFrame2_GetTransform(p,a) (p)->lpVtbl->GetTransform(p,a) #define IDirect3DRMFrame2_GetVelocity(p,a,b,c) (p)->lpVtbl->GetVelocity(p,a,b,c) #define IDirect3DRMFrame2_GetOrientation(p,a,b,c) (p)->lpVtbl->GetOrientation(p,a,b,c) #define IDirect3DRMFrame2_GetVisuals(p,a) (p)->lpVtbl->GetVisuals(p,a) #define IDirect3DRMFrame2_GetTextureTopology(p,a,b) (p)->lpVtbl->GetTextureTopology(p,a,b) #define IDirect3DRMFrame2_InverseTransform(p,a,b) (p)->lpVtbl->InverseTransform(p,a,b) #define IDirect3DRMFrame2_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMFrame2_LookAt(p,a,b,c) (p)->lpVtbl->LookAt(p,a,b,c) #define IDirect3DRMFrame2_Move(p,a) (p)->lpVtbl->Move(p,a) #define IDirect3DRMFrame2_DeleteChild(p,a) (p)->lpVtbl->DeleteChild(p,a) #define IDirect3DRMFrame2_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DRMFrame2_DeleteMoveCallback(p,a,b) (p)->lpVtbl->DeleteMoveCallback(p,a,b) #define IDirect3DRMFrame2_DeleteVisual(p,a) (p)->lpVtbl->DeleteVisual(p,a) #define IDirect3DRMFrame2_GetSceneBackground(p) (p)->lpVtbl->GetSceneBackground(p) #define IDirect3DRMFrame2_GetSceneBackgroundDepth(p,a) (p)->lpVtbl->GetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame2_GetSceneFogColor(p) (p)->lpVtbl->GetSceneFogColor(p) #define IDirect3DRMFrame2_GetSceneFogEnable(p) (p)->lpVtbl->GetSceneFogEnable(p) #define IDirect3DRMFrame2_GetSceneFogMode(p) (p)->lpVtbl->GetSceneFogMode(p) #define IDirect3DRMFrame2_GetSceneFogParams(p,a,b,c) (p)->lpVtbl->GetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame2_SetSceneBackground(p,a) (p)->lpVtbl->SetSceneBackground(p,a) #define IDirect3DRMFrame2_SetSceneBackgroundRGB(p,a,b,c) (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c) #define IDirect3DRMFrame2_SetSceneBackgroundDepth(p,a) (p)->lpVtbl->SetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame2_SetSceneBackgroundImage(p,a) (p)->lpVtbl->SetSceneBackgroundImage(p,a) #define IDirect3DRMFrame2_SetSceneFogEnable(p,a) (p)->lpVtbl->SetSceneFogEnable(p,a) #define IDirect3DRMFrame2_SetSceneFogColor(p,a) (p)->lpVtbl->SetSceneFogColor(p,a) #define IDirect3DRMFrame2_SetSceneFogMode(p,a) (p)->lpVtbl->SetSceneFogMode(p,a) #define IDirect3DRMFrame2_SetSceneFogParams(p,a,b,c) (p)->lpVtbl->SetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame2_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMFrame2_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMFrame2_GetZbufferMode(p) (p)->lpVtbl->GetZbufferMode(p) #define IDirect3DRMFrame2_SetMaterialMode(p,a) (p)->lpVtbl->SetMaterialMode(p,a) #define IDirect3DRMFrame2_SetOrientation(p,a,b,c,d,e,f,g) (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g) #define IDirect3DRMFrame2_SetPosition(p,a,b,c,d) (p)->lpVtbl->SetPosition(p,a,b,c,d) #define IDirect3DRMFrame2_SetRotation(p,a,b,c,d,e) (p)->lpVtbl->SetRotation(p,a,b,c,d,e) #define IDirect3DRMFrame2_SetSortMode(p,a) (p)->lpVtbl->SetSortMode(p,a) #define IDirect3DRMFrame2_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMFrame2_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMFrame2_SetVelocity(p,a,b,c,d,e) (p)->lpVtbl->SetVelocity(p,a,b,c,d,e) #define IDirect3DRMFrame2_SetZbufferMode(p,a) (p)->lpVtbl->SetZbufferMode(p,a) #define IDirect3DRMFrame2_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b) /*** IDirect3DRMFrame2 methods ***/ #define IDirect3DRMFrame2_AddMoveCallback2(p,a,b,c) (p)->lpVtbl->AddMoveCallback2(p,a,b,c) #define IDirect3DRMFrame2_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMFrame2_GetBoxEnable(p) (p)->lpVtbl->GetBoxEnable(p) #define IDirect3DRMFrame2_GetAxes(p,a,b) (p)->lpVtbl->GetAxes(p,a,b) #define IDirect3DRMFrame2_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DRMFrame2_GetInheritAxes(p,a,b) (p)->lpVtbl->GetInheritAxes(p,a,b) #define IDirect3DRMFrame2_GetHierarchyBox(p,a) (p)->lpVtbl->GetHierarchyBox(p,a) #define IDirect3DRMFrame2_SetBox(p,a) (p)->lpVtbl->SetBox(p,a) #define IDirect3DRMFrame2_SetBoxEnable(p,a) (p)->lpVtbl->SetBoxEnable(p,a) #define IDirect3DRMFrame2_SetAxes(p,a,b,c,d,e,f) (p)->lpVtbl->SetAxes(p,a,b,c,d,e,f) #define IDirect3DRMFrame2_SetInheritAxes(p,a) (p)->lpVtbl->SetInheritAxes(p,a) #define IDirect3DRMFrame2_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMFrame2_SetQuaternion(p,a,b) (p)->lpVtbl->SetQuaternion(p,a,b) #define IDirect3DRMFrame2_RayPick(p,a,b,c,d) (p)->lpVtbl->RayPick(p,a,b,c,d) #define IDirect3DRMFrame2_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMFrame2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFrame2_AddRef(p) (p)->AddRef() #define IDirect3DRMFrame2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMFrame2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMFrame2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMFrame2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMFrame2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMFrame2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMFrame2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMFrame2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMFrame methods ***/ #define IDirect3DRMFrame2_AddChild(p,a) (p)->AddChild(a) #define IDirect3DRMFrame2_AddLight(p,a) (p)->AddLight(a) #define IDirect3DRMFrame2_AddMoveCallback(p,a,b) (p)->AddMoveCallback(a,b) #define IDirect3DRMFrame2_AddTransform(p,a,b) (p)->AddTransform(a,b) #define IDirect3DRMFrame2_AddTranslation(p,a,b,c,d) (p)->AddTranslation(a,b,c,d) #define IDirect3DRMFrame2_AddScale(p,a,b,c,d) (p)->AddScale(a,b,c,d) #define IDirect3DRMFrame2_AddRotation(p,a,b,c,d,e) (p)->AddRotation(a,b,c,d,e) #define IDirect3DRMFrame2_AddVisual(p,a) (p)->AddVisual(a) #define IDirect3DRMFrame2_GetChildren(p,a) (p)->GetChildren(a) #define IDirect3DRMFrame2_GetColor(p) (p)->GetColor() #define IDirect3DRMFrame2_GetLights(p,a) (p)->GetLights(a) #define IDirect3DRMFrame2_GetMaterialMode(p) (p)->GetMaterialMode() #define IDirect3DRMFrame2_GetParent(p,a) (p)->GetParent(a) #define IDirect3DRMFrame2_GetPosition(p,a,b) (p)->GetPosition(a,b) #define IDirect3DRMFrame2_GetRotation(p,a,b,c) (p)->GetRotation(a,b,c) #define IDirect3DRMFrame2_GetScene(p,a) (p)->GetScene(a) #define IDirect3DRMFrame2_GetSortMode(p) (p)->GetSortMode() #define IDirect3DRMFrame2_GetTexture(p,a) (p)->GetTexture(a) #define IDirect3DRMFrame2_GetTransform(p,a) (p)->GetTransform(a) #define IDirect3DRMFrame2_GetVelocity(p,a,b,c) (p)->GetVelocity(a,b,c) #define IDirect3DRMFrame2_GetOrientation(p,a,b,c) (p)->GetOrientation(a,b,c) #define IDirect3DRMFrame2_GetVisuals(p,a) (p)->GetVisuals(a) #define IDirect3DRMFrame2_GetTextureTopology(p,a,b) (p)->GetTextureTopology(a,b) #define IDirect3DRMFrame2_InverseTransform(p,a,b) (p)->InverseTransform(a,b) #define IDirect3DRMFrame2_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMFrame2_LookAt(p,a,b,c) (p)->LookAt(a,b,c) #define IDirect3DRMFrame2_Move(p,a) (p)->Move(a) #define IDirect3DRMFrame2_DeleteChild(p,a) (p)->DeleteChild(a) #define IDirect3DRMFrame2_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DRMFrame2_DeleteMoveCallback(p,a,b) (p)->DeleteMoveCallback(a,b) #define IDirect3DRMFrame2_DeleteVisual(p,a) (p)->DeleteVisual(a) #define IDirect3DRMFrame2_GetSceneBackground(p) (p)->GetSceneBackground() #define IDirect3DRMFrame2_GetSceneBackgroundDepth(p,a) (p)->GetSceneBackgroundDepth(a) #define IDirect3DRMFrame2_GetSceneFogColor(p) (p)->GetSceneFogColor() #define IDirect3DRMFrame2_GetSceneFogEnable(p) (p)->GetSceneFogEnable() #define IDirect3DRMFrame2_GetSceneFogMode(p) (p)->GetSceneFogMode() #define IDirect3DRMFrame2_GetSceneFogParams(p,a,b,c) (p)->GetSceneFogParams(a,b,c) #define IDirect3DRMFrame2_SetSceneBackground(p,a) (p)->SetSceneBackground(a) #define IDirect3DRMFrame2_SetSceneBackgroundRGB(p,a,b,c) (p)->SetSceneBackgroundRGB(a,b,c) #define IDirect3DRMFrame2_SetSceneBackgroundDepth(p,a) (p)->SetSceneBackgroundDepth(a) #define IDirect3DRMFrame2_SetSceneBackgroundImage(p,a) (p)->SetSceneBackgroundImage(a) #define IDirect3DRMFrame2_SetSceneFogEnable(p,a) (p)->SetSceneFogEnable(a) #define IDirect3DRMFrame2_SetSceneFogColor(p,a) (p)->SetSceneFogColor(a) #define IDirect3DRMFrame2_SetSceneFogMode(p,a) (p)->SetSceneFogMode(a) #define IDirect3DRMFrame2_SetSceneFogParams(p,a,b,c) (p)->SetSceneFogParams(a,b,c) #define IDirect3DRMFrame2_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMFrame2_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMFrame2_GetZbufferMode(p) (p)->GetZbufferMode() #define IDirect3DRMFrame2_SetMaterialMode(p,a) (p)->SetMaterialMode(a) #define IDirect3DRMFrame2_SetOrientation(p,a,b,c,d,e,f,g) (p)->SetOrientation(a,b,c,d,e,f,g) #define IDirect3DRMFrame2_SetPosition(p,a,b,c,d) (p)->SetPosition(a,b,c,d) #define IDirect3DRMFrame2_SetRotation(p,a,b,c,d,e) (p)->SetRotation(a,b,c,d,e) #define IDirect3DRMFrame2_SetSortMode(p,a) (p)->SetSortMode(a) #define IDirect3DRMFrame2_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMFrame2_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMFrame2_SetVelocity(p,a,b,c,d,e) (p)->SetVelocity(a,b,c,d,e) #define IDirect3DRMFrame2_SetZbufferMode(p,a) (p)->SetZbufferMode(a) #define IDirect3DRMFrame2_Transform(p,a,b) (p)->Transform(a,b) /*** IDirect3DRMFrame2 methods ***/ #define IDirect3DRMFrame2_AddMoveCallback2(p,a,b,c) (p)->AddMoveCallback2(a,b,c) #define IDirect3DRMFrame2_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMFrame2_GetBoxEnable(p) (p)->GetBoxEnable() #define IDirect3DRMFrame2_GetAxes(p,a,b) (p)->GetAxes(a,b) #define IDirect3DRMFrame2_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DRMFrame2_GetInheritAxes(p,a,b) (p)->GetInheritAxes(a,b) #define IDirect3DRMFrame2_GetHierarchyBox(p,a) (p)->GetHierarchyBox(a) #define IDirect3DRMFrame2_SetBox(p,a) (p)->SetBox(a) #define IDirect3DRMFrame2_SetBoxEnable(p,a) (p)->SetBoxEnable(a) #define IDirect3DRMFrame2_SetAxes(p,a,b,c,d,e,f) (p)->SetAxes(a,b,c,d,e,f) #define IDirect3DRMFrame2_SetInheritAxes(p,a) (p)->SetInheritAxes(a) #define IDirect3DRMFrame2_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMFrame2_SetQuaternion(p,a,b) (p)->SetQuaternion(a,b) #define IDirect3DRMFrame2_RayPick(p,a,b,c,d) (p)->RayPick(a,b,c,d) #define IDirect3DRMFrame2_Save(p,a,b,c) (p)->Save(a,b,c) #endif /***************************************************************************** * IDirect3DRMFrame3 interface */ #define INTERFACE IDirect3DRMFrame3 DECLARE_INTERFACE_(IDirect3DRMFrame3,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMFrame3 methods ***/ STDMETHOD(AddChild)(THIS_ IDirect3DRMFrame3 *child) PURE; STDMETHOD(AddLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(AddMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK cb, void *ctx, DWORD flags) PURE; STDMETHOD(AddTransform)(THIS_ D3DRMCOMBINETYPE, D3DRMMATRIX4D) PURE; STDMETHOD(AddTranslation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddScale)(THIS_ D3DRMCOMBINETYPE, D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(AddRotation)(THIS_ D3DRMCOMBINETYPE, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(AddVisual)(THIS_ IUnknown *visual) PURE; STDMETHOD(GetChildren)(THIS_ struct IDirect3DRMFrameArray **children) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; STDMETHOD(GetLights)(THIS_ struct IDirect3DRMLightArray **lights) PURE; STDMETHOD_(D3DRMMATERIALMODE, GetMaterialMode)(THIS) PURE; STDMETHOD(GetParent)(THIS_ IDirect3DRMFrame3 **parent) PURE; STDMETHOD(GetPosition)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *return_position) PURE; STDMETHOD(GetRotation)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *axis, D3DVALUE *return_theta) PURE; STDMETHOD(GetScene)(THIS_ IDirect3DRMFrame3 **scene) PURE; STDMETHOD_(D3DRMSORTMODE, GetSortMode)(THIS) PURE; STDMETHOD(GetTexture)(THIS_ struct IDirect3DRMTexture3 **texture) PURE; STDMETHOD(GetTransform)(THIS_ IDirect3DRMFrame3 *reference, D3DRMMATRIX4D matrix) PURE; STDMETHOD(GetVelocity)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *return_velocity, WINBOOL with_rotation) PURE; STDMETHOD(GetOrientation)(THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *dir, D3DVECTOR *up) PURE; STDMETHOD(GetVisuals)(THIS_ DWORD *count, IUnknown **visuals) PURE; STDMETHOD(InverseTransform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURE3CALLBACK cb, void *ctx) PURE; STDMETHOD(LookAt)(THIS_ IDirect3DRMFrame3 *target, IDirect3DRMFrame3 *reference, D3DRMFRAMECONSTRAINT constraint) PURE; STDMETHOD(Move)(THIS_ D3DVALUE delta) PURE; STDMETHOD(DeleteChild)(THIS_ IDirect3DRMFrame3 *child) PURE; STDMETHOD(DeleteLight)(THIS_ struct IDirect3DRMLight *light) PURE; STDMETHOD(DeleteMoveCallback)(THIS_ D3DRMFRAME3MOVECALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteVisual)(THIS_ IUnknown *visual) PURE; STDMETHOD_(D3DCOLOR, GetSceneBackground)(THIS) PURE; STDMETHOD(GetSceneBackgroundDepth)(THIS_ IDirectDrawSurface **surface) PURE; STDMETHOD_(D3DCOLOR, GetSceneFogColor)(THIS) PURE; STDMETHOD_(WINBOOL, GetSceneFogEnable)(THIS) PURE; STDMETHOD_(D3DRMFOGMODE, GetSceneFogMode)(THIS) PURE; STDMETHOD(GetSceneFogParams)(THIS_ D3DVALUE *return_start, D3DVALUE *return_end, D3DVALUE *return_density) PURE; STDMETHOD(SetSceneBackground)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneBackgroundRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetSceneBackgroundDepth)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(SetSceneBackgroundImage)(THIS_ struct IDirect3DRMTexture3 *texture) PURE; STDMETHOD(SetSceneFogEnable)(THIS_ WINBOOL) PURE; STDMETHOD(SetSceneFogColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetSceneFogMode)(THIS_ D3DRMFOGMODE) PURE; STDMETHOD(SetSceneFogParams)(THIS_ D3DVALUE start, D3DVALUE end, D3DVALUE density) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD_(D3DRMZBUFFERMODE, GetZbufferMode)(THIS) PURE; STDMETHOD(SetMaterialMode)(THIS_ D3DRMMATERIALMODE) PURE; STDMETHOD(SetOrientation)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz) PURE; STDMETHOD(SetPosition)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetRotation)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, D3DVALUE theta) PURE; STDMETHOD(SetSortMode)(THIS_ D3DRMSORTMODE) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture3 *texture) PURE; STDMETHOD(SetVelocity)(THIS_ IDirect3DRMFrame3 *reference, D3DVALUE x, D3DVALUE y, D3DVALUE z, WINBOOL with_rotation) PURE; STDMETHOD(SetZbufferMode)(THIS_ D3DRMZBUFFERMODE) PURE; STDMETHOD(Transform)(THIS_ D3DVECTOR *d, D3DVECTOR *s) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD_(WINBOOL, GetBoxEnable)(THIS) PURE; STDMETHOD(GetAxes)(THIS_ D3DVECTOR *dir, D3DVECTOR *up); STDMETHOD(GetMaterial)(THIS_ struct IDirect3DRMMaterial2 **material) PURE; STDMETHOD_(WINBOOL, GetInheritAxes)(THIS); STDMETHOD(GetHierarchyBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD(SetBox)(THIS_ D3DRMBOX *box) PURE; STDMETHOD(SetBoxEnable)(THIS_ WINBOOL) PURE; STDMETHOD(SetAxes)(THIS_ D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz); STDMETHOD(SetInheritAxes)(THIS_ WINBOOL inherit_from_parent); STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial2 *material) PURE; STDMETHOD(SetQuaternion)(THIS_ IDirect3DRMFrame3 *reference, D3DRMQUATERNION *q) PURE; STDMETHOD(RayPick)(THIS_ IDirect3DRMFrame3 *reference, D3DRMRAY *ray, DWORD flags, struct IDirect3DRMPicked2Array **return_visuals) PURE; STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT format, D3DRMSAVEOPTIONS flags); STDMETHOD(TransformVectors)(THIS_ IDirect3DRMFrame3 *reference, DWORD vector_count, D3DVECTOR *dst_vectors, D3DVECTOR *src_vectors) PURE; STDMETHOD(InverseTransformVectors)(THIS_ IDirect3DRMFrame3 *reference, DWORD vector_count, D3DVECTOR *dst_vectors, D3DVECTOR *src_vectors) PURE; STDMETHOD(SetTraversalOptions)(THIS_ DWORD flags) PURE; STDMETHOD(GetTraversalOptions)(THIS_ DWORD *flags) PURE; STDMETHOD(SetSceneFogMethod)(THIS_ DWORD flags) PURE; STDMETHOD(GetSceneFogMethod)(THIS_ DWORD *fog_mode) PURE; STDMETHOD(SetMaterialOverride)(THIS_ D3DRMMATERIALOVERRIDE *override) PURE; STDMETHOD(GetMaterialOverride)(THIS_ D3DRMMATERIALOVERRIDE *override) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFrame3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFrame3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFrame3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame3_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMFrame3_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMFrame3_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMFrame3_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMFrame3_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMFrame3_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMFrame3_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMFrame3_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMFrame3 methods ***/ #define IDirect3DRMFrame3_AddChild(p,a) (p)->lpVtbl->AddChild(p,a) #define IDirect3DRMFrame3_AddLight(p,a) (p)->lpVtbl->AddLight(p,a) #define IDirect3DRMFrame3_AddMoveCallback(p,a,b,c) (p)->lpVtbl->AddMoveCallback(p,a,b,c) #define IDirect3DRMFrame3_AddTransform(p,a,b) (p)->lpVtbl->AddTransform(p,a,b) #define IDirect3DRMFrame3_AddTranslation(p,a,b,c,d) (p)->lpVtbl->AddTranslation(p,a,b,c,d) #define IDirect3DRMFrame3_AddScale(p,a,b,c,d) (p)->lpVtbl->AddScale(p,a,b,c,d) #define IDirect3DRMFrame3_AddRotation(p,a,b,c,d,e) (p)->lpVtbl->AddRotation(p,a,b,c,d,e) #define IDirect3DRMFrame3_AddVisual(p,a) (p)->lpVtbl->AddVisual(p,a) #define IDirect3DRMFrame3_GetChildren(p,a) (p)->lpVtbl->GetChildren(p,a) #define IDirect3DRMFrame3_GetColor(p) (p)->lpVtbl->GetColor(p) #define IDirect3DRMFrame3_GetLights(p,a) (p)->lpVtbl->GetLights(p,a) #define IDirect3DRMFrame3_GetMaterialMode(p) (p)->lpVtbl->GetMaterialMode(p) #define IDirect3DRMFrame3_GetParent(p,a) (p)->lpVtbl->GetParent(p,a) #define IDirect3DRMFrame3_GetPosition(p,a,b) (p)->lpVtbl->GetPosition(p,a,b) #define IDirect3DRMFrame3_GetRotation(p,a,b,c) (p)->lpVtbl->GetRotation(p,a,b,c) #define IDirect3DRMFrame3_GetScene(p,a) (p)->lpVtbl->GetScene(p,a) #define IDirect3DRMFrame3_GetSortMode(p) (p)->lpVtbl->GetSortMode(p) #define IDirect3DRMFrame3_GetTexture(p,a) (p)->lpVtbl->GetTexture(p,a) #define IDirect3DRMFrame3_GetTransform(p,a,b) (p)->lpVtbl->GetTransform(p,a,b) #define IDirect3DRMFrame3_GetVelocity(p,a,b,c) (p)->lpVtbl->GetVelocity(p,a,b,c) #define IDirect3DRMFrame3_GetOrientation(p,a,b,c) (p)->lpVtbl->GetOrientation(p,a,b,c) #define IDirect3DRMFrame3_GetVisuals(p,a,b) (p)->lpVtbl->GetVisuals(p,a,b) #define IDirect3DRMFrame3_InverseTransform(p,a,b) (p)->lpVtbl->InverseTransform(p,a,b) #define IDirect3DRMFrame3_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMFrame3_LookAt(p,a,b,c) (p)->lpVtbl->LookAt(p,a,b,c) #define IDirect3DRMFrame3_Move(p,a) (p)->lpVtbl->Move(p,a) #define IDirect3DRMFrame3_DeleteChild(p,a) (p)->lpVtbl->DeleteChild(p,a) #define IDirect3DRMFrame3_DeleteLight(p,a) (p)->lpVtbl->DeleteLight(p,a) #define IDirect3DRMFrame3_DeleteMoveCallback(p,a,b) (p)->lpVtbl->DeleteMoveCallback(p,a,b) #define IDirect3DRMFrame3_DeleteVisual(p,a) (p)->lpVtbl->DeleteVisual(p,a) #define IDirect3DRMFrame3_GetSceneBackground(p) (p)->lpVtbl->GetSceneBackground(p) #define IDirect3DRMFrame3_GetSceneBackgroundDepth(p,a) (p)->lpVtbl->GetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame3_GetSceneFogColor(p) (p)->lpVtbl->GetSceneFogColor(p) #define IDirect3DRMFrame3_GetSceneFogEnable(p) (p)->lpVtbl->GetSceneFogEnable(p) #define IDirect3DRMFrame3_GetSceneFogMode(p) (p)->lpVtbl->GetSceneFogMode(p) #define IDirect3DRMFrame3_GetSceneFogParams(p,a,b,c) (p)->lpVtbl->GetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame3_SetSceneBackground(p,a) (p)->lpVtbl->SetSceneBackground(p,a) #define IDirect3DRMFrame3_SetSceneBackgroundRGB(p,a,b,c) (p)->lpVtbl->SetSceneBackgroundRGB(p,a,b,c) #define IDirect3DRMFrame3_SetSceneBackgroundDepth(p,a) (p)->lpVtbl->SetSceneBackgroundDepth(p,a) #define IDirect3DRMFrame3_SetSceneBackgroundImage(p,a) (p)->lpVtbl->SetSceneBackgroundImage(p,a) #define IDirect3DRMFrame3_SetSceneFogEnable(p,a) (p)->lpVtbl->SetSceneFogEnable(p,a) #define IDirect3DRMFrame3_SetSceneFogColor(p,a) (p)->lpVtbl->SetSceneFogColor(p,a) #define IDirect3DRMFrame3_SetSceneFogMode(p,a) (p)->lpVtbl->SetSceneFogMode(p,a) #define IDirect3DRMFrame3_SetSceneFogParams(p,a,b,c) (p)->lpVtbl->SetSceneFogParams(p,a,b,c) #define IDirect3DRMFrame3_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMFrame3_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMFrame3_GetZbufferMode(p) (p)->lpVtbl->GetZbufferMode(p) #define IDirect3DRMFrame3_SetMaterialMode(p,a) (p)->lpVtbl->SetMaterialMode(p,a) #define IDirect3DRMFrame3_SetOrientation(p,a,b,c,d,e,f,g) (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g) #define IDirect3DRMFrame3_SetPosition(p,a,b,c,d) (p)->lpVtbl->SetPosition(p,a,b,c,d) #define IDirect3DRMFrame3_SetRotation(p,a,b,c,d,e) (p)->lpVtbl->SetRotation(p,a,b,c,d,e) #define IDirect3DRMFrame3_SetSortMode(p,a) (p)->lpVtbl->SetSortMode(p,a) #define IDirect3DRMFrame3_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMFrame3_SetVelocity(p,a,b,c,d,e) (p)->lpVtbl->SetVelocity(p,a,b,c,d,e) #define IDirect3DRMFrame3_SetZbufferMode(p,a) (p)->lpVtbl->SetZbufferMode(p,a) #define IDirect3DRMFrame3_Transform(p,a,b) (p)->lpVtbl->Transform(p,a,b) #define IDirect3DRMFrame3_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMFrame3_GetBoxEnable(p) (p)->lpVtbl->GetBoxEnable(p) #define IDirect3DRMFrame3_GetAxes(p,a,b) (p)->lpVtbl->GetAxes(p,a,b) #define IDirect3DRMFrame3_GetMaterial(p,a) (p)->lpVtbl->GetMaterial(p,a) #define IDirect3DRMFrame3_GetInheritAxes(p) (p)->lpVtbl->GetInheritAxes(p) #define IDirect3DRMFrame3_GetHierarchyBox(p,a) (p)->lpVtbl->GetHierarchyBox(p,a) #define IDirect3DRMFrame3_SetBox(p,a) (p)->lpVtbl->SetBox(p,a) #define IDirect3DRMFrame3_SetBoxEnable(p,a) (p)->lpVtbl->SetBoxEnable(p,a) #define IDirect3DRMFrame3_SetAxes(p,a,b,c,d,e,f) (p)->lpVtbl->SetAxes(p,a,b,c,d,e,f) #define IDirect3DRMFrame3_SetInheritAxes(p,a) (p)->lpVtbl->SetInheritAxes(p,a) #define IDirect3DRMFrame3_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMFrame3_SetQuaternion(p,a,b) (p)->lpVtbl->SetQuaternion(p,a,b) #define IDirect3DRMFrame3_RayPick(p,a,b,c,d) (p)->lpVtbl->RayPick(p,a,b,c,d) #define IDirect3DRMFrame3_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c) #define IDirect3DRMFrame3_TransformVectors(p,a,b,c,d) (p)->lpVtbl->TransformVectors(p,a,b,c,d) #define IDirect3DRMFrame3_InverseTransformVectors(p,a,b,c,d) (p)->lpVtbl->InverseTransformVectors(p,a,b,c,d) #define IDirect3DRMFrame3_SetTraversalOptions(p,a) (p)->lpVtbl->SetTraversalOptions(p,a) #define IDirect3DRMFrame3_GetTraversalOptions(p,a) (p)->lpVtbl->GetTraversalOptions(p,a) #define IDirect3DRMFrame3_SetSceneFogMethod(p,a) (p)->lpVtbl->SetSceneFogMethod(p,a) #define IDirect3DRMFrame3_GetSceneFogMethod(p,a) (p)->lpVtbl->GetSceneFogMethod(p,a) #define IDirect3DRMFrame3_SetMaterialOverride(p,a) (p)->lpVtbl->SetMaterialOverride(p,a) #define IDirect3DRMFrame3_GetMaterialOverride(p,a) (p)->lpVtbl->GetMaterialOverride(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMFrame3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFrame3_AddRef(p) (p)->AddRef() #define IDirect3DRMFrame3_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFrame3_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMFrame3_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMFrame3_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMFrame3_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMFrame3_GetAppData(p) (p)->GetAppData() #define IDirect3DRMFrame3_SetName(p,a) (p)->SetName(a) #define IDirect3DRMFrame3_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMFrame3_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMFrame3 methods ***/ #define IDirect3DRMFrame3_AddChild(p,a) (p)->AddChild(a) #define IDirect3DRMFrame3_AddLight(p,a) (p)->AddLight(a) #define IDirect3DRMFrame3_AddMoveCallback(p,a,b,c) (p)->AddMoveCallback(a,b,c) #define IDirect3DRMFrame3_AddTransform(p,a,b) (p)->AddTransform(a,b) #define IDirect3DRMFrame3_AddTranslation(p,a,b,c,d) (p)->AddTranslation(a,b,c,d) #define IDirect3DRMFrame3_AddScale(p,a,b,c,d) (p)->AddScale(a,b,c,d) #define IDirect3DRMFrame3_AddRotation(p,a,b,c,d,e) (p)->AddRotation(a,b,c,d,e) #define IDirect3DRMFrame3_AddVisual(p,a) (p)->AddVisual(a) #define IDirect3DRMFrame3_GetChildren(p,a) (p)->GetChildren(a) #define IDirect3DRMFrame3_GetColor(p) (p)->GetColor() #define IDirect3DRMFrame3_GetLights(p,a) (p)->GetLights(a) #define IDirect3DRMFrame3_GetMaterialMode(p) (p)->GetMaterialMode() #define IDirect3DRMFrame3_GetParent(p,a) (p)->GetParent(a) #define IDirect3DRMFrame3_GetPosition(p,a,b) (p)->GetPosition(a,b) #define IDirect3DRMFrame3_GetRotation(p,a,b,c) (p)->GetRotation(a,b,c) #define IDirect3DRMFrame3_GetScene(p,a) (p)->GetScene(a) #define IDirect3DRMFrame3_GetSortMode(p) (p)->GetSortMode() #define IDirect3DRMFrame3_GetTexture(p,a) (p)->GetTexture(a) #define IDirect3DRMFrame3_GetTransform(p,a,b) (p)->GetTransform(a,b) #define IDirect3DRMFrame3_GetVelocity(p,a,b,c) (p)->GetVelocity(a,b,c) #define IDirect3DRMFrame3_GetOrientation(p,a,b,c) (p)->GetOrientation(a,b,c) #define IDirect3DRMFrame3_GetVisuals(p,a,b) (p)->GetVisuals(a,b) #define IDirect3DRMFrame3_InverseTransform(p,a,b) (p)->InverseTransform(a,b) #define IDirect3DRMFrame3_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMFrame3_LookAt(p,a,b,c) (p)->LookAt(a,b,c) #define IDirect3DRMFrame3_Move(p,a) (p)->Move(a) #define IDirect3DRMFrame3_DeleteChild(p,a) (p)->DeleteChild(a) #define IDirect3DRMFrame3_DeleteLight(p,a) (p)->DeleteLight(a) #define IDirect3DRMFrame3_DeleteMoveCallback(p,a,b) (p)->DeleteMoveCallback(a,b) #define IDirect3DRMFrame3_DeleteVisual(p,a) (p)->DeleteVisual(a) #define IDirect3DRMFrame3_GetSceneBackground(p) (p)->GetSceneBackground() #define IDirect3DRMFrame3_GetSceneBackgroundDepth(p,a) (p)->GetSceneBackgroundDepth(a) #define IDirect3DRMFrame3_GetSceneFogColor(p) (p)->GetSceneFogColor() #define IDirect3DRMFrame3_GetSceneFogEnable(p) (p)->GetSceneFogEnable() #define IDirect3DRMFrame3_GetSceneFogMode(p) (p)->GetSceneFogMode() #define IDirect3DRMFrame3_GetSceneFogParams(p,a,b,c) (p)->GetSceneFogParams(a,b,c) #define IDirect3DRMFrame3_SetSceneBackground(p,a) (p)->SetSceneBackground(a) #define IDirect3DRMFrame3_SetSceneBackgroundRGB(p,a,b,c) (p)->SetSceneBackgroundRGB(a,b,c) #define IDirect3DRMFrame3_SetSceneBackgroundDepth(p,a) (p)->SetSceneBackgroundDepth(a) #define IDirect3DRMFrame3_SetSceneBackgroundImage(p,a) (p)->SetSceneBackgroundImage(a) #define IDirect3DRMFrame3_SetSceneFogEnable(p,a) (p)->SetSceneFogEnable(a) #define IDirect3DRMFrame3_SetSceneFogColor(p,a) (p)->SetSceneFogColor(a) #define IDirect3DRMFrame3_SetSceneFogMode(p,a) (p)->SetSceneFogMode(a) #define IDirect3DRMFrame3_SetSceneFogParams(p,a,b,c) (p)->SetSceneFogParams(a,b,c) #define IDirect3DRMFrame3_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMFrame3_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMFrame3_GetZbufferMode(p) (p)->GetZbufferMode() #define IDirect3DRMFrame3_SetMaterialMode(p,a) (p)->SetMaterialMode(a) #define IDirect3DRMFrame3_SetOrientation(p,a,b,c,d,e,f,g) (p)->SetOrientation(a,b,c,d,e,f,g) #define IDirect3DRMFrame3_SetPosition(p,a,b,c,d) (p)->SetPosition(a,b,c,d) #define IDirect3DRMFrame3_SetRotation(p,a,b,c,d,e) (p)->SetRotation(a,b,c,d,e) #define IDirect3DRMFrame3_SetSortMode(p,a) (p)->SetSortMode(a) #define IDirect3DRMFrame3_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMFrame3_SetVelocity(p,a,b,c,d,e) (p)->SetVelocity(a,b,c,d,e) #define IDirect3DRMFrame3_SetZbufferMode(p,a) (p)->SetZbufferMode(a) #define IDirect3DRMFrame3_Transform(p,a,b) (p)->Transform(a,b) #define IDirect3DRMFrame3_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMFrame3_GetBoxEnable(p) (p)->GetBoxEnable() #define IDirect3DRMFrame3_GetAxes(p,a,b) (p)->GetAxes(a,b) #define IDirect3DRMFrame3_GetMaterial(p,a) (p)->GetMaterial(a) #define IDirect3DRMFrame3_GetInheritAxes(p) (p)->GetInheritAxes() #define IDirect3DRMFrame3_GetHierarchyBox(p,a) (p)->GetHierarchyBox(a) #define IDirect3DRMFrame3_SetBox(p,a) (p)->SetBox(a) #define IDirect3DRMFrame3_SetBoxEnable(p,a) (p)->SetBoxEnable(a) #define IDirect3DRMFrame3_SetAxes(p,a,b,c,d,e,f) (p)->SetAxes(a,b,c,d,e,f) #define IDirect3DRMFrame3_SetInheritAxes(p,a) (p)->SetInheritAxes(a) #define IDirect3DRMFrame3_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMFrame3_SetQuaternion(p,a,b) (p)->SetQuaternion(a,b) #define IDirect3DRMFrame3_RayPick(p,a,b,c,d) (p)->RayPick(a,b,c,d) #define IDirect3DRMFrame3_Save(p,a,b,c) (p)->Save(a,b,c) #define IDirect3DRMFrame3_TransformVectors(p,a,b,c,d) (p)->TransformVectors(a,b,c,d) #define IDirect3DRMFrame3_InverseTransformVectors(p,a,b,c,d) (p)->InverseTransformVectors(a,b,c,d) #define IDirect3DRMFrame3_SetTraversalOptions(p,a) (p)->SetTraversalOptions(a) #define IDirect3DRMFrame3_GetTraversalOptions(p,a) (p)->GetTraversalOptions(a) #define IDirect3DRMFrame3_SetSceneFogMethod(p,a) (p)->SetSceneFogMethod(a) #define IDirect3DRMFrame3_GetSceneFogMethod(p,a) (p)->GetSceneFogMethod(a) #define IDirect3DRMFrame3_SetMaterialOverride(p,a) (p)->SetMaterialOverride(a) #define IDirect3DRMFrame3_GetMaterialOverride(p,a) (p)->GetMaterialOverride(a) #endif /***************************************************************************** * IDirect3DRMMesh interface */ #define INTERFACE IDirect3DRMMesh DECLARE_INTERFACE_(IDirect3DRMMesh,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMesh methods ***/ STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE; STDMETHOD(AddGroup)(THIS_ unsigned vCount, unsigned fCount, unsigned vPerFace, unsigned *fData, D3DRMGROUPINDEX *returnId) PURE; STDMETHOD(SetVertices)(THIS_ D3DRMGROUPINDEX id, unsigned index, unsigned count, D3DRMVERTEX *values) PURE; STDMETHOD(SetGroupColor)(THIS_ D3DRMGROUPINDEX id, D3DCOLOR value) PURE; STDMETHOD(SetGroupColorRGB)(THIS_ D3DRMGROUPINDEX id, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetGroupMapping)(THIS_ D3DRMGROUPINDEX id, D3DRMMAPPING value) PURE; STDMETHOD(SetGroupQuality)(THIS_ D3DRMGROUPINDEX id, D3DRMRENDERQUALITY value) PURE; STDMETHOD(SetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, struct IDirect3DRMMaterial *material) PURE; STDMETHOD(SetGroupTexture)(THIS_ D3DRMGROUPINDEX id, struct IDirect3DRMTexture *texture) PURE; STDMETHOD_(unsigned, GetGroupCount)(THIS) PURE; STDMETHOD(GetGroup)(THIS_ D3DRMGROUPINDEX id, unsigned *vCount, unsigned *fCount, unsigned *vPerFace, DWORD *fDataSize, unsigned *fData) PURE; STDMETHOD(GetVertices)(THIS_ D3DRMGROUPINDEX id, DWORD index, DWORD count, D3DRMVERTEX *returnPtr) PURE; STDMETHOD_(D3DCOLOR, GetGroupColor)(THIS_ D3DRMGROUPINDEX id) PURE; STDMETHOD_(D3DRMMAPPING, GetGroupMapping)(THIS_ D3DRMGROUPINDEX id) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetGroupQuality)(THIS_ D3DRMGROUPINDEX id) PURE; STDMETHOD(GetGroupMaterial)(THIS_ D3DRMGROUPINDEX id, struct IDirect3DRMMaterial **material) PURE; STDMETHOD(GetGroupTexture)(THIS_ D3DRMGROUPINDEX id, struct IDirect3DRMTexture **texture) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMesh_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMesh_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMesh_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMesh_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMesh_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMesh_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMesh_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMesh_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMesh_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMesh_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMesh methods ***/ #define IDirect3DRMMesh_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c) #define IDirect3DRMMesh_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a,b,c) #define IDirect3DRMMesh_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e) (p)->lpVtbl->AddGroup(p,a,b,c,d,e) #define IDirect3DRMMesh_SetVertices(p,a,b,c,d) (p)->lpVtbl->SetVertices(p,a,b,c,d) #define IDirect3DRMMesh_SetGroupColor(p,a,b) (p)->lpVtbl->SetGroupColor(p,a,b) #define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d) (p)->lpVtbl->SetGroupColorRGB(p,a,b,c,d) #define IDirect3DRMMesh_SetGroupMapping(p,a,b) (p)->lpVtbl->SetGroupMapping(p,a,b) #define IDirect3DRMMesh_SetGroupQuality(p,a,b) (p)->lpVtbl->SetGroupQuality(p,a,b) #define IDirect3DRMMesh_SetGroupMaterial(p,a,b) (p)->lpVtbl->SetGroupMaterial(p,a,b) #define IDirect3DRMMesh_SetGroupTexture(p,a,b) (p)->lpVtbl->SetGroupTexture(p,a,b) #define IDirect3DRMMesh_GetGroupCount(p) (p)->lpVtbl->GetGroupCount(p) #define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f) (p)->lpVtbl->GetGroup(p,a,b,c,d,e,f) #define IDirect3DRMMesh_GetVertices(p,a,b,c,d) (p)->lpVtbl->GetVertices(p,a,b,c,d) #define IDirect3DRMMesh_GetGroupColor(p,a) (p)->lpVtbl->GetGroupColor(p,a) #define IDirect3DRMMesh_GetGroupMapping(p,a) (p)->lpVtbl->GetGroupMapping(p,a) #define IDirect3DRMMesh_GetGroupQuality(p,a) (p)->lpVtbl->GetGroupQuality(p,a) #define IDirect3DRMMesh_GetGroupMaterial(p,a,b) (p)->lpVtbl->GetGroupMaterial(p,a,b) #define IDirect3DRMMesh_GetGroupTexture(p,a,b) (p)->lpVtbl->GetGroupTexture(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMMesh_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMesh_AddRef(p) (p)->AddRef() #define IDirect3DRMMesh_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMesh_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMesh_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMesh_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMesh_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMesh_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMesh_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMesh_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMesh_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMesh methods ***/ #define IDirect3DRMMesh_Scale(p,a,b,c) (p)->Scale(a,b,c) #define IDirect3DRMMesh_Translate(p,a,b,c) (p)->Translate(a,b,c) #define IDirect3DRMMesh_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMMesh_AddGroup(p,a,b,c,d,e) (p)->AddGroup(a,b,c,d,e) #define IDirect3DRMMesh_SetVertices(p,a,b,c,d) (p)->SetVertices(a,b,c,d) #define IDirect3DRMMesh_SetGroupColor(p,a,b) (p)->SetGroupColor(a,b) #define IDirect3DRMMesh_SetGroupColorRGB(p,a,b,c,d) (p)->SetGroupColorRGB(a,b,c,d) #define IDirect3DRMMesh_SetGroupMapping(p,a,b) (p)->SetGroupMapping(a,b) #define IDirect3DRMMesh_SetGroupQuality(p,a,b) (p)->SetGroupQuality(a,b) #define IDirect3DRMMesh_SetGroupMaterial(p,a,b) (p)->SetGroupMaterial(a,b) #define IDirect3DRMMesh_SetGroupTexture(p,a,b) (p)->SetGroupTexture(a,b) #define IDirect3DRMMesh_GetGroupCount(p) (p)->GetGroupCount() #define IDirect3DRMMesh_GetGroup(p,a,b,c,d,e,f) (p)->GetGroup(a,b,c,d,e,f) #define IDirect3DRMMesh_GetVertices(p,a,b,c,d) (p)->GetVertices(a,b,c,d) #define IDirect3DRMMesh_GetGroupColor(p,a) (p)->GetGroupColor(a) #define IDirect3DRMMesh_GetGroupMapping(p,a) (p)->GetGroupMapping(a) #define IDirect3DRMMesh_GetGroupQuality(p,a) (p)->GetGroupQuality(a) #define IDirect3DRMMesh_GetGroupMaterial(p,a,b) (p)->GetGroupMaterial(a,b) #define IDirect3DRMMesh_GetGroupTexture(p,a,b) (p)->GetGroupTexture(a,b) #endif /***************************************************************************** * IDirect3DRMProgressiveMesh interface */ #define INTERFACE IDirect3DRMProgressiveMesh DECLARE_INTERFACE_(IDirect3DRMProgressiveMesh,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMProgressiveMesh methods ***/ STDMETHOD(Load) (THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx) PURE; STDMETHOD(GetLoadStatus) (THIS_ D3DRMPMESHLOADSTATUS *status) PURE; STDMETHOD(SetMinRenderDetail) (THIS_ D3DVALUE d3dVal) PURE; STDMETHOD(Abort) (THIS_ DWORD flags) PURE; STDMETHOD(GetFaceDetail) (THIS_ DWORD *count) PURE; STDMETHOD(GetVertexDetail) (THIS_ DWORD *count) PURE; STDMETHOD(SetFaceDetail) (THIS_ DWORD count) PURE; STDMETHOD(SetVertexDetail) (THIS_ DWORD count) PURE; STDMETHOD(GetFaceDetailRange) (THIS_ DWORD *min_detail, DWORD *max_detail) PURE; STDMETHOD(GetVertexDetailRange) (THIS_ DWORD *min_detail, DWORD *max_detail) PURE; STDMETHOD(GetDetail) (THIS_ D3DVALUE *pdvVal) PURE; STDMETHOD(SetDetail) (THIS_ D3DVALUE d3dVal) PURE; STDMETHOD(RegisterEvents) (THIS_ HANDLE event, DWORD flags, DWORD reserved) PURE; STDMETHOD(CreateMesh) (THIS_ IDirect3DRMMesh **mesh) PURE; STDMETHOD(Duplicate) (THIS_ IDirect3DRMProgressiveMesh **mesh) PURE; STDMETHOD(GetBox) (THIS_ D3DRMBOX *box) PURE; STDMETHOD(SetQuality) (THIS_ D3DRMRENDERQUALITY quality) PURE; STDMETHOD(GetQuality) (THIS_ D3DRMRENDERQUALITY *quality) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMProgressiveMesh_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMProgressiveMesh_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMProgressiveMesh_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMProgressiveMesh_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMProgressiveMesh_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMProgressiveMesh_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMProgressiveMesh_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMProgressiveMesh_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMProgressiveMesh methods ***/ #define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a) (p)->lpVtbl->GetLoadStatus(p,a) #define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a) (p)->lpVtbl->SetMinRenderDetail(p,a) #define IDirect3DRMProgressiveMesh_Abort(p,a) (p)->lpVtbl->Abort(p,a) #define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a) (p)->lpVtbl->GetFaceDetail(p,a) #define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a) (p)->lpVtbl->GetVertexDetail(p,a) #define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a) (p)->lpVtbl->SetFaceDetail(p,a) #define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a) (p)->lpVtbl->SetVertexDetail(p,a) #define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b) (p)->lpVtbl->GetFaceDetailRange(p,a,b) #define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b) (p)->lpVtbl->GetVertexDetailRange(p,a,b) #define IDirect3DRMProgressiveMesh_GetDetail(p,a) (p)->lpVtbl->GetDetail(p,a) #define IDirect3DRMProgressiveMesh_SetDetail(p,a) (p)->lpVtbl->SetDetail(p,a) #define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c) (p)->lpVtbl->RegisterEvents(p,a,b,c) #define IDirect3DRMProgressiveMesh_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #define IDirect3DRMProgressiveMesh_Duplicate(p,a) (p)->lpVtbl->Duplicate(p,a) #define IDirect3DRMProgressiveMesh_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMProgressiveMesh_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMProgressiveMesh_GetQuality(p,a) (p)->lpVtbl->GetQuality(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMProgressiveMesh_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMProgressiveMesh_AddRef(p) (p)->AddRef() #define IDirect3DRMProgressiveMesh_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMProgressiveMesh_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMProgressiveMesh_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMProgressiveMesh_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMProgressiveMesh_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMProgressiveMesh_GetAppData(p) (p)->GetAppData() #define IDirect3DRMProgressiveMesh_SetName(p,a) (p)->SetName(a) #define IDirect3DRMProgressiveMesh_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMProgressiveMesh_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMProgressiveMesh methods ***/ #define IDirect3DRMProgressiveMesh_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMProgressiveMesh_GetLoadStatus(p,a) (p)->GetLoadStatus(a) #define IDirect3DRMProgressiveMesh_SetMinRenderDetail(p,a) (p)->SetMinRenderDetail(a) #define IDirect3DRMProgressiveMesh_Abort(p,a) (p)->Abort(a) #define IDirect3DRMProgressiveMesh_GetFaceDetail(p,a) (p)->GetFaceDetail(a) #define IDirect3DRMProgressiveMesh_GetVertexDetail(p,a) (p)->GetVertexDetail(a) #define IDirect3DRMProgressiveMesh_SetFaceDetail(p,a) (p)->SetFaceDetail(a) #define IDirect3DRMProgressiveMesh_SetVertexDetail(p,a) (p)->SetVertexDetail(a) #define IDirect3DRMProgressiveMesh_GetFaceDetailRange(p,a,b) (p)->GetFaceDetailRange(a,b) #define IDirect3DRMProgressiveMesh_GetVertexDetailRange(p,a,b) (p)->GetVertexDetailRange(a,b) #define IDirect3DRMProgressiveMesh_GetDetail(p,a) (p)->GetDetail(a) #define IDirect3DRMProgressiveMesh_SetDetail(p,a) (p)->SetDetail(a) #define IDirect3DRMProgressiveMesh_RegisterEvents(p,a,b,c) (p)->RegisterEvents(a,b,c) #define IDirect3DRMProgressiveMesh_CreateMesh(p,a) (p)->CreateMesh(a) #define IDirect3DRMProgressiveMesh_Duplicate(p,a) (p)->Duplicate(a) #define IDirect3DRMProgressiveMesh_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMProgressiveMesh_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMProgressiveMesh_GetQuality(p,a) (p)->GetQuality(a) #endif /***************************************************************************** * IDirect3DRMShadow interface */ #define INTERFACE IDirect3DRMShadow DECLARE_INTERFACE_(IDirect3DRMShadow,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMShadow methods ***/ STDMETHOD(Init)(THIS_ IDirect3DRMVisual *visual, struct IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMShadow_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMShadow_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMShadow_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMShadow_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMShadow_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMShadow_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMShadow_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMShadow_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMShadow_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMShadow_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMShadow_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMShadow methods ***/ #define IDirect3DRMShadow_Init(p,a,b,c,d,e,f,g) (p)->lpVtbl->Load(p,a,b,c,d,e,f,g) #else /*** IUnknown methods ***/ #define IDirect3DRMShadow_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMShadow_AddRef(p) (p)->AddRef() #define IDirect3DRMShadow_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMShadow_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMShadow_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMShadow_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMShadow_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMShadow_GetAppData(p) (p)->GetAppData() #define IDirect3DRMShadow_SetName(p,a) (p)->SetName(a) #define IDirect3DRMShadow_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMShadow_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMShadow methods ***/ #define IDirect3DRMShadow_Init(p,a,b,c,d,e,f,g) (p)->Load(a,b,c,d,e,f,g) #endif /***************************************************************************** * IDirect3DRMShadow2 interface */ #define INTERFACE IDirect3DRMShadow2 DECLARE_INTERFACE_(IDirect3DRMShadow2,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMShadow methods ***/ STDMETHOD(Init)(THIS_ IUnknown *object, struct IDirect3DRMLight *light, D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz) PURE; /*** IDirect3DRMShadow2 methods ***/ STDMETHOD(GetVisual)(THIS_ IDirect3DRMVisual **visual) PURE; STDMETHOD(SetVisual)(THIS_ IUnknown *visual, DWORD flags) PURE; STDMETHOD(GetLight)(THIS_ struct IDirect3DRMLight **light) PURE; STDMETHOD(SetLight)(THIS_ struct IDirect3DRMLight *light, DWORD flags) PURE; STDMETHOD(GetPlane)(THIS_ D3DVALUE *px, D3DVALUE *py, D3DVALUE *pz, D3DVALUE *nx, D3DVALUE *ny, D3DVALUE *nz) PURE; STDMETHOD(SetPlane)(THIS_ D3DVALUE px, D3DVALUE py, D3DVALUE pz, D3DVALUE nx, D3DVALUE ny, D3DVALUE nz, DWORD) PURE; STDMETHOD(GetOptions)(THIS_ DWORD *flags) PURE; STDMETHOD(SetOptions)(THIS_ DWORD) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMShadow2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMShadow2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMShadow2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMShadow2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMShadow2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMShadow2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMShadow2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMShadow2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMShadow2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMShadow2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMShadow2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMShadow methods ***/ #define IDirect3DRMShadow2_Init(p,a,b,c,d,e,f,g) (p)->lpVtbl->Init(p,a,b,c,d,e,f,g) /*** IDirect3DRMShadow2 methods ***/ #define IDirect3DRMShadow2_GetVisual(p,a) (p)->lpVtbl->GetVisual(p,a) #define IDirect3DRMShadow2_SetVisual(p,a,b) (p)->lpVtbl->SetVisual(p,a,b) #define IDirect3DRMShadow2_GetLight(p,a) (p)->lpVtbl->GetLight(p,a) #define IDirect3DRMShadow2_SetLight(p,a,b) (p)->lpVtbl->SetLight(p,a,b) #define IDirect3DRMShadow2_GetPlane(p,a,b,c,d,e,f) (p)->lpVtbl->GetPlane(p,a,b,c,d,e,f) #define IDirect3DRMShadow2_SetPlane(p,a,b,c,d,e,f) (p)->lpVtbl->SetPlane(p,a,b,c,d,e,f) #define IDirect3DRMShadow2_GetOptions(p,a) (p)->lpVtbl->GetOptions(p,a) #define IDirect3DRMShadow2_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMShadow2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMShadow2_AddRef(p) (p)->AddRef() #define IDirect3DRMShadow2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMShadow2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMShadow2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMShadow2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMShadow2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMShadow2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMShadow2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMShadow2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMShadow2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMShadow methods ***/ #define IDirect3DRMShadow2_Init(p,a,b,c,d,e,f,g) (p)->Init(a,b,c,d,e,f,g) /*** IDirect3DRMShadow2 methods ***/ #define IDirect3DRMShadow2_GetVisual(p,a) (p)->GetVisual(a) #define IDirect3DRMShadow2_SetVisual(p,a,b) (p)->SetVisual(a,b) #define IDirect3DRMShadow2_GetLight(p,a) (p)->GetLight(a) #define IDirect3DRMShadow2_SetLight(p,a,b) (p)->SetLight(a,b) #define IDirect3DRMShadow2_GetPlane(p,a,b,c,d,e,f) (p)->GetPlane(a,b,c,d,e,f) #define IDirect3DRMShadow2_SetPlane(p,a,b,c,d,e,f) (p)->SetPlane(a,b,c,d,e,f) #define IDirect3DRMShadow2_GetOptions(p,a) (p)->GetOptions(a) #define IDirect3DRMShadow2_SetOptions(p,a) (p)->SetOptions(a) #endif /***************************************************************************** * IDirect3DRMFace interface */ #define INTERFACE IDirect3DRMFace DECLARE_INTERFACE_(IDirect3DRMFace,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMFace methods ***/ STDMETHOD(AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddVertexAndNormalIndexed)(THIS_ DWORD vertex, DWORD normal) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE, D3DVALUE, D3DVALUE) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE u, D3DVALUE v) PURE; STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial *material) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(GetVertex)(THIS_ DWORD index, D3DVECTOR *vertex, D3DVECTOR *normal) PURE; STDMETHOD(GetVertices)(THIS_ DWORD *vertex_count, D3DVECTOR *coords, D3DVECTOR *normals); STDMETHOD(GetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE *u, D3DVALUE *v) PURE; STDMETHOD(GetTextureTopology)(THIS_ WINBOOL *wrap_u, WINBOOL *wrap_v) PURE; STDMETHOD(GetNormal)(THIS_ D3DVECTOR *) PURE; STDMETHOD(GetTexture)(THIS_ struct IDirect3DRMTexture **texture) PURE; STDMETHOD(GetMaterial)(THIS_ struct IDirect3DRMMaterial **material) PURE; STDMETHOD_(int, GetVertexCount)(THIS) PURE; STDMETHOD_(int, GetVertexIndex)(THIS_ DWORD which) PURE; STDMETHOD_(int, GetTextureCoordinateIndex)(THIS_ DWORD which) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFace_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFace_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFace_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFace_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMFace_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMFace_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMFace_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMFace_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMFace_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMFace_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMFace_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMFace methods ***/ #define IDirect3DRMFace_AddVertex(p,a,b,c) (p)->lpVtbl->AddVertex(p,a,b,c) #define IDirect3DRMFace_AddVertexAndNormalIndexed(p,a,b) (p)->lpVtbl->AddVertexAndNormalIndexed(p,a,b) #define IDirect3DRMFace_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMFace_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMFace_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMFace_SetTextureCoordinates(p,a,b,c) (p)->lpVtbl->SetTextureCoordinates(p,a,b,c) #define IDirect3DRMFace_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMFace_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMFace_GetVertex(p,a,b,c) (p)->lpVtbl->GetVertex(p,a,b,c) #define IDirect3DRMFace_GetVertices(p,a,b,c) (p)->lpVtbl->GetVertices(p,a,b,c) #define IDirect3DRMFace_GetTextureCoordinates(p,a,b,c) (p)->lpVtbl->GetTextureCoordinates(p,a,b,c) #define IDirect3DRMFace_GetTextureTopology(p,a,b) (p)->lpVtbl->GetTextureTopology(p,a,b) #define IDirect3DRMFace_GetNormal(p,a) (p)->lpVtbl->GetNormal(p,a) #define IDirect3DRMFace_GetTexture(p,a) (p)->lpVtbl->GetTexture(p,a) #define IDirect3DRMFace_GetVertexCount(p) (p)->lpVtbl->GetVertexCount(p) #define IDirect3DRMFace_GetVertexIndex(p,a) (p)->lpVtbl->GetVertexIndex(p,a) #define IDirect3DRMFace_GetTextureCoordinateIndex(p,a) (p)->lpVtbl->GetTextureCoordinateIndex(p,a) #define IDirect3DRMFace_GetColor(p) (p)->lpVtbl->GetColor(p) #else /*** IUnknown methods ***/ #define IDirect3DRMFace_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFace_AddRef(p) (p)->AddRef() #define IDirect3DRMFace_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFace_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMFace_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMFace_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMFace_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMFace_GetAppData(p) (p)->GetAppData() #define IDirect3DRMFace_SetName(p,a) (p)->SetName(a) #define IDirect3DRMFace_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMFace_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMFace methods ***/ #define IDirect3DRMFace_AddVertex(p,a,b,c) (p)->AddVertex(a,b,c) #define IDirect3DRMFace_AddVertexAndNormalIndexed(p,a,b) (p)->AddVertexAndNormalIndexed(a,b) #define IDirect3DRMFace_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMFace_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMFace_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMFace_SetTextureCoordinates(p,a,b,c) (p)->SetTextureCoordinates(a,b,c) #define IDirect3DRMFace_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMFace_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMFace_GetVertex(p,a,b,c) (p)->GetVertex(a,b,c) #define IDirect3DRMFace_GetVertices(p,a,b,c) (p)->GetVertices(a,b,c) #define IDirect3DRMFace_GetTextureCoordinates(p,a,b,c) (p)->GetTextureCoordinates(a,b,c) #define IDirect3DRMFace_GetTextureTopology(p,a,b) (p)->GetTextureTopology(a,b) #define IDirect3DRMFace_GetNormal(p,a) (p)->GetNormal(a) #define IDirect3DRMFace_GetTexture(p,a) (p)->GetTexture(a) #define IDirect3DRMFace_GetVertexCount(p) (p)->GetVertexCount() #define IDirect3DRMFace_GetVertexIndex(p,a) (p)->GetVertexIndex(a) #define IDirect3DRMFace_GetTextureCoordinateIndex(p,a) (p)->GetTextureCoordinateIndex(a) #define IDirect3DRMFace_GetColor(p) (p)->GetColor() #endif /***************************************************************************** * IDirect3DRMFace2 interface */ #define INTERFACE IDirect3DRMFace2 DECLARE_INTERFACE_(IDirect3DRMFace2,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMFace methods ***/ STDMETHOD(AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddVertexAndNormalIndexed)(THIS_ DWORD vertex, DWORD normal) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE, D3DVALUE, D3DVALUE) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture3 *texture) PURE; STDMETHOD(SetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE u, D3DVALUE v) PURE; STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial2 *material) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(GetVertex)(THIS_ DWORD index, D3DVECTOR *vertex, D3DVECTOR *normal) PURE; STDMETHOD(GetVertices)(THIS_ DWORD *vertex_count, D3DVECTOR *coords, D3DVECTOR *normals); STDMETHOD(GetTextureCoordinates)(THIS_ DWORD vertex, D3DVALUE *u, D3DVALUE *v) PURE; STDMETHOD(GetTextureTopology)(THIS_ WINBOOL *wrap_u, WINBOOL *wrap_v) PURE; STDMETHOD(GetNormal)(THIS_ D3DVECTOR *) PURE; STDMETHOD(GetTexture)(THIS_ struct IDirect3DRMTexture3 **texture) PURE; STDMETHOD(GetMaterial)(THIS_ struct IDirect3DRMMaterial2 **material) PURE; STDMETHOD_(int, GetVertexCount)(THIS) PURE; STDMETHOD_(int, GetVertexIndex)(THIS_ DWORD which) PURE; STDMETHOD_(int, GetTextureCoordinateIndex)(THIS_ DWORD which) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFace2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFace2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFace2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFace2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMFace2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMFace2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMFace2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMFace2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMFace2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMFace2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMFace2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMFace methods ***/ #define IDirect3DRMFace2_AddVertex(p,a,b,c) (p)->lpVtbl->AddVertex(p,a,b,c) #define IDirect3DRMFace2_AddVertexAndNormalIndexed(p,a,b) (p)->lpVtbl->AddVertexAndNormalIndexed(p,a,b) #define IDirect3DRMFace2_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMFace2_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMFace2_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMFace2_SetTextureCoordinates(p,a,b,c) (p)->lpVtbl->SetTextureCoordinates(p,a,b,c) #define IDirect3DRMFace2_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMFace2_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMFace2_GetVertex(p,a,b,c) (p)->lpVtbl->GetVertex(p,a,b,c) #define IDirect3DRMFace2_GetVertices(p,a,b,c) (p)->lpVtbl->GetVertices(p,a,b,c) #define IDirect3DRMFace2_GetTextureCoordinates(p,a,b,c) (p)->lpVtbl->GetTextureCoordinates(p,a,b,c) #define IDirect3DRMFace2_GetTextureTopology(p,a,b) (p)->lpVtbl->GetTextureTopology(p,a,b) #define IDirect3DRMFace2_GetNormal(p,a) (p)->lpVtbl->GetNormal(p,a) #define IDirect3DRMFace2_GetTexture(p,a) (p)->lpVtbl->GetTexture(p,a) #define IDirect3DRMFace2_GetVertexCount(p) (p)->lpVtbl->GetVertexCount(p) #define IDirect3DRMFace2_GetVertexIndex(p,a) (p)->lpVtbl->GetVertexIndex(p,a) #define IDirect3DRMFace2_GetTextureCoordinateIndex(p,a) (p)->lpVtbl->GetTextureCoordinateIndex(p,a) #define IDirect3DRMFace2_GetColor(p) (p)->lpVtbl->GetColor(p) #else /*** IUnknown methods ***/ #define IDirect3DRMFace2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFace2_AddRef(p) (p)->AddRef() #define IDirect3DRMFace2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMFace2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMFace2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMFace2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMFace2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMFace2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMFace2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMFace2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMFace2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMFace methods ***/ #define IDirect3DRMFace2_AddVertex(p,a,b,c) (p)->AddVertex(a,b,c) #define IDirect3DRMFace2_AddVertexAndNormalIndexed(p,a,b) (p)->AddVertexAndNormalIndexed(a,b) #define IDirect3DRMFace2_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMFace2_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMFace2_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMFace2_SetTextureCoordinates(p,a,b,c) (p)->SetTextureCoordinates(a,b,c) #define IDirect3DRMFace2_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMFace2_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMFace2_GetVertex(p,a,b,c) (p)->GetVertex(a,b,c) #define IDirect3DRMFace2_GetVertices(p,a,b,c) (p)->GetVertices(a,b,c) #define IDirect3DRMFace2_GetTextureCoordinates(p,a,b,c) (p)->GetTextureCoordinates(a,b,c) #define IDirect3DRMFace2_GetTextureTopology(p,a,b) (p)->GetTextureTopology(a,b) #define IDirect3DRMFace2_GetNormal(p,a) (p)->GetNormal(a) #define IDirect3DRMFace2_GetTexture(p,a) (p)->GetTexture(a) #define IDirect3DRMFace2_GetVertexCount(p) (p)->GetVertexCount() #define IDirect3DRMFace2_GetVertexIndex(p,a) (p)->GetVertexIndex(a) #define IDirect3DRMFace2_GetTextureCoordinateIndex(p,a) (p)->GetTextureCoordinateIndex(a) #define IDirect3DRMFace2_GetColor(p) (p)->GetColor() #endif /***************************************************************************** * IDirect3DRMMeshBuilder interface */ #define INTERFACE IDirect3DRMMeshBuilder DECLARE_INTERFACE_(IDirect3DRMMeshBuilder,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMeshBuilder methods ***/ STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx) PURE; STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE; STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE; STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE; STDMETHOD(GenerateNormals)(THIS) PURE; STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE; STDMETHOD(AddMesh)(THIS_ IDirect3DRMMesh *mesh) PURE; STDMETHOD(AddMeshBuilder)(THIS_ IDirect3DRMMeshBuilder *mesh_builder) PURE; STDMETHOD(AddFrame)(THIS_ IDirect3DRMFrame *frame) PURE; STDMETHOD(AddFace)(THIS_ IDirect3DRMFace *face) PURE; STDMETHOD(AddFaces)(THIS_ DWORD vertex_count, D3DVECTOR *vertices, DWORD normal_count, D3DVECTOR *normals, DWORD *face_data, struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial *material) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetPerspective)(THIS_ WINBOOL) PURE; STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE; STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE; STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(GetFaces)(THIS_ struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(GetVertices)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals, DWORD *face_data_size, DWORD *face_data) PURE; STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE; STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(WINBOOL, GetPerspective)(THIS) PURE; STDMETHOD_(int, GetFaceCount)(THIS) PURE; STDMETHOD_(int, GetVertexCount)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMeshBuilder_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMeshBuilder_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMeshBuilder_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMeshBuilder_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMeshBuilder_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMeshBuilder_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMeshBuilder_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMeshBuilder methods ***/ #define IDirect3DRMMeshBuilder_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMMeshBuilder_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c) #define IDirect3DRMMeshBuilder_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c) #define IDirect3DRMMeshBuilder_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a) #define IDirect3DRMMeshBuilder_SetColorSource(p,a) (p)->lpVtbl->SetColorSource(p,a,b,c) #define IDirect3DRMMeshBuilder_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMMeshBuilder_GenerateNormals(p) (p)->lpVtbl->GenerateNormals(p) #define IDirect3DRMMeshBuilder_GetColorSource(p) (p)->lpVtbl->GetColorSource(p) #define IDirect3DRMMeshBuilder_AddMesh(p,a) (p)->lpVtbl->AddMesh(p,a) #define IDirect3DRMMeshBuilder_AddMeshBuilder(p,a) (p)->lpVtbl->AddMeshBuilder(p,a) #define IDirect3DRMMeshBuilder_AddFrame(p,a) (p)->lpVtbl->AddFrame(p,a) #define IDirect3DRMMeshBuilder_AddFace(p,a) (p)->lpVtbl->AddFace(p,a) #define IDirect3DRMMeshBuilder_AddFaces(p,a,b,c,d,e,f) (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder_ReserveSpace(p,a,b,c) (p)->lpVtbl->ReserveSpace(p,a,b,c) #define IDirect3DRMMeshBuilder_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMMeshBuilder_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMMeshBuilder_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMMeshBuilder_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMMeshBuilder_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMMeshBuilder_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMMeshBuilder_SetPerspective(p,a) (p)->lpVtbl->SetPerspective(p,a) #define IDirect3DRMMeshBuilder_SetVertex(p,a,b,c,d) (p)->lpVtbl->SetVertex(p,a,b,c,d) #define IDirect3DRMMeshBuilder_SetNormal(p,a,b,c,d) (p)->lpVtbl->SetNormal(p,a,b,c,d) #define IDirect3DRMMeshBuilder_SetTextureCoordinates(p,a,b,c) (p)->lpVtbl->SetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder_SetVertexColor(p,a,b) (p)->lpVtbl->SetVertexColor(p,a,b) #define IDirect3DRMMeshBuilder_SetVertexColorRGB(p,a,b,c,d) (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d) #define IDirect3DRMMeshBuilder_GetFaces(p,a) (p)->lpVtbl->GetFaces(p,a) #define IDirect3DRMMeshBuilder_GetVertices(p,a,b,c,d,e,f) (p)->lpVtbl->GetVertices(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder_GetTextureCoordinates(p,a,b,c) (p)->lpVtbl->GetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder_AddVertex(p,a,b,c) (p)->lpVtbl->AddVertex(p,a,b,c) #define IDirect3DRMMeshBuilder_AddNormal(p,a,b,c) (p)->lpVtbl->AddNormal(p,a,b,c) #define IDirect3DRMMeshBuilder_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRMMeshBuilder_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMMeshBuilder_GetPerspective(p) (p)->lpVtbl->GetPerspective(p) #define IDirect3DRMMeshBuilder_GetFaceCount(p) (p)->lpVtbl->GetFaceCount(p) #define IDirect3DRMMeshBuilder_GetVertexCount(p) (p)->lpVtbl->GetVertexCount(p) #define IDirect3DRMMeshBuilder_GetVertexColor(p,a) (p)->lpVtbl->GetVertexColor(p,a) #define IDirect3DRMMeshBuilder_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMeshBuilder_AddRef(p) (p)->AddRef() #define IDirect3DRMMeshBuilder_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMeshBuilder_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMeshBuilder_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMeshBuilder_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMeshBuilder_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMeshBuilder_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMeshBuilder_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMeshBuilder_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMeshBuilder methods ***/ #define IDirect3DRMMeshBuilder_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMMeshBuilder_Save(p,a,b,c) (p)->Save(a,b,c) #define IDirect3DRMMeshBuilder_Scale(p,a,b,c) (p)->Scale(a,b,c) #define IDirect3DRMMeshBuilder_Translate(p,a,b,c) (p)->Translate(a) #define IDirect3DRMMeshBuilder_SetColorSource(p,a) (p)->SetColorSource(a,b,c) #define IDirect3DRMMeshBuilder_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMMeshBuilder_GenerateNormals(p) (p)->GenerateNormals() #define IDirect3DRMMeshBuilder_GetColorSource(p) (p)->GetColorSource() #define IDirect3DRMMeshBuilder_AddMesh(p,a) (p)-->AddMesh(a) #define IDirect3DRMMeshBuilder_AddMeshBuilder(p,a) (p)->AddMeshBuilder(a) #define IDirect3DRMMeshBuilder_AddFrame(p,a) (p)->AddFrame(a) #define IDirect3DRMMeshBuilder_AddFace(p,a) (p)->AddFace(a) #define IDirect3DRMMeshBuilder_AddFaces(p,a,b,c,d,e,f) (p)->AddFaces(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder_ReserveSpace(p,a,b,c) (p)->ReserveSpace(a,b,c) #define IDirect3DRMMeshBuilder_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMMeshBuilder_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMMeshBuilder_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMMeshBuilder_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMMeshBuilder_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMMeshBuilder_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMMeshBuilder_SetPerspective(p,a) (p)->SetPerspective(a) #define IDirect3DRMMeshBuilder_SetVertex(p,a,b,c,d) (p)->SetVertex(a,b,c,d) #define IDirect3DRMMeshBuilder_SetNormal(p,a,b,c,d) (p)->SetNormal(a,b,c,d) #define IDirect3DRMMeshBuilder_SetTextureCoordinates(p,a,b,c) (p)->SetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder_SetVertexColor(p,a,b) (p)->SetVertexColor(a,b) #define IDirect3DRMMeshBuilder_SetVertexColorRGB(p,a,b,c,d) (p)->SetVertexColorRGB(a,b,c,d) #define IDirect3DRMMeshBuilder_GetFaces(p,a) (p)->GetFaces(a) #define IDirect3DRMMeshBuilder_GetVertices(p,a,b,c,d,e,f) (p)->GetVertices(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder_GetTextureCoordinates(p,a,b,c) (p)->GetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder_AddVertex(p,a,b,c) (p)->AddVertex(a,b,c) #define IDirect3DRMMeshBuilder_AddNormal(p,a,b,c) (p)->AddNormal(a,b,c) #define IDirect3DRMMeshBuilder_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRMMeshBuilder_GetQuality(p) (p)->GetQuality() #define IDirect3DRMMeshBuilder_GetPerspective(p) (p)->GetPerspective() #define IDirect3DRMMeshBuilder_GetFaceCount(p) (p)->GetFaceCount() #define IDirect3DRMMeshBuilder_GetVertexCount(p) (p)->GetVertexCount() #define IDirect3DRMMeshBuilder_GetVertexColor(p,a) (p)->GetVertexColor(a) #define IDirect3DRMMeshBuilder_CreateMesh(p,a) (p)->CreateMesh(a) #endif /***************************************************************************** * IDirect3DRMMeshBuilder2 interface */ #define INTERFACE IDirect3DRMMeshBuilder2 DECLARE_INTERFACE_(IDirect3DRMMeshBuilder2,IDirect3DRMMeshBuilder) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMeshBuilder methods ***/ STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx) PURE; STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE; STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE; STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE; STDMETHOD(GenerateNormals)(THIS) PURE; STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE; STDMETHOD(AddMesh)(THIS_ IDirect3DRMMesh *mesh) PURE; STDMETHOD(AddMeshBuilder)(THIS_ IDirect3DRMMeshBuilder *mesh_builder) PURE; STDMETHOD(AddFrame)(THIS_ IDirect3DRMFrame *frame) PURE; STDMETHOD(AddFace)(THIS_ IDirect3DRMFace *face) PURE; STDMETHOD(AddFaces)(THIS_ DWORD vertex_count, D3DVECTOR *vertices, DWORD normal_count, D3DVECTOR *normals, DWORD *face_data, struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture *texture) PURE; STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial *material) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetPerspective)(THIS_ WINBOOL) PURE; STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE; STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE; STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(GetFaces)(THIS_ struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(GetVertices)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals, DWORD *face_data_size, DWORD *face_data) PURE; STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE; STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace **face) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(WINBOOL, GetPerspective)(THIS) PURE; STDMETHOD_(int, GetFaceCount)(THIS) PURE; STDMETHOD_(int, GetVertexCount)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; /*** IDirect3DRMMeshBuilder2 methods ***/ STDMETHOD(GenerateNormals2)(THIS_ D3DVALUE crease, DWORD flags) PURE; STDMETHOD(GetFace)(THIS_ DWORD index, IDirect3DRMFace **face) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMeshBuilder2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMeshBuilder2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMeshBuilder2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMeshBuilder2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMeshBuilder2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMeshBuilder2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMeshBuilder2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMeshBuilder methods ***/ #define IDirect3DRMMeshBuilder2_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMMeshBuilder2_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c) #define IDirect3DRMMeshBuilder2_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c) #define IDirect3DRMMeshBuilder2_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a) #define IDirect3DRMMeshBuilder2_SetColorSource(p,a) (p)->lpVtbl->SetColorSource(p,a,b,c) #define IDirect3DRMMeshBuilder2_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMMeshBuilder2_GenerateNormals(p) (p)->lpVtbl->GenerateNormals(p) #define IDirect3DRMMeshBuilder2_GetColorSource(p) (p)->lpVtbl->GetColorSource(p) #define IDirect3DRMMeshBuilder2_AddMesh(p,a) (p)->lpVtbl->AddMesh(p,a) #define IDirect3DRMMeshBuilder2_AddMeshBuilder(p,a) (p)->lpVtbl->AddMeshBuilder(p,a) #define IDirect3DRMMeshBuilder2_AddFrame(p,a) (p)->lpVtbl->AddFrame(p,a) #define IDirect3DRMMeshBuilder2_AddFace(p,a) (p)->lpVtbl->AddFace(p,a) #define IDirect3DRMMeshBuilder2_AddFaces(p,a,b,c,d,e,f) (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder2_ReserveSpace(p,a,b,c) (p)->lpVtbl->ReserveSpace(p,a,b,c) #define IDirect3DRMMeshBuilder2_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMMeshBuilder2_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMMeshBuilder2_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMMeshBuilder2_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMMeshBuilder2_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMMeshBuilder2_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMMeshBuilder2_SetPerspective(p,a) (p)->lpVtbl->SetPerspective(p,a) #define IDirect3DRMMeshBuilder2_SetVertex(p,a,b,c,d) (p)->lpVtbl->SetVertex(p,a,b,c,d) #define IDirect3DRMMeshBuilder2_SetNormal(p,a,b,c,d) (p)->lpVtbl->SetNormal(p,a,b,c,d) #define IDirect3DRMMeshBuilder2_SetTextureCoordinates(p,a,b,c) (p)->lpVtbl->SetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder2_SetVertexColor(p,a,b) (p)->lpVtbl->SetVertexColor(p,a,b) #define IDirect3DRMMeshBuilder2_SetVertexColorRGB(p,a,b,c,d) (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d) #define IDirect3DRMMeshBuilder2_GetFaces(p,a) (p)->lpVtbl->GetFaces(p,a) #define IDirect3DRMMeshBuilder2_GetVertices(p,a,b,c,d,e,f) (p)->lpVtbl->GetVertices(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder2_GetTextureCoordinates(p,a,b,c) (p)->lpVtbl->GetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder2_AddVertex(p,a,b,c) (p)->lpVtbl->AddVertex(p,a,b,c) #define IDirect3DRMMeshBuilder2_AddNormal(p,a,b,c) (p)->lpVtbl->AddNormal(p,a,b,c) #define IDirect3DRMMeshBuilder2_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRMMeshBuilder2_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMMeshBuilder2_GetPerspective(p) (p)->lpVtbl->GetPerspective(p) #define IDirect3DRMMeshBuilder2_GetFaceCount(p) (p)->lpVtbl->GetFaceCount(p) #define IDirect3DRMMeshBuilder2_GetVertexCount(p) (p)->lpVtbl->GetVertexCount(p) #define IDirect3DRMMeshBuilder2_GetVertexColor(p,a) (p)->lpVtbl->GetVertexColor(p,a) #define IDirect3DRMMeshBuilder2_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) /*** IDirect3DRMMeshBuilder2 methods ***/ #define IDirect3DRMMeshBuilder2_GenerateNormals2(p,a,b) (p)->lpVtbl->GenerateNormals2(p,a,b) #define IDirect3DRMMeshBuilder2_GetFace(p,a,b) (p)->lpVtbl->GetFace(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMeshBuilder2_AddRef(p) (p)->AddRef() #define IDirect3DRMMeshBuilder2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMeshBuilder2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMeshBuilder2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMeshBuilder2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMeshBuilder2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMeshBuilder2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMeshBuilder2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMeshBuilder2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMeshBuilder methods ***/ #define IDirect3DRMMeshBuilder2_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMMeshBuilder2_Save(p,a,b,c) (p)->Save(a,b,c) #define IDirect3DRMMeshBuilder2_Scale(p,a,b,c) (p)->Scale(a,b,c) #define IDirect3DRMMeshBuilder2_Translate(p,a,b,c) (p)->Translate(a) #define IDirect3DRMMeshBuilder2_SetColorSource(p,a) (p)->SetColorSource(a,b,c) #define IDirect3DRMMeshBuilder2_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMMeshBuilder2_GenerateNormals(p) (p)->GenerateNormals() #define IDirect3DRMMeshBuilder2_GetColorSource(p) (p)->GetColorSource() #define IDirect3DRMMeshBuilder2_AddMesh(p,a) (p)-->AddMesh(a) #define IDirect3DRMMeshBuilder2_AddMeshBuilder(p,a) (p)->AddMeshBuilder(a) #define IDirect3DRMMeshBuilder2_AddFrame(p,a) (p)->AddFrame(a) #define IDirect3DRMMeshBuilder2_AddFace(p,a) (p)->AddFace(a) #define IDirect3DRMMeshBuilder2_AddFaces(p,a,b,c,d,e,f) (p)->AddFaces(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder2_ReserveSpace(p,a,b,c) (p)->ReserveSpace(a,b,c) #define IDirect3DRMMeshBuilder2_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMMeshBuilder2_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMMeshBuilder2_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMMeshBuilder2_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMMeshBuilder2_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMMeshBuilder2_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMMeshBuilder2_SetPerspective(p,a) (p)->SetPerspective(a) #define IDirect3DRMMeshBuilder2_SetVertex(p,a,b,c,d) (p)->SetVertex(a,b,c,d) #define IDirect3DRMMeshBuilder2_SetNormal(p,a,b,c,d) (p)->SetNormal(a,b,c,d) #define IDirect3DRMMeshBuilder2_SetTextureCoordinates(p,a,b,c) (p)->SetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder2_SetVertexColor(p,a,b) (p)->SetVertexColor(a,b) #define IDirect3DRMMeshBuilder2_SetVertexColorRGB(p,a,b,c,d) (p)->SetVertexColorRGB(a,b,c,d) #define IDirect3DRMMeshBuilder2_GetFaces(p,a) (p)->GetFaces(a) #define IDirect3DRMMeshBuilder2_GetVertices(p,a,b,c,d,e,f) (p)->GetVertices(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder2_GetTextureCoordinates(p,a,b,c) (p)->GetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder2_AddVertex(p,a,b,c) (p)->AddVertex(a,b,c) #define IDirect3DRMMeshBuilder2_AddNormal(p,a,b,c) (p)->AddNormal(a,b,c) #define IDirect3DRMMeshBuilder2_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRMMeshBuilder2_GetQuality(p) (p)->GetQuality() #define IDirect3DRMMeshBuilder2_GetPerspective(p) (p)->GetPerspective() #define IDirect3DRMMeshBuilder2_GetFaceCount(p) (p)->GetFaceCount() #define IDirect3DRMMeshBuilder2_GetVertexCount(p) (p)->GetVertexCount() #define IDirect3DRMMeshBuilder2_GetVertexColor(p,a) (p)->GetVertexColor(a) #define IDirect3DRMMeshBuilder2_CreateMesh(p,a) (p)->CreateMesh(a) /*** IDirect3DRMMeshBuilder2 methods ***/ #define IDirect3DRMMeshBuilder2_GenerateNormals2(p,a,b) (p)->GenerateNormals2(a,b) #define IDirect3DRMMeshBuilder2_GetFace(p,a,b) (p)->GetFace(a,b) #endif /***************************************************************************** * IDirect3DRMMeshBuilder3 interface */ #define INTERFACE IDirect3DRMMeshBuilder3 DECLARE_INTERFACE_(IDirect3DRMMeshBuilder3,IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMeshBuilder3 methods ***/ STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURE3CALLBACK cb, void *ctx) PURE; STDMETHOD(Save)(THIS_ const char *filename, D3DRMXOFFORMAT, D3DRMSAVEOPTIONS save) PURE; STDMETHOD(Scale)(THIS_ D3DVALUE sx, D3DVALUE sy, D3DVALUE sz) PURE; STDMETHOD(Translate)(THIS_ D3DVALUE tx, D3DVALUE ty, D3DVALUE tz) PURE; STDMETHOD(SetColorSource)(THIS_ D3DRMCOLORSOURCE) PURE; STDMETHOD(GetBox)(THIS_ D3DRMBOX *) PURE; STDMETHOD(GenerateNormals)(THIS_ D3DVALUE crease, DWORD flags) PURE; STDMETHOD_(D3DRMCOLORSOURCE, GetColorSource)(THIS) PURE; STDMETHOD(AddMesh)(THIS_ IDirect3DRMMesh *mesh) PURE; STDMETHOD(AddMeshBuilder)(THIS_ IDirect3DRMMeshBuilder3 *mesh_builder, DWORD flags) PURE; STDMETHOD(AddFrame)(THIS_ IDirect3DRMFrame3 *frame) PURE; STDMETHOD(AddFace)(THIS_ IDirect3DRMFace2 *face) PURE; STDMETHOD(AddFaces)(THIS_ DWORD vertex_count, D3DVECTOR *vertices, DWORD normal_count, D3DVECTOR *normals, DWORD *face_data, struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(ReserveSpace)(THIS_ DWORD vertex_Count, DWORD normal_count, DWORD face_count) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetTexture)(THIS_ struct IDirect3DRMTexture3 *texture) PURE; STDMETHOD(SetMaterial)(THIS_ struct IDirect3DRMMaterial2 *material) PURE; STDMETHOD(SetTextureTopology)(THIS_ WINBOOL wrap_u, WINBOOL wrap_v) PURE; STDMETHOD(SetQuality)(THIS_ D3DRMRENDERQUALITY) PURE; STDMETHOD(SetPerspective)(THIS_ WINBOOL) PURE; STDMETHOD(SetVertex)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetNormal)(THIS_ DWORD index, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(SetTextureCoordinates)(THIS_ DWORD index, D3DVALUE u, D3DVALUE v) PURE; STDMETHOD(SetVertexColor)(THIS_ DWORD index, D3DCOLOR) PURE; STDMETHOD(SetVertexColorRGB)(THIS_ DWORD index, D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(GetFaces)(THIS_ struct IDirect3DRMFaceArray **array) PURE; STDMETHOD(GetGeometry)(THIS_ DWORD *vcount, D3DVECTOR *vertices, DWORD *ncount, D3DVECTOR *normals, DWORD *face_data_size, DWORD *face_data) PURE; STDMETHOD(GetTextureCoordinates)(THIS_ DWORD index, D3DVALUE *u, D3DVALUE *v) PURE; STDMETHOD_(int, AddVertex)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD_(int, AddNormal)(THIS_ D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(CreateFace)(THIS_ IDirect3DRMFace2 **face) PURE; STDMETHOD_(D3DRMRENDERQUALITY, GetQuality)(THIS) PURE; STDMETHOD_(WINBOOL, GetPerspective)(THIS) PURE; STDMETHOD_(int, GetFaceCount)(THIS) PURE; STDMETHOD_(int, GetVertexCount)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetVertexColor)(THIS_ DWORD index) PURE; STDMETHOD(CreateMesh)(THIS_ IDirect3DRMMesh **mesh) PURE; STDMETHOD(GetFace)(THIS_ DWORD index, IDirect3DRMFace2 **face) PURE; STDMETHOD(GetVertex)(THIS_ DWORD index, D3DVECTOR *vector) PURE; STDMETHOD(GetNormal)(THIS_ DWORD index, D3DVECTOR *vector) PURE; STDMETHOD(DeleteVertices)(THIS_ DWORD IndexFirst, DWORD count) PURE; STDMETHOD(DeleteNormals)(THIS_ DWORD IndexFirst, DWORD count) PURE; STDMETHOD(DeleteFace)(THIS_ IDirect3DRMFace2 *face) PURE; STDMETHOD(Empty)(THIS_ DWORD flags) PURE; STDMETHOD(Optimize)(THIS_ DWORD flags) PURE; STDMETHOD(AddFacesIndexed)(THIS_ DWORD flags, DWORD *pvIndices, DWORD *pIndexFirst, DWORD *pCount) PURE; STDMETHOD(CreateSubMesh)(THIS_ IUnknown **mesh) PURE; STDMETHOD(GetParentMesh)(THIS_ DWORD flags, IUnknown **parent) PURE; STDMETHOD(GetSubMeshes)(THIS_ DWORD *count, IUnknown **meshes) PURE; STDMETHOD(DeleteSubMesh)(THIS_ IUnknown *mesh) PURE; STDMETHOD(Enable)(THIS_ DWORD) PURE; STDMETHOD(GetEnable)(THIS_ DWORD *) PURE; STDMETHOD(AddTriangles)(THIS_ DWORD flags, DWORD format, DWORD vertex_count, void *data) PURE; STDMETHOD(SetVertices)(THIS_ DWORD start_idx, DWORD count, D3DVECTOR *v) PURE; STDMETHOD(GetVertices)(THIS_ DWORD start_idx, DWORD *count, D3DVECTOR *v) PURE; STDMETHOD(SetNormals)(THIS_ DWORD start_idx, DWORD count, D3DVECTOR *v) PURE; STDMETHOD(GetNormals)(THIS_ DWORD start_idx, DWORD *count, D3DVECTOR *v) PURE; STDMETHOD_(int, GetNormalCount)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMeshBuilder3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMeshBuilder3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder3_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMeshBuilder3_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder3_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMeshBuilder3_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMeshBuilder3_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMeshBuilder3_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMeshBuilder3_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMeshBuilder3_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMeshBuilder3 methods ***/ #define IDirect3DRMMeshBuilder3_Load(p,a,b,c,d,e) (p)->lpVtbl->Load(p,a,b,c,d,e) #define IDirect3DRMMeshBuilder3_Save(p,a,b,c) (p)->lpVtbl->Save(p,a,b,c) #define IDirect3DRMMeshBuilder3_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c) #define IDirect3DRMMeshBuilder3_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a) #define IDirect3DRMMeshBuilder3_SetColorSource(p,a) (p)->lpVtbl->SetColorSource(p,a,b,c) #define IDirect3DRMMeshBuilder3_GetBox(p,a) (p)->lpVtbl->GetBox(p,a) #define IDirect3DRMMeshBuilder3_GenerateNormals(p,a,b) (p)->lpVtbl->GenerateNormals(p,a,b) #define IDirect3DRMMeshBuilder3_GetColorSource(p) (p)->lpVtbl->GetColorSource(p) #define IDirect3DRMMeshBuilder3_AddMesh(p,a) (p)->lpVtbl->AddMesh(p,a) #define IDirect3DRMMeshBuilder3_AddMeshBuilder(p,a) (p)->lpVtbl->AddMeshBuilder(p,a) #define IDirect3DRMMeshBuilder3_AddFrame(p,a) (p)->lpVtbl->AddFrame(p,a) #define IDirect3DRMMeshBuilder3_AddFace(p,a) (p)->lpVtbl->AddFace(p,a) #define IDirect3DRMMeshBuilder3_AddFaces(p,a,b,c,d,e,f) (p)->lpVtbl->AddFaces(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder3_ReserveSpace(p,a,b,c) (p)->lpVtbl->ReserveSpace(p,a,b,c) #define IDirect3DRMMeshBuilder3_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMMeshBuilder3_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMMeshBuilder3_SetTexture(p,a) (p)->lpVtbl->SetTexture(p,a) #define IDirect3DRMMeshBuilder3_SetMaterial(p,a) (p)->lpVtbl->SetMaterial(p,a) #define IDirect3DRMMeshBuilder3_SetTextureTopology(p,a,b) (p)->lpVtbl->SetTextureTopology(p,a,b) #define IDirect3DRMMeshBuilder3_SetQuality(p,a) (p)->lpVtbl->SetQuality(p,a) #define IDirect3DRMMeshBuilder3_SetPerspective(p,a) (p)->lpVtbl->SetPerspective(p,a) #define IDirect3DRMMeshBuilder3_SetVertex(p,a,b,c,d) (p)->lpVtbl->SetVertex(p,a,b,c,d) #define IDirect3DRMMeshBuilder3_SetNormal(p,a,b,c,d) (p)->lpVtbl->SetNormal(p,a,b,c,d) #define IDirect3DRMMeshBuilder3_SetTextureCoordinates(p,a,b,c) (p)->lpVtbl->SetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder3_SetVertexColor(p,a,b) (p)->lpVtbl->SetVertexColor(p,a,b) #define IDirect3DRMMeshBuilder3_SetVertexColorRGB(p,a,b,c,d) (p)->lpVtbl->SetVertexColorRGB(p,a,b,c,d) #define IDirect3DRMMeshBuilder3_GetFaces(p,a) (p)->lpVtbl->GetFaces(p,a) #define IDirect3DRMMeshBuilder3_GetGeometry(p,a,b,c,d,e,f) (p)->lpVtbl->GetGeometry(p,a,b,c,d,e,f) #define IDirect3DRMMeshBuilder3_GetTextureCoordinates(p,a,b,c) (p)->lpVtbl->GetTextureCoordinates(p,a,b,c) #define IDirect3DRMMeshBuilder3_AddVertex(p,a,b,c) (p)->lpVtbl->AddVertex(p,a,b,c) #define IDirect3DRMMeshBuilder3_AddNormal(p,a,b,c) (p)->lpVtbl->AddNormal(p,a,b,c) #define IDirect3DRMMeshBuilder3_CreateFace(p,a) (p)->lpVtbl->CreateFace(p,a) #define IDirect3DRMMeshBuilder3_GetQuality(p) (p)->lpVtbl->GetQuality(p) #define IDirect3DRMMeshBuilder3_GetPerspective(p) (p)->lpVtbl->GetPerspective(p) #define IDirect3DRMMeshBuilder3_GetFaceCount(p) (p)->lpVtbl->GetFaceCount(p) #define IDirect3DRMMeshBuilder3_GetVertexCount(p) (p)->lpVtbl->GetVertexCount(p) #define IDirect3DRMMeshBuilder3_GetVertexColor(p,a) (p)->lpVtbl->GetVertexColor(p,a) #define IDirect3DRMMeshBuilder3_CreateMesh(p,a) (p)->lpVtbl->CreateMesh(p,a) #define IDirect3DRMMeshBuilder3_GetFace(p,a,b) (p)->lpVtbl->GetFace(p,a,b) #define IDirect3DRMMeshBuilder3_GetVertex(p,a,b) (p)->lpVtbl->GetVertex(p,a,b) #define IDirect3DRMMeshBuilder3_GetNormal(p,a,b) (p)->lpVtbl->GetNormal(p,a,b) #define IDirect3DRMMeshBuilder3_DeleteVertices(p,a,b) (p)->lpVtbl->DeleteVertices(p,a,b) #define IDirect3DRMMeshBuilder3_DeleteNormals(p,a,b) (p)->lpVtbl->DeleteNormals(p,a,b) #define IDirect3DRMMeshBuilder3_DeleteFace(p,a) (p)->lpVtbl->DeleteFace(p,a) #define IDirect3DRMMeshBuilder3_Empty(p,a) (p)->lpVtbl->Empty(p,a) #define IDirect3DRMMeshBuilder3_Optimize(p,a) (p)->lpVtbl->Optimize(p,a) #define IDirect3DRMMeshBuilder3_AddFacesIndexed(p,a,b,c,d) (p)->lpVtbl->AddFacesIndexed(p,a,b,c,d) #define IDirect3DRMMeshBuilder3_CreateSubMesh(p,a) (p)->lpVtbl->CreateSubMesh(p,a) #define IDirect3DRMMeshBuilder3_GetParentMesh(p,a,b) (p)->lpVtbl->GetParentMesh(p,a,b) #define IDirect3DRMMeshBuilder3_GetSubMeshes(p,a,b) (p)->lpVtbl->GetSubMeshes(p,a,b) #define IDirect3DRMMeshBuilder3_DeleteSubMesh(p,a) (p)->lpVtbl->DeleteSubMesh(p,a) #define IDirect3DRMMeshBuilder3_Enable(p,a) (p)->lpVtbl->Enable(p,a) #define IDirect3DRMMeshBuilder3_AddTriangles(p,a,b,c,d) (p)->lpVtbl->AddTriangles(p,a,b,c,d) #define IDirect3DRMMeshBuilder3_SetVertices(p,a,b,c) (p)->lpVtbl->SetVertices(p,a,b,c) #define IDirect3DRMMeshBuilder3_GetVertices(p,a,b,c) (p)->lpVtbl->GetVertices(p,a,b,c) #define IDirect3DRMMeshBuilder3_SetNormals(p,a,b,c) (p)->lpVtbl->SetNormals(p,a,b,c) #define IDirect3DRMMeshBuilder3_GetNormals(p,a,b,c) (p)->lpVtbl->GetNormals(p,a,b,c) #define IDirect3DRMMeshBuilder3_GetNormalCount(p) (p)->lpVtbl->GetNormalCount(p) #else /*** IUnknown methods ***/ #define IDirect3DRMMeshBuilder3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMeshBuilder3_AddRef(p) (p)->AddRef() #define IDirect3DRMMeshBuilder3_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMeshBuilder3_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMeshBuilder3_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMeshBuilder3_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMeshBuilder3_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMeshBuilder3_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMeshBuilder3_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMeshBuilder3_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMeshBuilder3_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMeshBuilder3 methods ***/ #define IDirect3DRMMeshBuilder3_Load(p,a,b,c,d,e) (p)->Load(a,b,c,d,e) #define IDirect3DRMMeshBuilder3_Save(p,a,b,c) (p)->Save(a,b,c) #define IDirect3DRMMeshBuilder3_Scale(p,a,b,c) (p)->Scale(a,b,c) #define IDirect3DRMMeshBuilder3_Translate(p,a,b,c) (p)->Translate(a) #define IDirect3DRMMeshBuilder3_SetColorSource(p,a) (p)->SetColorSource(a,b,c) #define IDirect3DRMMeshBuilder3_GetBox(p,a) (p)->GetBox(a) #define IDirect3DRMMeshBuilder3_GenerateNormals(p,a,b) (p)->GenerateNormals(a,b) #define IDirect3DRMMeshBuilder3_GetColorSource(p) (p)->GetColorSource() #define IDirect3DRMMeshBuilder3_AddMesh(p,a) (p)-->AddMesh(a) #define IDirect3DRMMeshBuilder3_AddMeshBuilder(p,a) (p)->AddMeshBuilder(a) #define IDirect3DRMMeshBuilder3_AddFrame(p,a) (p)->AddFrame(a) #define IDirect3DRMMeshBuilder3_AddFace(p,a) (p)->AddFace(a) #define IDirect3DRMMeshBuilder3_AddFaces(p,a,b,c,d,e,f) (p)->AddFaces(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder3_ReserveSpace(p,a,b,c) (p)->ReserveSpace(a,b,c) #define IDirect3DRMMeshBuilder3_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMMeshBuilder3_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMMeshBuilder3_SetTexture(p,a) (p)->SetTexture(a) #define IDirect3DRMMeshBuilder3_SetMaterial(p,a) (p)->SetMaterial(a) #define IDirect3DRMMeshBuilder3_SetTextureTopology(p,a,b) (p)->SetTextureTopology(a,b) #define IDirect3DRMMeshBuilder3_SetQuality(p,a) (p)->SetQuality(a) #define IDirect3DRMMeshBuilder3_SetPerspective(p,a) (p)->SetPerspective(a) #define IDirect3DRMMeshBuilder3_SetVertex(p,a,b,c,d) (p)->SetVertex(a,b,c,d) #define IDirect3DRMMeshBuilder3_SetNormal(p,a,b,c,d) (p)->SetNormal(a,b,c,d) #define IDirect3DRMMeshBuilder3_SetTextureCoordinates(p,a,b,c) (p)->SetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder3_SetVertexColor(p,a,b) (p)->SetVertexColor(a,b) #define IDirect3DRMMeshBuilder3_SetVertexColorRGB(p,a,b,c,d) (p)->SetVertexColorRGB(a,b,c,d) #define IDirect3DRMMeshBuilder3_GetFaces(p,a) (p)->GetFaces(a) #define IDirect3DRMMeshBuilder3_GetGeometry(p,a,b,c,d,e,f) (p)->GetGeometry(a,b,c,d,e,f) #define IDirect3DRMMeshBuilder3_GetTextureCoordinates(p,a,b,c) (p)->GetTextureCoordinates(a,b,c) #define IDirect3DRMMeshBuilder3_AddVertex(p,a,b,c) (p)->AddVertex(a,b,c) #define IDirect3DRMMeshBuilder3_AddNormal(p,a,b,c) (p)->AddNormal(a,b,c) #define IDirect3DRMMeshBuilder3_CreateFace(p,a) (p)->CreateFace(a) #define IDirect3DRMMeshBuilder3_GetQuality(p) (p)->GetQuality() #define IDirect3DRMMeshBuilder3_GetPerspective(p) (p)->GetPerspective() #define IDirect3DRMMeshBuilder3_GetFaceCount(p) (p)->GetFaceCount() #define IDirect3DRMMeshBuilder3_GetVertexCount(p) (p)->GetVertexCount() #define IDirect3DRMMeshBuilder3_GetVertexColor(p,a) (p)->GetVertexColor(a) #define IDirect3DRMMeshBuilder3_CreateMesh(p,a) (p)->CreateMesh(a) #define IDirect3DRMMeshBuilder3_GetFace(p,a,b) (p)->GetFace(a,b) #define IDirect3DRMMeshBuilder3_GetVertex(p,a,b) (p)->GetVertex(a,b) #define IDirect3DRMMeshBuilder3_GetNormal(p,a,b) (p)->GetNormal(a,b) #define IDirect3DRMMeshBuilder3_DeleteVertices(p,a,b) (p)->DeleteVertices(a,b) #define IDirect3DRMMeshBuilder3_DeleteNormals(p,a,b) (p)->DeleteNormals(a,b) #define IDirect3DRMMeshBuilder3_DeleteFace(p,a) (p)->DeleteFace(a) #define IDirect3DRMMeshBuilder3_Empty(p,a) (p)->Empty(a) #define IDirect3DRMMeshBuilder3_Optimize(p,a) (p)->Optimize(a) #define IDirect3DRMMeshBuilder3_AddFacesIndexed(p,a,b,c,d) (p)->AddFacesIndexed(a,b,c,d) #define IDirect3DRMMeshBuilder3_CreateSubMesh(p,a) (p)->CreateSubMesh(a) #define IDirect3DRMMeshBuilder3_GetParentMesh(p,a,b) (p)->GetParentMesh(a,b) #define IDirect3DRMMeshBuilder3_GetSubMeshes(p,a,b) (p)->GetSubMeshes(a,b) #define IDirect3DRMMeshBuilder3_DeleteSubMesh(p,a) (p)->DeleteSubMesh(a) #define IDirect3DRMMeshBuilder3_Enable(p,a) (p)->Enable(a) #define IDirect3DRMMeshBuilder3_AddTriangles(p,a,b,c,d) (p)->AddTriangles(a,b,c,d) #define IDirect3DRMMeshBuilder3_SetVertices(p,a,b,c) (p)->SetVertices(a,b,c) #define IDirect3DRMMeshBuilder3_GetVertices(p,a,b,c) (p)->GetVertices(a,b,c) #define IDirect3DRMMeshBuilder3_SetNormals(p,a,b,c) (p)->SetNormals(a,b,c) #define IDirect3DRMMeshBuilder3_GetNormals(p,a,b,c) (p)->GetNormals(a,b,c) #define IDirect3DRMMeshBuilder3_GetNormalCount(p) (p)->GetNormalCount() #endif /***************************************************************************** * IDirect3DRMLight interface */ #define INTERFACE IDirect3DRMLight DECLARE_INTERFACE_(IDirect3DRMLight,IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMLight methods ***/ STDMETHOD(SetType)(THIS_ D3DRMLIGHTTYPE) PURE; STDMETHOD(SetColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(SetColorRGB)(THIS_ D3DVALUE red, D3DVALUE green, D3DVALUE blue) PURE; STDMETHOD(SetRange)(THIS_ D3DVALUE) PURE; STDMETHOD(SetUmbra)(THIS_ D3DVALUE) PURE; STDMETHOD(SetPenumbra)(THIS_ D3DVALUE) PURE; STDMETHOD(SetConstantAttenuation)(THIS_ D3DVALUE) PURE; STDMETHOD(SetLinearAttenuation)(THIS_ D3DVALUE) PURE; STDMETHOD(SetQuadraticAttenuation)(THIS_ D3DVALUE) PURE; STDMETHOD_(D3DVALUE, GetRange)(THIS) PURE; STDMETHOD_(D3DVALUE, GetUmbra)(THIS) PURE; STDMETHOD_(D3DVALUE, GetPenumbra)(THIS) PURE; STDMETHOD_(D3DVALUE, GetConstantAttenuation)(THIS) PURE; STDMETHOD_(D3DVALUE, GetLinearAttenuation)(THIS) PURE; STDMETHOD_(D3DVALUE, GetQuadraticAttenuation)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetColor)(THIS) PURE; STDMETHOD_(D3DRMLIGHTTYPE, GetType)(THIS) PURE; STDMETHOD(SetEnableFrame)(THIS_ IDirect3DRMFrame *frame) PURE; STDMETHOD(GetEnableFrame)(THIS_ IDirect3DRMFrame **frame) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMLight_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMLight_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMLight_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMLight_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMLight_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMLight_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMLight_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMLight_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMLight_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMLight_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMLight_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMLight methods ***/ #define IDirect3DRMLight_SetType(p,a) (p)->lpVtbl->SetType(p,a) #define IDirect3DRMLight_SetColor(p,a) (p)->lpVtbl->SetColor(p,a) #define IDirect3DRMLight_SetColorRGB(p,a,b,c) (p)->lpVtbl->SetColorRGB(p,a,b,c) #define IDirect3DRMLight_SetRange(p,a) (p)->lpVtbl->SetRange(p,a) #define IDirect3DRMLight_SetUmbra(p,a) (p)->lpVtbl->SetUmbra(p,a) #define IDirect3DRMLight_SetPenumbra(p,a) (p)->lpVtbl->SetPenumbra(p,a) #define IDirect3DRMLight_SetConstantAttenuation(p,a) (p)->lpVtbl->SetConstantAttenuation(p,a) #define IDirect3DRMLight_SetLinearAttenuation(p,a) (p)->lpVtbl->SetLinearAttenuation(p,a) #define IDirect3DRMLight_SetQuadraticAttenuation(p,a) (p)->lpVtbl->SetQuadraticAttenuation(p,a) #define IDirect3DRMLight_GetRange(p) (p)->lpVtbl->GetRange(p) #define IDirect3DRMLight_GetUmbra(p) (p)->lpVtbl->GetUmbra(p) #define IDirect3DRMLight_GetPenumbra(p) (p)->lpVtbl->GetPenumbra(p) #define IDirect3DRMLight_GetConstantAttenuation(p) (p)->lpVtbl->GetConstantAttenuation(p) #define IDirect3DRMLight_GetLinearAttenuation(p) (p)->lpVtbl->GetLinearAttenuation(p) #define IDirect3DRMLight_GetQuadraticAttenuation(p) (p)->lpVtbl->GetQuadraticAttenuation(p) #define IDirect3DRMLight_GetColor(p) (p)->lpVtbl->GetColor(p) #define IDirect3DRMLight_GetType(p) (p)->lpVtbl->GetType(p) #define IDirect3DRMLight_SetEnableFrame(p,a) (p)->lpVtbl->SetEnableFrame(p,a) #define IDirect3DRMLight_GetEnableFrame(p,a) (p)->lpVtbl->GetEnableFrame(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMLight_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMLight_AddRef(p) (p)->AddRef() #define IDirect3DRMLight_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMLight_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMLight_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMLight_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMLight_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMLight_GetAppData(p) (p)->GetAppData() #define IDirect3DRMLight_SetName(p,a) (p)->SetName(a) #define IDirect3DRMLight_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMLight_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMLight methods ***/ #define IDirect3DRMLight_SetType(p,a) (p)->SetType(a) #define IDirect3DRMLight_SetColor(p,a) (p)->SetColor(a) #define IDirect3DRMLight_SetColorRGB(p,a,b,c) (p)->SetColorRGB(a,b,c) #define IDirect3DRMLight_SetRange(p,a) (p)->SetRange(a) #define IDirect3DRMLight_SetUmbra(p,a) (p)->SetUmbra(a) #define IDirect3DRMLight_SetPenumbra(p,a) (p)->SetPenumbra(a) #define IDirect3DRMLight_SetConstantAttenuation(p,a) (p)->SetConstantAttenuation(a) #define IDirect3DRMLight_SetLinearAttenuation(p,a) (p)->SetLinearAttenuation(a) #define IDirect3DRMLight_SetQuadraticAttenuation(p,a) (p)->SetQuadraticAttenuation(a) #define IDirect3DRMLight_GetRange(p) (p)->GetRange() #define IDirect3DRMLight_GetUmbra(p) (p)->GetUmbra() #define IDirect3DRMLight_GetPenumbra(p) (p)->GetPenumbra() #define IDirect3DRMLight_GetConstantAttenuation(p) (p)->GetConstantAttenuation() #define IDirect3DRMLight_GetLinearAttenuation(p) (p)->GetLinearAttenuation() #define IDirect3DRMLight_GetQuadraticAttenuation(p) (p)->GetQuadraticAttenuation() #define IDirect3DRMLight_GetColor(p) (p)->GetColor() #define IDirect3DRMLight_GetType(p) (p)->GetType() #define IDirect3DRMLight_SetEnableFrame(p,a) (p)->SetEnableFrame(a) #define IDirect3DRMLight_GetEnableFrame(p,a) (p)->GetEnableFrame(a) #endif /***************************************************************************** * IDirect3DRMTexture interface */ #define INTERFACE IDirect3DRMTexture DECLARE_INTERFACE_(IDirect3DRMTexture, IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMTexture methods ***/ STDMETHOD(InitFromFile)(THIS_ const char *filename) PURE; STDMETHOD(InitFromSurface)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(InitFromResource)(THIS_ HRSRC) PURE; STDMETHOD(Changed)(THIS_ WINBOOL pixels, WINBOOL palette) PURE; STDMETHOD(SetColors)(THIS_ DWORD) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetDecalSize)(THIS_ D3DVALUE width, D3DVALUE height) PURE; STDMETHOD(SetDecalOrigin)(THIS_ LONG x, LONG y) PURE; STDMETHOD(SetDecalScale)(THIS_ DWORD) PURE; STDMETHOD(SetDecalTransparency)(THIS_ WINBOOL) PURE; STDMETHOD(SetDecalTransparentColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(GetDecalSize)(THIS_ D3DVALUE *width_return, D3DVALUE *height_return) PURE; STDMETHOD(GetDecalOrigin)(THIS_ LONG *x_return, LONG *y_return) PURE; STDMETHOD_(D3DRMIMAGE *, GetImage)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetColors)(THIS) PURE; STDMETHOD_(DWORD, GetDecalScale)(THIS) PURE; STDMETHOD_(WINBOOL, GetDecalTransparency)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetDecalTransparentColor)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMTexture_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMTexture_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMTexture_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMTexture_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMTexture_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMTexture_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMTexture_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMTexture_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMTexture_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMTexture_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMTexture methods ***/ #define IDirect3DRMTexture_InitFromFile(p,a) (p)->lpVtbl->InitFromFile(p,a) #define IDirect3DRMTexture_InitFromSurface(p,a) (p)->lpVtbl->InitFromSurface(p,a) #define IDirect3DRMTexture_InitFromResource(p,a) (p)->lpVtbl->InitFromResource(p,a) #define IDirect3DRMTexture_Changed(p,a,b) (p)->lpVtbl->Changed(p,a,b) #define IDirect3DRMTexture_SetColors(p,a) (p)->lpVtbl->SetColors(p,a) #define IDirect3DRMTexture_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMTexture_SetDecalSize(p,a,b) (p)->lpVtbl->SetDecalSize(p,a,b) #define IDirect3DRMTexture_SetDecalOrigin(p,a,b) (p)->lpVtbl->SetDecalOrigin(p,a,b) #define IDirect3DRMTexture_SetDecalScale(p,a) (p)->lpVtbl->SetDecalScale(p,a) #define IDirect3DRMTexture_SetDecalTransparency(p,a) (p)->lpVtbl->SetDecalTransparency(p,a) #define IDirect3DRMTexture_SetDecalTransparencyColor(p,a) (p)->lpVtbl->SetDecalTransparentColor(p,a) #define IDirect3DRMTexture_GetDecalSize(p,a,b) (p)->lpVtbl->GetDecalSize(p,a,b) #define IDirect3DRMTexture_GetDecalOrigin(p,a,b) (p)->lpVtbl->GetDecalOrigin(p,a,b) #define IDirect3DRMTexture_GetImage(p) (p)->lpVtbl->GetImage(p) #define IDirect3DRMTexture_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMTexture_GetColors(p) (p)->lpVtbl->GetColors(p) #define IDirect3DRMTexture_GetDecalScale(p) (p)->lpVtbl->GetDecalScale(p) #define IDirect3DRMTexture_GetDecalTransparency(p) (p)->lpVtbl->GetDecalTransparency(p) #define IDirect3DRMTexture_GetDecalTransparencyColor(p) (p)->lpVtbl->GetDecalTransparencyColor(p) #else /*** IUnknown methods ***/ #define IDirect3DRMTexture_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMTexture_AddRef(p) (p)->AddRef() #define IDirect3DRMTexture_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMTexture_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMTexture_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMTexture_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMTexture_GetAppData(p) (p)->GetAppData() #define IDirect3DRMTexture_SetName(p,a) (p)->SetName(a) #define IDirect3DRMTexture_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMTexture_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMTexture methods ***/ #define IDirect3DRMTexture_InitFromFile(p,a) (p)->InitFromFile(a) #define IDirect3DRMTexture_InitFromSurface(p,a) (p)->InitFromSurface(a) #define IDirect3DRMTexture_InitFromResource(p,a) (p)->InitFromResource(a) #define IDirect3DRMTexture_Changed(p,a,b) (p)->Changed(a,b) #define IDirect3DRMTexture_SetColors(p,a) (p)->SetColors(a) #define IDirect3DRMTexture_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMTexture_SetDecalSize(p,a,b) (p)->SetDecalSize(a,b) #define IDirect3DRMTexture_SetDecalOrigin(p,a,b) (p)->SetDecalOrigin(a,b) #define IDirect3DRMTexture_SetDecalScale(p,a) (p)->SetDecalScale(a) #define IDirect3DRMTexture_SetDecalTransparency(p,a) (p)->SetDecalTransparency(a) #define IDirect3DRMTexture_SetDecalTransparentColor(p,a) (p)->SetDecalTransparentColor(a) #define IDirect3DRMTexture_GetDecalSize(p,a,b) (p)->GetDecalSize(a,b) #define IDirect3DRMTexture_GetDecalOrigin(p,a,b) (p)->GetDecalOrigin(a,b) #define IDirect3DRMTexture_GetImage(p) (p)->GetImage() #define IDirect3DRMTexture_GetShades(p) (p)->GetShades() #define IDirect3DRMTexture_GetColors(p) (p)->GetColors() #define IDirect3DRMTexture_GetDecalScale(p) (p)->GetDecalScale() #define IDirect3DRMTexture_GetDecalTransparency(p) (p)->GetDecalTransparency() #define IDirect3DRMTexture_GetDecalTransparentColor(p) (p)->GetDecalTransparentColor() #endif /***************************************************************************** * IDirect3DRMTexture2 interface */ #define INTERFACE IDirect3DRMTexture2 DECLARE_INTERFACE_(IDirect3DRMTexture2, IDirect3DRMTexture) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMTexture methods ***/ STDMETHOD(InitFromFile)(THIS_ const char *filename) PURE; STDMETHOD(InitFromSurface)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(InitFromResource)(THIS_ HRSRC) PURE; STDMETHOD(Changed)(THIS_ WINBOOL pixels, WINBOOL palette) PURE; STDMETHOD(SetColors)(THIS_ DWORD) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetDecalSize)(THIS_ D3DVALUE width, D3DVALUE height) PURE; STDMETHOD(SetDecalOrigin)(THIS_ LONG x, LONG y) PURE; STDMETHOD(SetDecalScale)(THIS_ DWORD) PURE; STDMETHOD(SetDecalTransparency)(THIS_ WINBOOL) PURE; STDMETHOD(SetDecalTransparentColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(GetDecalSize)(THIS_ D3DVALUE *width_return, D3DVALUE *height_return) PURE; STDMETHOD(GetDecalOrigin)(THIS_ LONG *x_return, LONG *y_return) PURE; STDMETHOD_(D3DRMIMAGE *, GetImage)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetColors)(THIS) PURE; STDMETHOD_(DWORD, GetDecalScale)(THIS) PURE; STDMETHOD_(WINBOOL, GetDecalTransparency)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetDecalTransparentColor)(THIS) PURE; /*** IDirect3DRMTexture2 methods ***/ STDMETHOD(InitFromImage)(THIS_ D3DRMIMAGE *image) PURE; STDMETHOD(InitFromResource2)(THIS_ HMODULE module, const char *name, const char *type) PURE; STDMETHOD(GenerateMIPMap)(THIS_ DWORD) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMTexture2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMTexture2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMTexture2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMTexture2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMTexture2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMTexture2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMTexture2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMTexture2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMTexture2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMTexture2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMTexture methods ***/ #define IDirect3DRMTexture2_InitFromFile(p,a) (p)->lpVtbl->InitFromFile(p,a) #define IDirect3DRMTexture2_InitFromSurface(p,a) (p)->lpVtbl->InitFromSurface(p,a) #define IDirect3DRMTexture2_InitFromResource(p,a) (p)->lpVtbl->InitFromResource(p,a) #define IDirect3DRMTexture2_Changed(p,a,b) (p)->lpVtbl->Changed(p,a,b) #define IDirect3DRMTexture2_SetColors(p,a) (p)->lpVtbl->SetColors(p,a) #define IDirect3DRMTexture2_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMTexture2_SetDecalSize(p,a,b) (p)->lpVtbl->SetDecalSize(p,a,b) #define IDirect3DRMTexture2_SetDecalOrigin(p,a,b) (p)->lpVtbl->SetDecalOrigin(p,a,b) #define IDirect3DRMTexture2_SetDecalScale(p,a) (p)->lpVtbl->SetDecalScale(p,a) #define IDirect3DRMTexture2_SetDecalTransparency(p,a) (p)->lpVtbl->SetDecalTransparency(p,a) #define IDirect3DRMTexture2_SetDecalTransparencyColor(p,a) (p)->lpVtbl->SetDecalTransparentColor(p,a) #define IDirect3DRMTexture2_GetDecalSize(p,a,b) (p)->lpVtbl->GetDecalSize(p,a,b) #define IDirect3DRMTexture2_GetDecalOrigin(p,a,b) (p)->lpVtbl->GetDecalOrigin(p,a,b) #define IDirect3DRMTexture2_GetImage(p) (p)->lpVtbl->GetImage(p) #define IDirect3DRMTexture2_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMTexture2_GetColors(p) (p)->lpVtbl->GetColors(p) #define IDirect3DRMTexture2_GetDecalScale(p) (p)->lpVtbl->GetDecalScale(p) #define IDirect3DRMTexture2_GetDecalTransparency(p) (p)->lpVtbl->GetDecalTransparency(p) #define IDirect3DRMTexture2_GetDecalTransparencyColor(p) (p)->lpVtbl->GetDecalTransparencyColor(p) /*** IDirect3DRMTexture2 methods ***/ #define IDirect3DRMTexture2_InitFromImage(p,a) (p)->lpVtbl->InitFromImage(p,a) #define IDirect3DRMTexture2_InitFromResource2(p,a,b,c) (p)->lpVtbl->InitFromResource2(p,a,b,c) #define IDirect3DRMTexture2_GenerateMIPMap(p,a) (p)->lpVtbl->GenerateMIPMap(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMTexture2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMTexture2_AddRef(p) (p)->AddRef() #define IDirect3DRMTexture2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMTexture2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMTexture2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMTexture2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMTexture2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMTexture2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMTexture2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMTexture2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMTexture methods ***/ #define IDirect3DRMTexture2_InitFromFile(p,a) (p)->InitFromFile(a) #define IDirect3DRMTexture2_InitFromSurface(p,a) (p)->InitFromSurface(a) #define IDirect3DRMTexture2_InitFromResource(p,a) (p)->InitFromResource(a) #define IDirect3DRMTexture2_Changed(p,a,b) (p)->Changed(a,b) #define IDirect3DRMTexture2_SetColors(p,a) (p)->SetColors(a) #define IDirect3DRMTexture2_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMTexture2_SetDecalSize(p,a,b) (p)->SetDecalSize(a,b) #define IDirect3DRMTexture2_SetDecalOrigin(p,a,b) (p)->SetDecalOrigin(a,b) #define IDirect3DRMTexture2_SetDecalScale(p,a) (p)->SetDecalScale(a) #define IDirect3DRMTexture2_SetDecalTransparency(p,a) (p)->SetDecalTransparency(a) #define IDirect3DRMTexture2_SetDecalTransparentColor(p,a) (p)->SetDecalTransparentColor(a) #define IDirect3DRMTexture2_GetDecalSize(p,a,b) (p)->GetDecalSize(a,b) #define IDirect3DRMTexture2_GetDecalOrigin(p,a,b) (p)->GetDecalOrigin(a,b) #define IDirect3DRMTexture2_GetImage(p) (p)->GetImage() #define IDirect3DRMTexture2_GetShades(p) (p)->GetShades() #define IDirect3DRMTexture2_GetColors(p) (p)->GetColors() #define IDirect3DRMTexture2_GetDecalScale(p) (p)->GetDecalScale() #define IDirect3DRMTexture2_GetDecalTransparency(p) (p)->GetDecalTransparency() #define IDirect3DRMTexture2_GetDecalTransparentColor(p) (p)->GetDecalTransparentColor() /*** IDirect3DRMTexture2 methods ***/ #define IDirect3DRMTexture2_InitFromImage(p,a) (p)->InitFromImage(a) #define IDirect3DRMTexture2_InitFromResource2(p,a,b,c) (p)->InitFromResource2(a,b,c) #define IDirect3DRMTexture2_GenerateMIPMap(p,a) (p)->GenerateMIPMap(a) #endif /***************************************************************************** * IDirect3DRMTexture3 interface */ #define INTERFACE IDirect3DRMTexture3 DECLARE_INTERFACE_(IDirect3DRMTexture3, IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMTexture3 methods ***/ STDMETHOD(InitFromFile)(THIS_ const char *filename) PURE; STDMETHOD(InitFromSurface)(THIS_ IDirectDrawSurface *surface) PURE; STDMETHOD(InitFromResource)(THIS_ HRSRC) PURE; STDMETHOD(Changed)(THIS_ DWORD flags, DWORD rect_count, RECT *rects) PURE; STDMETHOD(SetColors)(THIS_ DWORD) PURE; STDMETHOD(SetShades)(THIS_ DWORD) PURE; STDMETHOD(SetDecalSize)(THIS_ D3DVALUE width, D3DVALUE height) PURE; STDMETHOD(SetDecalOrigin)(THIS_ LONG x, LONG y) PURE; STDMETHOD(SetDecalScale)(THIS_ DWORD) PURE; STDMETHOD(SetDecalTransparency)(THIS_ WINBOOL) PURE; STDMETHOD(SetDecalTransparentColor)(THIS_ D3DCOLOR) PURE; STDMETHOD(GetDecalSize)(THIS_ D3DVALUE *width_return, D3DVALUE *height_return) PURE; STDMETHOD(GetDecalOrigin)(THIS_ LONG *x_return, LONG *y_return) PURE; STDMETHOD_(D3DRMIMAGE *, GetImage)(THIS) PURE; STDMETHOD_(DWORD, GetShades)(THIS) PURE; STDMETHOD_(DWORD, GetColors)(THIS) PURE; STDMETHOD_(DWORD, GetDecalScale)(THIS) PURE; STDMETHOD_(WINBOOL, GetDecalTransparency)(THIS) PURE; STDMETHOD_(D3DCOLOR, GetDecalTransparentColor)(THIS) PURE; STDMETHOD(InitFromImage)(THIS_ D3DRMIMAGE *image) PURE; STDMETHOD(InitFromResource2)(THIS_ HMODULE module, const char *name, const char *type) PURE; STDMETHOD(GenerateMIPMap)(THIS_ DWORD) PURE; STDMETHOD(GetSurface)(THIS_ DWORD flags, IDirectDrawSurface **surface) PURE; STDMETHOD(SetCacheOptions)(THIS_ LONG lImportance, DWORD dwFlags) PURE; STDMETHOD(GetCacheOptions)(THIS_ LONG *importance, DWORD *flags) PURE; STDMETHOD(SetDownsampleCallback)(THIS_ D3DRMDOWNSAMPLECALLBACK cb, void *ctx) PURE; STDMETHOD(SetValidationCallback)(THIS_ D3DRMVALIDATIONCALLBACK cb, void *ctx) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMTexture3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMTexture3_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMTexture3_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture3_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMTexture3_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMTexture3_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMTexture3_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMTexture3_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMTexture3_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMTexture3_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMTexture3_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMTexture3 methods ***/ #define IDirect3DRMTexture3_InitFromFile(p,a) (p)->lpVtbl->InitFromFile(p,a) #define IDirect3DRMTexture3_InitFromSurface(p,a) (p)->lpVtbl->InitFromSurface(p,a) #define IDirect3DRMTexture3_InitFromResource(p,a) (p)->lpVtbl->InitFromResource(p,a) #define IDirect3DRMTexture3_Changed(p,a,b,c) (p)->lpVtbl->Changed(p,a,b,c) #define IDirect3DRMTexture3_SetColors(p,a) (p)->lpVtbl->SetColors(p,a) #define IDirect3DRMTexture3_SetShades(p,a) (p)->lpVtbl->SetShades(p,a) #define IDirect3DRMTexture3_SetDecalSize(p,a,b) (p)->lpVtbl->SetDecalSize(p,a,b) #define IDirect3DRMTexture3_SetDecalOrigin(p,a,b) (p)->lpVtbl->SetDecalOrigin(p,a,b) #define IDirect3DRMTexture3_SetDecalScale(p,a) (p)->lpVtbl->SetDecalScale(p,a) #define IDirect3DRMTexture3_SetDecalTransparency(p,a) (p)->lpVtbl->SetDecalTransparency(p,a) #define IDirect3DRMTexture3_SetDecalTransparentColor(p,a) (p)->lpVtbl->SetDecalTransparentColor(p,a) #define IDirect3DRMTexture3_GetDecalSize(p,a,b) (p)->lpVtbl->GetDecalSize(p,a,b) #define IDirect3DRMTexture3_GetDecalOrigin(p,a,b) (p)->lpVtbl->GetDecalOrigin(p,a,b) #define IDirect3DRMTexture3_GetImage(p) (p)->lpVtbl->GetImage(p) #define IDirect3DRMTexture3_GetShades(p) (p)->lpVtbl->GetShades(p) #define IDirect3DRMTexture3_GetColors(p) (p)->lpVtbl->GetColors(p) #define IDirect3DRMTexture3_GetDecalScale(p) (p)->lpVtbl->GetDecalScale(p) #define IDirect3DRMTexture3_GetDecalTransparency(p) (p)->lpVtbl->GetDecalTransparency(p) #define IDirect3DRMTexture3_GetDecalTransparentColor(p) (p)->lpVtbl->GetDecalTransparentColor(p) #define IDirect3DRMTexture3_InitFromImage(p,a) (p)->lpVtbl->InitFromImage(p,a) #define IDirect3DRMTexture3_InitFromResource2(p,a,b,c) (p)->lpVtbl->InitFromResource2(p,a,b,c) #define IDirect3DRMTexture3_GenerateMIPMap(p,a) (p)->lpVtbl->GenerateMIPMap(p,a) #define IDirect3DRMTexture3_GetSurface(p,a,b) (p)->lpVtbl->GetSurface(p,a,b) #define IDirect3DRMTexture3_SetCacheOptions(p,a,b) (p)->lpVtbl->SetCacheOptions(p,a,b) #define IDirect3DRMTexture3_GetCacheOptions(p,a,b) (p)->lpVtbl->GetCacheOptions(p,a,b) #define IDirect3DRMTexture3_SetDownsampleCallback(p,a,b) (p)->lpVtbl->SetDownsampleCallback(p,a,b) #define IDirect3DRMTexture3_SetValidationCallback(p,a,b) (p)->lpVtbl->SetValidationCallback(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMTexture3_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMTexture3_AddRef(p) (p)->AddRef() #define IDirect3DRMTexture3_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMTexture3_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMTexture3_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMTexture3_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMTexture3_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMTexture3_GetAppData(p) (p)->GetAppData() #define IDirect3DRMTexture3_SetName(p,a) (p)->SetName(a) #define IDirect3DRMTexture3_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMTexture3_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMTexture3 methods ***/ #define IDirect3DRMTexture3_InitFromFile(p,a) (p)->InitFromFile(a) #define IDirect3DRMTexture3_InitFromSurface(p,a) (p)->InitFromSurface(a) #define IDirect3DRMTexture3_InitFromResource(p,a) (p)->InitFromResource(a) #define IDirect3DRMTexture3_Changed(p,a,b,c) (p)->Changed(a,b,c) #define IDirect3DRMTexture3_SetColors(p,a) (p)->SetColors(a) #define IDirect3DRMTexture3_SetShades(p,a) (p)->SetShades(a) #define IDirect3DRMTexture3_SetDecalSize(p,a,b) (p)->SetDecalSize(a,b) #define IDirect3DRMTexture3_SetDecalOrigin(p,a,b) (p)->SetDecalOrigin(a,b) #define IDirect3DRMTexture3_SetDecalScale(p,a) (p)->SetDecalScale(a) #define IDirect3DRMTexture3_SetDecalTransparency(p,a) (p)->SetDecalTransparency(a) #define IDirect3DRMTexture3_SetDecalTransparencyColor(p,a) (p)->SetDecalTransparentColor(a) #define IDirect3DRMTexture3_GetDecalSize(p,a,b) (p)->GetDecalSize(a,b) #define IDirect3DRMTexture3_GetDecalOrigin(p,a,b) (p)->GetDecalOrigin(a,b) #define IDirect3DRMTexture3_GetImage(p) (p)->GetImage() #define IDirect3DRMTexture3_GetShades(p) (p)->GetShades() #define IDirect3DRMTexture3_GetColors(p) (p)->GetColors() #define IDirect3DRMTexture3_GetDecalScale(p) (p)->GetDecalScale() #define IDirect3DRMTexture3_GetDecalTransparency(p) (p)->GetDecalTransparency() #define IDirect3DRMTexture3_GetDecalTransparencyColor(p) (p)->GetDecalTransparencyColor() #define IDirect3DRMTexture3_InitFromImage(p,a) (p)->InitFromImage(a) #define IDirect3DRMTexture3_InitFromResource2(p,a,b,c) (p)->InitFromResource2(a,b,c) #define IDirect3DRMTexture3_GenerateMIPMap(p,a) (p)->GenerateMIPMap(a) #define IDirect3DRMTexture3_GetSurface(p,a,b) (p)->GetSurface(a,b) #define IDirect3DRMTexture3_SetCacheOptions(p,a,b) (p)->SetCacheOptions(a,b) #define IDirect3DRMTexture3_GetCacheOptions(p,a,b) (p)->GetCacheOptions(a,b) #define IDirect3DRMTexture3_SetDownsampleCallback(p,a,b) (p)->SetDownsampleCallback(a,b) #define IDirect3DRMTexture3_SetValidationCallback(p,a,b) (p)->SetValidationCallback(a,b) #endif /***************************************************************************** * IDirect3DRMWrap interface */ #define INTERFACE IDirect3DRMWrap DECLARE_INTERFACE_(IDirect3DRMWrap, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMWrap methods ***/ STDMETHOD(Init)(THIS_ D3DRMWRAPTYPE type, IDirect3DRMFrame *reference, D3DVALUE ox, D3DVALUE oy, D3DVALUE oz, D3DVALUE dx, D3DVALUE dy, D3DVALUE dz, D3DVALUE ux, D3DVALUE uy, D3DVALUE uz, D3DVALUE ou, D3DVALUE ov, D3DVALUE su, D3DVALUE sv) PURE; STDMETHOD(Apply)(THIS_ IDirect3DRMObject *object) PURE; STDMETHOD(ApplyRelative)(THIS_ IDirect3DRMFrame *frame, IDirect3DRMObject *object) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMWrap_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMWrap_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMWrap_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMWrap_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMWrap_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMWrap_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMWrap_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMWrap_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMWrap_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMWrap_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMWrap_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMWrap methods ***/ #define IDirect3DRMWrap_Init(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) (p)->lpVtbl->Init(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) #define IDirect3DRMWrap_Apply(p,a) (p)->lpVtbl->Apply(p,a) #define IDirect3DRMWrap_ApplyRelative(p,a,b) (p)->lpVtbl->ApplyRelative(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMWrap_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMWrap_AddRef(p) (p)->AddRef() #define IDirect3DRMWrap_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMWrap_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMWrap_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMWrap_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMWrap_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMWrap_GetAppData(p) (p)->GetAppData() #define IDirect3DRMWrap_SetName(p,a) (p)->SetName(a) #define IDirect3DRMWrap_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMWrap_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMWrap methods ***/ #define IDirect3DRMWrap_Init(p,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) (p)->Init(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o) #define IDirect3DRMWrap_Apply(p,a) (p)->Apply(a) #define IDirect3DRMWrap_ApplyRelative(p,a,b) (p)->ApplyRelative(a,b) #endif /***************************************************************************** * IDirect3DRMMaterial interface */ #define INTERFACE IDirect3DRMMaterial DECLARE_INTERFACE_(IDirect3DRMMaterial, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMaterial methods ***/ STDMETHOD(SetPower)(THIS_ D3DVALUE power) PURE; STDMETHOD(SetSpecular)(THIS_ D3DVALUE r, D3DVALUE g, D3DVALUE b) PURE; STDMETHOD(SetEmissive)(THIS_ D3DVALUE r, D3DVALUE g, D3DVALUE b) PURE; STDMETHOD_(D3DVALUE, GetPower)(THIS) PURE; STDMETHOD(GetSpecular)(THIS_ D3DVALUE* r, D3DVALUE* g, D3DVALUE* b) PURE; STDMETHOD(GetEmissive)(THIS_ D3DVALUE* r, D3DVALUE* g, D3DVALUE* b) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMaterial_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMaterial_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMaterial_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMaterial_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMaterial_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMaterial_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMaterial_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMaterial_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMaterial_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMaterial_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMaterial_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMaterial methods ***/ #define IDirect3DRMMaterial_SetPower(p,a) (p)->lpVtbl->SetPower(p,a) #define IDirect3DRMMaterial_SetSpecular(p,a,b,c) (p)->lpVtbl->SetSpecular(p,a,b,c) #define IDirect3DRMMaterial_SetEmissive(p,a,b,c) (p)->lpVtbl->SetEmissive(p,a,b,c) #define IDirect3DRMMaterial_GetPower(p) (p)->lpVtbl->GetPower(p) #define IDirect3DRMMaterial_GetSpecular(p,a,b,c) (p)->lpVtbl->GetSpecular(p,a,b,c) #define IDirect3DRMMaterial_GetEmissive(p,a,b,c) (p)->lpVtbl->GetEmissive(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMMaterial_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMaterial_AddRef(p) (p)->AddRef() #define IDirect3DRMMaterial_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMaterial_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMaterial_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMaterial_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMaterial_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMaterial_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMaterial_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMaterial_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMaterial_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMaterial methods ***/ #define IDirect3DRMMaterial_SetPower(p,a) (p)->SetPower(a) #define IDirect3DRMMaterial_SetSpecular(p,a,b,c) (p)->SetSpecular(a,b,c) #define IDirect3DRMMaterial_SetEmissive(p,a,b,c) (p)->SetEmissive(a,b,c) #define IDirect3DRMMaterial_GetPower(p) (p)->GetPower() #define IDirect3DRMMaterial_GetSpecular(p,a,b,c) (p)->GetSpecular(a,b,c) #define IDirect3DRMMaterial_GetEmissive(p,a,b,c) (p)->GetEmissive(a,b,c) #endif /***************************************************************************** * IDirect3DRMMaterial2 interface */ #define INTERFACE IDirect3DRMMaterial2 DECLARE_INTERFACE_(IDirect3DRMMaterial2, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMMaterial2 methods ***/ STDMETHOD(SetPower)(THIS_ D3DVALUE power) PURE; STDMETHOD(SetSpecular)(THIS_ D3DVALUE r, D3DVALUE g, D3DVALUE b) PURE; STDMETHOD(SetEmissive)(THIS_ D3DVALUE r, D3DVALUE g, D3DVALUE b) PURE; STDMETHOD_(D3DVALUE, GetPower)(THIS) PURE; STDMETHOD(GetSpecular)(THIS_ D3DVALUE* r, D3DVALUE* g, D3DVALUE* b) PURE; STDMETHOD(GetEmissive)(THIS_ D3DVALUE* r, D3DVALUE* g, D3DVALUE* b) PURE; STDMETHOD(GetAmbient)(THIS_ D3DVALUE* r, D3DVALUE* g, D3DVALUE* b) PURE; STDMETHOD(SetAmbient)(THIS_ D3DVALUE r, D3DVALUE g, D3DVALUE b) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMMaterial2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMMaterial2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMMaterial2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMaterial2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMMaterial2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMMaterial2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMMaterial2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMMaterial2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMMaterial2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMMaterial2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMMaterial2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMMaterial2 methods ***/ #define IDirect3DRMMaterial2_SetPower(p,a) (p)->lpVtbl->SetPower(p,a) #define IDirect3DRMMaterial2_SetSpecular(p,a,b,c) (p)->lpVtbl->SetSpecular(p,a,b,c) #define IDirect3DRMMaterial2_SetEmissive(p,a,b,c) (p)->lpVtbl->SetEmissive(p,a,b,c) #define IDirect3DRMMaterial2_GetPower(p) (p)->lpVtbl->GetPower(p) #define IDirect3DRMMaterial2_GetSpecular(p,a,b,c) (p)->lpVtbl->GetSpecular(p,a,b,c) #define IDirect3DRMMaterial2_GetEmissive(p,a,b,c) (p)->lpVtbl->GetEmissive(p,a,b,c) #define IDirect3DRMMaterial2_SetAmbient(p,a,b,c) (p)->lpVtbl->SetAmbient(p,a,b,c) #define IDirect3DRMMaterial2_GetAmbient(p,a,b,c) (p)->lpVtbl->GetAmbient(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMMaterial2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMMaterial2_AddRef(p) (p)->AddRef() #define IDirect3DRMMaterial2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMMaterial2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMMaterial2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMMaterial2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMMaterial2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMMaterial2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMMaterial2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMMaterial2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMMaterial2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMMaterial2 methods ***/ #define IDirect3DRMMaterial2_SetPower(p,a) (p)->SetPower(a) #define IDirect3DRMMaterial2_SetSpecular(p,a,b,c) (p)->SetSpecular(a,b,c) #define IDirect3DRMMaterial2_SetEmissive(p,a,b,c) (p)->SetEmissive(a,b,c) #define IDirect3DRMMaterial2_GetPower(p) (p)->GetPower() #define IDirect3DRMMaterial2_GetSpecular(p,a,b,c) (p)->GetSpecular(a,b,c) #define IDirect3DRMMaterial2_GetEmissive(p,a,b,c) (p)->GetEmissive(a,b,c) #define IDirect3DRMMaterial2_SetAmbient(p,a,b,c) (p)->SetAmbient(a,b,c) #define IDirect3DRMMaterial2_GetAmbient(p,a,b,c) (p)->GetAmbient(a,b,c) #endif /***************************************************************************** * IDirect3DRMAnimation interface */ #define INTERFACE IDirect3DRMAnimation DECLARE_INTERFACE_(IDirect3DRMAnimation, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMAnimation methods ***/ STDMETHOD(SetOptions)(THIS_ D3DRMANIMATIONOPTIONS flags) PURE; STDMETHOD(AddRotateKey)(THIS_ D3DVALUE time, D3DRMQUATERNION *q) PURE; STDMETHOD(AddPositionKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddScaleKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(DeleteKey)(THIS_ D3DVALUE time) PURE; STDMETHOD(SetFrame)(THIS_ IDirect3DRMFrame *frame) PURE; STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE; STDMETHOD_(D3DRMANIMATIONOPTIONS, GetOptions)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMAnimation_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMAnimation_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMAnimation_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimation_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMAnimation_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMAnimation_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMAnimation_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMAnimation_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMAnimation_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMAnimation_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMAnimation_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMAnimation methods ***/ #define IDirect3DRMAnimation_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a) #define IDirect3DRMAnimation_AddRotateKey(p,a,b) (p)->lpVtbl->AddRotateKey(p,a,b) #define IDirect3DRMAnimation_AddPositionKey(p,a,b,c,d) (p)->lpVtbl->AddPositionKey(p,a,b,c,d) #define IDirect3DRMAnimation_AddScaleKey(p,a,b,c,d) (p)->lpVtbl->AddScaleKey(p,a,b,c,d) #define IDirect3DRMAnimation_DeleteKey(p,a) (p)->lpVtbl->DeleteKey(p,a) #define IDirect3DRMAnimation_SetFrame(p,a) (p)->lpVtbl->SetFrame(p,a) #define IDirect3DRMAnimation_SetTime(p,a) (p)->lpVtbl->SetTime(p,a) #define IDirect3DRMAnimation_GetOptions(p) (p)->lpVtbl->GetOptions(p) #else /*** IUnknown methods ***/ #define IDirect3DRMAnimation_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMAnimation_AddRef(p) (p)->AddRef() #define IDirect3DRMAnimation_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimation_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMAnimation_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMAnimation_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMAnimation_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMAnimation_GetAppData(p) (p)->GetAppData() #define IDirect3DRMAnimation_SetName(p,a) (p)->SetName(a) #define IDirect3DRMAnimation_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMAnimation_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMAnimation methods ***/ #define IDirect3DRMAnimation_SetOptions(p,a) (p)->SetOptions(a) #define IDirect3DRMAnimation_AddRotateKey(p,a,b) (p)->AddRotateKey(a,b) #define IDirect3DRMAnimation_AddPositionKey(p,a,b,c,d) (p)->AddPositionKey(a,b,c,d) #define IDirect3DRMAnimation_AddScaleKey(p,a,b,c,d) (p)->AddScaleKey(a,b,c,d) #define IDirect3DRMAnimation_DeleteKey(p,a) (p)->DeleteKey(a) #define IDirect3DRMAnimation_SetFrame(p,a) (p)->SetFrame(a) #define IDirect3DRMAnimation_SetTime(p,a) (p)->SetTime(a) #define IDirect3DRMAnimation_GetOptions(p) (p)->GetOptions() #endif /***************************************************************************** * IDirect3DRMAnimation2 interface */ #define INTERFACE IDirect3DRMAnimation2 DECLARE_INTERFACE_(IDirect3DRMAnimation2, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMAnimation2 methods ***/ STDMETHOD(SetOptions)(THIS_ D3DRMANIMATIONOPTIONS flags) PURE; STDMETHOD(AddRotateKey)(THIS_ D3DVALUE time, D3DRMQUATERNION *q) PURE; STDMETHOD(AddPositionKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(AddScaleKey)(THIS_ D3DVALUE time, D3DVALUE x, D3DVALUE y, D3DVALUE z) PURE; STDMETHOD(DeleteKey)(THIS_ D3DVALUE time) PURE; STDMETHOD(SetFrame)(THIS_ IDirect3DRMFrame3 *frame) PURE; STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE; STDMETHOD_(D3DRMANIMATIONOPTIONS, GetOptions)(THIS) PURE; STDMETHOD(GetFrame)(THIS_ IDirect3DRMFrame3 **frame) PURE; STDMETHOD(DeleteKeyByID)(THIS_ DWORD dwID) PURE; STDMETHOD(AddKey)(THIS_ D3DRMANIMATIONKEY *key) PURE; STDMETHOD(ModifyKey)(THIS_ D3DRMANIMATIONKEY *key) PURE; STDMETHOD(GetKeys)(THIS_ D3DVALUE time_min, D3DVALUE time_max, DWORD *key_count, D3DRMANIMATIONKEY *keys); }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMAnimation2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMAnimation2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMAnimation2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimation2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMAnimation2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMAnimation2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMAnimation2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMAnimation2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMAnimation2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMAnimation2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMAnimation2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMAnimation2 methods ***/ #define IDirect3DRMAnimation2_SetOptions(p,a) (p)->lpVtbl->SetOptions(p,a) #define IDirect3DRMAnimation2_AddRotateKey(p,a,b) (p)->lpVtbl->AddRotateKey(p,a,b) #define IDirect3DRMAnimation2_AddPositionKey(p,a,b,c,d) (p)->lpVtbl->AddPositionKey(p,a,b,c,d) #define IDirect3DRMAnimation2_AddScaleKey(p,a,b,c,d) (p)->lpVtbl->AddScaleKey(p,a,b,c,d) #define IDirect3DRMAnimation2_DeleteKey(p,a) (p)->lpVtbl->DeleteKey(p,a) #define IDirect3DRMAnimation2_SetFrame(p,a) (p)->lpVtbl->SetFrame(p,a) #define IDirect3DRMAnimation2_SetTime(p,a) (p)->lpVtbl->SetTime(p,a) #define IDirect3DRMAnimation2_GetOptions(p) (p)->lpVtbl->GetOptions(p) #define IDirect3DRMAnimation2_GetFrame(p,a) (p)->lpVtbl->GetFrame(p,a) #define IDirect3DRMAnimation2_DeleteKeyByID(p,a) (p)->lpVtbl->DeleteKeyByID(p,a) #define IDirect3DRMAnimation2_AddKey(p,a) (p)->lpVtbl->AddKey(p,a) #define IDirect3DRMAnimation2_ModifyKey(p,a) (p)->lpVtbl->ModifyKey(p,a) #define IDirect3DRMAnimation2_GetKeys(p,a,b,c,d) (p)->lpVtbl->GetKeys(p,a,b,c,d) #else /*** IUnknown methods ***/ #define IDirect3DRMAnimation2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMAnimation2_AddRef(p) (p)->AddRef() #define IDirect3DRMAnimation2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimation2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMAnimation2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMAnimation2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMAnimation2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMAnimation2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMAnimation2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMAnimation2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMAnimation2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMAnimation2 methods ***/ #define IDirect3DRMAnimation2_SetOptions(p,a) (p)->SetOptions(a) #define IDirect3DRMAnimation2_AddRotateKey(p,a,b) (p)->AddRotateKey(a,b) #define IDirect3DRMAnimation2_AddPositionKey(p,a,b,c,d) (p)->AddPositionKey(a,b,c,d) #define IDirect3DRMAnimation2_AddScaleKey(p,a,b,c,d) (p)->AddScaleKey(a,b,c,d) #define IDirect3DRMAnimation2_DeleteKey(p,a) (p)->DeleteKey(a) #define IDirect3DRMAnimation2_SetFrame(p,a) (p)->SetFrame(a) #define IDirect3DRMAnimation2_SetTime(p,a) (p)->SetTime(a) #define IDirect3DRMAnimation2_GetOptions(p) (p)->GetOptions() #define IDirect3DRMAnimation2_GetFrame(p,a) (p)->GetFrame(a) #define IDirect3DRMAnimation2_DeleteKeyByID(p,a) (p)->DeleteKeyByID(a) #define IDirect3DRMAnimation2_AddKey(p,a) (p)->AddKey(a) #define IDirect3DRMAnimation2_ModifyKey(p,a) (p)->ModifyKey(a) #define IDirect3DRMAnimation2_GetKeys(p,a,b,c,d) (p)->GetKeys(a,b,c,d) #endif /***************************************************************************** * IDirect3DRMAnimationSet interface */ #define INTERFACE IDirect3DRMAnimationSet DECLARE_INTERFACE_(IDirect3DRMAnimationSet, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMAnimationSet methods ***/ STDMETHOD(AddAnimation)(THIS_ IDirect3DRMAnimation *animation) PURE; STDMETHOD(Load)(THIS_ void *filename, void *name, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURECALLBACK cb, void *ctx, IDirect3DRMFrame *parent)PURE; STDMETHOD(DeleteAnimation)(THIS_ IDirect3DRMAnimation *animation) PURE; STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMAnimationSet_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMAnimationSet_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMAnimationSet_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimationSet_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMAnimationSet_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMAnimationSet_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMAnimationSet_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMAnimationSet_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMAnimationSet_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMAnimationSet_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMAnimationSet_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMAnimationSet methods ***/ #define IDirect3DRMAnimationSet_AddAnimation(p,a) (p)->lpVtbl->AddAnimation(p,a) #define IDirect3DRMAnimationSet_Load(p,a,b,c,d,e,f) (p)->lpVtbl->Load(p,a,b,c,d,e,f) #define IDirect3DRMAnimationSet_DeleteAnimation(p,a) (p)->lpVtbl->DeleteAnimation(p,a) #define IDirect3DRMAnimationSet_SetTime(p,a) (p)->lpVtbl->SetTime(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMAnimationSet_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMAnimationSet_AddRef(p) (p)->AddRef() #define IDirect3DRMAnimationSet_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimationSet_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMAnimationSet_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMAnimationSet_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMAnimationSet_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMAnimationSet_GetAppData(p) (p)->GetAppData() #define IDirect3DRMAnimationSet_SetName(p,a) (p)->SetName(a) #define IDirect3DRMAnimationSet_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMAnimationSet_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMAnimationSet methods ***/ #define IDirect3DRMAnimationSet_AddAnimation(p,a) (p)->AddAnimation(a) #define IDirect3DRMAnimationSet_Load(p,a,b,c,d,e,f) (p)->Load(a,b,c,d,e,f) #define IDirect3DRMAnimationSet_DeleteAnimation(p,a) (p)->DeleteAnimation(a) #define IDirect3DRMAnimationSet_SetTime(p,a) (p)->SetTime(a) #endif /***************************************************************************** * IDirect3DRMAnimationSet2 interface */ #define INTERFACE IDirect3DRMAnimationSet2 DECLARE_INTERFACE_(IDirect3DRMAnimationSet2, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMAnimationSet2 methods ***/ STDMETHOD(AddAnimation)(THIS_ IDirect3DRMAnimation2 *animation) PURE; STDMETHOD(Load)(THIS_ void *source, void *object_id, D3DRMLOADOPTIONS flags, D3DRMLOADTEXTURE3CALLBACK cb, void *ctx, IDirect3DRMFrame3 *parent_frame)PURE; STDMETHOD(DeleteAnimation)(THIS_ IDirect3DRMAnimation2 *animation) PURE; STDMETHOD(SetTime)(THIS_ D3DVALUE time) PURE; STDMETHOD(GetAnimations)(THIS_ struct IDirect3DRMAnimationArray **array) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMAnimationSet2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMAnimationSet2_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMAnimationSet2_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimationSet2_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMAnimationSet2_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMAnimationSet2_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMAnimationSet2_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMAnimationSet2_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMAnimationSet2_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMAnimationSet2_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMAnimationSet2_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMAnimationSet2 methods ***/ #define IDirect3DRMAnimationSet2_AddAnimation(p,a) (p)->lpVtbl->AddAnimation(p,a) #define IDirect3DRMAnimationSet2_Load(p,a,b,c,d,e,f) (p)->lpVtbl->Load(p,a,b,c,d,e,f) #define IDirect3DRMAnimationSet2_DeleteAnimation(p,a) (p)->lpVtbl->DeleteAnimation(p,a) #define IDirect3DRMAnimationSet2_SetTime(p,a) (p)->lpVtbl->SetTime(p,a) #define IDirect3DRMAnimationSet2_GetAnimations(p,a) (p)->lpVtbl->GetAnimations(p,a) #else /*** IUnknown methods ***/ #define IDirect3DRMAnimationSet2_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMAnimationSet2_AddRef(p) (p)->AddRef() #define IDirect3DRMAnimationSet2_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMAnimationSet2_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMAnimationSet2_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMAnimationSet2_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMAnimationSet2_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMAnimationSet2_GetAppData(p) (p)->GetAppData() #define IDirect3DRMAnimationSet2_SetName(p,a) (p)->SetName(a) #define IDirect3DRMAnimationSet2_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMAnimationSet2_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMAnimationSet2 methods ***/ #define IDirect3DRMAnimationSet2_AddAnimation(p,a) (p)->AddAnimation(a) #define IDirect3DRMAnimationSet2_Load(p,a,b,c,d,e,f) (p)->Load(a,b,c,d,e,f) #define IDirect3DRMAnimationSet2_DeleteAnimation(p,a) (p)->DeleteAnimation(a) #define IDirect3DRMAnimationSet2_SetTime(p,a) (p)->SetTime(a) #define IDirect3DRMAnimationSet2_GetAnimations(p,a) (p)->GetAnimations(a) #endif /***************************************************************************** * IDirect3DRMUserVisual interface */ #define INTERFACE IDirect3DRMUserVisual DECLARE_INTERFACE_(IDirect3DRMUserVisual, IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMUserVisual methods ***/ STDMETHOD(Init)(THIS_ D3DRMUSERVISUALCALLBACK fn, void *arg) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMUserVisual_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMUserVisual_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMUserVisual_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMUserVisual_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMUserVisual_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMUserVisual_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMUserVisual_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMUserVisual_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMUserVisual_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMUserVisual_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMUserVisual_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMUserVisual methods ***/ #define IDirect3DRMUserVisual_Init(p,a,b) (p)->lpVtbl->Init(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMUserVisual_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMUserVisual_AddRef(p) (p)->AddRef() #define IDirect3DRMUserVisual_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMUserVisual_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMUserVisual_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMUserVisual_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMUserVisual_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMUserVisual_GetAppData(p) (p)->GetAppData() #define IDirect3DRMUserVisual_SetName(p,a) (p)->SetName(a) #define IDirect3DRMUserVisual_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMUserVisual_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMUserVisual methods ***/ #define IDirect3DRMUserVisual_Init(p,a,b) (p)->Init(a,b) #endif /***************************************************************************** * IDirect3DRMArray interface */ #define INTERFACE IDirect3DRMArray DECLARE_INTERFACE_(IDirect3DRMArray, IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMArray_GetSize(p) (p)->lpVtbl->GetSize(p) #else /*** IUnknown methods ***/ #define IDirect3DRMArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMArray_AddRef(p) (p)->AddRef() #define IDirect3DRMArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMArray_GetSize(p) (p)->GetSize() #endif /***************************************************************************** * IDirect3DRMObjectArray interface */ #define INTERFACE IDirect3DRMObjectArray DECLARE_INTERFACE_(IDirect3DRMObjectArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMObjectArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMObject **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMObjectArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMObjectArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMObjectArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMObjectArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMObjectArray methods ***/ #define IDirect3DRMObjectArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMObjectArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMObjectArray_AddRef(p) (p)->AddRef() #define IDirect3DRMObjectArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMObjectArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMObjectArray methods ***/ #define IDirect3DRMObjectArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMDeviceArray interface */ #define INTERFACE IDirect3DRMDeviceArray DECLARE_INTERFACE_(IDirect3DRMDeviceArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMDeviceArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMDevice **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMDeviceArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMDeviceArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMDeviceArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMDeviceArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMDeviceArray methods ***/ #define IDirect3DRMDeviceArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMDeviceArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMDeviceArray_AddRef(p) (p)->AddRef() #define IDirect3DRMDeviceArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMDeviceArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMDeviceArray methods ***/ #define IDirect3DRMDeviceArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMFrameArray interface */ #define INTERFACE IDirect3DRMFrameArray DECLARE_INTERFACE_(IDirect3DRMFrameArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMFrameArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMFrame **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFrameArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFrameArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFrameArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMFrameArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMFrameArray methods ***/ #define IDirect3DRMFrameArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMFrameArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFrameArray_AddRef(p) (p)->AddRef() #define IDirect3DRMFrameArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMFrameArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMFrameArray methods ***/ #define IDirect3DRMFrameArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMViewportArray interface */ #define INTERFACE IDirect3DRMViewportArray DECLARE_INTERFACE_(IDirect3DRMViewportArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMViewportArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMViewport **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMViewportArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMViewportArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMViewportArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMViewportArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMViewportArray methods ***/ #define IDirect3DRMViewportArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMViewportArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMViewportArray_AddRef(p) (p)->AddRef() #define IDirect3DRMViewportArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMViewportArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMViewportArray methods ***/ #define IDirect3DRMviewportArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMVisualArray interface */ #define INTERFACE IDirect3DRMVisualArray DECLARE_INTERFACE_(IDirect3DRMVisualArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMVisualArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMVisual **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMVisualArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMVisualArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMVisualArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMVisualArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMVisualArray methods ***/ #define IDirect3DRMVisualArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMVisualArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMVisualArray_AddRef(p) (p)->AddRef() #define IDirect3DRMVisualArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMVisualArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMVisualArray methods ***/ #define IDirect3DRMVisualArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMAnimationArray interface */ #define INTERFACE IDirect3DRMAnimationArray DECLARE_INTERFACE_(IDirect3DRMAnimationArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMAnimationArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMAnimation2 **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMAnimationArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMAnimationArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMAnimationArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMAnimationArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMAnimationArray methods ***/ #define IDirect3DRMAnimationArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMAnimationArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMAnimationArray_AddRef(p) (p)->AddRef() #define IDirect3DRMAnimationArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMAnimationArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMAnimationArray methods ***/ #define IDirect3DRMAnimationArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMPickedArray interface */ #define INTERFACE IDirect3DRMPickedArray DECLARE_INTERFACE_(IDirect3DRMPickedArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMPickedArray methods ***/ STDMETHOD(GetPick)(THIS_ DWORD index, IDirect3DRMVisual **visual, IDirect3DRMFrameArray **frame_array, D3DRMPICKDESC *pick_desc) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMPickedArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMPickedArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMPickedArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMPickedArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMPickedArray methods ***/ #define IDirect3DRMPickedArray_GetPick(p,a,b,c,d) (p)->lpVtbl->GetPick(p,a,b,c,d) #else /*** IUnknown methods ***/ #define IDirect3DRMPickedArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMPickedArray_AddRef(p) (p)->AddRef() #define IDirect3DRMPickedArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMPickedArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMPickedArray methods ***/ #define IDirect3DRMPickedArray_GetPick(p,a,b,c,d) (p)->GetPick(a,b,c,d) #endif /***************************************************************************** * IDirect3DRMLightArray interface */ #define INTERFACE IDirect3DRMLightArray DECLARE_INTERFACE_(IDirect3DRMLightArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMLightArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMLight **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMLightArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMLightArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMLightArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMLightArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMLightArray methods ***/ #define IDirect3DRMLightArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMLightArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMLightArray_AddRef(p) (p)->AddRef() #define IDirect3DRMLightArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMLightArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMLightArray methods ***/ #define IDirect3DRMLightArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMFaceArray interface */ #define INTERFACE IDirect3DRMFaceArray DECLARE_INTERFACE_(IDirect3DRMFaceArray, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMFaceArray methods ***/ STDMETHOD(GetElement)(THIS_ DWORD index, IDirect3DRMFace **element) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMFaceArray_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMFaceArray_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMFaceArray_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMFaceArray_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMFaceArray methods ***/ #define IDirect3DRMFaceArray_GetElement(p,a,b) (p)->lpVtbl->GetElement(p,a,b) #else /*** IUnknown methods ***/ #define IDirect3DRMFaceArray_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMFaceArray_AddRef(p) (p)->AddRef() #define IDirect3DRMFaceArray_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMFaceArray_GetSize(p) (p)->GetSize() /*** IDirect3DRMFaceArray methods ***/ #define IDirect3DRMFaceArray_GetElement(p,a,b) (p)->GetElement(a,b) #endif /***************************************************************************** * IDirect3DRMPicked2Array interface */ #define INTERFACE IDirect3DRMPicked2Array DECLARE_INTERFACE_(IDirect3DRMPicked2Array, IDirect3DRMArray) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMArray methods ***/ STDMETHOD_(DWORD, GetSize)(THIS) PURE; /*** IDirect3DRMPicked2Array methods ***/ STDMETHOD(GetPick)(THIS_ DWORD index, IDirect3DRMVisual **visual, IDirect3DRMFrameArray **frame_array, D3DRMPICKDESC2 *pick_desc) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMPicked2Array_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMPicked2Array_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMPicked2Array_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMArray methods ***/ #define IDirect3DRMPicked2Array_GetSize(p) (p)->lpVtbl->GetSize(p) /*** IDirect3DRMPicked2Array methods ***/ #define IDirect3DRMPicked2Array_GetPick(p,a,b,c,d) (p)->lpVtbl->GetPick(p,a,b,c,d) #else /*** IUnknown methods ***/ #define IDirect3DRMPicked2Array_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMPicked2Array_AddRef(p) (p)->AddRef() #define IDirect3DRMPicked2Array_Release(p) (p)->Release() /*** IDirect3DRMArray methods ***/ #define IDirect3DRMPicked2Array_GetSize(p) (p)->GetSize() /*** IDirect3DRMPicked2Array methods ***/ #define IDirect3DRMPicked2Array_GetPick(p,a,b,c,d) (p)->GetPick(a,b,c,d) #endif /***************************************************************************** * IDirect3DRMInterpolator interface */ #define INTERFACE IDirect3DRMInterpolator DECLARE_INTERFACE_(IDirect3DRMInterpolator, IDirect3DRMObject) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMInterpolator methods ***/ STDMETHOD(AttachObject)(THIS_ IDirect3DRMObject *object) PURE; STDMETHOD(GetAttachedObjects)(THIS_ IDirect3DRMObjectArray **array) PURE; STDMETHOD(DetachObject)(THIS_ IDirect3DRMObject *object) PURE; STDMETHOD(SetIndex)(THIS_ D3DVALUE) PURE; STDMETHOD_(D3DVALUE, GetIndex)(THIS) PURE; STDMETHOD(Interpolate)(THIS_ D3DVALUE index, IDirect3DRMObject *object, D3DRMINTERPOLATIONOPTIONS flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMInterpolator_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMInterpolator_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMInterpolator_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMInterpolator_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMInterpolator_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMInterpolator_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMInterpolator_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMInterpolator_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMInterpolator_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMInterpolator_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMInterpolator_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMInterpolator methods ***/ #define IDirect3DRMInterpolator_AttachObject(p,a) (p)->lpVtbl->AttachObject(p,a) #define IDirect3DRMInterpolator_GetAttachedObjects(p,a) (p)->lpVtbl->GetAttachedObjects(p,a) #define IDirect3DRMInterpolator_DetachObject(p,a) (p)->lpVtbl->DetachObject(p,a) #define IDirect3DRMInterpolator_SetIndex(p,a) (p)->lpVtbl->SetIndex(p,a) #define IDirect3DRMInterpolator_GetIndex(p) (p)->lpVtbl->GetIndex(p) #define IDirect3DRMInterpolator_Interpolate(p,a,b,c) (p)->lpVtbl->Interpolate(p,a,b,c) #else /*** IUnknown methods ***/ #define IDirect3DRMInterpolator_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMInterpolator_AddRef(p) (p)->AddRef() #define IDirect3DRMInterpolator_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMInterpolator_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMInterpolator_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMInterpolator_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMInterpolator_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMInterpolator_GetAppData(p) (p)->GetAppData() #define IDirect3DRMInterpolator_SetName(p,a) (p)->SetName(a) #define IDirect3DRMInterpolator_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMInterpolator_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMInterpolator methods ***/ #define IDirect3DRMInterpolator_AttachObject(p,a) (p)->AttachObject(a) #define IDirect3DRMInterpolator_GetAttachedObjects(p,a) (p)->GetAttachedObjects(a) #define IDirect3DRMInterpolator_DetachObject(p,a) (p)->DetachObject(a) #define IDirect3DRMInterpolator_SetIndex(p,a) (p)->SetIndex(a) #define IDirect3DRMInterpolator_GetIndex(p) (p)->GetIndex() #define IDirect3DRMInterpolator_Interpolate(p,a,b,c) (p)->Interpolate(a,b,c) #endif /***************************************************************************** * IDirect3DRMClippedVisual interface */ #define INTERFACE IDirect3DRMClippedVisual DECLARE_INTERFACE_(IDirect3DRMClippedVisual, IDirect3DRMVisual) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirect3DRMObject methods ***/ STDMETHOD(Clone)(THIS_ IUnknown *outer, REFIID iid, void **out) PURE; STDMETHOD(AddDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(DeleteDestroyCallback)(THIS_ D3DRMOBJECTCALLBACK cb, void *ctx) PURE; STDMETHOD(SetAppData)(THIS_ DWORD data) PURE; STDMETHOD_(DWORD, GetAppData)(THIS) PURE; STDMETHOD(SetName)(THIS_ const char *name) PURE; STDMETHOD(GetName)(THIS_ DWORD *size, char *name) PURE; STDMETHOD(GetClassName)(THIS_ DWORD *size, char *name) PURE; /*** IDirect3DRMClippedVisual methods ***/ STDMETHOD(Init) (THIS_ IDirect3DRMVisual *visual) PURE; STDMETHOD(AddPlane) (THIS_ IDirect3DRMFrame3 *reference, D3DVECTOR *point, D3DVECTOR *normal, DWORD flags, DWORD *id) PURE; STDMETHOD(DeletePlane)(THIS_ DWORD, DWORD) PURE; STDMETHOD(GetPlaneIDs)(THIS_ DWORD *count, DWORD *id, DWORD flags) PURE; STDMETHOD(GetPlane) (THIS_ DWORD id, IDirect3DRMFrame3 *reference, D3DVECTOR *point, D3DVECTOR *normal, DWORD flags) PURE; STDMETHOD(SetPlane) (THIS_ DWORD id, IDirect3DRMFrame3 *reference, D3DVECTOR *point, D3DVECTOR *normal, DWORD flags) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirect3DRMClippedVisual_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirect3DRMClippedVisual_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirect3DRMClippedVisual_Release(p) (p)->lpVtbl->Release(p) /*** IDirect3DRMObject methods ***/ #define IDirect3DRMClippedVisual_Clone(p,a,b,c) (p)->lpVtbl->Clone(p,a,b,c) #define IDirect3DRMClippedVisual_AddDestroyCallback(p,a,b) (p)->lpVtbl->AddDestroyCallback(p,a,b) #define IDirect3DRMClippedVisual_DeleteDestroyCallback(p,a,b) (p)->lpVtbl->DeleteDestroyCallback(p,a,b) #define IDirect3DRMClippedVisual_SetAppData(p,a) (p)->lpVtbl->SetAppData(p,a) #define IDirect3DRMClippedVisual_GetAppData(p) (p)->lpVtbl->GetAppData(p) #define IDirect3DRMClippedVisual_SetName(p,a) (p)->lpVtbl->SetName(p,a) #define IDirect3DRMClippedVisual_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirect3DRMClippedVisual_GetClassName(p,a,b) (p)->lpVtbl->GetClassName(p,a,b) /*** IDirect3DRMClippedVisual methods ***/ #define IDirect3DRMClippedVisual_Init(p,a) (p)->lpVtbl->Init(p,a) #define IDirect3DRMClippedVisual_AddPlane(p,a,b,c,d,e) (p)->lpVtbl->AddPlane(p,a,b,c,d,e) #define IDirect3DRMClippedVisual_DeletePlane(p,a,b) (p)->lpVtbl->DeletePlane(p,a,b) #define IDirect3DRMClippedVisual_GetPlaneIDs(p,a,b,c) (p)->lpVtbl->GetPlaneIDs(p,a,b,c) #define IDirect3DRMClippedVisual_GetPlane(p,a,b,c,d,e) (p)->lpVtbl->GetPlane(p,a,b,c,d,e) #define IDirect3DRMClippedVisual_SetPlane(p,a,b,c,d,e) (p)->lpVtbl->SetPlane(p,a,b,c,d,e) #else /*** IUnknown methods ***/ #define IDirect3DRMClippedVisual_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDirect3DRMClippedVisual_AddRef(p) (p)->AddRef() #define IDirect3DRMClippedVisual_Release(p) (p)->Release() /*** IDirect3DRMObject methods ***/ #define IDirect3DRMClippedVisual_Clone(p,a,b,c) (p)->Clone(a,b,c) #define IDirect3DRMClippedVisual_AddDestroyCallback(p,a,b) (p)->AddDestroyCallback(a,b) #define IDirect3DRMClippedVisual_DeleteDestroyCallback(p,a,b) (p)->DeleteDestroyCallback(a,b) #define IDirect3DRMClippedVisual_SetAppData(p,a) (p)->SetAppData(a) #define IDirect3DRMClippedVisual_GetAppData(p) (p)->GetAppData() #define IDirect3DRMClippedVisual_SetName(p,a) (p)->SetName(a) #define IDirect3DRMClippedVisual_GetName(p,a,b) (p)->GetName(a,b) #define IDirect3DRMClippedVisual_GetClassName(p,a,b) (p)->GetClassName(a,b) /*** IDirect3DRMClippedVisual methods ***/ #define IDirect3DRMClippedVisual_Init(p,a) (p)->Init(a) #define IDirect3DRMClippedVisual_AddPlane(p,a,b,c,d,e) (p)->AddPlane(a,b,c,d,e) #define IDirect3DRMClippedVisual_DeletePlane(p,a,b) (p)->DeletePlane(a,b) #define IDirect3DRMClippedVisual_GetPlaneIDs(p,a,b,c) (p)->GetPlaneIDs(a,b,c) #define IDirect3DRMClippedVisual_GetPlane(p,a,b,c,d,e) (p)->GetPlane(a,b,c,d,e) #define IDirect3DRMClippedVisual_SetPlane(p,a,b,c,d,e) (p)->SetPlane(a,b,c,d,e) #endif #ifdef __cplusplus }; #endif #endif /* __D3DRMOBJ_H__ */ dxvk-0~git20220822.9df86f2/d3dtypes.h000066400000000000000000001207161430055512200167160ustar00rootroot00000000000000/* * Copyright (C) 2000 Peter Hunnisett * * 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 */ /* FIXME: Need to add C++ code for certain structs for headers - this is going to be a problem if WINE continues to only use C code - I suppose that we could always inline in the header file to get around that little problem... */ /* FIXME: We need to implement versioning on everything directx 5 and up if these headers are going to be generically useful for directx stuff */ #ifndef __WINE_D3DTYPES_H #define __WINE_D3DTYPES_H #include #include #include #ifdef __i386__ #include #endif #define D3DVALP(val, prec) ((float)(val)) #define D3DVAL(val) ((float)(val)) #define D3DDivide(a, b) (float)((double) (a) / (double) (b)) #define D3DMultiply(a, b) ((a) * (b)) typedef LONG D3DFIXED; #ifndef RGB_MAKE #define CI_GETALPHA(ci) ((ci) >> 24) #define CI_GETINDEX(ci) (((ci) >> 8) & 0xffff) #define CI_GETFRACTION(ci) ((ci) & 0xff) #define CI_ROUNDINDEX(ci) CI_GETINDEX((ci) + 0x80) #define CI_MASKALPHA(ci) ((ci) & 0xffffff) #define CI_MAKE(a, i, f) (((a) << 24) | ((i) << 8) | (f)) #define RGBA_GETALPHA(rgb) ((rgb) >> 24) #define RGBA_GETRED(rgb) (((rgb) >> 16) & 0xff) #define RGBA_GETGREEN(rgb) (((rgb) >> 8) & 0xff) #define RGBA_GETBLUE(rgb) ((rgb) & 0xff) #define RGBA_MAKE(r, g, b, a) ((D3DCOLOR) (((a) << 24) | ((r) << 16) | ((g) << 8) | (b))) #define D3DRGB(r, g, b) \ (0xff000000 | ( ((LONG)((r) * 255)) << 16) | (((LONG)((g) * 255)) << 8) | (LONG)((b) * 255)) #define D3DRGBA(r, g, b, a) \ ( (((LONG)((a) * 255)) << 24) | (((LONG)((r) * 255)) << 16) \ | (((LONG)((g) * 255)) << 8) | (LONG)((b) * 255) \ ) #define RGB_GETRED(rgb) (((rgb) >> 16) & 0xff) #define RGB_GETGREEN(rgb) (((rgb) >> 8) & 0xff) #define RGB_GETBLUE(rgb) ((rgb) & 0xff) #define RGBA_SETALPHA(rgba, x) (((x) << 24) | ((rgba) & 0x00ffffff)) #define RGB_MAKE(r, g, b) ((D3DCOLOR) (((r) << 16) | ((g) << 8) | (b))) #define RGBA_TORGB(rgba) ((D3DCOLOR) ((rgba) & 0xffffff)) #define RGB_TORGBA(rgb) ((D3DCOLOR) ((rgb) | 0xff000000)) #endif #define D3DENUMRET_CANCEL DDENUMRET_CANCEL #define D3DENUMRET_OK DDENUMRET_OK typedef HRESULT (CALLBACK *LPD3DVALIDATECALLBACK)(void *ctx, DWORD offset); typedef HRESULT (CALLBACK *LPD3DENUMTEXTUREFORMATSCALLBACK)(DDSURFACEDESC *surface_desc, void *ctx); typedef HRESULT (CALLBACK *LPD3DENUMPIXELFORMATSCALLBACK)(DDPIXELFORMAT *format, void *ctx); #ifndef DX_SHARED_DEFINES typedef float D3DVALUE,*LPD3DVALUE; #ifndef D3DCOLOR_DEFINED typedef DWORD D3DCOLOR, *LPD3DCOLOR; #define D3DCOLOR_DEFINED #endif #ifndef D3DVECTOR_DEFINED typedef struct _D3DVECTOR { union { D3DVALUE x; D3DVALUE dvX; } DUMMYUNIONNAME1; union { D3DVALUE y; D3DVALUE dvY; } DUMMYUNIONNAME2; union { D3DVALUE z; D3DVALUE dvZ; } DUMMYUNIONNAME3; #if defined(__cplusplus) && defined(D3D_OVERLOADS) /* the definitions for these methods are in d3dvec.inl */ public: /*** constructors ***/ _D3DVECTOR() {} _D3DVECTOR(D3DVALUE f); _D3DVECTOR(D3DVALUE _x, D3DVALUE _y, D3DVALUE _z); _D3DVECTOR(const D3DVALUE f[3]); /*** assignment operators ***/ _D3DVECTOR& operator += (const _D3DVECTOR& v); _D3DVECTOR& operator -= (const _D3DVECTOR& v); _D3DVECTOR& operator *= (const _D3DVECTOR& v); _D3DVECTOR& operator /= (const _D3DVECTOR& v); _D3DVECTOR& operator *= (D3DVALUE s); _D3DVECTOR& operator /= (D3DVALUE s); /*** unary operators ***/ friend _D3DVECTOR operator + (const _D3DVECTOR& v); friend _D3DVECTOR operator - (const _D3DVECTOR& v); /*** binary operators ***/ friend _D3DVECTOR operator + (const _D3DVECTOR& v1, const _D3DVECTOR& v2); friend _D3DVECTOR operator - (const _D3DVECTOR& v1, const _D3DVECTOR& v2); friend _D3DVECTOR operator * (const _D3DVECTOR& v, D3DVALUE s); friend _D3DVECTOR operator * (D3DVALUE s, const _D3DVECTOR& v); friend _D3DVECTOR operator / (const _D3DVECTOR& v, D3DVALUE s); friend D3DVALUE SquareMagnitude(const _D3DVECTOR& v); friend D3DVALUE Magnitude(const _D3DVECTOR& v); friend _D3DVECTOR Normalize(const _D3DVECTOR& v); friend D3DVALUE DotProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2); friend _D3DVECTOR CrossProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2); #endif } D3DVECTOR,*LPD3DVECTOR; #define D3DVECTOR_DEFINED #endif #define DX_SHARED_DEFINES #endif /* DX_SHARED_DEFINES */ typedef DWORD D3DMATERIALHANDLE, *LPD3DMATERIALHANDLE; typedef DWORD D3DTEXTUREHANDLE, *LPD3DTEXTUREHANDLE; typedef DWORD D3DMATRIXHANDLE, *LPD3DMATRIXHANDLE; typedef struct _D3DCOLORVALUE { union { D3DVALUE r; D3DVALUE dvR; } DUMMYUNIONNAME1; union { D3DVALUE g; D3DVALUE dvG; } DUMMYUNIONNAME2; union { D3DVALUE b; D3DVALUE dvB; } DUMMYUNIONNAME3; union { D3DVALUE a; D3DVALUE dvA; } DUMMYUNIONNAME4; } D3DCOLORVALUE,*LPD3DCOLORVALUE; typedef struct _D3DRECT { union { LONG x1; LONG lX1; } DUMMYUNIONNAME1; union { LONG y1; LONG lY1; } DUMMYUNIONNAME2; union { LONG x2; LONG lX2; } DUMMYUNIONNAME3; union { LONG y2; LONG lY2; } DUMMYUNIONNAME4; } D3DRECT, *LPD3DRECT; typedef struct _D3DHVERTEX { DWORD dwFlags; union { D3DVALUE hx; D3DVALUE dvHX; } DUMMYUNIONNAME1; union { D3DVALUE hy; D3DVALUE dvHY; } DUMMYUNIONNAME2; union { D3DVALUE hz; D3DVALUE dvHZ; } DUMMYUNIONNAME3; } D3DHVERTEX, *LPD3DHVERTEX; /* * Transformed/lit vertices */ typedef struct _D3DTLVERTEX { union { D3DVALUE sx; D3DVALUE dvSX; } DUMMYUNIONNAME1; union { D3DVALUE sy; D3DVALUE dvSY; } DUMMYUNIONNAME2; union { D3DVALUE sz; D3DVALUE dvSZ; } DUMMYUNIONNAME3; union { D3DVALUE rhw; D3DVALUE dvRHW; } DUMMYUNIONNAME4; union { D3DCOLOR color; D3DCOLOR dcColor; } DUMMYUNIONNAME5; union { D3DCOLOR specular; D3DCOLOR dcSpecular; } DUMMYUNIONNAME6; union { D3DVALUE tu; D3DVALUE dvTU; } DUMMYUNIONNAME7; union { D3DVALUE tv; D3DVALUE dvTV; } DUMMYUNIONNAME8; #if defined(__cplusplus) && defined(D3D_OVERLOADS) public: _D3DTLVERTEX() {} _D3DTLVERTEX(const D3DVECTOR& v, float _rhw, D3DCOLOR _color, D3DCOLOR _specular, float _tu, float _tv) { sx = v.x; sy = v.y; sz = v.z; rhw = _rhw; color = _color; specular = _specular; tu = _tu; tv = _tv; } #endif } D3DTLVERTEX, *LPD3DTLVERTEX; typedef struct _D3DLVERTEX { union { D3DVALUE x; D3DVALUE dvX; } DUMMYUNIONNAME1; union { D3DVALUE y; D3DVALUE dvY; } DUMMYUNIONNAME2; union { D3DVALUE z; D3DVALUE dvZ; } DUMMYUNIONNAME3; DWORD dwReserved; union { D3DCOLOR color; D3DCOLOR dcColor; } DUMMYUNIONNAME4; union { D3DCOLOR specular; D3DCOLOR dcSpecular; } DUMMYUNIONNAME5; union { D3DVALUE tu; D3DVALUE dvTU; } DUMMYUNIONNAME6; union { D3DVALUE tv; D3DVALUE dvTV; } DUMMYUNIONNAME7; } D3DLVERTEX, *LPD3DLVERTEX; typedef struct _D3DVERTEX { union { D3DVALUE x; D3DVALUE dvX; } DUMMYUNIONNAME1; union { D3DVALUE y; D3DVALUE dvY; } DUMMYUNIONNAME2; union { D3DVALUE z; D3DVALUE dvZ; } DUMMYUNIONNAME3; union { D3DVALUE nx; D3DVALUE dvNX; } DUMMYUNIONNAME4; union { D3DVALUE ny; D3DVALUE dvNY; } DUMMYUNIONNAME5; union { D3DVALUE nz; D3DVALUE dvNZ; } DUMMYUNIONNAME6; union { D3DVALUE tu; D3DVALUE dvTU; } DUMMYUNIONNAME7; union { D3DVALUE tv; D3DVALUE dvTV; } DUMMYUNIONNAME8; #if defined(__cplusplus) && defined(D3D_OVERLOADS) public: _D3DVERTEX() {} _D3DVERTEX(const D3DVECTOR& v, const D3DVECTOR& n, float _tu, float _tv) { x = v.x; y = v.y; z = v.z; nx = n.x; ny = n.y; nz = n.z; tu = _tu; tv = _tv; } #endif } D3DVERTEX, *LPD3DVERTEX; typedef struct _D3DMATRIX { D3DVALUE _11, _12, _13, _14; D3DVALUE _21, _22, _23, _24; D3DVALUE _31, _32, _33, _34; D3DVALUE _41, _42, _43, _44; #if defined(__cplusplus) && defined(D3D_OVERLOADS) _D3DMATRIX() { } /* This is different from MS, but avoids anonymous structs. */ D3DVALUE &operator () (int r, int c) { return (&_11)[r*4 + c]; } const D3DVALUE &operator() (int r, int c) const { return (&_11)[r*4 + c]; } #endif } D3DMATRIX, *LPD3DMATRIX; #if defined(__cplusplus) && defined(D3D_OVERLOADS) #include #endif typedef struct _D3DVIEWPORT { DWORD dwSize; DWORD dwX; DWORD dwY; DWORD dwWidth; DWORD dwHeight; D3DVALUE dvScaleX; D3DVALUE dvScaleY; D3DVALUE dvMaxX; D3DVALUE dvMaxY; D3DVALUE dvMinZ; D3DVALUE dvMaxZ; } D3DVIEWPORT, *LPD3DVIEWPORT; typedef struct _D3DVIEWPORT2 { DWORD dwSize; DWORD dwX; DWORD dwY; DWORD dwWidth; DWORD dwHeight; D3DVALUE dvClipX; D3DVALUE dvClipY; D3DVALUE dvClipWidth; D3DVALUE dvClipHeight; D3DVALUE dvMinZ; D3DVALUE dvMaxZ; } D3DVIEWPORT2, *LPD3DVIEWPORT2; typedef struct _D3DVIEWPORT7 { DWORD dwX; DWORD dwY; DWORD dwWidth; DWORD dwHeight; D3DVALUE dvMinZ; D3DVALUE dvMaxZ; } D3DVIEWPORT7, *LPD3DVIEWPORT7; #define D3DMAXUSERCLIPPLANES 32 #define D3DCLIPPLANE0 (1 << 0) #define D3DCLIPPLANE1 (1 << 1) #define D3DCLIPPLANE2 (1 << 2) #define D3DCLIPPLANE3 (1 << 3) #define D3DCLIPPLANE4 (1 << 4) #define D3DCLIPPLANE5 (1 << 5) #define D3DCLIP_LEFT 0x00000001 #define D3DCLIP_RIGHT 0x00000002 #define D3DCLIP_TOP 0x00000004 #define D3DCLIP_BOTTOM 0x00000008 #define D3DCLIP_FRONT 0x00000010 #define D3DCLIP_BACK 0x00000020 #define D3DCLIP_GEN0 0x00000040 #define D3DCLIP_GEN1 0x00000080 #define D3DCLIP_GEN2 0x00000100 #define D3DCLIP_GEN3 0x00000200 #define D3DCLIP_GEN4 0x00000400 #define D3DCLIP_GEN5 0x00000800 #define D3DSTATUS_CLIPUNIONLEFT D3DCLIP_LEFT #define D3DSTATUS_CLIPUNIONRIGHT D3DCLIP_RIGHT #define D3DSTATUS_CLIPUNIONTOP D3DCLIP_TOP #define D3DSTATUS_CLIPUNIONBOTTOM D3DCLIP_BOTTOM #define D3DSTATUS_CLIPUNIONFRONT D3DCLIP_FRONT #define D3DSTATUS_CLIPUNIONBACK D3DCLIP_BACK #define D3DSTATUS_CLIPUNIONGEN0 D3DCLIP_GEN0 #define D3DSTATUS_CLIPUNIONGEN1 D3DCLIP_GEN1 #define D3DSTATUS_CLIPUNIONGEN2 D3DCLIP_GEN2 #define D3DSTATUS_CLIPUNIONGEN3 D3DCLIP_GEN3 #define D3DSTATUS_CLIPUNIONGEN4 D3DCLIP_GEN4 #define D3DSTATUS_CLIPUNIONGEN5 D3DCLIP_GEN5 #define D3DSTATUS_CLIPINTERSECTIONLEFT 0x00001000 #define D3DSTATUS_CLIPINTERSECTIONRIGHT 0x00002000 #define D3DSTATUS_CLIPINTERSECTIONTOP 0x00004000 #define D3DSTATUS_CLIPINTERSECTIONBOTTOM 0x00008000 #define D3DSTATUS_CLIPINTERSECTIONFRONT 0x00010000 #define D3DSTATUS_CLIPINTERSECTIONBACK 0x00020000 #define D3DSTATUS_CLIPINTERSECTIONGEN0 0x00040000 #define D3DSTATUS_CLIPINTERSECTIONGEN1 0x00080000 #define D3DSTATUS_CLIPINTERSECTIONGEN2 0x00100000 #define D3DSTATUS_CLIPINTERSECTIONGEN3 0x00200000 #define D3DSTATUS_CLIPINTERSECTIONGEN4 0x00400000 #define D3DSTATUS_CLIPINTERSECTIONGEN5 0x00800000 #define D3DSTATUS_ZNOTVISIBLE 0x01000000 #define D3DSTATUS_CLIPUNIONALL ( \ D3DSTATUS_CLIPUNIONLEFT | \ D3DSTATUS_CLIPUNIONRIGHT | \ D3DSTATUS_CLIPUNIONTOP | \ D3DSTATUS_CLIPUNIONBOTTOM | \ D3DSTATUS_CLIPUNIONFRONT | \ D3DSTATUS_CLIPUNIONBACK | \ D3DSTATUS_CLIPUNIONGEN0 | \ D3DSTATUS_CLIPUNIONGEN1 | \ D3DSTATUS_CLIPUNIONGEN2 | \ D3DSTATUS_CLIPUNIONGEN3 | \ D3DSTATUS_CLIPUNIONGEN4 | \ D3DSTATUS_CLIPUNIONGEN5 \ ) #define D3DSTATUS_CLIPINTERSECTIONALL ( \ D3DSTATUS_CLIPINTERSECTIONLEFT | \ D3DSTATUS_CLIPINTERSECTIONRIGHT | \ D3DSTATUS_CLIPINTERSECTIONTOP | \ D3DSTATUS_CLIPINTERSECTIONBOTTOM | \ D3DSTATUS_CLIPINTERSECTIONFRONT | \ D3DSTATUS_CLIPINTERSECTIONBACK | \ D3DSTATUS_CLIPINTERSECTIONGEN0 | \ D3DSTATUS_CLIPINTERSECTIONGEN1 | \ D3DSTATUS_CLIPINTERSECTIONGEN2 | \ D3DSTATUS_CLIPINTERSECTIONGEN3 | \ D3DSTATUS_CLIPINTERSECTIONGEN4 | \ D3DSTATUS_CLIPINTERSECTIONGEN5 \ ) #define D3DSTATUS_DEFAULT ( \ D3DSTATUS_CLIPINTERSECTIONALL | \ D3DSTATUS_ZNOTVISIBLE) #define D3DTRANSFORM_CLIPPED 0x00000001 #define D3DTRANSFORM_UNCLIPPED 0x00000002 typedef struct _D3DTRANSFORMDATA { DWORD dwSize; void *lpIn; DWORD dwInSize; void *lpOut; DWORD dwOutSize; D3DHVERTEX *lpHOut; DWORD dwClip; DWORD dwClipIntersection; DWORD dwClipUnion; D3DRECT drExtent; } D3DTRANSFORMDATA, *LPD3DTRANSFORMDATA; typedef struct _D3DLIGHTINGELEMENT { D3DVECTOR dvPosition; D3DVECTOR dvNormal; } D3DLIGHTINGELEMENT, *LPD3DLIGHTINGELEMENT; typedef struct _D3DMATERIAL { DWORD dwSize; union { D3DCOLORVALUE diffuse; D3DCOLORVALUE dcvDiffuse; } DUMMYUNIONNAME; union { D3DCOLORVALUE ambient; D3DCOLORVALUE dcvAmbient; } DUMMYUNIONNAME1; union { D3DCOLORVALUE specular; D3DCOLORVALUE dcvSpecular; } DUMMYUNIONNAME2; union { D3DCOLORVALUE emissive; D3DCOLORVALUE dcvEmissive; } DUMMYUNIONNAME3; union { D3DVALUE power; D3DVALUE dvPower; } DUMMYUNIONNAME4; D3DTEXTUREHANDLE hTexture; DWORD dwRampSize; } D3DMATERIAL, *LPD3DMATERIAL; typedef struct _D3DMATERIAL7 { union { D3DCOLORVALUE diffuse; D3DCOLORVALUE dcvDiffuse; } DUMMYUNIONNAME; union { D3DCOLORVALUE ambient; D3DCOLORVALUE dcvAmbient; } DUMMYUNIONNAME1; union { D3DCOLORVALUE specular; D3DCOLORVALUE dcvSpecular; } DUMMYUNIONNAME2; union { D3DCOLORVALUE emissive; D3DCOLORVALUE dcvEmissive; } DUMMYUNIONNAME3; union { D3DVALUE power; D3DVALUE dvPower; } DUMMYUNIONNAME4; } D3DMATERIAL7, *LPD3DMATERIAL7; typedef enum { D3DLIGHT_POINT = 1, D3DLIGHT_SPOT = 2, D3DLIGHT_DIRECTIONAL = 3, D3DLIGHT_PARALLELPOINT = 4, D3DLIGHT_GLSPOT = 5, D3DLIGHT_FORCE_DWORD = 0x7fffffff } D3DLIGHTTYPE; typedef struct _D3DLIGHT { DWORD dwSize; D3DLIGHTTYPE dltType; D3DCOLORVALUE dcvColor; D3DVECTOR dvPosition; D3DVECTOR dvDirection; D3DVALUE dvRange; D3DVALUE dvFalloff; D3DVALUE dvAttenuation0; D3DVALUE dvAttenuation1; D3DVALUE dvAttenuation2; D3DVALUE dvTheta; D3DVALUE dvPhi; } D3DLIGHT,*LPD3DLIGHT; typedef struct _D3DLIGHT7 { D3DLIGHTTYPE dltType; D3DCOLORVALUE dcvDiffuse; D3DCOLORVALUE dcvSpecular; D3DCOLORVALUE dcvAmbient; D3DVECTOR dvPosition; D3DVECTOR dvDirection; D3DVALUE dvRange; D3DVALUE dvFalloff; D3DVALUE dvAttenuation0; D3DVALUE dvAttenuation1; D3DVALUE dvAttenuation2; D3DVALUE dvTheta; D3DVALUE dvPhi; } D3DLIGHT7, *LPD3DLIGHT7; #define D3DLIGHT_ACTIVE 0x00000001 #define D3DLIGHT_NO_SPECULAR 0x00000002 #define D3DLIGHT_ALL (D3DLIGHT_ACTIVE | D3DLIGHT_NO_SPECULAR) /* 0x3 */ #define D3DLIGHT_RANGE_MAX ((float)sqrt(FLT_MAX)) typedef struct _D3DLIGHT2 { DWORD dwSize; D3DLIGHTTYPE dltType; D3DCOLORVALUE dcvColor; D3DVECTOR dvPosition; D3DVECTOR dvDirection; D3DVALUE dvRange; D3DVALUE dvFalloff; D3DVALUE dvAttenuation0; D3DVALUE dvAttenuation1; D3DVALUE dvAttenuation2; D3DVALUE dvTheta; D3DVALUE dvPhi; DWORD dwFlags; } D3DLIGHT2, *LPD3DLIGHT2; typedef struct _D3DLIGHTDATA { DWORD dwSize; D3DLIGHTINGELEMENT *lpIn; DWORD dwInSize; D3DTLVERTEX *lpOut; DWORD dwOutSize; } D3DLIGHTDATA, *LPD3DLIGHTDATA; #define D3DCOLOR_MONO 1 #define D3DCOLOR_RGB 2 typedef DWORD D3DCOLORMODEL; #define D3DCLEAR_TARGET 0x00000001 #define D3DCLEAR_ZBUFFER 0x00000002 #define D3DCLEAR_STENCIL 0x00000004 typedef enum _D3DOPCODE { D3DOP_POINT = 1, D3DOP_LINE = 2, D3DOP_TRIANGLE = 3, D3DOP_MATRIXLOAD = 4, D3DOP_MATRIXMULTIPLY = 5, D3DOP_STATETRANSFORM = 6, D3DOP_STATELIGHT = 7, D3DOP_STATERENDER = 8, D3DOP_PROCESSVERTICES = 9, D3DOP_TEXTURELOAD = 10, D3DOP_EXIT = 11, D3DOP_BRANCHFORWARD = 12, D3DOP_SPAN = 13, D3DOP_SETSTATUS = 14, D3DOP_FORCE_DWORD = 0x7fffffff } D3DOPCODE; typedef struct _D3DINSTRUCTION { BYTE bOpcode; BYTE bSize; WORD wCount; } D3DINSTRUCTION, *LPD3DINSTRUCTION; typedef struct _D3DTEXTURELOAD { D3DTEXTUREHANDLE hDestTexture; D3DTEXTUREHANDLE hSrcTexture; } D3DTEXTURELOAD, *LPD3DTEXTURELOAD; typedef struct _D3DPICKRECORD { BYTE bOpcode; BYTE bPad; DWORD dwOffset; D3DVALUE dvZ; } D3DPICKRECORD, *LPD3DPICKRECORD; typedef enum { D3DSHADE_FLAT = 1, D3DSHADE_GOURAUD = 2, D3DSHADE_PHONG = 3, D3DSHADE_FORCE_DWORD = 0x7fffffff } D3DSHADEMODE; typedef enum { D3DFILL_POINT = 1, D3DFILL_WIREFRAME = 2, D3DFILL_SOLID = 3, D3DFILL_FORCE_DWORD = 0x7fffffff } D3DFILLMODE; typedef struct _D3DLINEPATTERN { WORD wRepeatFactor; WORD wLinePattern; } D3DLINEPATTERN; typedef enum { D3DFILTER_NEAREST = 1, D3DFILTER_LINEAR = 2, D3DFILTER_MIPNEAREST = 3, D3DFILTER_MIPLINEAR = 4, D3DFILTER_LINEARMIPNEAREST = 5, D3DFILTER_LINEARMIPLINEAR = 6, D3DFILTER_FORCE_DWORD = 0x7fffffff } D3DTEXTUREFILTER; typedef enum { D3DBLEND_ZERO = 1, D3DBLEND_ONE = 2, D3DBLEND_SRCCOLOR = 3, D3DBLEND_INVSRCCOLOR = 4, D3DBLEND_SRCALPHA = 5, D3DBLEND_INVSRCALPHA = 6, D3DBLEND_DESTALPHA = 7, D3DBLEND_INVDESTALPHA = 8, D3DBLEND_DESTCOLOR = 9, D3DBLEND_INVDESTCOLOR = 10, D3DBLEND_SRCALPHASAT = 11, D3DBLEND_BOTHSRCALPHA = 12, D3DBLEND_BOTHINVSRCALPHA = 13, D3DBLEND_FORCE_DWORD = 0x7fffffff } D3DBLEND; typedef enum { D3DTBLEND_DECAL = 1, D3DTBLEND_MODULATE = 2, D3DTBLEND_DECALALPHA = 3, D3DTBLEND_MODULATEALPHA = 4, D3DTBLEND_DECALMASK = 5, D3DTBLEND_MODULATEMASK = 6, D3DTBLEND_COPY = 7, D3DTBLEND_ADD = 8, D3DTBLEND_FORCE_DWORD = 0x7fffffff } D3DTEXTUREBLEND; typedef enum _D3DTEXTUREADDRESS { D3DTADDRESS_WRAP = 1, D3DTADDRESS_MIRROR = 2, D3DTADDRESS_CLAMP = 3, D3DTADDRESS_BORDER = 4, D3DTADDRESS_FORCE_DWORD = 0x7fffffff } D3DTEXTUREADDRESS; typedef enum { D3DCULL_NONE = 1, D3DCULL_CW = 2, D3DCULL_CCW = 3, D3DCULL_FORCE_DWORD = 0x7fffffff } D3DCULL; typedef enum { D3DCMP_NEVER = 1, D3DCMP_LESS = 2, D3DCMP_EQUAL = 3, D3DCMP_LESSEQUAL = 4, D3DCMP_GREATER = 5, D3DCMP_NOTEQUAL = 6, D3DCMP_GREATEREQUAL = 7, D3DCMP_ALWAYS = 8, D3DCMP_FORCE_DWORD = 0x7fffffff } D3DCMPFUNC; typedef enum _D3DSTENCILOP { D3DSTENCILOP_KEEP = 1, D3DSTENCILOP_ZERO = 2, D3DSTENCILOP_REPLACE = 3, D3DSTENCILOP_INCRSAT = 4, D3DSTENCILOP_DECRSAT = 5, D3DSTENCILOP_INVERT = 6, D3DSTENCILOP_INCR = 7, D3DSTENCILOP_DECR = 8, D3DSTENCILOP_FORCE_DWORD = 0x7fffffff } D3DSTENCILOP; typedef enum _D3DFOGMODE { D3DFOG_NONE = 0, D3DFOG_EXP = 1, D3DFOG_EXP2 = 2, D3DFOG_LINEAR = 3, D3DFOG_FORCE_DWORD = 0x7fffffff } D3DFOGMODE; typedef enum _D3DZBUFFERTYPE { D3DZB_FALSE = 0, D3DZB_TRUE = 1, D3DZB_USEW = 2, D3DZB_FORCE_DWORD = 0x7fffffff } D3DZBUFFERTYPE; typedef enum _D3DANTIALIASMODE { D3DANTIALIAS_NONE = 0, D3DANTIALIAS_SORTDEPENDENT = 1, D3DANTIALIAS_SORTINDEPENDENT = 2, D3DANTIALIAS_FORCE_DWORD = 0x7fffffff } D3DANTIALIASMODE; typedef enum { D3DVT_VERTEX = 1, D3DVT_LVERTEX = 2, D3DVT_TLVERTEX = 3, D3DVT_FORCE_DWORD = 0x7fffffff } D3DVERTEXTYPE; typedef enum { D3DPT_POINTLIST = 1, D3DPT_LINELIST = 2, D3DPT_LINESTRIP = 3, D3DPT_TRIANGLELIST = 4, D3DPT_TRIANGLESTRIP = 5, D3DPT_TRIANGLEFAN = 6, D3DPT_FORCE_DWORD = 0x7fffffff } D3DPRIMITIVETYPE; #define D3DSTATE_OVERRIDE_BIAS 256 #define D3DSTATE_OVERRIDE(type) (D3DRENDERSTATETYPE)(((DWORD) (type) + D3DSTATE_OVERRIDE_BIAS)) typedef enum _D3DTRANSFORMSTATETYPE { D3DTRANSFORMSTATE_WORLD = 1, D3DTRANSFORMSTATE_VIEW = 2, D3DTRANSFORMSTATE_PROJECTION = 3, D3DTRANSFORMSTATE_WORLD1 = 4, D3DTRANSFORMSTATE_WORLD2 = 5, D3DTRANSFORMSTATE_WORLD3 = 6, D3DTRANSFORMSTATE_TEXTURE0 = 16, D3DTRANSFORMSTATE_TEXTURE1 = 17, D3DTRANSFORMSTATE_TEXTURE2 = 18, D3DTRANSFORMSTATE_TEXTURE3 = 19, D3DTRANSFORMSTATE_TEXTURE4 = 20, D3DTRANSFORMSTATE_TEXTURE5 = 21, D3DTRANSFORMSTATE_TEXTURE6 = 22, D3DTRANSFORMSTATE_TEXTURE7 = 23, D3DTRANSFORMSTATE_FORCE_DWORD = 0x7fffffff } D3DTRANSFORMSTATETYPE; typedef enum { D3DLIGHTSTATE_MATERIAL = 1, D3DLIGHTSTATE_AMBIENT = 2, D3DLIGHTSTATE_COLORMODEL = 3, D3DLIGHTSTATE_FOGMODE = 4, D3DLIGHTSTATE_FOGSTART = 5, D3DLIGHTSTATE_FOGEND = 6, D3DLIGHTSTATE_FOGDENSITY = 7, D3DLIGHTSTATE_COLORVERTEX = 8, D3DLIGHTSTATE_FORCE_DWORD = 0x7fffffff } D3DLIGHTSTATETYPE; typedef enum { D3DRENDERSTATE_TEXTUREHANDLE = 1, D3DRENDERSTATE_ANTIALIAS = 2, D3DRENDERSTATE_TEXTUREADDRESS = 3, D3DRENDERSTATE_TEXTUREPERSPECTIVE = 4, D3DRENDERSTATE_WRAPU = 5, /* <= d3d6 */ D3DRENDERSTATE_WRAPV = 6, /* <= d3d6 */ D3DRENDERSTATE_ZENABLE = 7, D3DRENDERSTATE_FILLMODE = 8, D3DRENDERSTATE_SHADEMODE = 9, D3DRENDERSTATE_LINEPATTERN = 10, D3DRENDERSTATE_MONOENABLE = 11, /* <= d3d6 */ D3DRENDERSTATE_ROP2 = 12, /* <= d3d6 */ D3DRENDERSTATE_PLANEMASK = 13, /* <= d3d6 */ D3DRENDERSTATE_ZWRITEENABLE = 14, D3DRENDERSTATE_ALPHATESTENABLE = 15, D3DRENDERSTATE_LASTPIXEL = 16, D3DRENDERSTATE_TEXTUREMAG = 17, D3DRENDERSTATE_TEXTUREMIN = 18, D3DRENDERSTATE_SRCBLEND = 19, D3DRENDERSTATE_DESTBLEND = 20, D3DRENDERSTATE_TEXTUREMAPBLEND = 21, D3DRENDERSTATE_CULLMODE = 22, D3DRENDERSTATE_ZFUNC = 23, D3DRENDERSTATE_ALPHAREF = 24, D3DRENDERSTATE_ALPHAFUNC = 25, D3DRENDERSTATE_DITHERENABLE = 26, D3DRENDERSTATE_ALPHABLENDENABLE = 27, D3DRENDERSTATE_FOGENABLE = 28, D3DRENDERSTATE_SPECULARENABLE = 29, D3DRENDERSTATE_ZVISIBLE = 30, D3DRENDERSTATE_SUBPIXEL = 31, /* <= d3d6 */ D3DRENDERSTATE_SUBPIXELX = 32, /* <= d3d6 */ D3DRENDERSTATE_STIPPLEDALPHA = 33, D3DRENDERSTATE_FOGCOLOR = 34, D3DRENDERSTATE_FOGTABLEMODE = 35, D3DRENDERSTATE_FOGTABLESTART = 36, D3DRENDERSTATE_FOGTABLEEND = 37, D3DRENDERSTATE_FOGTABLEDENSITY = 38, D3DRENDERSTATE_FOGSTART = 36, D3DRENDERSTATE_FOGEND = 37, D3DRENDERSTATE_FOGDENSITY = 38, D3DRENDERSTATE_STIPPLEENABLE = 39, /* <= d3d6 */ /* d3d5 */ D3DRENDERSTATE_EDGEANTIALIAS = 40, D3DRENDERSTATE_COLORKEYENABLE = 41, D3DRENDERSTATE_BORDERCOLOR = 43, D3DRENDERSTATE_TEXTUREADDRESSU = 44, D3DRENDERSTATE_TEXTUREADDRESSV = 45, D3DRENDERSTATE_MIPMAPLODBIAS = 46, /* <= d3d6 */ D3DRENDERSTATE_ZBIAS = 47, D3DRENDERSTATE_RANGEFOGENABLE = 48, D3DRENDERSTATE_ANISOTROPY = 49, /* <= d3d6 */ D3DRENDERSTATE_FLUSHBATCH = 50, /* <= d3d6 */ /* d3d6 */ D3DRENDERSTATE_TRANSLUCENTSORTINDEPENDENT = 51, /* <= d3d6 */ D3DRENDERSTATE_STENCILENABLE = 52, D3DRENDERSTATE_STENCILFAIL = 53, D3DRENDERSTATE_STENCILZFAIL = 54, D3DRENDERSTATE_STENCILPASS = 55, D3DRENDERSTATE_STENCILFUNC = 56, D3DRENDERSTATE_STENCILREF = 57, D3DRENDERSTATE_STENCILMASK = 58, D3DRENDERSTATE_STENCILWRITEMASK = 59, D3DRENDERSTATE_TEXTUREFACTOR = 60, D3DRENDERSTATE_STIPPLEPATTERN00 = 64, D3DRENDERSTATE_STIPPLEPATTERN01 = 65, D3DRENDERSTATE_STIPPLEPATTERN02 = 66, D3DRENDERSTATE_STIPPLEPATTERN03 = 67, D3DRENDERSTATE_STIPPLEPATTERN04 = 68, D3DRENDERSTATE_STIPPLEPATTERN05 = 69, D3DRENDERSTATE_STIPPLEPATTERN06 = 70, D3DRENDERSTATE_STIPPLEPATTERN07 = 71, D3DRENDERSTATE_STIPPLEPATTERN08 = 72, D3DRENDERSTATE_STIPPLEPATTERN09 = 73, D3DRENDERSTATE_STIPPLEPATTERN10 = 74, D3DRENDERSTATE_STIPPLEPATTERN11 = 75, D3DRENDERSTATE_STIPPLEPATTERN12 = 76, D3DRENDERSTATE_STIPPLEPATTERN13 = 77, D3DRENDERSTATE_STIPPLEPATTERN14 = 78, D3DRENDERSTATE_STIPPLEPATTERN15 = 79, D3DRENDERSTATE_STIPPLEPATTERN16 = 80, D3DRENDERSTATE_STIPPLEPATTERN17 = 81, D3DRENDERSTATE_STIPPLEPATTERN18 = 82, D3DRENDERSTATE_STIPPLEPATTERN19 = 83, D3DRENDERSTATE_STIPPLEPATTERN20 = 84, D3DRENDERSTATE_STIPPLEPATTERN21 = 85, D3DRENDERSTATE_STIPPLEPATTERN22 = 86, D3DRENDERSTATE_STIPPLEPATTERN23 = 87, D3DRENDERSTATE_STIPPLEPATTERN24 = 88, D3DRENDERSTATE_STIPPLEPATTERN25 = 89, D3DRENDERSTATE_STIPPLEPATTERN26 = 90, D3DRENDERSTATE_STIPPLEPATTERN27 = 91, D3DRENDERSTATE_STIPPLEPATTERN28 = 92, D3DRENDERSTATE_STIPPLEPATTERN29 = 93, D3DRENDERSTATE_STIPPLEPATTERN30 = 94, D3DRENDERSTATE_STIPPLEPATTERN31 = 95, D3DRENDERSTATE_WRAP0 = 128, D3DRENDERSTATE_WRAP1 = 129, D3DRENDERSTATE_WRAP2 = 130, D3DRENDERSTATE_WRAP3 = 131, D3DRENDERSTATE_WRAP4 = 132, D3DRENDERSTATE_WRAP5 = 133, D3DRENDERSTATE_WRAP6 = 134, D3DRENDERSTATE_WRAP7 = 135, /* d3d7 */ D3DRENDERSTATE_CLIPPING = 136, D3DRENDERSTATE_LIGHTING = 137, D3DRENDERSTATE_EXTENTS = 138, D3DRENDERSTATE_AMBIENT = 139, D3DRENDERSTATE_FOGVERTEXMODE = 140, D3DRENDERSTATE_COLORVERTEX = 141, D3DRENDERSTATE_LOCALVIEWER = 142, D3DRENDERSTATE_NORMALIZENORMALS = 143, D3DRENDERSTATE_COLORKEYBLENDENABLE = 144, D3DRENDERSTATE_DIFFUSEMATERIALSOURCE = 145, D3DRENDERSTATE_SPECULARMATERIALSOURCE = 146, D3DRENDERSTATE_AMBIENTMATERIALSOURCE = 147, D3DRENDERSTATE_EMISSIVEMATERIALSOURCE = 148, D3DRENDERSTATE_VERTEXBLEND = 151, D3DRENDERSTATE_CLIPPLANEENABLE = 152, D3DRENDERSTATE_FORCE_DWORD = 0x7fffffff /* FIXME: We have some retired values that are being reused for DirectX 7 */ } D3DRENDERSTATETYPE; typedef enum _D3DMATERIALCOLORSOURCE { D3DMCS_MATERIAL = 0, D3DMCS_COLOR1 = 1, D3DMCS_COLOR2 = 2, D3DMCS_FORCE_DWORD = 0x7fffffff } D3DMATERIALCOLORSOURCE; #define D3DRENDERSTATE_BLENDENABLE D3DRENDERSTATE_ALPHABLENDENABLE #define D3DRENDERSTATE_WRAPBIAS __MSABI_LONG(128U) #define D3DWRAP_U __MSABI_LONG(0x00000001) #define D3DWRAP_V __MSABI_LONG(0x00000002) #define D3DWRAPCOORD_0 __MSABI_LONG(0x00000001) #define D3DWRAPCOORD_1 __MSABI_LONG(0x00000002) #define D3DWRAPCOORD_2 __MSABI_LONG(0x00000004) #define D3DWRAPCOORD_3 __MSABI_LONG(0x00000008) #define D3DRENDERSTATE_STIPPLEPATTERN(y) (D3DRENDERSTATE_STIPPLEPATTERN00 + (y)) typedef struct _D3DSTATE { union { D3DTRANSFORMSTATETYPE dtstTransformStateType; D3DLIGHTSTATETYPE dlstLightStateType; D3DRENDERSTATETYPE drstRenderStateType; } DUMMYUNIONNAME1; union { DWORD dwArg[1]; D3DVALUE dvArg[1]; } DUMMYUNIONNAME2; } D3DSTATE, *LPD3DSTATE; typedef struct _D3DMATRIXLOAD { D3DMATRIXHANDLE hDestMatrix; D3DMATRIXHANDLE hSrcMatrix; } D3DMATRIXLOAD, *LPD3DMATRIXLOAD; typedef struct _D3DMATRIXMULTIPLY { D3DMATRIXHANDLE hDestMatrix; D3DMATRIXHANDLE hSrcMatrix1; D3DMATRIXHANDLE hSrcMatrix2; } D3DMATRIXMULTIPLY, *LPD3DMATRIXMULTIPLY; typedef struct _D3DPROCESSVERTICES { DWORD dwFlags; WORD wStart; WORD wDest; DWORD dwCount; DWORD dwReserved; } D3DPROCESSVERTICES, *LPD3DPROCESSVERTICES; #define D3DPROCESSVERTICES_TRANSFORMLIGHT __MSABI_LONG(0x00000000) #define D3DPROCESSVERTICES_TRANSFORM __MSABI_LONG(0x00000001) #define D3DPROCESSVERTICES_COPY __MSABI_LONG(0x00000002) #define D3DPROCESSVERTICES_OPMASK __MSABI_LONG(0x00000007) #define D3DPROCESSVERTICES_UPDATEEXTENTS __MSABI_LONG(0x00000008) #define D3DPROCESSVERTICES_NOCOLOR __MSABI_LONG(0x00000010) typedef enum _D3DTEXTURESTAGESTATETYPE { D3DTSS_COLOROP = 1, D3DTSS_COLORARG1 = 2, D3DTSS_COLORARG2 = 3, D3DTSS_ALPHAOP = 4, D3DTSS_ALPHAARG1 = 5, D3DTSS_ALPHAARG2 = 6, D3DTSS_BUMPENVMAT00 = 7, D3DTSS_BUMPENVMAT01 = 8, D3DTSS_BUMPENVMAT10 = 9, D3DTSS_BUMPENVMAT11 = 10, D3DTSS_TEXCOORDINDEX = 11, D3DTSS_ADDRESS = 12, D3DTSS_ADDRESSU = 13, D3DTSS_ADDRESSV = 14, D3DTSS_BORDERCOLOR = 15, D3DTSS_MAGFILTER = 16, D3DTSS_MINFILTER = 17, D3DTSS_MIPFILTER = 18, D3DTSS_MIPMAPLODBIAS = 19, D3DTSS_MAXMIPLEVEL = 20, D3DTSS_MAXANISOTROPY = 21, D3DTSS_BUMPENVLSCALE = 22, D3DTSS_BUMPENVLOFFSET = 23, D3DTSS_TEXTURETRANSFORMFLAGS = 24, D3DTSS_FORCE_DWORD = 0x7fffffff } D3DTEXTURESTAGESTATETYPE; #define D3DTSS_TCI_PASSTHRU 0x00000000 #define D3DTSS_TCI_CAMERASPACENORMAL 0x00010000 #define D3DTSS_TCI_CAMERASPACEPOSITION 0x00020000 #define D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR 0x00030000 typedef enum _D3DTEXTUREOP { D3DTOP_DISABLE = 1, D3DTOP_SELECTARG1 = 2, D3DTOP_SELECTARG2 = 3, D3DTOP_MODULATE = 4, D3DTOP_MODULATE2X = 5, D3DTOP_MODULATE4X = 6, D3DTOP_ADD = 7, D3DTOP_ADDSIGNED = 8, D3DTOP_ADDSIGNED2X = 9, D3DTOP_SUBTRACT = 10, D3DTOP_ADDSMOOTH = 11, D3DTOP_BLENDDIFFUSEALPHA = 12, D3DTOP_BLENDTEXTUREALPHA = 13, D3DTOP_BLENDFACTORALPHA = 14, D3DTOP_BLENDTEXTUREALPHAPM = 15, D3DTOP_BLENDCURRENTALPHA = 16, D3DTOP_PREMODULATE = 17, D3DTOP_MODULATEALPHA_ADDCOLOR = 18, D3DTOP_MODULATECOLOR_ADDALPHA = 19, D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20, D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21, D3DTOP_BUMPENVMAP = 22, D3DTOP_BUMPENVMAPLUMINANCE = 23, D3DTOP_DOTPRODUCT3 = 24, D3DTOP_FORCE_DWORD = 0x7fffffff } D3DTEXTUREOP; #define D3DTA_SELECTMASK 0x0000000f #define D3DTA_DIFFUSE 0x00000000 #define D3DTA_CURRENT 0x00000001 #define D3DTA_TEXTURE 0x00000002 #define D3DTA_TFACTOR 0x00000003 #define D3DTA_SPECULAR 0x00000004 #define D3DTA_COMPLEMENT 0x00000010 #define D3DTA_ALPHAREPLICATE 0x00000020 typedef enum _D3DTEXTUREMAGFILTER { D3DTFG_POINT = 1, D3DTFG_LINEAR = 2, D3DTFG_FLATCUBIC = 3, D3DTFG_GAUSSIANCUBIC = 4, D3DTFG_ANISOTROPIC = 5, D3DTFG_FORCE_DWORD = 0x7fffffff } D3DTEXTUREMAGFILTER; typedef enum _D3DTEXTUREMINFILTER { D3DTFN_POINT = 1, D3DTFN_LINEAR = 2, D3DTFN_ANISOTROPIC = 3, D3DTFN_FORCE_DWORD = 0x7fffffff } D3DTEXTUREMINFILTER; typedef enum _D3DTEXTUREMIPFILTER { D3DTFP_NONE = 1, D3DTFP_POINT = 2, D3DTFP_LINEAR = 3, D3DTFP_FORCE_DWORD = 0x7fffffff } D3DTEXTUREMIPFILTER; #define D3DTRIFLAG_START __MSABI_LONG(0x00000000) #define D3DTRIFLAG_STARTFLAT(len) (len) #define D3DTRIFLAG_ODD __MSABI_LONG(0x0000001e) #define D3DTRIFLAG_EVEN __MSABI_LONG(0x0000001f) #define D3DTRIFLAG_EDGEENABLE1 __MSABI_LONG(0x00000100) #define D3DTRIFLAG_EDGEENABLE2 __MSABI_LONG(0x00000200) #define D3DTRIFLAG_EDGEENABLE3 __MSABI_LONG(0x00000400) #define D3DTRIFLAG_EDGEENABLETRIANGLE \ (D3DTRIFLAG_EDGEENABLE1 | D3DTRIFLAG_EDGEENABLE2 | D3DTRIFLAG_EDGEENABLE3) typedef struct _D3DTRIANGLE { union { WORD v1; WORD wV1; } DUMMYUNIONNAME1; union { WORD v2; WORD wV2; } DUMMYUNIONNAME2; union { WORD v3; WORD wV3; } DUMMYUNIONNAME3; WORD wFlags; } D3DTRIANGLE, *LPD3DTRIANGLE; typedef struct _D3DLINE { union { WORD v1; WORD wV1; } DUMMYUNIONNAME1; union { WORD v2; WORD wV2; } DUMMYUNIONNAME2; } D3DLINE, *LPD3DLINE; typedef struct _D3DSPAN { WORD wCount; WORD wFirst; } D3DSPAN, *LPD3DSPAN; typedef struct _D3DPOINT { WORD wCount; WORD wFirst; } D3DPOINT, *LPD3DPOINT; typedef struct _D3DBRANCH { DWORD dwMask; DWORD dwValue; WINBOOL bNegate; DWORD dwOffset; } D3DBRANCH, *LPD3DBRANCH; typedef struct _D3DSTATUS { DWORD dwFlags; DWORD dwStatus; D3DRECT drExtent; } D3DSTATUS, *LPD3DSTATUS; #define D3DSETSTATUS_STATUS __MSABI_LONG(0x00000001) #define D3DSETSTATUS_EXTENTS __MSABI_LONG(0x00000002) #define D3DSETSTATUS_ALL (D3DSETSTATUS_STATUS | D3DSETSTATUS_EXTENTS) typedef struct _D3DCLIPSTATUS { DWORD dwFlags; DWORD dwStatus; float minx, maxx; float miny, maxy; float minz, maxz; } D3DCLIPSTATUS, *LPD3DCLIPSTATUS; #define D3DCLIPSTATUS_STATUS __MSABI_LONG(0x00000001) #define D3DCLIPSTATUS_EXTENTS2 __MSABI_LONG(0x00000002) #define D3DCLIPSTATUS_EXTENTS3 __MSABI_LONG(0x00000004) typedef struct { DWORD dwSize; DWORD dwTrianglesDrawn; DWORD dwLinesDrawn; DWORD dwPointsDrawn; DWORD dwSpansDrawn; DWORD dwVerticesProcessed; } D3DSTATS, *LPD3DSTATS; #define D3DEXECUTE_CLIPPED __MSABI_LONG(0x00000001) #define D3DEXECUTE_UNCLIPPED __MSABI_LONG(0x00000002) typedef struct _D3DEXECUTEDATA { DWORD dwSize; DWORD dwVertexOffset; DWORD dwVertexCount; DWORD dwInstructionOffset; DWORD dwInstructionLength; DWORD dwHVertexOffset; D3DSTATUS dsStatus; } D3DEXECUTEDATA, *LPD3DEXECUTEDATA; #define D3DPAL_FREE 0x00 #define D3DPAL_READONLY 0x40 #define D3DPAL_RESERVED 0x80 typedef struct _D3DVERTEXBUFFERDESC { DWORD dwSize; DWORD dwCaps; DWORD dwFVF; DWORD dwNumVertices; } D3DVERTEXBUFFERDESC, *LPD3DVERTEXBUFFERDESC; #define D3DVBCAPS_SYSTEMMEMORY __MSABI_LONG(0x00000800) #define D3DVBCAPS_WRITEONLY __MSABI_LONG(0x00010000) #define D3DVBCAPS_OPTIMIZED __MSABI_LONG(0x80000000) #define D3DVBCAPS_DONOTCLIP __MSABI_LONG(0x00000001) #define D3DVOP_LIGHT (1 << 10) #define D3DVOP_TRANSFORM (1 << 0) #define D3DVOP_CLIP (1 << 2) #define D3DVOP_EXTENTS (1 << 3) #define D3DMAXNUMVERTICES ((1<<16) - 1) #define D3DMAXNUMPRIMITIVES ((1<<16) - 1) #define D3DPV_DONOTCOPYDATA (1 << 0) #define D3DFVF_RESERVED0 0x001 #define D3DFVF_POSITION_MASK 0x00E #define D3DFVF_XYZ 0x002 #define D3DFVF_XYZRHW 0x004 #define D3DFVF_XYZB1 0x006 #define D3DFVF_XYZB2 0x008 #define D3DFVF_XYZB3 0x00a #define D3DFVF_XYZB4 0x00c #define D3DFVF_XYZB5 0x00e #define D3DFVF_NORMAL 0x010 #define D3DFVF_RESERVED1 0x020 #define D3DFVF_DIFFUSE 0x040 #define D3DFVF_SPECULAR 0x080 #define D3DFVF_TEXCOUNT_MASK 0xf00 #define D3DFVF_TEXCOUNT_SHIFT 8 #define D3DFVF_TEX0 0x000 #define D3DFVF_TEX1 0x100 #define D3DFVF_TEX2 0x200 #define D3DFVF_TEX3 0x300 #define D3DFVF_TEX4 0x400 #define D3DFVF_TEX5 0x500 #define D3DFVF_TEX6 0x600 #define D3DFVF_TEX7 0x700 #define D3DFVF_TEX8 0x800 #define D3DFVF_RESERVED2 0xf000 #define D3DFVF_VERTEX ( D3DFVF_XYZ | D3DFVF_NORMAL | D3DFVF_TEX1 ) #define D3DFVF_LVERTEX ( D3DFVF_XYZ | D3DFVF_RESERVED1 | D3DFVF_DIFFUSE | \ D3DFVF_SPECULAR | D3DFVF_TEX1 ) #define D3DFVF_TLVERTEX ( D3DFVF_XYZRHW | D3DFVF_DIFFUSE | D3DFVF_SPECULAR | \ D3DFVF_TEX1 ) typedef struct _D3DDP_PTRSTRIDE { void *lpvData; DWORD dwStride; } D3DDP_PTRSTRIDE; #define D3DDP_MAXTEXCOORD 8 typedef struct _D3DDRAWPRIMITIVESTRIDEDDATA { D3DDP_PTRSTRIDE position; D3DDP_PTRSTRIDE normal; D3DDP_PTRSTRIDE diffuse; D3DDP_PTRSTRIDE specular; D3DDP_PTRSTRIDE textureCoords[D3DDP_MAXTEXCOORD]; } D3DDRAWPRIMITIVESTRIDEDDATA ,*LPD3DDRAWPRIMITIVESTRIDEDDATA; #define D3DVIS_INSIDE_FRUSTUM 0 #define D3DVIS_INTERSECT_FRUSTUM 1 #define D3DVIS_OUTSIDE_FRUSTUM 2 #define D3DVIS_INSIDE_LEFT 0 #define D3DVIS_INTERSECT_LEFT (1 << 2) #define D3DVIS_OUTSIDE_LEFT (2 << 2) #define D3DVIS_INSIDE_RIGHT 0 #define D3DVIS_INTERSECT_RIGHT (1 << 4) #define D3DVIS_OUTSIDE_RIGHT (2 << 4) #define D3DVIS_INSIDE_TOP 0 #define D3DVIS_INTERSECT_TOP (1 << 6) #define D3DVIS_OUTSIDE_TOP (2 << 6) #define D3DVIS_INSIDE_BOTTOM 0 #define D3DVIS_INTERSECT_BOTTOM (1 << 8) #define D3DVIS_OUTSIDE_BOTTOM (2 << 8) #define D3DVIS_INSIDE_NEAR 0 #define D3DVIS_INTERSECT_NEAR (1 << 10) #define D3DVIS_OUTSIDE_NEAR (2 << 10) #define D3DVIS_INSIDE_FAR 0 #define D3DVIS_INTERSECT_FAR (1 << 12) #define D3DVIS_OUTSIDE_FAR (2 << 12) #define D3DVIS_MASK_FRUSTUM (3 << 0) #define D3DVIS_MASK_LEFT (3 << 2) #define D3DVIS_MASK_RIGHT (3 << 4) #define D3DVIS_MASK_TOP (3 << 6) #define D3DVIS_MASK_BOTTOM (3 << 8) #define D3DVIS_MASK_NEAR (3 << 10) #define D3DVIS_MASK_FAR (3 << 12) #define D3DDEVINFOID_TEXTUREMANAGER 1 #define D3DDEVINFOID_D3DTEXTUREMANAGER 2 #define D3DDEVINFOID_TEXTURING 3 typedef enum _D3DSTATEBLOCKTYPE { D3DSBT_ALL = 1, D3DSBT_PIXELSTATE = 2, D3DSBT_VERTEXSTATE = 3, D3DSBT_FORCE_DWORD = 0xffffffff } D3DSTATEBLOCKTYPE; typedef enum _D3DVERTEXBLENDFLAGS { D3DVBLEND_DISABLE = 0, D3DVBLEND_1WEIGHT = 1, D3DVBLEND_2WEIGHTS = 2, D3DVBLEND_3WEIGHTS = 3, } D3DVERTEXBLENDFLAGS; typedef enum _D3DTEXTURETRANSFORMFLAGS { D3DTTFF_DISABLE = 0, D3DTTFF_COUNT1 = 1, D3DTTFF_COUNT2 = 2, D3DTTFF_COUNT3 = 3, D3DTTFF_COUNT4 = 4, D3DTTFF_PROJECTED = 256, D3DTTFF_FORCE_DWORD = 0x7fffffff } D3DTEXTURETRANSFORMFLAGS; #define D3DFVF_TEXTUREFORMAT2 0 #define D3DFVF_TEXTUREFORMAT1 3 #define D3DFVF_TEXTUREFORMAT3 1 #define D3DFVF_TEXTUREFORMAT4 2 #define D3DFVF_TEXCOORDSIZE3(CoordIndex) (D3DFVF_TEXTUREFORMAT3 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE2(CoordIndex) (D3DFVF_TEXTUREFORMAT2) #define D3DFVF_TEXCOORDSIZE4(CoordIndex) (D3DFVF_TEXTUREFORMAT4 << (CoordIndex*2 + 16)) #define D3DFVF_TEXCOORDSIZE1(CoordIndex) (D3DFVF_TEXTUREFORMAT1 << (CoordIndex*2 + 16)) #ifdef __i386__ #include #endif #endif dxvk-0~git20220822.9df86f2/d3dvec.inl000066400000000000000000000062651430055512200166640ustar00rootroot00000000000000/* * Copyright (C) 2000 Ove Kaaven * * 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 */ #ifndef __WINE_D3DVEC_INL #define __WINE_D3DVEC_INL #include /*** constructors ***/ inline _D3DVECTOR::_D3DVECTOR(D3DVALUE f) { x = y = z = f; } inline _D3DVECTOR::_D3DVECTOR(D3DVALUE _x, D3DVALUE _y, D3DVALUE _z) { x = _x; y = _y; z = _z; } /*** assignment operators ***/ inline _D3DVECTOR& _D3DVECTOR::operator += (const _D3DVECTOR& v) { x += v.x; y += v.y; z += v.z; return *this; } inline _D3DVECTOR& _D3DVECTOR::operator -= (const _D3DVECTOR& v) { x -= v.x; y -= v.y; z -= v.z; return *this; } inline _D3DVECTOR& _D3DVECTOR::operator *= (const _D3DVECTOR& v) { x *= v.x; y *= v.y; z *= v.z; return *this; } inline _D3DVECTOR& _D3DVECTOR::operator /= (const _D3DVECTOR& v) { x /= v.x; y /= v.y; z /= v.z; return *this; } inline _D3DVECTOR& _D3DVECTOR::operator *= (D3DVALUE s) { x *= s; y *= s; z *= s; return *this; } inline _D3DVECTOR& _D3DVECTOR::operator /= (D3DVALUE s) { x /= s; y /= s; z /= s; return *this; } /*** unary operators ***/ inline _D3DVECTOR operator + (const _D3DVECTOR& v) { return v; } inline _D3DVECTOR operator - (const _D3DVECTOR& v) { return _D3DVECTOR(-v.x, -v.y, -v.z); } /*** binary operators ***/ inline _D3DVECTOR operator + (const _D3DVECTOR& v1, const _D3DVECTOR& v2) { return _D3DVECTOR(v1.x+v2.x, v1.y+v2.y, v1.z+v2.z); } inline _D3DVECTOR operator - (const _D3DVECTOR& v1, const _D3DVECTOR& v2) { return _D3DVECTOR(v1.x-v2.x, v1.y-v2.y, v1.z-v2.z); } inline _D3DVECTOR operator * (const _D3DVECTOR& v, D3DVALUE s) { return _D3DVECTOR(v.x*s, v.y*s, v.z*s); } inline _D3DVECTOR operator * (D3DVALUE s, const _D3DVECTOR& v) { return _D3DVECTOR(v.x*s, v.y*s, v.z*s); } inline _D3DVECTOR operator / (const _D3DVECTOR& v, D3DVALUE s) { return _D3DVECTOR(v.x/s, v.y/s, v.z/s); } inline D3DVALUE SquareMagnitude(const _D3DVECTOR& v) { return v.x*v.x + v.y*v.y + v.z*v.z; /* DotProduct(v, v) */ } inline D3DVALUE Magnitude(const _D3DVECTOR& v) { return sqrt(SquareMagnitude(v)); } inline _D3DVECTOR Normalize(const _D3DVECTOR& v) { return v / Magnitude(v); } inline D3DVALUE DotProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2) { return v1.x*v2.x + v1.y*v2.y + v1.z*v2.z; } inline _D3DVECTOR CrossProduct(const _D3DVECTOR& v1, const _D3DVECTOR& v2) { _D3DVECTOR res; /* this is a left-handed cross product, right? */ res.x = v1.y * v2.z - v1.z * v2.y; res.y = v1.z * v2.x - v1.x * v2.z; res.z = v1.x * v2.y - v1.y * v2.x; return res; } #endif dxvk-0~git20220822.9df86f2/d3dx9.h000066400000000000000000000036021430055512200161040ustar00rootroot00000000000000/* * Copyright (C) 2007 David Adam * * 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 */ #ifndef __D3DX9_H__ #define __D3DX9_H__ #include #define D3DX_DEFAULT ((UINT)-1) #define D3DX_DEFAULT_NONPOW2 ((UINT)-2) #define D3DX_DEFAULT_FLOAT FLT_MAX #define D3DX_FROM_FILE ((UINT)-3) #define D3DFMT_FROM_FILE ((D3DFORMAT)-3) #include "d3d9.h" #include "d3dx9math.h" #include "d3dx9core.h" #include "d3dx9xof.h" #include "d3dx9mesh.h" #include "d3dx9shader.h" #include "d3dx9effect.h" #include "d3dx9shape.h" #include "d3dx9anim.h" #include "d3dx9tex.h" #define _FACDD 0x876 #define MAKE_DDHRESULT(code) MAKE_HRESULT(1, _FACDD, code) enum _D3DXERR { D3DXERR_CANNOTMODIFYINDEXBUFFER = MAKE_DDHRESULT(2900), D3DXERR_INVALIDMESH = MAKE_DDHRESULT(2901), D3DXERR_CANNOTATTRSORT = MAKE_DDHRESULT(2902), D3DXERR_SKINNINGNOTSUPPORTED = MAKE_DDHRESULT(2903), D3DXERR_TOOMANYINFLUENCES = MAKE_DDHRESULT(2904), D3DXERR_INVALIDDATA = MAKE_DDHRESULT(2905), D3DXERR_LOADEDMESHASNODATA = MAKE_DDHRESULT(2906), D3DXERR_DUPLICATENAMEDFRAGMENT = MAKE_DDHRESULT(2907), D3DXERR_CANNOTREMOVELASTITEM = MAKE_DDHRESULT(2908), }; #endif dxvk-0~git20220822.9df86f2/d3dx9anim.h000066400000000000000000000455001430055512200167540ustar00rootroot00000000000000#include <_mingw_unicode.h> #undef INTERFACE /* * Copyright 2011 Dylan Smith * * 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 */ #ifndef __WINE_D3DX9ANIM_H #define __WINE_D3DX9ANIM_H DEFINE_GUID(IID_ID3DXAnimationSet, 0x698cfb3f, 0x9289, 0x4d95, 0x9a, 0x57, 0x33, 0xa9, 0x4b, 0x5a, 0x65, 0xf9); DEFINE_GUID(IID_ID3DXKeyframedAnimationSet, 0xfa4e8e3a, 0x9786, 0x407d, 0x8b, 0x4c, 0x59, 0x95, 0x89, 0x37, 0x64, 0xaf); DEFINE_GUID(IID_ID3DXCompressedAnimationSet, 0x6cc2480d, 0x3808, 0x4739, 0x9f, 0x88, 0xde, 0x49, 0xfa, 0xcd, 0x8d, 0x4c); DEFINE_GUID(IID_ID3DXAnimationController, 0xac8948ec, 0xf86d, 0x43e2, 0x96, 0xde, 0x31, 0xfc, 0x35, 0xf9, 0x6d, 0x9e); typedef enum _D3DXMESHDATATYPE { D3DXMESHTYPE_MESH = 1, D3DXMESHTYPE_PMESH = 2, D3DXMESHTYPE_PATCHMESH = 3, D3DXMESHTYPE_FORCE_DWORD = 0x7fffffff, } D3DXMESHDATATYPE; typedef enum _D3DXCALLBACK_SEARCH_FLAGS { D3DXCALLBACK_SEARCH_EXCLUDING_INITIAL_POSITION = 0x00000001, D3DXCALLBACK_SEARCH_BEHIND_INITIAL_POSITION = 0x00000002, D3DXCALLBACK_SEARCH_FORCE_DWORD = 0x7fffffff, } D3DXCALLBACK_SEARCH_FLAGS; typedef enum _D3DXPLAYBACK_TYPE { D3DXPLAY_LOOP = 0, D3DXPLAY_ONCE = 1, D3DXPLAY_PINGPONG = 2, D3DXPLAY_FORCE_DWORD = 0x7fffffff, } D3DXPLAYBACK_TYPE; typedef enum _D3DXCOMPRESSION_FLAGS { D3DXCOMPRESSION_DEFAULT = 0x00000000, D3DXCOMPRESSION_FORCE_DWORD = 0x7fffffff, } D3DXCOMPRESSION_FLAGS; typedef enum _D3DXPRIORITY_TYPE { D3DXPRIORITY_LOW = 0, D3DXPRIORITY_HIGH = 1, D3DXPRIORITY_FORCE_DWORD = 0x7fffffff, } D3DXPRIORITY_TYPE; typedef enum _D3DXEVENT_TYPE { D3DXEVENT_TRACKSPEED = 0, D3DXEVENT_TRACKWEIGHT = 1, D3DXEVENT_TRACKPOSITION = 2, D3DXEVENT_TRACKENABLE = 3, D3DXEVENT_PRIORITYBLEND = 4, D3DXEVENT_FORCE_DWORD = 0x7fffffff, } D3DXEVENT_TYPE; typedef enum _D3DXTRANSITION_TYPE { D3DXTRANSITION_LINEAR = 0, D3DXTRANSITION_EASEINEASEOUT = 1, D3DXTRANSITION_FORCE_DWORD = 0x7fffffff, } D3DXTRANSITION_TYPE; typedef struct _D3DXMESHDATA { D3DXMESHDATATYPE Type; union { ID3DXMesh *pMesh; ID3DXPMesh *pPMesh; ID3DXPatchMesh *pPatchMesh; } DUMMYUNIONNAME; } D3DXMESHDATA, *LPD3DXMESHDATA; typedef struct _D3DXMESHCONTAINER { char *Name; D3DXMESHDATA MeshData; LPD3DXMATERIAL pMaterials; LPD3DXEFFECTINSTANCE pEffects; DWORD NumMaterials; DWORD *pAdjacency; ID3DXSkinInfo *pSkinInfo; struct _D3DXMESHCONTAINER *pNextMeshContainer; } D3DXMESHCONTAINER, *LPD3DXMESHCONTAINER; typedef struct _D3DXFRAME { char *Name; D3DXMATRIX TransformationMatrix; LPD3DXMESHCONTAINER pMeshContainer; struct _D3DXFRAME *pFrameSibling; struct _D3DXFRAME *pFrameFirstChild; } D3DXFRAME, *LPD3DXFRAME; typedef struct _D3DXKEY_VECTOR3 { FLOAT Time; D3DXVECTOR3 Value; } D3DXKEY_VECTOR3, *LPD3DXKEY_VECTOR3; typedef struct _D3DXKEY_QUATERNION { FLOAT Time; D3DXQUATERNION Value; } D3DXKEY_QUATERNION, *LPD3DXKEY_QUATERNION; typedef struct _D3DXKEY_CALLBACK { float Time; void *pCallbackData; } D3DXKEY_CALLBACK, *LPD3DXKEY_CALLBACK; typedef struct _D3DXTRACK_DESC { D3DXPRIORITY_TYPE Priority; FLOAT Weight; FLOAT Speed; DOUBLE Position; WINBOOL Enable; } D3DXTRACK_DESC, *LPD3DXTRACK_DESC; typedef struct _D3DXEVENT_DESC { D3DXEVENT_TYPE Type; UINT Track; DOUBLE StartTime; DOUBLE Duration; D3DXTRANSITION_TYPE Transition; union { FLOAT Weight; FLOAT Speed; DOUBLE Position; WINBOOL Enable; } DUMMYUNIONNAME; } D3DXEVENT_DESC, *LPD3DXEVENT_DESC; typedef DWORD D3DXEVENTHANDLE, *LPD3DXEVENTHANDLE; typedef interface ID3DXAllocateHierarchy *LPD3DXALLOCATEHIERARCHY; typedef interface ID3DXLoadUserData *LPD3DXLOADUSERDATA; typedef interface ID3DXSaveUserData *LPD3DXSAVEUSERDATA; typedef interface ID3DXAnimationSet *LPD3DXANIMATIONSET; typedef interface ID3DXKeyframedAnimationSet *LPD3DXKEYFRAMEDANIMATIONSET; typedef interface ID3DXCompressedAnimationSet *LPD3DXCOMPRESSEDANIMATIONSET; typedef interface ID3DXAnimationCallbackHandler *LPD3DXANIMATIONCALLBACKHANDLER; typedef interface ID3DXAnimationController *LPD3DXANIMATIONCONTROLLER; #undef INTERFACE #define INTERFACE ID3DXAllocateHierarchy DECLARE_INTERFACE(ID3DXAllocateHierarchy) { STDMETHOD(CreateFrame)(THIS_ const char *name, D3DXFRAME **new_frame) PURE; STDMETHOD(CreateMeshContainer)(THIS_ const char *name, const D3DXMESHDATA *mesh_data, const D3DXMATERIAL *materials, const D3DXEFFECTINSTANCE *effect_instances, DWORD num_materials, const DWORD *adjacency, ID3DXSkinInfo *skin_info, D3DXMESHCONTAINER **new_mesh_container) PURE; STDMETHOD(DestroyFrame)(THIS_ LPD3DXFRAME frame) PURE; STDMETHOD(DestroyMeshContainer)(THIS_ LPD3DXMESHCONTAINER mesh_container) PURE; }; #undef INTERFACE #define INTERFACE ID3DXLoadUserData DECLARE_INTERFACE(ID3DXLoadUserData) { STDMETHOD(LoadTopLevelData)(ID3DXFileData *child_data) PURE; STDMETHOD(LoadFrameChildData)(D3DXFRAME *frame, ID3DXFileData *child_data) PURE; STDMETHOD(LoadMeshChildData)(D3DXMESHCONTAINER *mesh_container, ID3DXFileData *child_data) PURE; }; #undef INTERFACE #define INTERFACE ID3DXSaveUserData DECLARE_INTERFACE(ID3DXSaveUserData) { STDMETHOD(AddFrameChildData)(const D3DXFRAME *frame, ID3DXFileSaveObject *save_obj, ID3DXFileSaveData *frame_data) PURE; STDMETHOD(AddMeshChildData)(const D3DXMESHCONTAINER *mesh_container, ID3DXFileSaveObject *save_obj, ID3DXFileSaveData *mesh_data) PURE; STDMETHOD(AddTopLevelDataObjectsPre)(ID3DXFileSaveObject *save_obj) PURE; STDMETHOD(AddTopLevelDataObjectsPost)(ID3DXFileSaveObject *save_obj) PURE; STDMETHOD(RegisterTemplates)(ID3DXFile *file) PURE; STDMETHOD(SaveTemplates)(ID3DXFileSaveObject *save_obj) PURE; }; #undef INTERFACE #define INTERFACE ID3DXAnimationSet DECLARE_INTERFACE_(ID3DXAnimationSet, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXAnimationSet methods ***/ STDMETHOD_(const char *, GetName)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriod)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriodicPosition)(THIS_ DOUBLE position) PURE; STDMETHOD_(UINT, GetNumAnimations)(THIS) PURE; STDMETHOD(GetAnimationNameByIndex)(THIS_ UINT index, const char **name) PURE; STDMETHOD(GetAnimationIndexByName)(THIS_ const char *name, UINT *index) PURE; STDMETHOD(GetSRT)(THIS_ DOUBLE periodic_position, UINT animation, D3DXVECTOR3 *scale, D3DXQUATERNION *rotation, D3DXVECTOR3 *translation) PURE; STDMETHOD(GetCallback)(THIS_ double position, DWORD flags, double *callback_position, void **callback_data) PURE; }; #undef INTERFACE #define INTERFACE ID3DXKeyframedAnimationSet DECLARE_INTERFACE_(ID3DXKeyframedAnimationSet, ID3DXAnimationSet) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXAnimationSet methods ***/ STDMETHOD_(const char *, GetName)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriod)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriodicPosition)(THIS_ DOUBLE position) PURE; STDMETHOD_(UINT, GetNumAnimations)(THIS) PURE; STDMETHOD(GetAnimationNameByIndex)(THIS_ UINT index, const char **name) PURE; STDMETHOD(GetAnimationIndexByName)(THIS_ const char *name, UINT *index) PURE; STDMETHOD(GetSRT)(THIS_ DOUBLE periodic_position, UINT animation, D3DXVECTOR3 *scale, D3DXQUATERNION *rotation, D3DXVECTOR3 *translation) PURE; STDMETHOD(GetCallback)(THIS_ double position, DWORD flags, double *callback_position, void **callback_data) PURE; /*** ID3DXKeyframedAnimationSet methods ***/ STDMETHOD_(D3DXPLAYBACK_TYPE, GetPlaybackType)(THIS) PURE; STDMETHOD_(DOUBLE, GetSourceTicksPerSecond)(THIS) PURE; STDMETHOD_(UINT, GetNumScaleKeys)(THIS_ UINT animation) PURE; STDMETHOD(GetScaleKeys)(THIS_ UINT animation, LPD3DXKEY_VECTOR3 scale_keys) PURE; STDMETHOD(GetScaleKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_VECTOR3 scale_key) PURE; STDMETHOD(SetScaleKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_VECTOR3 scale_key) PURE; STDMETHOD_(UINT, GetNumRotationKeys)(THIS_ UINT animation) PURE; STDMETHOD(GetRotationKeys)(THIS_ UINT animation, LPD3DXKEY_QUATERNION rotation_keys) PURE; STDMETHOD(GetRotationKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_QUATERNION rotation_key) PURE; STDMETHOD(SetRotationKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_QUATERNION rotation_key) PURE; STDMETHOD_(UINT, GetNumTranslationKeys)(THIS_ UINT animation) PURE; STDMETHOD(GetTranslationKeys)(THIS_ UINT animation, LPD3DXKEY_VECTOR3 translation_keys) PURE; STDMETHOD(GetTranslationKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_VECTOR3 translation_key) PURE; STDMETHOD(SetTranslationKey)(THIS_ UINT animation, UINT key, LPD3DXKEY_VECTOR3 translation_key) PURE; STDMETHOD_(UINT, GetNumCallbackKeys)(THIS) PURE; STDMETHOD(GetCallbackKeys)(THIS_ LPD3DXKEY_CALLBACK callback_keys) PURE; STDMETHOD(GetCallbackKey)(THIS_ UINT key, LPD3DXKEY_CALLBACK callback_key) PURE; STDMETHOD(SetCallbackKey)(THIS_ UINT key, LPD3DXKEY_CALLBACK callback_key) PURE; STDMETHOD(UnregisterScaleKey)(THIS_ UINT animation, UINT key) PURE; STDMETHOD(UnregisterRotationKey)(THIS_ UINT animation, UINT key) PURE; STDMETHOD(UnregisterTranslationKey)(THIS_ UINT animation, UINT key) PURE; STDMETHOD(RegisterAnimationSRTKeys)(THIS_ const char *name, UINT num_scale_keys, UINT num_rotation_keys, UINT num_translation_keys, const D3DXKEY_VECTOR3 *scale_keys, const D3DXKEY_QUATERNION *rotation_keys, const D3DXKEY_VECTOR3 *translation_keys, DWORD *animation_index) PURE; STDMETHOD(Compress)(THIS_ DWORD flags, float lossiness, D3DXFRAME *hierarchy, ID3DXBuffer **compressed_data) PURE; STDMETHOD(UnregisterAnimation)(THIS_ UINT index) PURE; }; #undef INTERFACE #define INTERFACE ID3DXCompressedAnimationSet DECLARE_INTERFACE_(ID3DXCompressedAnimationSet, ID3DXAnimationSet) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXAnimationSet methods ***/ STDMETHOD_(const char *, GetName)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriod)(THIS) PURE; STDMETHOD_(DOUBLE, GetPeriodicPosition)(THIS_ DOUBLE position) PURE; STDMETHOD_(UINT, GetNumAnimations)(THIS) PURE; STDMETHOD(GetAnimationNameByIndex)(THIS_ UINT index, const char **name) PURE; STDMETHOD(GetAnimationIndexByName)(THIS_ const char *name, UINT *index) PURE; STDMETHOD(GetSRT)(THIS_ DOUBLE periodic_position, UINT animation, D3DXVECTOR3 *scale, D3DXQUATERNION *rotation, D3DXVECTOR3 *translation) PURE; STDMETHOD(GetCallback)(THIS_ double position, DWORD flags, double *callback_position, void **callback_data) PURE; /*** ID3DXCompressedAnimationSet methods ***/ STDMETHOD_(D3DXPLAYBACK_TYPE, GetPlaybackType)(THIS) PURE; STDMETHOD_(DOUBLE, GetSourceTicksPerSecond)(THIS) PURE; STDMETHOD(GetCompressedData)(THIS_ ID3DXBuffer **compressed_data) PURE; STDMETHOD_(UINT, GetNumCallbackKeys)(THIS) PURE; STDMETHOD(GetCallbackKeys)(THIS_ LPD3DXKEY_CALLBACK callback_keys) PURE; }; #undef INTERFACE #define INTERFACE ID3DXAnimationCallbackHandler DECLARE_INTERFACE(ID3DXAnimationCallbackHandler) { STDMETHOD(HandleCallback)(THIS_ UINT track, void *callback_data) PURE; }; #undef INTERFACE #define INTERFACE ID3DXAnimationController DECLARE_INTERFACE_(ID3DXAnimationController, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXAnimationController methods ***/ STDMETHOD_(UINT, GetMaxNumAnimationOutputs)(THIS) PURE; STDMETHOD_(UINT, GetMaxNumAnimationSets)(THIS) PURE; STDMETHOD_(UINT, GetMaxNumTracks)(THIS) PURE; STDMETHOD_(UINT, GetMaxNumEvents)(THIS) PURE; STDMETHOD(RegisterAnimationOutput)(THIS_ const char *name, D3DXMATRIX *matrix, D3DXVECTOR3 *scale, D3DXQUATERNION *rotation, D3DXVECTOR3 *translation) PURE; STDMETHOD(RegisterAnimationSet)(THIS_ ID3DXAnimationSet *anim_set) PURE; STDMETHOD(UnregisterAnimationSet)(THIS_ ID3DXAnimationSet *anim_set) PURE; STDMETHOD_(UINT, GetNumAnimationSets)(THIS) PURE; STDMETHOD(GetAnimationSet)(THIS_ UINT index, ID3DXAnimationSet **anim_set) PURE; STDMETHOD(GetAnimationSetByName)(THIS_ const char *name, ID3DXAnimationSet **anim_set) PURE; STDMETHOD(AdvanceTime)(THIS_ double time_delta, ID3DXAnimationCallbackHandler *callback_handler) PURE; STDMETHOD(ResetTime)(THIS) PURE; STDMETHOD_(double, GetTime)(THIS) PURE; STDMETHOD(SetTrackAnimationSet)(THIS_ UINT track, ID3DXAnimationSet *anim_set) PURE; STDMETHOD(GetTrackAnimationSet)(THIS_ UINT track, ID3DXAnimationSet **anim_set) PURE; STDMETHOD(SetTrackPriority)(THIS_ UINT track, D3DXPRIORITY_TYPE priority) PURE; STDMETHOD(SetTrackSpeed)(THIS_ UINT track, float speed) PURE; STDMETHOD(SetTrackWeight)(THIS_ UINT track, float weight) PURE; STDMETHOD(SetTrackPosition)(THIS_ UINT track, double position) PURE; STDMETHOD(SetTrackEnable)(THIS_ UINT track, WINBOOL enable) PURE; STDMETHOD(SetTrackDesc)(THIS_ UINT track, D3DXTRACK_DESC *desc) PURE; STDMETHOD(GetTrackDesc)(THIS_ UINT track, D3DXTRACK_DESC *desc) PURE; STDMETHOD(SetPriorityBlend)(THIS_ float blend_weight) PURE; STDMETHOD_(float, GetPriorityBlend)(THIS) PURE; STDMETHOD_(D3DXEVENTHANDLE, KeyTrackSpeed)(THIS_ UINT track, float new_speed, double start_time, double duration, D3DXTRANSITION_TYPE transition) PURE; STDMETHOD_(D3DXEVENTHANDLE, KeyTrackWeight)(THIS_ UINT track, float new_weight, double start_time, double duration, D3DXTRANSITION_TYPE transition) PURE; STDMETHOD_(D3DXEVENTHANDLE, KeyTrackPosition)(THIS_ UINT track, double new_position, double start_time) PURE; STDMETHOD_(D3DXEVENTHANDLE, KeyTrackEnable)(THIS_ UINT track, WINBOOL new_enable, double start_time) PURE; STDMETHOD_(D3DXEVENTHANDLE, KeyPriorityBlend)(THIS_ float new_blend_weight, double start_time, double duration, D3DXTRANSITION_TYPE transition) PURE; STDMETHOD(UnkeyEvent)(THIS_ D3DXEVENTHANDLE event) PURE; STDMETHOD(UnkeyAllTrackEvents)(THIS_ UINT track) PURE; STDMETHOD(UnkeyAllPriorityBlends)(THIS) PURE; STDMETHOD_(D3DXEVENTHANDLE, GetCurrentTrackEvent)(THIS_ UINT track, D3DXEVENT_TYPE event_type) PURE; STDMETHOD_(D3DXEVENTHANDLE, GetCurrentPriorityBlend)(THIS) PURE; STDMETHOD_(D3DXEVENTHANDLE, GetUpcomingTrackEvent)(THIS_ UINT track, D3DXEVENTHANDLE event) PURE; STDMETHOD_(D3DXEVENTHANDLE, GetUpcomingPriorityBlend)(THIS_ D3DXEVENTHANDLE event) PURE; STDMETHOD(ValidateEvent)(THIS_ D3DXEVENTHANDLE event) PURE; STDMETHOD(GetEventDesc)(THIS_ D3DXEVENTHANDLE event, D3DXEVENT_DESC *desc) PURE; STDMETHOD(CloneAnimationController)(THIS_ UINT max_num_anim_outputs, UINT max_num_anim_sets, UINT max_num_tracks, UINT max_num_events, ID3DXAnimationController **anim_controller) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DXLoadMeshHierarchyFromXA(const char *filename, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXAllocateHierarchy *alloc, struct ID3DXLoadUserData *user_data_loader, D3DXFRAME **frame_hierarchy, struct ID3DXAnimationController **animation_controller); HRESULT WINAPI D3DXLoadMeshHierarchyFromXW(const WCHAR *filename, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXAllocateHierarchy *alloc, struct ID3DXLoadUserData *user_data_loader, D3DXFRAME **frame_hierarchy, struct ID3DXAnimationController **animation_controller); #define D3DXLoadMeshHierarchyFromX __MINGW_NAME_AW(D3DXLoadMeshHierarchyFromX) HRESULT WINAPI D3DXLoadMeshHierarchyFromXInMemory(const void *data, DWORD data_size, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXAllocateHierarchy *alloc, struct ID3DXLoadUserData *user_data_loader, D3DXFRAME **frame_hierarchy, struct ID3DXAnimationController **animation_controller); HRESULT WINAPI D3DXSaveMeshHierarchyToFileA(const char *filename, DWORD format, const D3DXFRAME *frame_root, ID3DXAnimationController *animation_controller, ID3DXSaveUserData *user_data_saver); HRESULT WINAPI D3DXSaveMeshHierarchyToFileW(const WCHAR *filename, DWORD format, const D3DXFRAME *frame_root, ID3DXAnimationController *animation_controller, ID3DXSaveUserData *user_data_saver); #define D3DXSaveMeshHierarchyToFile __MINGW_NAME_AW(D3DXSaveMeshHierarchyToFile) HRESULT WINAPI D3DXFrameDestroy(D3DXFRAME *frame_root, ID3DXAllocateHierarchy *alloc); HRESULT WINAPI D3DXFrameAppendChild(D3DXFRAME *parent, const D3DXFRAME *child); D3DXFRAME * WINAPI D3DXFrameFind(const D3DXFRAME *root, const char *name); HRESULT WINAPI D3DXFrameRegisterNamedMatrices(D3DXFRAME *frame_root, ID3DXAnimationController *animation_controller); UINT WINAPI D3DXFrameNumNamedMatrices(const D3DXFRAME *frame_root); HRESULT WINAPI D3DXFrameCalculateBoundingSphere(const D3DXFRAME *frame_root, D3DXVECTOR3 *center, FLOAT *radius); HRESULT WINAPI D3DXCreateKeyframedAnimationSet(const char *name, double ticks_per_second, D3DXPLAYBACK_TYPE playback_type, UINT animation_count, UINT callback_key_count, const D3DXKEY_CALLBACK *callback_keys, ID3DXKeyframedAnimationSet **animation_set); HRESULT WINAPI D3DXCreateCompressedAnimationSet(const char *name, double ticks_per_second, D3DXPLAYBACK_TYPE playback_type, ID3DXBuffer *compressed_data, UINT callback_key_count, const D3DXKEY_CALLBACK *callback_keys, ID3DXCompressedAnimationSet **animation_set); HRESULT WINAPI D3DXCreateAnimationController(UINT max_animation_output_count, UINT max_animation_set_count, UINT max_track_count, UINT max_event_count, ID3DXAnimationController **animation_controller); #ifdef __cplusplus } #endif #endif /* __WINE_D3DX9ANIM_H */ dxvk-0~git20220822.9df86f2/d3dx9core.h000066400000000000000000000572241430055512200167660ustar00rootroot00000000000000#include <_mingw_unicode.h> #undef INTERFACE /* * Copyright (C) 2007, 2008 Tony Wasserka * * 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 */ #include "d3dx9.h" #ifndef __WINE_D3DX9CORE_H #define __WINE_D3DX9CORE_H /********************************************** ***************** Definitions **************** **********************************************/ #define D3DX_VERSION 0x0902 #ifndef D3DX_SDK_VERSION #define D3DX_SDK_VERSION 43 #endif #define D3DXSPRITE_DONOTSAVESTATE 0x00000001 #define D3DXSPRITE_DONOTMODIFY_RENDERSTATE 0x00000002 #define D3DXSPRITE_OBJECTSPACE 0x00000004 #define D3DXSPRITE_BILLBOARD 0x00000008 #define D3DXSPRITE_ALPHABLEND 0x00000010 #define D3DXSPRITE_SORT_TEXTURE 0x00000020 #define D3DXSPRITE_SORT_DEPTH_FRONTTOBACK 0x00000040 #define D3DXSPRITE_SORT_DEPTH_BACKTOFRONT 0x00000080 #define D3DXSPRITE_DO_NOT_ADDREF_TEXTURE 0x00000100 /********************************************** ******************** GUIDs ******************* **********************************************/ DEFINE_GUID(IID_ID3DXBuffer, 0x8ba5fb08, 0x5195, 0x40e2, 0xac, 0x58, 0xd, 0x98, 0x9c, 0x3a, 0x1, 0x2); DEFINE_GUID(IID_ID3DXFont, 0xd79dbb70, 0x5f21, 0x4d36, 0xbb, 0xc2, 0xff, 0x52, 0x5c, 0x21, 0x3c, 0xdc); DEFINE_GUID(IID_ID3DXLine, 0xd379ba7f, 0x9042, 0x4ac4, 0x9f, 0x5e, 0x58, 0x19, 0x2a, 0x4c, 0x6b, 0xd8); DEFINE_GUID(IID_ID3DXRenderToEnvMap, 0x313f1b4b, 0xc7b0, 0x4fa2, 0x9d, 0x9d, 0x8d, 0x38, 0xb, 0x64, 0x38, 0x5e); DEFINE_GUID(IID_ID3DXRenderToSurface, 0x6985f346, 0x2c3d, 0x43b3, 0xbe, 0x8b, 0xda, 0xae, 0x8a, 0x3, 0xd8, 0x94); DEFINE_GUID(IID_ID3DXSprite, 0xba0b762d, 0x7d28, 0x43ec, 0xb9, 0xdc, 0x2f, 0x84, 0x44, 0x3b, 0x6, 0x14); /********************************************** ****************** typedefs ****************** **********************************************/ typedef struct ID3DXBuffer *LPD3DXBUFFER; typedef struct ID3DXFont *LPD3DXFONT; typedef struct ID3DXLine *LPD3DXLINE; typedef struct ID3DXRenderToEnvMap *LPD3DXRenderToEnvMap; typedef struct ID3DXRenderToSurface *LPD3DXRENDERTOSURFACE; typedef struct ID3DXSprite *LPD3DXSPRITE; /********************************************** *********** interface declarations *********** **********************************************/ #define INTERFACE ID3DXBuffer DECLARE_INTERFACE_(ID3DXBuffer, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBuffer methods ***/ STDMETHOD_(void *, GetBufferPointer)(THIS) PURE; STDMETHOD_(DWORD, GetBufferSize)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXBuffer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXBuffer_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXBuffer_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXBuffer methods ***/ #define ID3DXBuffer_GetBufferPointer(p) (p)->lpVtbl->GetBufferPointer(p) #define ID3DXBuffer_GetBufferSize(p) (p)->lpVtbl->GetBufferSize(p) #else /*** IUnknown methods ***/ #define ID3DXBuffer_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXBuffer_AddRef(p) (p)->AddRef() #define ID3DXBuffer_Release(p) (p)->Release() /*** ID3DXBuffer methods ***/ #define ID3DXBuffer_GetBufferPointer(p) (p)->GetBufferPointer() #define ID3DXBuffer_GetBufferSize(p) (p)->GetBufferSize() #endif typedef struct _D3DXFONT_DESCA { INT Height; UINT Width; UINT Weight; UINT MipLevels; WINBOOL Italic; BYTE CharSet; BYTE OutputPrecision; BYTE Quality; BYTE PitchAndFamily; CHAR FaceName[LF_FACESIZE]; } D3DXFONT_DESCA, *LPD3DXFONT_DESCA; typedef struct _D3DXFONT_DESCW { INT Height; UINT Width; UINT Weight; UINT MipLevels; WINBOOL Italic; BYTE CharSet; BYTE OutputPrecision; BYTE Quality; BYTE PitchAndFamily; WCHAR FaceName[LF_FACESIZE]; } D3DXFONT_DESCW, *LPD3DXFONT_DESCW; __MINGW_TYPEDEF_AW(D3DXFONT_DESC) __MINGW_TYPEDEF_AW(LPD3DXFONT_DESC) #define INTERFACE ID3DXFont DECLARE_INTERFACE_(ID3DXFont, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXFont methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetDescA)(THIS_ D3DXFONT_DESCA *desc) PURE; STDMETHOD(GetDescW)(THIS_ D3DXFONT_DESCW *desc) PURE; STDMETHOD_(WINBOOL, GetTextMetricsA)(THIS_ TEXTMETRICA *metrics) PURE; STDMETHOD_(WINBOOL, GetTextMetricsW)(THIS_ TEXTMETRICW *metrics) PURE; STDMETHOD_(HDC, GetDC)(THIS) PURE; STDMETHOD(GetGlyphData)(THIS_ UINT glyph, struct IDirect3DTexture9 **texture, RECT *blackbox, POINT *cellinc) PURE; STDMETHOD(PreloadCharacters)(THIS_ UINT first, UINT last) PURE; STDMETHOD(PreloadGlyphs)(THIS_ UINT first, UINT last) PURE; STDMETHOD(PreloadTextA)(THIS_ const char *string, INT count) PURE; STDMETHOD(PreloadTextW)(THIS_ const WCHAR *string, INT count) PURE; STDMETHOD_(INT, DrawTextA)(THIS_ struct ID3DXSprite *sprite, const char *string, INT count, RECT *rect, DWORD format, D3DCOLOR color) PURE; STDMETHOD_(INT, DrawTextW)(THIS_ struct ID3DXSprite *sprite, const WCHAR *string, INT count, RECT *rect, DWORD format, D3DCOLOR color) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXFont_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXFont_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXFont_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXFont methods ***/ #define ID3DXFont_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define ID3DXFont_GetDescA(p,a) (p)->lpVtbl->GetDescA(p,a) #define ID3DXFont_GetDescW(p,a) (p)->lpVtbl->GetDescW(p,a) #define ID3DXFont_GetTextMetricsA(p,a) (p)->lpVtbl->GetTextMetricsA(p,a) #define ID3DXFont_GetTextMetricsW(p,a) (p)->lpVtbl->GetTextMetricsW(p,a) #define ID3DXFont_GetDC(p) (p)->lpVtbl->GetDC(p) #define ID3DXFont_GetGlyphData(p,a,b,c,d) (p)->lpVtbl->GetGlyphData(p,a,b,c,d) #define ID3DXFont_PreloadCharacters(p,a,b) (p)->lpVtbl->PreloadCharacters(p,a,b) #define ID3DXFont_PreloadGlyphs(p,a,b) (p)->lpVtbl->PreloadGlyphs(p,a,b) #define ID3DXFont_PreloadTextA(p,a,b) (p)->lpVtbl->PreloadTextA(p,a,b) #define ID3DXFont_PreloadTextW(p,a,b) (p)->lpVtbl->PreloadTextW(p,a,b) #define ID3DXFont_DrawTextA(p,a,b,c,d,e,f) (p)->lpVtbl->DrawTextA(p,a,b,c,d,e,f) #define ID3DXFont_DrawTextW(p,a,b,c,d,e,f) (p)->lpVtbl->DrawTextW(p,a,b,c,d,e,f) #define ID3DXFont_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #define ID3DXFont_OnResetDevice(p) (p)->lpVtbl->OnResetDevice(p) #else /*** IUnknown methods ***/ #define ID3DXFont_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXFont_AddRef(p) (p)->AddRef() #define ID3DXFont_Release(p) (p)->Release() /*** ID3DXFont methods ***/ #define ID3DXFont_GetDevice(p,a) (p)->GetDevice(a) #define ID3DXFont_GetDescA(p,a) (p)->GetDescA(a) #define ID3DXFont_GetDescW(p,a) (p)->GetDescW(a) #define ID3DXFont_GetTextMetricsA(p,a) (p)->GetTextMetricsA(a) #define ID3DXFont_GetTextMetricsW(p,a) (p)->GetTextMetricsW(a) #define ID3DXFont_GetDC(p) (p)->GetDC() #define ID3DXFont_GetGlyphData(p,a,b,c,d) (p)->GetGlyphData(a,b,c,d) #define ID3DXFont_PreloadCharacters(p,a,b) (p)->PreloadCharacters(a,b) #define ID3DXFont_PreloadGlyphs(p,a,b) (p)->PreloadGlyphs(a,b) #define ID3DXFont_PreloadTextA(p,a,b) (p)->PreloadTextA(a,b) #define ID3DXFont_PreloadTextW(p,a,b) (p)->PreloadTextW(a,b) #define ID3DXFont_DrawTextA(p,a,b,c,d,e,f) (p)->DrawTextA(a,b,c,d,e,f) #define ID3DXFont_DrawTextW(p,a,b,c,d,e,f) (p)->DrawTextW(a,b,c,d,e,f) #define ID3DXFont_OnLostDevice(p) (p)->OnLostDevice() #define ID3DXFont_OnResetDevice(p) (p)->OnResetDevice() #endif #define ID3DXFont_DrawText __MINGW_NAME_AW(ID3DXFont_DrawText) #define ID3DXFont_GetDesc __MINGW_NAME_AW(ID3DXFont_GetDesc) #define ID3DXFont_GetTextMetrics __MINGW_NAME_AW(ID3DXFont_GetTextMetrics) #define ID3DXFont_PreloadText __MINGW_NAME_AW(ID3DXFont_PreloadText) #define INTERFACE ID3DXLine DECLARE_INTERFACE_(ID3DXLine, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXLine methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(Begin)(THIS) PURE; STDMETHOD(Draw)(THIS_ const D3DXVECTOR2 *vertexlist, DWORD vertexlistcount, D3DCOLOR color) PURE; STDMETHOD(DrawTransform)(THIS_ const D3DXVECTOR3 *vertexlist, DWORD vertexlistcount, const D3DXMATRIX *transform, D3DCOLOR color) PURE; STDMETHOD(SetPattern)(THIS_ DWORD pattern) PURE; STDMETHOD_(DWORD, GetPattern)(THIS) PURE; STDMETHOD(SetPatternScale)(THIS_ FLOAT scale) PURE; STDMETHOD_(FLOAT, GetPatternScale)(THIS) PURE; STDMETHOD(SetWidth)(THIS_ FLOAT width) PURE; STDMETHOD_(FLOAT, GetWidth)(THIS) PURE; STDMETHOD(SetAntialias)(THIS_ WINBOOL antialias) PURE; STDMETHOD_(WINBOOL, GetAntialias)(THIS) PURE; STDMETHOD(SetGLLines)(THIS_ WINBOOL gl_lines) PURE; STDMETHOD_(WINBOOL, GetGLLines)(THIS) PURE; STDMETHOD(End)(THIS) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXLine_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXLine_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXLine_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXLine methods ***/ #define ID3DXLine_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define ID3DXLine_Begin(p) (p)->lpVtbl->Begin(p) #define ID3DXLine_Draw(p,a,b,c) (p)->lpVtbl->Draw(p,a,b,c) #define ID3DXLine_DrawTransform(p,a,b,c,d) (p)->lpVtbl->DrawTransform(p,a,b,c,d) #define ID3DXLine_SetPattern(p,a) (p)->lpVtbl->SetPattern(p,a) #define ID3DXLine_GetPattern(p) (p)->lpVtbl->GetPattern(p) #define ID3DXLine_SetPatternScale(p,a) (p)->lpVtbl->SetPatternScale(p,a) #define ID3DXLine_GetPatternScale(p) (p)->lpVtbl->GetPatternScale(p) #define ID3DXLine_SetWidth(p,a) (p)->lpVtbl->SetWidth(p,a) #define ID3DXLine_GetWidth(p) (p)->lpVtbl->GetWidth(p) #define ID3DXLine_SetAntialias(p,a) (p)->lpVtbl->SetAntialias(p,a) #define ID3DXLine_GetAntialias(p) (p)->lpVtbl->GetAntialias(p) #define ID3DXLine_SetGLLines(p,a) (p)->lpVtbl->SetGLLines(p,a) #define ID3DXLine_GetGLLines(p) (p)->lpVtbl->GetGLLines(p) #define ID3DXLine_End(p) (p)->lpVtbl->End(p) #define ID3DXLine_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #define ID3DXLine_OnResetDevice(p) (p)->lpVtbl->OnResetDevice(p) #else /*** IUnknown methods ***/ #define ID3DXLine_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXLine_AddRef(p) (p)->AddRef() #define ID3DXLine_Release(p) (p)->Release() /*** ID3DXLine methods ***/ #define ID3DXLine_GetDevice(p,a) (p)->GetDevice(a) #define ID3DXLine_Begin(p) (p)->Begin() #define ID3DXLine_Draw(p,a,b,c) (p)->Draw(a,b,c) #define ID3DXLine_DrawTransform(p,a,b,c,d) (p)->DrawTransform(a,b,c,d) #define ID3DXLine_SetPattern(p,a) (p)->SetPattern(a) #define ID3DXLine_GetPattern(p) (p)->GetPattern() #define ID3DXLine_SetPatternScale(p,a) (p)->SetPatternScale(a) #define ID3DXLine_GetPatternScale(p) (p)->GetPatternScale() #define ID3DXLine_SetWidth(p,a) (p)->SetWidth(a) #define ID3DXLine_GetWidth(p) (p)->GetWidth() #define ID3DXLine_SetAntialias(p,a) (p)->SetAntialias(a) #define ID3DXLine_GetAntialias(p) (p)->GetAntialias() #define ID3DXLine_SetGLLines(p,a) (p)->SetGLLines(a) #define ID3DXLine_GetGLLines(p) (p)->GetGLLines() #define ID3DXLine_End(p) (p)->End() #define ID3DXLine_OnLostDevice(p) (p)->OnLostDevice() #define ID3DXLine_OnResetDevice(p) (p)->OnResetDevice() #endif typedef struct _D3DXRTE_DESC { UINT Size; UINT MipLevels; D3DFORMAT Format; WINBOOL DepthStencil; D3DFORMAT DepthStencilFormat; } D3DXRTE_DESC; #define INTERFACE ID3DXRenderToEnvMap DECLARE_INTERFACE_(ID3DXRenderToEnvMap, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXRenderToEnvMap methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetDesc)(THIS_ D3DXRTE_DESC *desc) PURE; STDMETHOD(BeginCube)(THIS_ struct IDirect3DCubeTexture9 *cubetex) PURE; STDMETHOD(BeginSphere)(THIS_ struct IDirect3DTexture9 *tex) PURE; STDMETHOD(BeginHemisphere)(THIS_ struct IDirect3DTexture9 *texzpos, struct IDirect3DTexture9 *texzneg) PURE; STDMETHOD(BeginParabolic)(THIS_ struct IDirect3DTexture9 *texzpos, struct IDirect3DTexture9 *texzneg) PURE; STDMETHOD(Face)(THIS_ D3DCUBEMAP_FACES face, DWORD mipfilter) PURE; STDMETHOD(End)(THIS_ DWORD mipfilter) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXRenderToEnvMap_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXRenderToEnvMap_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXRenderToEnvMap_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXRenderToEnvMap methods ***/ #define ID3DXRenderToEnvMap_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define ID3DXRenderToEnvMap_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define ID3DXRenderToEnvMap_BeginCube(p,a) (p)->lpVtbl->BeginCube(p,a) #define ID3DXRenderToEnvMap_BeginSphere(p,a) (p)->lpVtbl->BeginSphere(p,a) #define ID3DXRenderToEnvMap_BeginHemisphere(p,a,b) (p)->lpVtbl->BeginHemisphere(p,a,b) #define ID3DXRenderToEnvMap_BeginParabolic(p,a,b) (p)->lpVtbl->BeginParabolic(p,a,b) #define ID3DXRenderToEnvMap_Face(p,a,b) (p)->lpVtbl->Face(p,a,b) #define ID3DXRenderToEnvMap_End(p,a) (p)->lpVtbl->End(p,a) #define ID3DXRenderToEnvMap_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #define ID3DXRenderToEnvMap_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #else /*** IUnknown methods ***/ #define ID3DXRenderToEnvMap_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXRenderToEnvMap_AddRef(p) (p)->AddRef() #define ID3DXRenderToEnvMap_Release(p) (p)->Release() /*** ID3DXRenderToEnvMap methods ***/ #define ID3DXRenderToEnvMap_GetDevice(p,a) (p)->GetDevice(a) #define ID3DXRenderToEnvMap_GetDesc(p,a) (p)->GetDesc(a) #define ID3DXRenderToEnvMap_BeginCube(p,a) (p)->BeginCube(a) #define ID3DXRenderToEnvMap_BeginSphere(p,a) (p)->BeginSphere(a) #define ID3DXRenderToEnvMap_BeginHemisphere(p,a,b) (p)->BeginHemisphere(a,b) #define ID3DXRenderToEnvMap_BeginParabolic(p,a,b) (p)->BeginParabolic(a,b) #define ID3DXRenderToEnvMap_Face(p,a,b) (p)->Face(a,b) #define ID3DXRenderToEnvMap_End(p,a) (p)->End(a) #define ID3DXRenderToEnvMap_OnLostDevice(p) (p)->OnLostDevice() #define ID3DXRenderToEnvMap_OnLostDevice(p) (p)->OnLostDevice() #endif typedef struct _D3DXRTS_DESC { UINT Width; UINT Height; D3DFORMAT Format; WINBOOL DepthStencil; D3DFORMAT DepthStencilFormat; } D3DXRTS_DESC; #define INTERFACE ID3DXRenderToSurface DECLARE_INTERFACE_(ID3DXRenderToSurface, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXRenderToSurface methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetDesc)(THIS_ D3DXRTS_DESC *desc) PURE; STDMETHOD(BeginScene)(THIS_ struct IDirect3DSurface9 *surface, const D3DVIEWPORT9 *viewport) PURE; STDMETHOD(EndScene)(THIS_ DWORD mipfilter) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXRenderToSurface_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXRenderToSurface_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXRenderToSurface_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXRenderToSurface methods ***/ #define ID3DXRenderToSurface_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define ID3DXRenderToSurface_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define ID3DXRenderToSurface_BeginScene(p,a,b) (p)->lpVtbl->BeginScene(p,a,b) #define ID3DXRenderToSurface_EndScene(p,a) (p)->lpVtbl->EndScene(p,a) #define ID3DXRenderToSurface_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #define ID3DXRenderToSurface_OnResetDevice(p) (p)->lpVtbl->OnResetDevice(p) #else /*** IUnknown methods ***/ #define ID3DXRenderToSurface_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXRenderToSurface_AddRef(p) (p)->AddRef() #define ID3DXRenderToSurface_Release(p) (p)->Release() /*** ID3DXRenderToSurface methods ***/ #define ID3DXRenderToSurface_GetDevice(p,a) (p)->GetDevice(a) #define ID3DXRenderToSurface_GetDesc(p,a) (p)->GetDesc(a) #define ID3DXRenderToSurface_BeginScene(p,a,b) (p)->BeginScene(a,b) #define ID3DXRenderToSurface_EndScene(p,a) (p)->EndScene(a) #define ID3DXRenderToSurface_OnLostDevice(p) (p)->OnLostDevice() #define ID3DXRenderToSurface_OnResetDevice(p) (p)->OnResetDevice() #endif #define INTERFACE ID3DXSprite DECLARE_INTERFACE_(ID3DXSprite, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **object) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXSprite methods ***/ STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetTransform)(THIS_ D3DXMATRIX *transform) PURE; STDMETHOD(SetTransform)(THIS_ const D3DXMATRIX *transform) PURE; STDMETHOD(SetWorldViewRH)(THIS_ const D3DXMATRIX *world, const D3DXMATRIX *view) PURE; STDMETHOD(SetWorldViewLH)(THIS_ const D3DXMATRIX *world, const D3DXMATRIX *view) PURE; STDMETHOD(Begin)(THIS_ DWORD flags) PURE; STDMETHOD(Draw)(THIS_ struct IDirect3DTexture9 *texture, const RECT *rect, const D3DXVECTOR3 *center, const D3DXVECTOR3 *position, D3DCOLOR color) PURE; STDMETHOD(Flush)(THIS) PURE; STDMETHOD(End)(THIS) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXSprite_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXSprite_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXSprite_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXSprite methods ***/ #define ID3DXSprite_GetDevice(p,a) (p)->lpVtbl->GetDevice(p,a) #define ID3DXSprite_GetTransform(p,a) (p)->lpVtbl->GetTransform(p,a) #define ID3DXSprite_SetTransform(p,a) (p)->lpVtbl->SetTransform(p,a) #define ID3DXSprite_SetWorldViewRH(p,a,b) (p)->lpVtbl->SetWorldViewRH(p,a,b) #define ID3DXSprite_SetWorldViewLH(p,a,b) (p)->lpVtbl->SetWorldViewLH(p,a,b) #define ID3DXSprite_Begin(p,a) (p)->lpVtbl->Begin(p,a) #define ID3DXSprite_Draw(p,a,b,c,d,e) (p)->lpVtbl->Draw(p,a,b,c,d,e) #define ID3DXSprite_Flush(p) (p)->lpVtbl->Flush(p) #define ID3DXSprite_End(p) (p)->lpVtbl->End(p) #define ID3DXSprite_OnLostDevice(p) (p)->lpVtbl->OnLostDevice(p) #define ID3DXSprite_OnResetDevice(p) (p)->lpVtbl->OnResetDevice(p) #else /*** IUnknown methods ***/ #define ID3DXSprite_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXSprite_AddRef(p) (p)->AddRef() #define ID3DXSprite_Release(p) (p)->Release() /*** ID3DXSprite methods ***/ #define ID3DXSprite_GetDevice(p,a) (p)->GetDevice(a) #define ID3DXSprite_GetTransform(p,a) (p)->GetTransform(a) #define ID3DXSprite_SetTransform(p,a) (p)->SetTransform(a) #define ID3DXSprite_SetWorldViewRH(p,a,b) (p)->SetWorldViewRH(a,b) #define ID3DXSprite_SetWorldViewLH(p,a,b) (p)->SetWorldViewLH(a,b) #define ID3DXSprite_Begin(p,a) (p)->Begin(a) #define ID3DXSprite_Draw(p,a,b,c,d,e) (p)->Draw(a,b,c,d,e) #define ID3DXSprite_Flush(p) (p)->Flush() #define ID3DXSprite_End(p) (p)->End() #define ID3DXSprite_OnLostDevice(p) (p)->OnLostDevice() #define ID3DXSprite_OnResetDevice(p) (p)->OnResetDevice() #endif /********************************************** ****************** functions ***************** **********************************************/ #ifdef __cplusplus extern "C" { #endif WINBOOL WINAPI D3DXCheckVersion(UINT d3dsdkvers, UINT d3dxsdkvers); HRESULT WINAPI D3DXCreateFontA(struct IDirect3DDevice9 *device, INT height, UINT width, UINT weight, UINT miplevels, WINBOOL italic, DWORD charset, DWORD precision, DWORD quality, DWORD pitchandfamily, const char *facename, struct ID3DXFont **font); HRESULT WINAPI D3DXCreateFontW(struct IDirect3DDevice9 *device, INT height, UINT width, UINT weight, UINT miplevels, WINBOOL italic, DWORD charset, DWORD precision, DWORD quality, DWORD pitchandfamily, const WCHAR *facename, struct ID3DXFont **font); #define D3DXCreateFont __MINGW_NAME_AW(D3DXCreateFont) HRESULT WINAPI D3DXCreateFontIndirectA(struct IDirect3DDevice9 *device, const D3DXFONT_DESCA *desc, struct ID3DXFont **font); HRESULT WINAPI D3DXCreateFontIndirectW(struct IDirect3DDevice9 *device, const D3DXFONT_DESCW *desc, struct ID3DXFont **font); #define D3DXCreateFontIndirect __MINGW_NAME_AW(D3DXCreateFontIndirect) HRESULT WINAPI D3DXCreateLine(struct IDirect3DDevice9 *device, struct ID3DXLine **line); HRESULT WINAPI D3DXCreateRenderToEnvMap(struct IDirect3DDevice9 *device, UINT size, UINT miplevels, D3DFORMAT format, WINBOOL stencil, D3DFORMAT stencil_format, struct ID3DXRenderToEnvMap **rtem); HRESULT WINAPI D3DXCreateRenderToSurface(struct IDirect3DDevice9 *device, UINT width, UINT height, D3DFORMAT format, WINBOOL stencil, D3DFORMAT stencil_format, struct ID3DXRenderToSurface **rts); HRESULT WINAPI D3DXCreateSprite(struct IDirect3DDevice9 *device, struct ID3DXSprite **sprite); WINBOOL WINAPI D3DXDebugMute(WINBOOL mute); UINT WINAPI D3DXGetDriverLevel(struct IDirect3DDevice9 *device); #ifdef __cplusplus } #endif #endif /* __WINE_D3DX9CORE_H */ dxvk-0~git20220822.9df86f2/d3dx9effect.h000066400000000000000000000661321430055512200172700ustar00rootroot00000000000000#include <_mingw_unicode.h> #undef INTERFACE /* * Copyright 2010 Christian Costa * * 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 */ #include "d3dx9.h" #ifndef __D3DX9EFFECT_H__ #define __D3DX9EFFECT_H__ #define D3DXFX_DONOTSAVESTATE (1 << 0) #define D3DXFX_DONOTSAVESHADERSTATE (1 << 1) #define D3DXFX_DONOTSAVESAMPLERSTATE (1 << 2) #define D3DXFX_NOT_CLONEABLE (1 << 11) #define D3DXFX_LARGEADDRESSAWARE (1 << 17) #define D3DX_PARAMETER_SHARED 1 #define D3DX_PARAMETER_LITERAL 2 #define D3DX_PARAMETER_ANNOTATION 4 typedef struct _D3DXEFFECT_DESC { const char *Creator; UINT Parameters; UINT Techniques; UINT Functions; } D3DXEFFECT_DESC; typedef struct _D3DXPARAMETER_DESC { const char *Name; const char *Semantic; D3DXPARAMETER_CLASS Class; D3DXPARAMETER_TYPE Type; UINT Rows; UINT Columns; UINT Elements; UINT Annotations; UINT StructMembers; DWORD Flags; UINT Bytes; } D3DXPARAMETER_DESC; typedef struct _D3DXTECHNIQUE_DESC { const char *Name; UINT Passes; UINT Annotations; } D3DXTECHNIQUE_DESC; typedef struct _D3DXPASS_DESC { const char *Name; UINT Annotations; const DWORD *pVertexShaderFunction; const DWORD *pPixelShaderFunction; } D3DXPASS_DESC; typedef struct _D3DXFUNCTION_DESC { const char *Name; UINT Annotations; } D3DXFUNCTION_DESC; typedef struct ID3DXEffectPool *LPD3DXEFFECTPOOL; DEFINE_GUID(IID_ID3DXEffectPool, 0x9537ab04, 0x3250, 0x412e, 0x82, 0x13, 0xfc, 0xd2, 0xf8, 0x67, 0x79, 0x33); #undef INTERFACE #define INTERFACE ID3DXEffectPool DECLARE_INTERFACE_(ID3DXEffectPool, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; }; #undef INTERFACE typedef struct ID3DXBaseEffect *LPD3DXBASEEFFECT; DEFINE_GUID(IID_ID3DXBaseEffect, 0x17c18ac, 0x103f, 0x4417, 0x8c, 0x51, 0x6b, 0xf6, 0xef, 0x1e, 0x56, 0xbe); #define INTERFACE ID3DXBaseEffect DECLARE_INTERFACE_(ID3DXBaseEffect, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseEffect methods ***/ STDMETHOD(GetDesc)(THIS_ D3DXEFFECT_DESC* desc) PURE; STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE; STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE; STDMETHOD(GetPassDesc)(THIS_ D3DXHANDLE pass, D3DXPASS_DESC* desc) PURE; STDMETHOD(GetFunctionDesc)(THIS_ D3DXHANDLE shader, D3DXFUNCTION_DESC* desc) PURE; STDMETHOD_(D3DXHANDLE, GetParameter)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE; STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetPass)(THIS_ D3DXHANDLE technique, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index); STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name); STDMETHOD_(D3DXHANDLE, GetAnnotation)(THIS_ D3DXHANDLE object, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE; STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE; STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE; STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, WINBOOL b) PURE; STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, WINBOOL* b) PURE; STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const WINBOOL *b, UINT count) PURE; STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, WINBOOL* b, UINT count) PURE; STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE; STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE; STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE; STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE; STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE; STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE; STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE; STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE; STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE; STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE; STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE; STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE; STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrix)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE; STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE; STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE; STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE; STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE; STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE; }; #undef INTERFACE typedef struct ID3DXEffectStateManager *LPD3DXEFFECTSTATEMANAGER; DEFINE_GUID(IID_ID3DXEffectStateManager, 0x79aab587, 0x6dbc, 0x4fa7, 0x82, 0xde, 0x37, 0xfa, 0x17, 0x81, 0xc5, 0xce); #define INTERFACE ID3DXEffectStateManager DECLARE_INTERFACE_(ID3DXEffectStateManager, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXEffectStateManager methods ***/ STDMETHOD(SetTransform)(THIS_ D3DTRANSFORMSTATETYPE state, const D3DMATRIX *matrix) PURE; STDMETHOD(SetMaterial)(THIS_ const D3DMATERIAL9 *material) PURE; STDMETHOD(SetLight)(THIS_ DWORD index, const D3DLIGHT9 *light) PURE; STDMETHOD(LightEnable)(THIS_ DWORD index, WINBOOL enable) PURE; STDMETHOD(SetRenderState)(THIS_ D3DRENDERSTATETYPE state, DWORD value) PURE; STDMETHOD(SetTexture)(THIS_ DWORD stage, struct IDirect3DBaseTexture9 *texture) PURE; STDMETHOD(SetTextureStageState)(THIS_ DWORD stage, D3DTEXTURESTAGESTATETYPE type, DWORD value) PURE; STDMETHOD(SetSamplerState)(THIS_ DWORD sampler, D3DSAMPLERSTATETYPE type, DWORD value) PURE; STDMETHOD(SetNPatchMode)(THIS_ FLOAT num_segments) PURE; STDMETHOD(SetFVF)(THIS_ DWORD format) PURE; STDMETHOD(SetVertexShader)(THIS_ struct IDirect3DVertexShader9 *shader) PURE; STDMETHOD(SetVertexShaderConstantF)(THIS_ UINT register_index, const FLOAT *constant_data, UINT register_count) PURE; STDMETHOD(SetVertexShaderConstantI)(THIS_ UINT register_index, const INT *constant_data, UINT register_count) PURE; STDMETHOD(SetVertexShaderConstantB)(THIS_ UINT register_index, const WINBOOL *constant_data, UINT register_count) PURE; STDMETHOD(SetPixelShader)(THIS_ struct IDirect3DPixelShader9 *shader) PURE; STDMETHOD(SetPixelShaderConstantF)(THIS_ UINT register_index, const FLOAT *constant_data, UINT register_count) PURE; STDMETHOD(SetPixelShaderConstantI)(THIS_ UINT register_index, const INT *constant_data, UINT register_count) PURE; STDMETHOD(SetPixelShaderConstantB)(THIS_ UINT register_index, const WINBOOL *constant_data, UINT register_count) PURE; }; #undef INTERFACE typedef struct ID3DXEffect *LPD3DXEFFECT; #if D3DX_SDK_VERSION <= 25 DEFINE_GUID(IID_ID3DXEffect, 0xd165ccb1, 0x62b0, 0x4a33, 0xb3, 0xfa, 0xa9, 0x23, 0x00, 0x30, 0x5a, 0x11); #elif D3DX_SDK_VERSION == 26 DEFINE_GUID(IID_ID3DXEffect, 0xc7b17651, 0x5420, 0x490e, 0x8a, 0x7f, 0x92, 0x36, 0x75, 0xa2, 0xd6, 0x87); #else DEFINE_GUID(IID_ID3DXEffect, 0xf6ceb4b3, 0x4e4c, 0x40dd, 0xb8, 0x83, 0x8d, 0x8d, 0xe5, 0xea, 0x0c, 0xd5); #endif #define INTERFACE ID3DXEffect DECLARE_INTERFACE_(ID3DXEffect, ID3DXBaseEffect) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseEffect methods ***/ STDMETHOD(GetDesc)(THIS_ D3DXEFFECT_DESC* desc) PURE; STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE; STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE; STDMETHOD(GetPassDesc)(THIS_ D3DXHANDLE pass, D3DXPASS_DESC* desc) PURE; STDMETHOD(GetFunctionDesc)(THIS_ D3DXHANDLE shader, D3DXFUNCTION_DESC* desc) PURE; STDMETHOD_(D3DXHANDLE, GetParameter)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE; STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetPass)(THIS_ D3DXHANDLE technique, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index); STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name); STDMETHOD_(D3DXHANDLE, GetAnnotation)(THIS_ D3DXHANDLE object, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE; STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE; STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE; STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, WINBOOL b) PURE; STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, WINBOOL* b) PURE; STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const WINBOOL *b, UINT count) PURE; STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, WINBOOL* b, UINT count) PURE; STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE; STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE; STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE; STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE; STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE; STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE; STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE; STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE; STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE; STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE; STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE; STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE; STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrix)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE; STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE; STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE; STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE; STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE; STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE; /*** ID3DXEffect methods ***/ STDMETHOD(GetPool)(THIS_ ID3DXEffectPool **pool) PURE; STDMETHOD(SetTechnique)(THIS_ D3DXHANDLE technique) PURE; STDMETHOD_(D3DXHANDLE, GetCurrentTechnique)(THIS) PURE; STDMETHOD(ValidateTechnique)(THIS_ D3DXHANDLE technique) PURE; STDMETHOD(FindNextValidTechnique)(THIS_ D3DXHANDLE technique, D3DXHANDLE* next_technique) PURE; STDMETHOD_(WINBOOL, IsParameterUsed)(THIS_ D3DXHANDLE parameter, D3DXHANDLE technique) PURE; STDMETHOD(Begin)(THIS_ UINT *passes, DWORD flags) PURE; STDMETHOD(BeginPass)(THIS_ UINT pass) PURE; STDMETHOD(CommitChanges)(THIS) PURE; STDMETHOD(EndPass)(THIS) PURE; STDMETHOD(End)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(OnLostDevice)(THIS) PURE; STDMETHOD(OnResetDevice)(THIS) PURE; STDMETHOD(SetStateManager)(THIS_ ID3DXEffectStateManager *manager) PURE; STDMETHOD(GetStateManager)(THIS_ ID3DXEffectStateManager **manager) PURE; STDMETHOD(BeginParameterBlock)(THIS) PURE; STDMETHOD_(D3DXHANDLE, EndParameterBlock)(THIS) PURE; STDMETHOD(ApplyParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE; #if D3DX_SDK_VERSION >= 26 STDMETHOD(DeleteParameterBlock)(THIS_ D3DXHANDLE parameter_block) PURE; #endif STDMETHOD(CloneEffect)(THIS_ struct IDirect3DDevice9 *device, struct ID3DXEffect **effect) PURE; #if D3DX_SDK_VERSION >= 27 STDMETHOD(SetRawValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT byte_offset, UINT bytes) PURE; #endif }; #undef INTERFACE typedef struct ID3DXEffectCompiler *LPD3DXEFFECTCOMPILER; DEFINE_GUID(IID_ID3DXEffectCompiler, 0x51b8a949, 0x1a31, 0x47e6, 0xbe, 0xa0, 0x4b, 0x30, 0xdb, 0x53, 0xf1, 0xe0); #define INTERFACE ID3DXEffectCompiler DECLARE_INTERFACE_(ID3DXEffectCompiler, ID3DXBaseEffect) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseEffect methods ***/ STDMETHOD(GetDesc)(THIS_ D3DXEFFECT_DESC* desc) PURE; STDMETHOD(GetParameterDesc)(THIS_ D3DXHANDLE parameter, D3DXPARAMETER_DESC* desc) PURE; STDMETHOD(GetTechniqueDesc)(THIS_ D3DXHANDLE technique, D3DXTECHNIQUE_DESC* desc) PURE; STDMETHOD(GetPassDesc)(THIS_ D3DXHANDLE pass, D3DXPASS_DESC* desc) PURE; STDMETHOD(GetFunctionDesc)(THIS_ D3DXHANDLE shader, D3DXFUNCTION_DESC* desc) PURE; STDMETHOD_(D3DXHANDLE, GetParameter)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetParameterByName)(THIS_ D3DXHANDLE parameter, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetParameterBySemantic)(THIS_ D3DXHANDLE parameter, const char *semantic) PURE; STDMETHOD_(D3DXHANDLE, GetParameterElement)(THIS_ D3DXHANDLE parameter, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechnique)(THIS_ UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetTechniqueByName)(THIS_ const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetPass)(THIS_ D3DXHANDLE technique, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetPassByName)(THIS_ D3DXHANDLE technique, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetFunction)(THIS_ UINT index); STDMETHOD_(D3DXHANDLE, GetFunctionByName)(THIS_ const char *name); STDMETHOD_(D3DXHANDLE, GetAnnotation)(THIS_ D3DXHANDLE object, UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetAnnotationByName)(THIS_ D3DXHANDLE object, const char *name) PURE; STDMETHOD(SetValue)(THIS_ D3DXHANDLE parameter, const void *data, UINT bytes) PURE; STDMETHOD(GetValue)(THIS_ D3DXHANDLE parameter, void *data, UINT bytes) PURE; STDMETHOD(SetBool)(THIS_ D3DXHANDLE parameter, WINBOOL b) PURE; STDMETHOD(GetBool)(THIS_ D3DXHANDLE parameter, WINBOOL* b) PURE; STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE parameter, const WINBOOL *b, UINT count) PURE; STDMETHOD(GetBoolArray)(THIS_ D3DXHANDLE parameter, WINBOOL* b, UINT count) PURE; STDMETHOD(SetInt)(THIS_ D3DXHANDLE parameter, INT n) PURE; STDMETHOD(GetInt)(THIS_ D3DXHANDLE parameter, INT* n) PURE; STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE parameter, const INT *n, UINT count) PURE; STDMETHOD(GetIntArray)(THIS_ D3DXHANDLE parameter, INT* n, UINT count) PURE; STDMETHOD(SetFloat)(THIS_ D3DXHANDLE parameter, FLOAT f) PURE; STDMETHOD(GetFloat)(THIS_ D3DXHANDLE parameter, FLOAT* f) PURE; STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE parameter, const FLOAT *f, UINT count) PURE; STDMETHOD(GetFloatArray)(THIS_ D3DXHANDLE parameter, FLOAT* f, UINT count) PURE; STDMETHOD(SetVector)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector) PURE; STDMETHOD(GetVector)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector) PURE; STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE parameter, const D3DXVECTOR4 *vector, UINT count) PURE; STDMETHOD(GetVectorArray)(THIS_ D3DXHANDLE parameter, D3DXVECTOR4* vector, UINT count) PURE; STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrix)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixPointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix) PURE; STDMETHOD(GetMatrixTranspose)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX *matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposeArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX* matrix, UINT count) PURE; STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, const D3DXMATRIX **matrix, UINT count) PURE; STDMETHOD(GetMatrixTransposePointerArray)(THIS_ D3DXHANDLE parameter, D3DXMATRIX** matrix, UINT count) PURE; STDMETHOD(SetString)(THIS_ D3DXHANDLE parameter, const char *string) PURE; STDMETHOD(GetString)(THIS_ D3DXHANDLE parameter, const char **string) PURE; STDMETHOD(SetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 *texture) PURE; STDMETHOD(GetTexture)(THIS_ D3DXHANDLE parameter, struct IDirect3DBaseTexture9 **texture) PURE; STDMETHOD(GetPixelShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DPixelShader9 **shader) PURE; STDMETHOD(GetVertexShader)(THIS_ D3DXHANDLE parameter, struct IDirect3DVertexShader9 **shader) PURE; STDMETHOD(SetArrayRange)(THIS_ D3DXHANDLE parameter, UINT start, UINT end) PURE; /*** ID3DXEffectCompiler methods ***/ STDMETHOD(SetLiteral)(THIS_ D3DXHANDLE parameter, WINBOOL literal) PURE; STDMETHOD(GetLiteral)(THIS_ D3DXHANDLE parameter, WINBOOL* literal) PURE; STDMETHOD(CompileEffect)(THIS_ DWORD flags, ID3DXBuffer **effect, ID3DXBuffer **error_msgs) PURE; STDMETHOD(CompileShader)(THIS_ D3DXHANDLE function, const char *target, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_msgs, ID3DXConstantTable **constant_table) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DXCreateEffectPool(ID3DXEffectPool **pool); HRESULT WINAPI D3DXCreateEffect(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatalen, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectCompiler(const char *srcdata, UINT srcdatalen, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **compiler, ID3DXBuffer **parse_errors); HRESULT WINAPI D3DXCreateEffectFromFileExA(struct IDirect3DDevice9 *device, const char *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); #define D3DXCreateEffectFromFileEx __MINGW_NAME_AW(D3DXCreateEffectFromFileEx) HRESULT WINAPI D3DXCreateEffectFromFileA(struct IDirect3DDevice9 *device, const char *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectFromFileW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); #define D3DXCreateEffectFromFile __MINGW_NAME_AW(D3DXCreateEffectFromFile) HRESULT WINAPI D3DXCreateEffectFromResourceExA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, const char *skip_constants, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); #define D3DXCreateEffectFromResourceEx __MINGW_NAME_AW(D3DXCreateEffectFromResourceEx) HRESULT WINAPI D3DXCreateEffectFromResourceA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); HRESULT WINAPI D3DXCreateEffectFromResourceW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, struct ID3DXInclude *include, DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilation_errors); #define D3DXCreateEffectFromResource __MINGW_NAME_AW(D3DXCreateEffectFromResource) HRESULT WINAPI D3DXCreateEffectCompilerFromFileA(const char *srcfile, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors); HRESULT WINAPI D3DXCreateEffectCompilerFromFileW(const WCHAR *srcfile, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors); #define D3DXCreateEffectCompilerFromFile __MINGW_NAME_AW(D3DXCreateEffectCompilerFromFile) HRESULT WINAPI D3DXCreateEffectCompilerFromResourceA(HMODULE srcmodule, const char *srcresource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors); HRESULT WINAPI D3DXCreateEffectCompilerFromResourceW(HMODULE srcmodule, const WCHAR *srcresource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXEffectCompiler **effectcompiler, ID3DXBuffer **parseerrors); #define D3DXCreateEffectCompilerFromResource __MINGW_NAME_AW(D3DXCreateEffectCompilerFromResource) HRESULT WINAPI D3DXDisassembleEffect(ID3DXEffect *effect, WINBOOL enable_color_code, ID3DXBuffer **disassembly); #ifdef __cplusplus } #endif #endif /* __D3DX9EFFECT_H__ */ dxvk-0~git20220822.9df86f2/d3dx9math.h000066400000000000000000000571161430055512200167670ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2007 David Adam * Copyright (C) 2007 Tony Wasserka * * 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 */ #include "d3dx9.h" #ifndef __D3DX9MATH_H__ #define __D3DX9MATH_H__ #include #define D3DX_PI ((FLOAT)3.141592654) #define D3DX_1BYPI ((FLOAT)0.318309886) #define D3DXSH_MINORDER 2 #define D3DXSH_MAXORDER 6 #define D3DXToRadian(degree) ((degree) * (D3DX_PI / 180.0f)) #define D3DXToDegree(radian) ((radian) * (180.0f / D3DX_PI)) typedef struct D3DXVECTOR2 { #ifdef __cplusplus D3DXVECTOR2(); D3DXVECTOR2(const FLOAT *pf); D3DXVECTOR2(FLOAT fx, FLOAT fy); operator FLOAT* (); operator const FLOAT* () const; D3DXVECTOR2& operator += (const D3DXVECTOR2&); D3DXVECTOR2& operator -= (const D3DXVECTOR2&); D3DXVECTOR2& operator *= (FLOAT); D3DXVECTOR2& operator /= (FLOAT); D3DXVECTOR2 operator + () const; D3DXVECTOR2 operator - () const; D3DXVECTOR2 operator + (const D3DXVECTOR2&) const; D3DXVECTOR2 operator - (const D3DXVECTOR2&) const; D3DXVECTOR2 operator * (FLOAT) const; D3DXVECTOR2 operator / (FLOAT) const; friend D3DXVECTOR2 operator * (FLOAT, const D3DXVECTOR2&); WINBOOL operator == (const D3DXVECTOR2&) const; WINBOOL operator != (const D3DXVECTOR2&) const; #endif /* __cplusplus */ FLOAT x, y; } D3DXVECTOR2, *LPD3DXVECTOR2; #ifdef __cplusplus typedef struct D3DXVECTOR3 : public D3DVECTOR { D3DXVECTOR3(); D3DXVECTOR3(const FLOAT *pf); D3DXVECTOR3(const D3DVECTOR& v); D3DXVECTOR3(FLOAT fx, FLOAT fy, FLOAT fz); operator FLOAT* (); operator const FLOAT* () const; D3DXVECTOR3& operator += (const D3DXVECTOR3&); D3DXVECTOR3& operator -= (const D3DXVECTOR3&); D3DXVECTOR3& operator *= (FLOAT); D3DXVECTOR3& operator /= (FLOAT); D3DXVECTOR3 operator + () const; D3DXVECTOR3 operator - () const; D3DXVECTOR3 operator + (const D3DXVECTOR3&) const; D3DXVECTOR3 operator - (const D3DXVECTOR3&) const; D3DXVECTOR3 operator * (FLOAT) const; D3DXVECTOR3 operator / (FLOAT) const; friend D3DXVECTOR3 operator * (FLOAT, const struct D3DXVECTOR3&); WINBOOL operator == (const D3DXVECTOR3&) const; WINBOOL operator != (const D3DXVECTOR3&) const; } D3DXVECTOR3, *LPD3DXVECTOR3; #else /* !__cplusplus */ typedef struct _D3DVECTOR D3DXVECTOR3, *LPD3DXVECTOR3; #endif /* !__cplusplus */ typedef struct D3DXVECTOR4 { #ifdef __cplusplus D3DXVECTOR4(); D3DXVECTOR4(const FLOAT *pf); D3DXVECTOR4(FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw); operator FLOAT* (); operator const FLOAT* () const; D3DXVECTOR4& operator += (const D3DXVECTOR4&); D3DXVECTOR4& operator -= (const D3DXVECTOR4&); D3DXVECTOR4& operator *= (FLOAT); D3DXVECTOR4& operator /= (FLOAT); D3DXVECTOR4 operator + () const; D3DXVECTOR4 operator - () const; D3DXVECTOR4 operator + (const D3DXVECTOR4&) const; D3DXVECTOR4 operator - (const D3DXVECTOR4&) const; D3DXVECTOR4 operator * (FLOAT) const; D3DXVECTOR4 operator / (FLOAT) const; friend D3DXVECTOR4 operator * (FLOAT, const D3DXVECTOR4&); WINBOOL operator == (const D3DXVECTOR4&) const; WINBOOL operator != (const D3DXVECTOR4&) const; #endif /* __cplusplus */ FLOAT x, y, z, w; } D3DXVECTOR4, *LPD3DXVECTOR4; #ifdef __cplusplus typedef struct D3DXMATRIX : public D3DMATRIX { D3DXMATRIX(); D3DXMATRIX(const FLOAT *pf); D3DXMATRIX(const D3DMATRIX& mat); D3DXMATRIX(FLOAT f11, FLOAT f12, FLOAT f13, FLOAT f14, FLOAT f21, FLOAT f22, FLOAT f23, FLOAT f24, FLOAT f31, FLOAT f32, FLOAT f33, FLOAT f34, FLOAT f41, FLOAT f42, FLOAT f43, FLOAT f44); FLOAT& operator () (UINT row, UINT col); FLOAT operator () (UINT row, UINT col) const; operator FLOAT* (); operator const FLOAT* () const; D3DXMATRIX& operator *= (const D3DXMATRIX&); D3DXMATRIX& operator += (const D3DXMATRIX&); D3DXMATRIX& operator -= (const D3DXMATRIX&); D3DXMATRIX& operator *= (FLOAT); D3DXMATRIX& operator /= (FLOAT); D3DXMATRIX operator + () const; D3DXMATRIX operator - () const; D3DXMATRIX operator * (const D3DXMATRIX&) const; D3DXMATRIX operator + (const D3DXMATRIX&) const; D3DXMATRIX operator - (const D3DXMATRIX&) const; D3DXMATRIX operator * (FLOAT) const; D3DXMATRIX operator / (FLOAT) const; friend D3DXMATRIX operator * (FLOAT, const D3DXMATRIX&); WINBOOL operator == (const D3DXMATRIX&) const; WINBOOL operator != (const D3DXMATRIX&) const; } D3DXMATRIX, *LPD3DXMATRIX; #else /* !__cplusplus */ typedef struct _D3DMATRIX D3DXMATRIX, *LPD3DXMATRIX; #endif /* !__cplusplus */ typedef struct D3DXQUATERNION { #ifdef __cplusplus D3DXQUATERNION(); D3DXQUATERNION(const FLOAT *pf); D3DXQUATERNION(FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw); operator FLOAT* (); operator const FLOAT* () const; D3DXQUATERNION& operator += (const D3DXQUATERNION&); D3DXQUATERNION& operator -= (const D3DXQUATERNION&); D3DXQUATERNION& operator *= (const D3DXQUATERNION&); D3DXQUATERNION& operator *= (FLOAT); D3DXQUATERNION& operator /= (FLOAT); D3DXQUATERNION operator + () const; D3DXQUATERNION operator - () const; D3DXQUATERNION operator + (const D3DXQUATERNION&) const; D3DXQUATERNION operator - (const D3DXQUATERNION&) const; D3DXQUATERNION operator * (const D3DXQUATERNION&) const; D3DXQUATERNION operator * (FLOAT) const; D3DXQUATERNION operator / (FLOAT) const; friend D3DXQUATERNION operator * (FLOAT, const D3DXQUATERNION&); WINBOOL operator == (const D3DXQUATERNION&) const; WINBOOL operator != (const D3DXQUATERNION&) const; #endif /* __cplusplus */ FLOAT x, y, z, w; } D3DXQUATERNION, *LPD3DXQUATERNION; typedef struct D3DXPLANE { #ifdef __cplusplus D3DXPLANE(); D3DXPLANE(const FLOAT *pf); D3DXPLANE(FLOAT fa, FLOAT fb, FLOAT fc, FLOAT fd); operator FLOAT* (); operator const FLOAT* () const; D3DXPLANE operator + () const; D3DXPLANE operator - () const; WINBOOL operator == (const D3DXPLANE&) const; WINBOOL operator != (const D3DXPLANE&) const; #endif /* __cplusplus */ FLOAT a, b, c, d; } D3DXPLANE, *LPD3DXPLANE; typedef struct D3DXCOLOR { #ifdef __cplusplus D3DXCOLOR(); D3DXCOLOR(DWORD col); D3DXCOLOR(const FLOAT *pf); D3DXCOLOR(const D3DCOLORVALUE& col); D3DXCOLOR(FLOAT fr, FLOAT fg, FLOAT fb, FLOAT fa); operator DWORD () const; operator FLOAT* (); operator const FLOAT* () const; operator D3DCOLORVALUE* (); operator const D3DCOLORVALUE* () const; operator D3DCOLORVALUE& (); operator const D3DCOLORVALUE& () const; D3DXCOLOR& operator += (const D3DXCOLOR&); D3DXCOLOR& operator -= (const D3DXCOLOR&); D3DXCOLOR& operator *= (FLOAT); D3DXCOLOR& operator /= (FLOAT); D3DXCOLOR operator + () const; D3DXCOLOR operator - () const; D3DXCOLOR operator + (const D3DXCOLOR&) const; D3DXCOLOR operator - (const D3DXCOLOR&) const; D3DXCOLOR operator * (FLOAT) const; D3DXCOLOR operator / (FLOAT) const; friend D3DXCOLOR operator * (FLOAT, const D3DXCOLOR&); WINBOOL operator == (const D3DXCOLOR&) const; WINBOOL operator != (const D3DXCOLOR&) const; #endif /* __cplusplus */ FLOAT r, g, b, a; } D3DXCOLOR, *LPD3DXCOLOR; typedef struct D3DXFLOAT16 { #ifdef __cplusplus D3DXFLOAT16(); D3DXFLOAT16(FLOAT f); D3DXFLOAT16(const D3DXFLOAT16 &f); operator FLOAT (); WINBOOL operator == (const D3DXFLOAT16 &) const; WINBOOL operator != (const D3DXFLOAT16 &) const; #endif /* __cplusplus */ WORD value; } D3DXFLOAT16, *LPD3DXFLOAT16; #ifdef __cplusplus extern "C" { #endif D3DXCOLOR* WINAPI D3DXColorAdjustContrast(D3DXCOLOR *pout, const D3DXCOLOR *pc, FLOAT s); D3DXCOLOR* WINAPI D3DXColorAdjustSaturation(D3DXCOLOR *pout, const D3DXCOLOR *pc, FLOAT s); FLOAT WINAPI D3DXFresnelTerm(FLOAT costheta, FLOAT refractionindex); D3DXMATRIX* WINAPI D3DXMatrixAffineTransformation(D3DXMATRIX *pout, FLOAT scaling, const D3DXVECTOR3 *rotationcenter, const D3DXQUATERNION *rotation, const D3DXVECTOR3 *translation); D3DXMATRIX* WINAPI D3DXMatrixAffineTransformation2D(D3DXMATRIX *pout, FLOAT scaling, const D3DXVECTOR2 *protationcenter, FLOAT rotation, const D3DXVECTOR2 *ptranslation); HRESULT WINAPI D3DXMatrixDecompose(D3DXVECTOR3 *poutscale, D3DXQUATERNION *poutrotation, D3DXVECTOR3 *pouttranslation, const D3DXMATRIX *pm); FLOAT WINAPI D3DXMatrixDeterminant(const D3DXMATRIX *pm); D3DXMATRIX* WINAPI D3DXMatrixInverse(D3DXMATRIX *pout, FLOAT *pdeterminant, const D3DXMATRIX *pm); D3DXMATRIX* WINAPI D3DXMatrixLookAtLH(D3DXMATRIX *pout, const D3DXVECTOR3 *peye, const D3DXVECTOR3 *pat, const D3DXVECTOR3 *pup); D3DXMATRIX* WINAPI D3DXMatrixLookAtRH(D3DXMATRIX *pout, const D3DXVECTOR3 *peye, const D3DXVECTOR3 *pat, const D3DXVECTOR3 *pup); D3DXMATRIX* WINAPI D3DXMatrixMultiply(D3DXMATRIX *pout, const D3DXMATRIX *pm1, const D3DXMATRIX *pm2); D3DXMATRIX* WINAPI D3DXMatrixMultiplyTranspose(D3DXMATRIX *pout, const D3DXMATRIX *pm1, const D3DXMATRIX *pm2); D3DXMATRIX* WINAPI D3DXMatrixOrthoLH(D3DXMATRIX *pout, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterLH(D3DXMATRIX *pout, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixOrthoOffCenterRH(D3DXMATRIX *pout, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixOrthoRH(D3DXMATRIX *pout, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveFovLH(D3DXMATRIX *pout, FLOAT fovy, FLOAT aspect, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveFovRH(D3DXMATRIX *pout, FLOAT fovy, FLOAT aspect, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveLH(D3DXMATRIX *pout, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveOffCenterLH(D3DXMATRIX *pout, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveOffCenterRH(D3DXMATRIX *pout, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixPerspectiveRH(D3DXMATRIX *pout, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); D3DXMATRIX* WINAPI D3DXMatrixReflect(D3DXMATRIX *pout, const D3DXPLANE *pplane); D3DXMATRIX* WINAPI D3DXMatrixRotationAxis(D3DXMATRIX *pout, const D3DXVECTOR3 *pv, FLOAT angle); D3DXMATRIX* WINAPI D3DXMatrixRotationQuaternion(D3DXMATRIX *pout, const D3DXQUATERNION *pq); D3DXMATRIX* WINAPI D3DXMatrixRotationX(D3DXMATRIX *pout, FLOAT angle); D3DXMATRIX* WINAPI D3DXMatrixRotationY(D3DXMATRIX *pout, FLOAT angle); D3DXMATRIX* WINAPI D3DXMatrixRotationYawPitchRoll(D3DXMATRIX *pout, FLOAT yaw, FLOAT pitch, FLOAT roll); D3DXMATRIX* WINAPI D3DXMatrixRotationZ(D3DXMATRIX *pout, FLOAT angle); D3DXMATRIX* WINAPI D3DXMatrixScaling(D3DXMATRIX *pout, FLOAT sx, FLOAT sy, FLOAT sz); D3DXMATRIX* WINAPI D3DXMatrixShadow(D3DXMATRIX *pout, const D3DXVECTOR4 *plight, const D3DXPLANE *pPlane); D3DXMATRIX* WINAPI D3DXMatrixTransformation(D3DXMATRIX *pout, const D3DXVECTOR3 *pscalingcenter, const D3DXQUATERNION *pscalingrotation, const D3DXVECTOR3 *pscaling, const D3DXVECTOR3 *protationcenter, const D3DXQUATERNION *protation, const D3DXVECTOR3 *ptranslation); D3DXMATRIX* WINAPI D3DXMatrixTransformation2D(D3DXMATRIX *pout, const D3DXVECTOR2 *pscalingcenter, FLOAT scalingrotation, const D3DXVECTOR2 *pscaling, const D3DXVECTOR2 *protationcenter, FLOAT rotation, const D3DXVECTOR2 *ptranslation); D3DXMATRIX* WINAPI D3DXMatrixTranslation(D3DXMATRIX *pout, FLOAT x, FLOAT y, FLOAT z); D3DXMATRIX* WINAPI D3DXMatrixTranspose(D3DXMATRIX *pout, const D3DXMATRIX *pm); D3DXPLANE* WINAPI D3DXPlaneFromPointNormal(D3DXPLANE *pout, const D3DXVECTOR3 *pvpoint, const D3DXVECTOR3 *pvnormal); D3DXPLANE* WINAPI D3DXPlaneFromPoints(D3DXPLANE *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2, const D3DXVECTOR3 *pv3); D3DXVECTOR3* WINAPI D3DXPlaneIntersectLine(D3DXVECTOR3 *pout, const D3DXPLANE *pp, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2); D3DXPLANE* WINAPI D3DXPlaneNormalize(D3DXPLANE *pout, const D3DXPLANE *pp); D3DXPLANE* WINAPI D3DXPlaneTransform(D3DXPLANE *pout, const D3DXPLANE *pplane, const D3DXMATRIX *pm); D3DXPLANE* WINAPI D3DXPlaneTransformArray(D3DXPLANE *pout, UINT outstride, const D3DXPLANE *pplane, UINT pstride, const D3DXMATRIX *pm, UINT n); D3DXQUATERNION* WINAPI D3DXQuaternionBaryCentric(D3DXQUATERNION *pout, const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2, const D3DXQUATERNION *pq3, FLOAT f, FLOAT g); D3DXQUATERNION* WINAPI D3DXQuaternionExp(D3DXQUATERNION *pout, const D3DXQUATERNION *pq); D3DXQUATERNION* WINAPI D3DXQuaternionInverse(D3DXQUATERNION *pout, const D3DXQUATERNION *pq); D3DXQUATERNION* WINAPI D3DXQuaternionLn(D3DXQUATERNION *pout, const D3DXQUATERNION *pq); D3DXQUATERNION* WINAPI D3DXQuaternionMultiply(D3DXQUATERNION *pout, const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2); D3DXQUATERNION* WINAPI D3DXQuaternionNormalize(D3DXQUATERNION *pout, const D3DXQUATERNION *pq); D3DXQUATERNION* WINAPI D3DXQuaternionRotationAxis(D3DXQUATERNION *pout, const D3DXVECTOR3 *pv, FLOAT angle); D3DXQUATERNION* WINAPI D3DXQuaternionRotationMatrix(D3DXQUATERNION *pout, const D3DXMATRIX *pm); D3DXQUATERNION* WINAPI D3DXQuaternionRotationYawPitchRoll(D3DXQUATERNION *pout, FLOAT yaw, FLOAT pitch, FLOAT roll); D3DXQUATERNION* WINAPI D3DXQuaternionSlerp(D3DXQUATERNION *pout, const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2, FLOAT t); D3DXQUATERNION* WINAPI D3DXQuaternionSquad(D3DXQUATERNION *pout, const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2, const D3DXQUATERNION *pq3, const D3DXQUATERNION *pq4, FLOAT t); void WINAPI D3DXQuaternionSquadSetup(D3DXQUATERNION *paout, D3DXQUATERNION *pbout, D3DXQUATERNION *pcout, const D3DXQUATERNION *pq0, const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2, const D3DXQUATERNION *pq3); void WINAPI D3DXQuaternionToAxisAngle(const D3DXQUATERNION *pq, D3DXVECTOR3 *paxis, FLOAT *pangle); D3DXVECTOR2* WINAPI D3DXVec2BaryCentric(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2, const D3DXVECTOR2 *pv3, FLOAT f, FLOAT g); D3DXVECTOR2* WINAPI D3DXVec2CatmullRom(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv0, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2, const D3DXVECTOR2 *pv3, FLOAT s); D3DXVECTOR2* WINAPI D3DXVec2Hermite(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pt1, const D3DXVECTOR2 *pv2, const D3DXVECTOR2 *pt2, FLOAT s); D3DXVECTOR2* WINAPI D3DXVec2Normalize(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv); D3DXVECTOR4* WINAPI D3DXVec2Transform(D3DXVECTOR4 *pout, const D3DXVECTOR2 *pv, const D3DXMATRIX *pm); D3DXVECTOR4* WINAPI D3DXVec2TransformArray(D3DXVECTOR4 *pout, UINT outstride, const D3DXVECTOR2 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR2* WINAPI D3DXVec2TransformCoord(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv, const D3DXMATRIX *pm); D3DXVECTOR2* WINAPI D3DXVec2TransformCoordArray(D3DXVECTOR2 *pout, UINT outstride, const D3DXVECTOR2 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR2* WINAPI D3DXVec2TransformNormal(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv, const D3DXMATRIX *pm); D3DXVECTOR2* WINAPI D3DXVec2TransformNormalArray(D3DXVECTOR2 *pout, UINT outstride, const D3DXVECTOR2 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR3* WINAPI D3DXVec3BaryCentric(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2, const D3DXVECTOR3 *pv3, FLOAT f, FLOAT g); D3DXVECTOR3* WINAPI D3DXVec3CatmullRom( D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv0, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2, const D3DXVECTOR3 *pv3, FLOAT s); D3DXVECTOR3* WINAPI D3DXVec3Hermite(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pt1, const D3DXVECTOR3 *pv2, const D3DXVECTOR3 *pt2, FLOAT s); D3DXVECTOR3* WINAPI D3DXVec3Normalize(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv); D3DXVECTOR3* WINAPI D3DXVec3Project(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv, const D3DVIEWPORT9 *pviewport, const D3DXMATRIX *pprojection, const D3DXMATRIX *pview, const D3DXMATRIX *pworld); D3DXVECTOR3* WINAPI D3DXVec3ProjectArray(D3DXVECTOR3 *pout, UINT outstride, const D3DXVECTOR3 *pv, UINT vstride, const D3DVIEWPORT9 *pviewport, const D3DXMATRIX *pprojection, const D3DXMATRIX *pview, const D3DXMATRIX *pworld, UINT n); D3DXVECTOR4* WINAPI D3DXVec3Transform(D3DXVECTOR4 *pout, const D3DXVECTOR3 *pv, const D3DXMATRIX *pm); D3DXVECTOR4* WINAPI D3DXVec3TransformArray(D3DXVECTOR4 *pout, UINT outstride, const D3DXVECTOR3 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR3* WINAPI D3DXVec3TransformCoord(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv, const D3DXMATRIX *pm); D3DXVECTOR3* WINAPI D3DXVec3TransformCoordArray(D3DXVECTOR3 *pout, UINT outstride, const D3DXVECTOR3 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR3* WINAPI D3DXVec3TransformNormal(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv, const D3DXMATRIX *pm); D3DXVECTOR3* WINAPI D3DXVec3TransformNormalArray(D3DXVECTOR3 *pout, UINT outstride, const D3DXVECTOR3 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXVECTOR3* WINAPI D3DXVec3Unproject(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv, const D3DVIEWPORT9 *pviewport, const D3DXMATRIX *pprojection, const D3DXMATRIX *pview, const D3DXMATRIX *pworld); D3DXVECTOR3* WINAPI D3DXVec3UnprojectArray(D3DXVECTOR3 *pout, UINT outstride, const D3DXVECTOR3 *pv, UINT vstride, const D3DVIEWPORT9 *pviewport, const D3DXMATRIX *pprojection, const D3DXMATRIX *pview, const D3DXMATRIX *pworld, UINT n); D3DXVECTOR4* WINAPI D3DXVec4BaryCentric(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2, const D3DXVECTOR4 *pv3, FLOAT f, FLOAT g); D3DXVECTOR4* WINAPI D3DXVec4CatmullRom(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv0, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2, const D3DXVECTOR4 *pv3, FLOAT s); D3DXVECTOR4* WINAPI D3DXVec4Cross(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2, const D3DXVECTOR4 *pv3); D3DXVECTOR4* WINAPI D3DXVec4Hermite(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pt1, const D3DXVECTOR4 *pv2, const D3DXVECTOR4 *pt2, FLOAT s); D3DXVECTOR4* WINAPI D3DXVec4Normalize(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv); D3DXVECTOR4* WINAPI D3DXVec4Transform(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv, const D3DXMATRIX *pm); D3DXVECTOR4* WINAPI D3DXVec4TransformArray(D3DXVECTOR4 *pout, UINT outstride, const D3DXVECTOR4 *pv, UINT vstride, const D3DXMATRIX *pm, UINT n); D3DXFLOAT16 *WINAPI D3DXFloat32To16Array(D3DXFLOAT16 *pout, const FLOAT *pin, UINT n); FLOAT *WINAPI D3DXFloat16To32Array(FLOAT *pout, const D3DXFLOAT16 *pin, UINT n); FLOAT* WINAPI D3DXSHAdd(FLOAT *out, UINT order, const FLOAT *a, const FLOAT *b); FLOAT WINAPI D3DXSHDot(UINT order, const FLOAT *a, const FLOAT *b); HRESULT WINAPI D3DXSHEvalConeLight(UINT order, const D3DXVECTOR3 *dir, FLOAT radius, FLOAT Rintensity, FLOAT Gintensity, FLOAT Bintensity, FLOAT *rout, FLOAT *gout, FLOAT *bout); FLOAT* WINAPI D3DXSHEvalDirection(FLOAT *out, UINT order, const D3DXVECTOR3 *dir); HRESULT WINAPI D3DXSHEvalDirectionalLight(UINT order, const D3DXVECTOR3 *dir, FLOAT Rintensity, FLOAT Gintensity, FLOAT Bintensity, FLOAT *rout, FLOAT *gout, FLOAT *bout); HRESULT WINAPI D3DXSHEvalHemisphereLight(UINT order, const D3DXVECTOR3 *dir, D3DXCOLOR top, D3DXCOLOR bottom, FLOAT *rout, FLOAT *gout, FLOAT *bout); HRESULT WINAPI D3DXSHEvalSphericalLight(UINT order, const D3DXVECTOR3 *dir, FLOAT radius, FLOAT Rintensity, FLOAT Gintensity, FLOAT Bintensity, FLOAT *rout, FLOAT *gout, FLOAT *bout); FLOAT* WINAPI D3DXSHMultiply2(FLOAT *out, const FLOAT *a, const FLOAT *b); FLOAT* WINAPI D3DXSHMultiply3(FLOAT *out, const FLOAT *a, const FLOAT *b); FLOAT* WINAPI D3DXSHMultiply4(FLOAT *out, const FLOAT *a, const FLOAT *b); HRESULT WINAPI D3DXSHProjectCubeMap(UINT order, IDirect3DCubeTexture9 *texture, FLOAT *red, FLOAT *green, FLOAT *blue); FLOAT* WINAPI D3DXSHRotate(FLOAT *out, UINT order, const D3DXMATRIX *matrix, const FLOAT *in); FLOAT* WINAPI D3DXSHRotateZ(FLOAT *out, UINT order, FLOAT angle, const FLOAT *in); FLOAT* WINAPI D3DXSHScale(FLOAT *out, UINT order, const FLOAT *a, const FLOAT scale); #ifdef __cplusplus } #endif typedef interface ID3DXMatrixStack *LPD3DXMATRIXSTACK; DEFINE_GUID(IID_ID3DXMatrixStack, 0xc7885ba7, 0xf990, 0x4fe7, 0x92, 0x2d, 0x85, 0x15, 0xe4, 0x77, 0xdd, 0x85); #undef INTERFACE #define INTERFACE ID3DXMatrixStack DECLARE_INTERFACE_(ID3DXMatrixStack, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; STDMETHOD(Pop)(THIS) PURE; STDMETHOD(Push)(THIS) PURE; STDMETHOD(LoadIdentity)(THIS) PURE; STDMETHOD(LoadMatrix)(THIS_ const D3DXMATRIX* pM ) PURE; STDMETHOD(MultMatrix)(THIS_ const D3DXMATRIX* pM ) PURE; STDMETHOD(MultMatrixLocal)(THIS_ const D3DXMATRIX* pM ) PURE; STDMETHOD(RotateAxis)(THIS_ const D3DXVECTOR3* pV, FLOAT Angle) PURE; STDMETHOD(RotateAxisLocal)(THIS_ const D3DXVECTOR3* pV, FLOAT Angle) PURE; STDMETHOD(RotateYawPitchRoll)(THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; STDMETHOD(RotateYawPitchRollLocal)(THIS_ FLOAT Yaw, FLOAT Pitch, FLOAT Roll) PURE; STDMETHOD(Scale)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD(ScaleLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD(Translate)(THIS_ FLOAT x, FLOAT y, FLOAT z ) PURE; STDMETHOD(TranslateLocal)(THIS_ FLOAT x, FLOAT y, FLOAT z) PURE; STDMETHOD_(D3DXMATRIX*, GetTop)(THIS) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) #define ID3DXMatrixStack_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXMatrixStack_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXMatrixStack_Release(p) (p)->lpVtbl->Release(p) #define ID3DXMatrixStack_Pop(p) (p)->lpVtbl->Pop(p) #define ID3DXMatrixStack_Push(p) (p)->lpVtbl->Push(p) #define ID3DXMatrixStack_LoadIdentity(p) (p)->lpVtbl->LoadIdentity(p) #define ID3DXMatrixStack_LoadMatrix(p,a) (p)->lpVtbl->LoadMatrix(p,a) #define ID3DXMatrixStack_MultMatrix(p,a) (p)->lpVtbl->MultMatrix(p,a) #define ID3DXMatrixStack_MultMatrixLocal(p,a) (p)->lpVtbl->MultMatrixLocal(p,a) #define ID3DXMatrixStack_RotateAxis(p,a,b) (p)->lpVtbl->RotateAxis(p,a,b) #define ID3DXMatrixStack_RotateAxisLocal(p,a,b) (p)->lpVtbl->RotateAxisLocal(p,a,b) #define ID3DXMatrixStack_RotateYawPitchRoll(p,a,b,c) (p)->lpVtbl->RotateYawPitchRoll(p,a,b,c) #define ID3DXMatrixStack_RotateYawPitchRollLocal(p,a,b,c) (p)->lpVtbl->RotateYawPitchRollLocal(p,a,b,c) #define ID3DXMatrixStack_Scale(p,a,b,c) (p)->lpVtbl->Scale(p,a,b,c) #define ID3DXMatrixStack_ScaleLocal(p,a,b,c) (p)->lpVtbl->ScaleLocal(p,a,b,c) #define ID3DXMatrixStack_Translate(p,a,b,c) (p)->lpVtbl->Translate(p,a,b,c) #define ID3DXMatrixStack_TranslateLocal(p,a,b,c) (p)->lpVtbl->TranslateLocal(p,a,b,c) #define ID3DXMatrixStack_GetTop(p) (p)->lpVtbl->GetTop(p) #endif #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DXCreateMatrixStack(DWORD flags, ID3DXMatrixStack **stack); #ifdef __cplusplus } #endif #include "d3dx9math.inl" #endif /* __D3DX9MATH_H__ */ dxvk-0~git20220822.9df86f2/d3dx9math.inl000066400000000000000000000756301430055512200173230ustar00rootroot00000000000000/* * Copyright (C) 2007 David Adam * Copyright (C) 2007 Tony Wasserka * * 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 */ #ifndef __D3DX9MATH_INL__ #define __D3DX9MATH_INL__ /* constructors & operators */ #ifdef __cplusplus inline D3DXVECTOR2::D3DXVECTOR2() { } inline D3DXVECTOR2::D3DXVECTOR2(const FLOAT *pf) { if(!pf) return; x = pf[0]; y = pf[1]; } inline D3DXVECTOR2::D3DXVECTOR2(FLOAT fx, FLOAT fy) { x = fx; y = fy; } inline D3DXVECTOR2::operator FLOAT* () { return (FLOAT*)&x; } inline D3DXVECTOR2::operator const FLOAT* () const { return (const FLOAT*)&x; } inline D3DXVECTOR2& D3DXVECTOR2::operator += (const D3DXVECTOR2& v) { x += v.x; y += v.y; return *this; } inline D3DXVECTOR2& D3DXVECTOR2::operator -= (const D3DXVECTOR2& v) { x -= v.x; y -= v.y; return *this; } inline D3DXVECTOR2& D3DXVECTOR2::operator *= (FLOAT f) { x *= f; y *= f; return *this; } inline D3DXVECTOR2& D3DXVECTOR2::operator /= (FLOAT f) { x /= f; y /= f; return *this; } inline D3DXVECTOR2 D3DXVECTOR2::operator + () const { return *this; } inline D3DXVECTOR2 D3DXVECTOR2::operator - () const { return D3DXVECTOR2(-x, -y); } inline D3DXVECTOR2 D3DXVECTOR2::operator + (const D3DXVECTOR2& v) const { return D3DXVECTOR2(x + v.x, y + v.y); } inline D3DXVECTOR2 D3DXVECTOR2::operator - (const D3DXVECTOR2& v) const { return D3DXVECTOR2(x - v.x, y - v.y); } inline D3DXVECTOR2 D3DXVECTOR2::operator * (FLOAT f) const { return D3DXVECTOR2(x * f, y * f); } inline D3DXVECTOR2 D3DXVECTOR2::operator / (FLOAT f) const { return D3DXVECTOR2(x / f, y / f); } inline D3DXVECTOR2 operator * (FLOAT f, const D3DXVECTOR2& v) { return D3DXVECTOR2(f * v.x, f * v.y); } inline WINBOOL D3DXVECTOR2::operator == (const D3DXVECTOR2& v) const { return x == v.x && y == v.y; } inline WINBOOL D3DXVECTOR2::operator != (const D3DXVECTOR2& v) const { return x != v.x || y != v.y; } inline D3DXVECTOR3::D3DXVECTOR3() { } inline D3DXVECTOR3::D3DXVECTOR3(const FLOAT *pf) { if(!pf) return; x = pf[0]; y = pf[1]; z = pf[2]; } inline D3DXVECTOR3::D3DXVECTOR3(const D3DVECTOR& v) { x = v.x; y = v.y; z = v.z; } inline D3DXVECTOR3::D3DXVECTOR3(FLOAT fx, FLOAT fy, FLOAT fz) { x = fx; y = fy; z = fz; } inline D3DXVECTOR3::operator FLOAT* () { return (FLOAT*)&x; } inline D3DXVECTOR3::operator const FLOAT* () const { return (const FLOAT*)&x; } inline D3DXVECTOR3& D3DXVECTOR3::operator += (const D3DXVECTOR3& v) { x += v.x; y += v.y; z += v.z; return *this; } inline D3DXVECTOR3& D3DXVECTOR3::operator -= (const D3DXVECTOR3& v) { x -= v.x; y -= v.y; z -= v.z; return *this; } inline D3DXVECTOR3& D3DXVECTOR3::operator *= (FLOAT f) { x *= f; y *= f; z *= f; return *this; } inline D3DXVECTOR3& D3DXVECTOR3::operator /= (FLOAT f) { x /= f; y /= f; z /= f; return *this; } inline D3DXVECTOR3 D3DXVECTOR3::operator + () const { return *this; } inline D3DXVECTOR3 D3DXVECTOR3::operator - () const { return D3DXVECTOR3(-x, -y, -z); } inline D3DXVECTOR3 D3DXVECTOR3::operator + (const D3DXVECTOR3& v) const { return D3DXVECTOR3(x + v.x, y + v.y, z + v.z); } inline D3DXVECTOR3 D3DXVECTOR3::operator - (const D3DXVECTOR3& v) const { return D3DXVECTOR3(x - v.x, y - v.y, z - v.z); } inline D3DXVECTOR3 D3DXVECTOR3::operator * (FLOAT f) const { return D3DXVECTOR3(x * f, y * f, z * f); } inline D3DXVECTOR3 D3DXVECTOR3::operator / (FLOAT f) const { return D3DXVECTOR3(x / f, y / f, z / f); } inline D3DXVECTOR3 operator * (FLOAT f, const D3DXVECTOR3& v) { return D3DXVECTOR3(f * v.x, f * v.y, f * v.z); } inline WINBOOL D3DXVECTOR3::operator == (const D3DXVECTOR3& v) const { return x == v.x && y == v.y && z == v.z; } inline WINBOOL D3DXVECTOR3::operator != (const D3DXVECTOR3& v) const { return x != v.x || y != v.y || z != v.z; } inline D3DXVECTOR4::D3DXVECTOR4() { } inline D3DXVECTOR4::D3DXVECTOR4(const FLOAT *pf) { if(!pf) return; x = pf[0]; y = pf[1]; z = pf[2]; w = pf[3]; } inline D3DXVECTOR4::D3DXVECTOR4(FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw) { x = fx; y = fy; z = fz; w = fw; } inline D3DXVECTOR4::operator FLOAT* () { return (FLOAT*)&x; } inline D3DXVECTOR4::operator const FLOAT* () const { return (const FLOAT*)&x; } inline D3DXVECTOR4& D3DXVECTOR4::operator += (const D3DXVECTOR4& v) { x += v.x; y += v.y; z += v.z; w += v.w; return *this; } inline D3DXVECTOR4& D3DXVECTOR4::operator -= (const D3DXVECTOR4& v) { x -= v.x; y -= v.y; z -= v.z; w -= v.w; return *this; } inline D3DXVECTOR4& D3DXVECTOR4::operator *= (FLOAT f) { x *= f; y *= f; z *= f; w *= f; return *this; } inline D3DXVECTOR4& D3DXVECTOR4::operator /= (FLOAT f) { x /= f; y /= f; z /= f; w /= f; return *this; } inline D3DXVECTOR4 D3DXVECTOR4::operator + () const { return *this; } inline D3DXVECTOR4 D3DXVECTOR4::operator - () const { return D3DXVECTOR4(-x, -y, -z, -w); } inline D3DXVECTOR4 D3DXVECTOR4::operator + (const D3DXVECTOR4& v) const { return D3DXVECTOR4(x + v.x, y + v.y, z + v.z, w + v.w); } inline D3DXVECTOR4 D3DXVECTOR4::operator - (const D3DXVECTOR4& v) const { return D3DXVECTOR4(x - v.x, y - v.y, z - v.z, w - v.w); } inline D3DXVECTOR4 D3DXVECTOR4::operator * (FLOAT f) const { return D3DXVECTOR4(x * f, y * f, z * f, w * f); } inline D3DXVECTOR4 D3DXVECTOR4::operator / (FLOAT f) const { return D3DXVECTOR4(x / f, y / f, z / f, w / f); } inline D3DXVECTOR4 operator * (FLOAT f, const D3DXVECTOR4& v) { return D3DXVECTOR4(f * v.x, f * v.y, f * v.z, f * v.w); } inline WINBOOL D3DXVECTOR4::operator == (const D3DXVECTOR4& v) const { return x == v.x && y == v.y && z == v.z && w == v.w; } inline WINBOOL D3DXVECTOR4::operator != (const D3DXVECTOR4& v) const { return x != v.x || y != v.y || z != v.z || w != v.w; } inline D3DXMATRIX::D3DXMATRIX() { } inline D3DXMATRIX::D3DXMATRIX(const FLOAT *pf) { if(!pf) return; memcpy(&_11, pf, sizeof(D3DXMATRIX)); } inline D3DXMATRIX::D3DXMATRIX(const D3DMATRIX& mat) { memcpy(&_11, &mat, sizeof(D3DXMATRIX)); } inline D3DXMATRIX::D3DXMATRIX(FLOAT f11, FLOAT f12, FLOAT f13, FLOAT f14, FLOAT f21, FLOAT f22, FLOAT f23, FLOAT f24, FLOAT f31, FLOAT f32, FLOAT f33, FLOAT f34, FLOAT f41, FLOAT f42, FLOAT f43, FLOAT f44) { _11 = f11; _12 = f12; _13 = f13; _14 = f14; _21 = f21; _22 = f22; _23 = f23; _24 = f24; _31 = f31; _32 = f32; _33 = f33; _34 = f34; _41 = f41; _42 = f42; _43 = f43; _44 = f44; } inline FLOAT& D3DXMATRIX::operator () (UINT row, UINT col) { return m[row][col]; } inline FLOAT D3DXMATRIX::operator () (UINT row, UINT col) const { return m[row][col]; } inline D3DXMATRIX::operator FLOAT* () { return (FLOAT*)&_11; } inline D3DXMATRIX::operator const FLOAT* () const { return (const FLOAT*)&_11; } inline D3DXMATRIX& D3DXMATRIX::operator *= (const D3DXMATRIX& mat) { D3DXMatrixMultiply(this, this, &mat); return *this; } inline D3DXMATRIX& D3DXMATRIX::operator += (const D3DXMATRIX& mat) { _11 += mat._11; _12 += mat._12; _13 += mat._13; _14 += mat._14; _21 += mat._21; _22 += mat._22; _23 += mat._23; _24 += mat._24; _31 += mat._31; _32 += mat._32; _33 += mat._33; _34 += mat._34; _41 += mat._41; _42 += mat._42; _43 += mat._43; _44 += mat._44; return *this; } inline D3DXMATRIX& D3DXMATRIX::operator -= (const D3DXMATRIX& mat) { _11 -= mat._11; _12 -= mat._12; _13 -= mat._13; _14 -= mat._14; _21 -= mat._21; _22 -= mat._22; _23 -= mat._23; _24 -= mat._24; _31 -= mat._31; _32 -= mat._32; _33 -= mat._33; _34 -= mat._34; _41 -= mat._41; _42 -= mat._42; _43 -= mat._43; _44 -= mat._44; return *this; } inline D3DXMATRIX& D3DXMATRIX::operator *= (FLOAT f) { _11 *= f; _12 *= f; _13 *= f; _14 *= f; _21 *= f; _22 *= f; _23 *= f; _24 *= f; _31 *= f; _32 *= f; _33 *= f; _34 *= f; _41 *= f; _42 *= f; _43 *= f; _44 *= f; return *this; } inline D3DXMATRIX& D3DXMATRIX::operator /= (FLOAT f) { FLOAT inv = 1.0f / f; _11 *= inv; _12 *= inv; _13 *= inv; _14 *= inv; _21 *= inv; _22 *= inv; _23 *= inv; _24 *= inv; _31 *= inv; _32 *= inv; _33 *= inv; _34 *= inv; _41 *= inv; _42 *= inv; _43 *= inv; _44 *= inv; return *this; } inline D3DXMATRIX D3DXMATRIX::operator + () const { return *this; } inline D3DXMATRIX D3DXMATRIX::operator - () const { return D3DXMATRIX(-_11, -_12, -_13, -_14, -_21, -_22, -_23, -_24, -_31, -_32, -_33, -_34, -_41, -_42, -_43, -_44); } inline D3DXMATRIX D3DXMATRIX::operator * (const D3DXMATRIX& mat) const { D3DXMATRIX buf; D3DXMatrixMultiply(&buf, this, &mat); return buf; } inline D3DXMATRIX D3DXMATRIX::operator + (const D3DXMATRIX& mat) const { return D3DXMATRIX(_11 + mat._11, _12 + mat._12, _13 + mat._13, _14 + mat._14, _21 + mat._21, _22 + mat._22, _23 + mat._23, _24 + mat._24, _31 + mat._31, _32 + mat._32, _33 + mat._33, _34 + mat._34, _41 + mat._41, _42 + mat._42, _43 + mat._43, _44 + mat._44); } inline D3DXMATRIX D3DXMATRIX::operator - (const D3DXMATRIX& mat) const { return D3DXMATRIX(_11 - mat._11, _12 - mat._12, _13 - mat._13, _14 - mat._14, _21 - mat._21, _22 - mat._22, _23 - mat._23, _24 - mat._24, _31 - mat._31, _32 - mat._32, _33 - mat._33, _34 - mat._34, _41 - mat._41, _42 - mat._42, _43 - mat._43, _44 - mat._44); } inline D3DXMATRIX D3DXMATRIX::operator * (FLOAT f) const { return D3DXMATRIX(_11 * f, _12 * f, _13 * f, _14 * f, _21 * f, _22 * f, _23 * f, _24 * f, _31 * f, _32 * f, _33 * f, _34 * f, _41 * f, _42 * f, _43 * f, _44 * f); } inline D3DXMATRIX D3DXMATRIX::operator / (FLOAT f) const { FLOAT inv = 1.0f / f; return D3DXMATRIX(_11 * inv, _12 * inv, _13 * inv, _14 * inv, _21 * inv, _22 * inv, _23 * inv, _24 * inv, _31 * inv, _32 * inv, _33 * inv, _34 * inv, _41 * inv, _42 * inv, _43 * inv, _44 * inv); } inline D3DXMATRIX operator * (FLOAT f, const D3DXMATRIX& mat) { return D3DXMATRIX(f * mat._11, f * mat._12, f * mat._13, f * mat._14, f * mat._21, f * mat._22, f * mat._23, f * mat._24, f * mat._31, f * mat._32, f * mat._33, f * mat._34, f * mat._41, f * mat._42, f * mat._43, f * mat._44); } inline WINBOOL D3DXMATRIX::operator == (const D3DXMATRIX& mat) const { return (memcmp(this, &mat, sizeof(D3DXMATRIX)) == 0); } inline WINBOOL D3DXMATRIX::operator != (const D3DXMATRIX& mat) const { return (memcmp(this, &mat, sizeof(D3DXMATRIX)) != 0); } inline D3DXQUATERNION::D3DXQUATERNION() { } inline D3DXQUATERNION::D3DXQUATERNION(const FLOAT *pf) { if(!pf) return; x = pf[0]; y = pf[1]; z = pf[2]; w = pf[3]; } inline D3DXQUATERNION::D3DXQUATERNION(FLOAT fx, FLOAT fy, FLOAT fz, FLOAT fw) { x = fx; y = fy; z = fz; w = fw; } inline D3DXQUATERNION::operator FLOAT* () { return (FLOAT*)&x; } inline D3DXQUATERNION::operator const FLOAT* () const { return (const FLOAT*)&x; } inline D3DXQUATERNION& D3DXQUATERNION::operator += (const D3DXQUATERNION& quat) { x += quat.x; y += quat.y; z += quat.z; w += quat.w; return *this; } inline D3DXQUATERNION& D3DXQUATERNION::operator -= (const D3DXQUATERNION& quat) { x -= quat.x; y -= quat.y; z -= quat.z; w -= quat.w; return *this; } inline D3DXQUATERNION& D3DXQUATERNION::operator *= (const D3DXQUATERNION& quat) { D3DXQuaternionMultiply(this, this, &quat); return *this; } inline D3DXQUATERNION& D3DXQUATERNION::operator *= (FLOAT f) { x *= f; y *= f; z *= f; w *= f; return *this; } inline D3DXQUATERNION& D3DXQUATERNION::operator /= (FLOAT f) { FLOAT inv = 1.0f / f; x *= inv; y *= inv; z *= inv; w *= inv; return *this; } inline D3DXQUATERNION D3DXQUATERNION::operator + () const { return *this; } inline D3DXQUATERNION D3DXQUATERNION::operator - () const { return D3DXQUATERNION(-x, -y, -z, -w); } inline D3DXQUATERNION D3DXQUATERNION::operator + (const D3DXQUATERNION& quat) const { return D3DXQUATERNION(x + quat.x, y + quat.y, z + quat.z, w + quat.w); } inline D3DXQUATERNION D3DXQUATERNION::operator - (const D3DXQUATERNION& quat) const { return D3DXQUATERNION(x - quat.x, y - quat.y, z - quat.z, w - quat.w); } inline D3DXQUATERNION D3DXQUATERNION::operator * (const D3DXQUATERNION& quat) const { D3DXQUATERNION buf; D3DXQuaternionMultiply(&buf, this, &quat); return buf; } inline D3DXQUATERNION D3DXQUATERNION::operator * (FLOAT f) const { return D3DXQUATERNION(x * f, y * f, z * f, w * f); } inline D3DXQUATERNION D3DXQUATERNION::operator / (FLOAT f) const { FLOAT inv = 1.0f / f; return D3DXQUATERNION(x * inv, y * inv, z * inv, w * inv); } inline D3DXQUATERNION operator * (FLOAT f, const D3DXQUATERNION& quat) { return D3DXQUATERNION(f * quat.x, f * quat.y, f * quat.z, f * quat.w); } inline WINBOOL D3DXQUATERNION::operator == (const D3DXQUATERNION& quat) const { return x == quat.x && y == quat.y && z == quat.z && w == quat.w; } inline WINBOOL D3DXQUATERNION::operator != (const D3DXQUATERNION& quat) const { return x != quat.x || y != quat.y || z != quat.z || w != quat.w; } inline D3DXPLANE::D3DXPLANE() { } inline D3DXPLANE::D3DXPLANE(const FLOAT *pf) { if(!pf) return; a = pf[0]; b = pf[1]; c = pf[2]; d = pf[3]; } inline D3DXPLANE::D3DXPLANE(FLOAT fa, FLOAT fb, FLOAT fc, FLOAT fd) { a = fa; b = fb; c = fc; d = fd; } inline D3DXPLANE::operator FLOAT* () { return (FLOAT*)&a; } inline D3DXPLANE::operator const FLOAT* () const { return (const FLOAT*)&a; } inline D3DXPLANE D3DXPLANE::operator + () const { return *this; } inline D3DXPLANE D3DXPLANE::operator - () const { return D3DXPLANE(-a, -b, -c, -d); } inline WINBOOL D3DXPLANE::operator == (const D3DXPLANE& pl) const { return a == pl.a && b == pl.b && c == pl.c && d == pl.d; } inline WINBOOL D3DXPLANE::operator != (const D3DXPLANE& pl) const { return a != pl.a || b != pl.b || c != pl.c || d != pl.d; } inline D3DXCOLOR::D3DXCOLOR() { } inline D3DXCOLOR::D3DXCOLOR(DWORD col) { const FLOAT f = 1.0f / 255.0f; r = f * (FLOAT)(unsigned char)(col >> 16); g = f * (FLOAT)(unsigned char)(col >> 8); b = f * (FLOAT)(unsigned char)col; a = f * (FLOAT)(unsigned char)(col >> 24); } inline D3DXCOLOR::D3DXCOLOR(const FLOAT *pf) { if(!pf) return; r = pf[0]; g = pf[1]; b = pf[2]; a = pf[3]; } inline D3DXCOLOR::D3DXCOLOR(const D3DCOLORVALUE& col) { r = col.r; g = col.g; b = col.b; a = col.a; } inline D3DXCOLOR::D3DXCOLOR(FLOAT fr, FLOAT fg, FLOAT fb, FLOAT fa) { r = fr; g = fg; b = fb; a = fa; } inline D3DXCOLOR::operator DWORD () const { DWORD _r = r >= 1.0f ? 0xff : r <= 0.0f ? 0x00 : (DWORD)(r * 255.0f + 0.5f); DWORD _g = g >= 1.0f ? 0xff : g <= 0.0f ? 0x00 : (DWORD)(g * 255.0f + 0.5f); DWORD _b = b >= 1.0f ? 0xff : b <= 0.0f ? 0x00 : (DWORD)(b * 255.0f + 0.5f); DWORD _a = a >= 1.0f ? 0xff : a <= 0.0f ? 0x00 : (DWORD)(a * 255.0f + 0.5f); return (_a << 24) | (_r << 16) | (_g << 8) | _b; } inline D3DXCOLOR::operator FLOAT * () { return (FLOAT*)&r; } inline D3DXCOLOR::operator const FLOAT * () const { return (const FLOAT*)&r; } inline D3DXCOLOR::operator D3DCOLORVALUE * () { return (D3DCOLORVALUE*)&r; } inline D3DXCOLOR::operator const D3DCOLORVALUE * () const { return (const D3DCOLORVALUE*)&r; } inline D3DXCOLOR::operator D3DCOLORVALUE& () { return *((D3DCOLORVALUE*)&r); } inline D3DXCOLOR::operator const D3DCOLORVALUE& () const { return *((const D3DCOLORVALUE*)&r); } inline D3DXCOLOR& D3DXCOLOR::operator += (const D3DXCOLOR& col) { r += col.r; g += col.g; b += col.b; a += col.a; return *this; } inline D3DXCOLOR& D3DXCOLOR::operator -= (const D3DXCOLOR& col) { r -= col.r; g -= col.g; b -= col.b; a -= col.a; return *this; } inline D3DXCOLOR& D3DXCOLOR::operator *= (FLOAT f) { r *= f; g *= f; b *= f; a *= f; return *this; } inline D3DXCOLOR& D3DXCOLOR::operator /= (FLOAT f) { FLOAT inv = 1.0f / f; r *= inv; g *= inv; b *= inv; a *= inv; return *this; } inline D3DXCOLOR D3DXCOLOR::operator + () const { return *this; } inline D3DXCOLOR D3DXCOLOR::operator - () const { return D3DXCOLOR(-r, -g, -b, -a); } inline D3DXCOLOR D3DXCOLOR::operator + (const D3DXCOLOR& col) const { return D3DXCOLOR(r + col.r, g + col.g, b + col.b, a + col.a); } inline D3DXCOLOR D3DXCOLOR::operator - (const D3DXCOLOR& col) const { return D3DXCOLOR(r - col.r, g - col.g, b - col.b, a - col.a); } inline D3DXCOLOR D3DXCOLOR::operator * (FLOAT f) const { return D3DXCOLOR(r * f, g * f, b * f, a * f); } inline D3DXCOLOR D3DXCOLOR::operator / (FLOAT f) const { FLOAT inv = 1.0f / f; return D3DXCOLOR(r * inv, g * inv, b * inv, a * inv); } inline D3DXCOLOR operator * (FLOAT f, const D3DXCOLOR& col) { return D3DXCOLOR(f * col.r, f * col.g, f * col.b, f * col.a); } inline WINBOOL D3DXCOLOR::operator == (const D3DXCOLOR& col) const { return r == col.r && g == col.g && b == col.b && a == col.a; } inline WINBOOL D3DXCOLOR::operator != (const D3DXCOLOR& col) const { return r != col.r || g != col.g || b != col.b || a != col.a; } inline D3DXFLOAT16::D3DXFLOAT16() { } inline D3DXFLOAT16::D3DXFLOAT16(FLOAT f) { D3DXFloat32To16Array(this, &f, 1); } inline D3DXFLOAT16::D3DXFLOAT16(const D3DXFLOAT16 &f) { value = f.value; } inline D3DXFLOAT16::operator FLOAT () { FLOAT f; D3DXFloat16To32Array(&f, this, 1); return f; } inline WINBOOL D3DXFLOAT16::operator == (const D3DXFLOAT16 &f) const { return value == f.value; } inline WINBOOL D3DXFLOAT16::operator != (const D3DXFLOAT16 &f) const { return value != f.value; } #endif /* __cplusplus */ /*_______________D3DXCOLOR_____________________*/ static inline D3DXCOLOR* D3DXColorAdd(D3DXCOLOR *pout, const D3DXCOLOR *pc1, const D3DXCOLOR *pc2) { if ( !pout || !pc1 || !pc2 ) return NULL; pout->r = (pc1->r) + (pc2->r); pout->g = (pc1->g) + (pc2->g); pout->b = (pc1->b) + (pc2->b); pout->a = (pc1->a) + (pc2->a); return pout; } static inline D3DXCOLOR* D3DXColorLerp(D3DXCOLOR *pout, const D3DXCOLOR *pc1, const D3DXCOLOR *pc2, FLOAT s) { if ( !pout || !pc1 || !pc2 ) return NULL; pout->r = (1-s) * (pc1->r) + s *(pc2->r); pout->g = (1-s) * (pc1->g) + s *(pc2->g); pout->b = (1-s) * (pc1->b) + s *(pc2->b); pout->a = (1-s) * (pc1->a) + s *(pc2->a); return pout; } static inline D3DXCOLOR* D3DXColorModulate(D3DXCOLOR *pout, const D3DXCOLOR *pc1, const D3DXCOLOR *pc2) { if ( !pout || !pc1 || !pc2 ) return NULL; pout->r = (pc1->r) * (pc2->r); pout->g = (pc1->g) * (pc2->g); pout->b = (pc1->b) * (pc2->b); pout->a = (pc1->a) * (pc2->a); return pout; } static inline D3DXCOLOR* D3DXColorNegative(D3DXCOLOR *pout, const D3DXCOLOR *pc) { if ( !pout || !pc ) return NULL; pout->r = 1.0f - pc->r; pout->g = 1.0f - pc->g; pout->b = 1.0f - pc->b; pout->a = pc->a; return pout; } static inline D3DXCOLOR* D3DXColorScale(D3DXCOLOR *pout, const D3DXCOLOR *pc, FLOAT s) { if ( !pout || !pc ) return NULL; pout->r = s* (pc->r); pout->g = s* (pc->g); pout->b = s* (pc->b); pout->a = s* (pc->a); return pout; } static inline D3DXCOLOR* D3DXColorSubtract(D3DXCOLOR *pout, const D3DXCOLOR *pc1, const D3DXCOLOR *pc2) { if ( !pout || !pc1 || !pc2 ) return NULL; pout->r = (pc1->r) - (pc2->r); pout->g = (pc1->g) - (pc2->g); pout->b = (pc1->b) - (pc2->b); pout->a = (pc1->a) - (pc2->a); return pout; } /*_______________D3DXVECTOR2________________________*/ static inline D3DXVECTOR2* D3DXVec2Add(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x + pv2->x; pout->y = pv1->y + pv2->y; return pout; } static inline FLOAT D3DXVec2CCW(const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pv1 || !pv2) return 0.0f; return ( (pv1->x) * (pv2->y) - (pv1->y) * (pv2->x) ); } static inline FLOAT D3DXVec2Dot(const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pv1 || !pv2) return 0.0f; return ( (pv1->x * pv2->x + pv1->y * pv2->y) ); } static inline FLOAT D3DXVec2Length(const D3DXVECTOR2 *pv) { if (!pv) return 0.0f; return sqrtf( pv->x * pv->x + pv->y * pv->y ); } static inline FLOAT D3DXVec2LengthSq(const D3DXVECTOR2 *pv) { if (!pv) return 0.0f; return( (pv->x) * (pv->x) + (pv->y) * (pv->y) ); } static inline D3DXVECTOR2* D3DXVec2Lerp(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2, FLOAT s) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = (1-s) * (pv1->x) + s * (pv2->x); pout->y = (1-s) * (pv1->y) + s * (pv2->y); return pout; } static inline D3DXVECTOR2* D3DXVec2Maximize(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x > pv2->x ? pv1->x : pv2->x; pout->y = pv1->y > pv2->y ? pv1->y : pv2->y; return pout; } static inline D3DXVECTOR2* D3DXVec2Minimize(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x < pv2->x ? pv1->x : pv2->x; pout->y = pv1->y < pv2->y ? pv1->y : pv2->y; return pout; } static inline D3DXVECTOR2* D3DXVec2Scale(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv, FLOAT s) { if ( !pout || !pv) return NULL; pout->x = s * (pv->x); pout->y = s * (pv->y); return pout; } static inline D3DXVECTOR2* D3DXVec2Subtract(D3DXVECTOR2 *pout, const D3DXVECTOR2 *pv1, const D3DXVECTOR2 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x - pv2->x; pout->y = pv1->y - pv2->y; return pout; } /*__________________D3DXVECTOR3_______________________*/ static inline D3DXVECTOR3* D3DXVec3Add(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x + pv2->x; pout->y = pv1->y + pv2->y; pout->z = pv1->z + pv2->z; return pout; } static inline D3DXVECTOR3* D3DXVec3Cross(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { D3DXVECTOR3 temp; if ( !pout || !pv1 || !pv2) return NULL; temp.x = (pv1->y) * (pv2->z) - (pv1->z) * (pv2->y); temp.y = (pv1->z) * (pv2->x) - (pv1->x) * (pv2->z); temp.z = (pv1->x) * (pv2->y) - (pv1->y) * (pv2->x); *pout = temp; return pout; } static inline FLOAT D3DXVec3Dot(const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { if ( !pv1 || !pv2 ) return 0.0f; return (pv1->x) * (pv2->x) + (pv1->y) * (pv2->y) + (pv1->z) * (pv2->z); } static inline FLOAT D3DXVec3Length(const D3DXVECTOR3 *pv) { if (!pv) return 0.0f; return sqrtf( pv->x * pv->x + pv->y * pv->y + pv->z * pv->z ); } static inline FLOAT D3DXVec3LengthSq(const D3DXVECTOR3 *pv) { if (!pv) return 0.0f; return (pv->x) * (pv->x) + (pv->y) * (pv->y) + (pv->z) * (pv->z); } static inline D3DXVECTOR3* D3DXVec3Lerp(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2, FLOAT s) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = (1-s) * (pv1->x) + s * (pv2->x); pout->y = (1-s) * (pv1->y) + s * (pv2->y); pout->z = (1-s) * (pv1->z) + s * (pv2->z); return pout; } static inline D3DXVECTOR3* D3DXVec3Maximize(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x > pv2->x ? pv1->x : pv2->x; pout->y = pv1->y > pv2->y ? pv1->y : pv2->y; pout->z = pv1->z > pv2->z ? pv1->z : pv2->z; return pout; } static inline D3DXVECTOR3* D3DXVec3Minimize(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x < pv2->x ? pv1->x : pv2->x; pout->y = pv1->y < pv2->y ? pv1->y : pv2->y; pout->z = pv1->z < pv2->z ? pv1->z : pv2->z; return pout; } static inline D3DXVECTOR3* D3DXVec3Scale(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv, FLOAT s) { if ( !pout || !pv) return NULL; pout->x = s * (pv->x); pout->y = s * (pv->y); pout->z = s * (pv->z); return pout; } static inline D3DXVECTOR3* D3DXVec3Subtract(D3DXVECTOR3 *pout, const D3DXVECTOR3 *pv1, const D3DXVECTOR3 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x - pv2->x; pout->y = pv1->y - pv2->y; pout->z = pv1->z - pv2->z; return pout; } /*__________________D3DXVECTOR4_______________________*/ static inline D3DXVECTOR4* D3DXVec4Add(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x + pv2->x; pout->y = pv1->y + pv2->y; pout->z = pv1->z + pv2->z; pout->w = pv1->w + pv2->w; return pout; } static inline FLOAT D3DXVec4Dot(const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2) { if (!pv1 || !pv2 ) return 0.0f; return (pv1->x) * (pv2->x) + (pv1->y) * (pv2->y) + (pv1->z) * (pv2->z) + (pv1->w) * (pv2->w); } static inline FLOAT D3DXVec4Length(const D3DXVECTOR4 *pv) { if (!pv) return 0.0f; return sqrtf( pv->x * pv->x + pv->y * pv->y + pv->z * pv->z + pv->w * pv->w ); } static inline FLOAT D3DXVec4LengthSq(const D3DXVECTOR4 *pv) { if (!pv) return 0.0f; return (pv->x) * (pv->x) + (pv->y) * (pv->y) + (pv->z) * (pv->z) + (pv->w) * (pv->w); } static inline D3DXVECTOR4* D3DXVec4Lerp(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2, FLOAT s) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = (1-s) * (pv1->x) + s * (pv2->x); pout->y = (1-s) * (pv1->y) + s * (pv2->y); pout->z = (1-s) * (pv1->z) + s * (pv2->z); pout->w = (1-s) * (pv1->w) + s * (pv2->w); return pout; } static inline D3DXVECTOR4* D3DXVec4Maximize(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x > pv2->x ? pv1->x : pv2->x; pout->y = pv1->y > pv2->y ? pv1->y : pv2->y; pout->z = pv1->z > pv2->z ? pv1->z : pv2->z; pout->w = pv1->w > pv2->w ? pv1->w : pv2->w; return pout; } static inline D3DXVECTOR4* D3DXVec4Minimize(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x < pv2->x ? pv1->x : pv2->x; pout->y = pv1->y < pv2->y ? pv1->y : pv2->y; pout->z = pv1->z < pv2->z ? pv1->z : pv2->z; pout->w = pv1->w < pv2->w ? pv1->w : pv2->w; return pout; } static inline D3DXVECTOR4* D3DXVec4Scale(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv, FLOAT s) { if ( !pout || !pv) return NULL; pout->x = s * (pv->x); pout->y = s * (pv->y); pout->z = s * (pv->z); pout->w = s * (pv->w); return pout; } static inline D3DXVECTOR4* D3DXVec4Subtract(D3DXVECTOR4 *pout, const D3DXVECTOR4 *pv1, const D3DXVECTOR4 *pv2) { if ( !pout || !pv1 || !pv2) return NULL; pout->x = pv1->x - pv2->x; pout->y = pv1->y - pv2->y; pout->z = pv1->z - pv2->z; pout->w = pv1->w - pv2->w; return pout; } /*__________________D3DXMatrix____________________*/ #ifdef NONAMELESSUNION # define D3DX_U(x) (x).u #else # define D3DX_U(x) (x) #endif static inline D3DXMATRIX* D3DXMatrixIdentity(D3DXMATRIX *pout) { if ( !pout ) return NULL; D3DX_U(*pout).m[0][1] = 0.0f; D3DX_U(*pout).m[0][2] = 0.0f; D3DX_U(*pout).m[0][3] = 0.0f; D3DX_U(*pout).m[1][0] = 0.0f; D3DX_U(*pout).m[1][2] = 0.0f; D3DX_U(*pout).m[1][3] = 0.0f; D3DX_U(*pout).m[2][0] = 0.0f; D3DX_U(*pout).m[2][1] = 0.0f; D3DX_U(*pout).m[2][3] = 0.0f; D3DX_U(*pout).m[3][0] = 0.0f; D3DX_U(*pout).m[3][1] = 0.0f; D3DX_U(*pout).m[3][2] = 0.0f; D3DX_U(*pout).m[0][0] = 1.0f; D3DX_U(*pout).m[1][1] = 1.0f; D3DX_U(*pout).m[2][2] = 1.0f; D3DX_U(*pout).m[3][3] = 1.0f; return pout; } static inline WINBOOL D3DXMatrixIsIdentity(D3DXMATRIX *pm) { int i,j; D3DXMATRIX testmatrix; if ( !pm ) return FALSE; D3DXMatrixIdentity(&testmatrix); for (i=0; i<4; i++) { for (j=0; j<4; j++) { if ( D3DX_U(*pm).m[i][j] != D3DX_U(testmatrix).m[i][j] ) return FALSE; } } return TRUE; } #undef D3DX_U /*__________________D3DXPLANE____________________*/ static inline FLOAT D3DXPlaneDot(const D3DXPLANE *pp, const D3DXVECTOR4 *pv) { if ( !pp || !pv ) return 0.0f; return ( (pp->a) * (pv->x) + (pp->b) * (pv->y) + (pp->c) * (pv->z) + (pp->d) * (pv->w) ); } static inline FLOAT D3DXPlaneDotCoord(const D3DXPLANE *pp, const D3DXVECTOR4 *pv) { if ( !pp || !pv ) return 0.0f; return ( (pp->a) * (pv->x) + (pp->b) * (pv->y) + (pp->c) * (pv->z) + (pp->d) ); } static inline FLOAT D3DXPlaneDotNormal(const D3DXPLANE *pp, const D3DXVECTOR4 *pv) { if ( !pp || !pv ) return 0.0f; return ( (pp->a) * (pv->x) + (pp->b) * (pv->y) + (pp->c) * (pv->z) ); } /*__________________D3DXQUATERNION____________________*/ static inline D3DXQUATERNION* D3DXQuaternionConjugate(D3DXQUATERNION *pout, const D3DXQUATERNION *pq) { if ( !pout || !pq) return NULL; pout->x = -pq->x; pout->y = -pq->y; pout->z = -pq->z; pout->w = pq->w; return pout; } static inline FLOAT D3DXQuaternionDot(const D3DXQUATERNION *pq1, const D3DXQUATERNION *pq2) { if ( !pq1 || !pq2 ) return 0.0f; return (pq1->x) * (pq2->x) + (pq1->y) * (pq2->y) + (pq1->z) * (pq2->z) + (pq1->w) * (pq2->w); } static inline D3DXQUATERNION* D3DXQuaternionIdentity(D3DXQUATERNION *pout) { if ( !pout) return NULL; pout->x = 0.0f; pout->y = 0.0f; pout->z = 0.0f; pout->w = 1.0f; return pout; } static inline WINBOOL D3DXQuaternionIsIdentity(D3DXQUATERNION *pq) { if ( !pq) return FALSE; return ( (pq->x == 0.0f) && (pq->y == 0.0f) && (pq->z == 0.0f) && (pq->w == 1.0f) ); } static inline FLOAT D3DXQuaternionLength(const D3DXQUATERNION *pq) { if (!pq) return 0.0f; return sqrtf( pq->x * pq->x + pq->y * pq->y + pq->z * pq->z + pq->w * pq->w ); } static inline FLOAT D3DXQuaternionLengthSq(const D3DXQUATERNION *pq) { if (!pq) return 0.0f; return (pq->x) * (pq->x) + (pq->y) * (pq->y) + (pq->z) * (pq->z) + (pq->w) * (pq->w); } #endif dxvk-0~git20220822.9df86f2/d3dx9mesh.h000066400000000000000000001532461430055512200167730ustar00rootroot00000000000000#include <_mingw_unicode.h> #undef INTERFACE /* * Copyright (C) 2009 David Adam * Copyright (C) 2010 Tony Wasserka * * 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 */ #include "d3dx9.h" #ifndef __WINE_D3DX9MESH_H #define __WINE_D3DX9MESH_H DEFINE_GUID(IID_ID3DXBaseMesh, 0x7ed943dd, 0x52e8, 0x40b5, 0xa8, 0xd8, 0x76, 0x68, 0x5c, 0x40, 0x63, 0x30); DEFINE_GUID(IID_ID3DXMesh, 0x4020e5c2, 0x1403, 0x4929, 0x88, 0x3f, 0xe2, 0xe8, 0x49, 0xfa, 0xc1, 0x95); DEFINE_GUID(IID_ID3DXPMesh, 0x8875769a, 0xd579, 0x4088, 0xaa, 0xeb, 0x53, 0x4d, 0x1a, 0xd8, 0x4e, 0x96); DEFINE_GUID(IID_ID3DXSPMesh, 0x667ea4c7, 0xf1cd, 0x4386, 0xb5, 0x23, 0x7c, 0x02, 0x90, 0xb8, 0x3c, 0xc5); DEFINE_GUID(IID_ID3DXSkinInfo, 0x11eaa540, 0xf9a6, 0x4d49, 0xae, 0x6a, 0xe1, 0x92, 0x21, 0xf7, 0x0c, 0xc4); DEFINE_GUID(IID_ID3DXPatchMesh,0x3ce6cc22, 0xdbf2, 0x44f4, 0x89, 0x4d, 0xf9, 0xc3, 0x4a, 0x33, 0x71, 0x39); DEFINE_GUID(IID_ID3DXPRTBuffer, 0xf1827e47, 0x00a8, 0x49cd, 0x90, 0x8c, 0x9d, 0x11, 0x95, 0x5f, 0x87, 0x28); DEFINE_GUID(IID_ID3DXPRTCompBuffer, 0xa758d465, 0xfe8d, 0x45ad, 0x9c, 0xf0, 0xd0, 0x1e, 0x56, 0x26, 0x6a, 0x07); DEFINE_GUID(IID_ID3DXTextureGutterHelper, 0x838f01ec, 0x9729, 0x4527, 0xaa, 0xdb, 0xdf, 0x70, 0xad, 0xe7, 0xfe, 0xa9); DEFINE_GUID(IID_ID3DXPRTEngine, 0x683a4278, 0xcd5f, 0x4d24, 0x90, 0xad, 0xc4, 0xe1, 0xb6, 0x85, 0x5d, 0x53); #define UNUSED16 (0xffff) #define UNUSED32 (0xffffffff) enum _MAX_FVF_DECL_SIZE { MAX_FVF_DECL_SIZE = MAXD3DDECLLENGTH + 1 }; enum _D3DXMESH { D3DXMESH_32BIT = 0x001, D3DXMESH_DONOTCLIP = 0x002, D3DXMESH_POINTS = 0x004, D3DXMESH_RTPATCHES = 0x008, D3DXMESH_NPATCHES = 0x4000, D3DXMESH_VB_SYSTEMMEM = 0x010, D3DXMESH_VB_MANAGED = 0x020, D3DXMESH_VB_WRITEONLY = 0x040, D3DXMESH_VB_DYNAMIC = 0x080, D3DXMESH_VB_SOFTWAREPROCESSING = 0x8000, D3DXMESH_IB_SYSTEMMEM = 0x100, D3DXMESH_IB_MANAGED = 0x200, D3DXMESH_IB_WRITEONLY = 0x400, D3DXMESH_IB_DYNAMIC = 0x800, D3DXMESH_IB_SOFTWAREPROCESSING = 0x10000, D3DXMESH_VB_SHARE = 0x1000, D3DXMESH_USEHWONLY = 0x2000, D3DXMESH_SYSTEMMEM = 0x110, D3DXMESH_MANAGED = 0x220, D3DXMESH_WRITEONLY = 0x440, D3DXMESH_DYNAMIC = 0x880, D3DXMESH_SOFTWAREPROCESSING = 0x18000 }; enum _D3DXMESHOPT { D3DXMESHOPT_DEVICEINDEPENDENT = 0x00400000, D3DXMESHOPT_COMPACT = 0x01000000, D3DXMESHOPT_ATTRSORT = 0x02000000, D3DXMESHOPT_VERTEXCACHE = 0x04000000, D3DXMESHOPT_STRIPREORDER = 0x08000000, D3DXMESHOPT_IGNOREVERTS = 0x10000000, D3DXMESHOPT_DONOTSPLIT = 0x20000000, }; typedef enum _D3DXPATCHMESHTYPE { D3DXPATCHMESH_RECT = 1, D3DXPATCHMESH_TRI = 2, D3DXPATCHMESH_NPATCH = 3, D3DXPATCHMESH_FORCE_DWORD = 0x7fffffff, } D3DXPATCHMESHTYPE; enum _D3DXPATCHMESH { D3DXPATCHMESH_DEFAULT = 0, }; enum _D3DXMESHSIMP { D3DXMESHSIMP_VERTEX = 0x1, D3DXMESHSIMP_FACE = 0x2, }; typedef enum D3DXCLEANTYPE { D3DXCLEAN_BACKFACING = 0x00000001, D3DXCLEAN_BOWTIES = 0x00000002, D3DXCLEAN_SKINNING = D3DXCLEAN_BACKFACING, D3DXCLEAN_OPTIMIZATION = D3DXCLEAN_BACKFACING, D3DXCLEAN_SIMPLIFICATION = D3DXCLEAN_BACKFACING | D3DXCLEAN_BOWTIES, } D3DXCLEANTYPE; typedef enum _D3DXTANGENT { D3DXTANGENT_WRAP_U = 0x0001, D3DXTANGENT_WRAP_V = 0x0002, D3DXTANGENT_WRAP_UV = 0x0003, D3DXTANGENT_DONT_NORMALIZE_PARTIALS = 0x0004, D3DXTANGENT_DONT_ORTHOGONALIZE = 0x0008, D3DXTANGENT_ORTHOGONALIZE_FROM_V = 0x0010, D3DXTANGENT_ORTHOGONALIZE_FROM_U = 0x0020, D3DXTANGENT_WEIGHT_BY_AREA = 0x0040, D3DXTANGENT_WEIGHT_EQUAL = 0x0080, D3DXTANGENT_WIND_CW = 0x0100, D3DXTANGENT_CALCULATE_NORMALS = 0x0200, D3DXTANGENT_GENERATE_IN_PLACE = 0x0400, } D3DXTANGENT; typedef enum _D3DXIMT { D3DXIMT_WRAP_U = 0x01, D3DXIMT_WRAP_V = 0x02, D3DXIMT_WRAP_UV = 0x03, } D3DXIMT; typedef enum _D3DXUVATLAS { D3DXUVATLAS_DEFAULT = 0x00, D3DXUVATLAS_GEODESIC_FAST = 0x01, D3DXUVATLAS_GEODESIC_QUALITY = 0x02, } D3DXUVATLAS; typedef enum _D3DXEFFECTDEFAULTTYPE { D3DXEDT_STRING = 1, D3DXEDT_FLOATS = 2, D3DXEDT_DWORD = 3, D3DXEDT_FORCEDWORD = 0x7fffffff, } D3DXEFFECTDEFAULTTYPE; enum _D3DXWELDEPSILONSFLAGS { D3DXWELDEPSILONS_WELDALL = 0x1, D3DXWELDEPSILONS_WELDPARTIALMATCHES = 0x2, D3DXWELDEPSILONS_DONOTREMOVEVERTICES = 0x4, D3DXWELDEPSILONS_DONOTSPLIT = 0x8, }; typedef enum _D3DXSHCOMPRESSQUALITYTYPE { D3DXSHCQUAL_FASTLOWQUALITY = 1, D3DXSHCQUAL_SLOWHIGHQUALITY = 2, D3DXSHCQUAL_FORCE_DWORD = 0x7fffffff, } D3DXSHCOMPRESSQUALITYTYPE; typedef enum _D3DXSHGPUSIMOPT { D3DXSHGPUSIMOPT_SHADOWRES256 = 1, D3DXSHGPUSIMOPT_SHADOWRES512 = 0, D3DXSHGPUSIMOPT_SHADOWRES1024 = 2, D3DXSHGPUSIMOPT_SHADOWRES2048 = 3, D3DXSHGPUSIMOPT_HIGHQUALITY = 4, D3DXSHGPUSIMOPT_FORCE_DWORD = 0x7fffffff, } D3DXSHGPUSIMOPT; typedef struct ID3DXBaseMesh* LPD3DXBASEMESH; typedef struct ID3DXMesh* LPD3DXMESH; typedef struct ID3DXPMesh *LPD3DXPMESH; typedef struct ID3DXSPMesh *LPD3DXSPMESH; typedef struct ID3DXSkinInfo *LPD3DXSKININFO; typedef struct ID3DXPatchMesh *LPD3DXPATCHMESH; typedef struct ID3DXPRTBuffer *LPD3DXPRTBUFFER; typedef struct ID3DXPRTCompBuffer *LPD3DXPRTCOMPBUFFER; typedef struct ID3DXPRTEngine *LPD3DXPRTENGINE; typedef struct ID3DXTextureGutterHelper *LPD3DXTEXTUREGUTTERHELPER; typedef struct _D3DXATTRIBUTERANGE { DWORD AttribId; DWORD FaceStart; DWORD FaceCount; DWORD VertexStart; DWORD VertexCount; } D3DXATTRIBUTERANGE; typedef D3DXATTRIBUTERANGE* LPD3DXATTRIBUTERANGE; typedef struct _D3DXMATERIAL { D3DMATERIAL9 MatD3D; char *pTextureFilename; } D3DXMATERIAL, *LPD3DXMATERIAL; typedef struct _D3DXEFFECTDEFAULT { char *pParamName; D3DXEFFECTDEFAULTTYPE Type; DWORD NumBytes; void *pValue; } D3DXEFFECTDEFAULT, *LPD3DXEFFECTDEFAULT; typedef struct _D3DXEFFECTINSTANCE { char *pEffectFilename; DWORD NumDefaults; LPD3DXEFFECTDEFAULT pDefaults; } D3DXEFFECTINSTANCE, *LPD3DXEFFECTINSTANCE; typedef struct _D3DXATTRIBUTEWEIGHTS { FLOAT Position; FLOAT Boundary; FLOAT Normal; FLOAT Diffuse; FLOAT Specular; FLOAT Texcoords[8]; FLOAT Tangent; FLOAT Binormal; } D3DXATTRIBUTEWEIGHTS, *LPD3DXATTRIBUTEWEIGHTS; typedef struct _D3DXWELDEPSILONS { FLOAT Position; FLOAT BlendWeights; FLOAT Normals; FLOAT PSize; FLOAT Specular; FLOAT Diffuse; FLOAT Texcoords[8]; FLOAT Tangent; FLOAT Binormal; FLOAT TessFactor; } D3DXWELDEPSILONS, *LPD3DXWELDEPSILONS; typedef struct _D3DXBONECOMBINATION { DWORD AttribId; DWORD FaceStart; DWORD FaceCount; DWORD VertexStart; DWORD VertexCout; DWORD *BoneId; } D3DXBONECOMBINATION, *LPD3DXBONECOMBINATION; typedef struct _D3DXPATCHINFO { D3DXPATCHMESHTYPE PatchType; D3DDEGREETYPE Degree; D3DBASISTYPE Basis; } D3DXPATCHINFO, *LPD3DXPATCHINFO; typedef struct _D3DXINTERSECTINFO { DWORD FaceIndex; FLOAT U; FLOAT V; FLOAT Dist; } D3DXINTERSECTINFO, *LPD3DXINTERSECTINFO; typedef struct _D3DXSHMATERIAL { D3DCOLORVALUE Diffuse; WINBOOL bMirror; WINBOOL bSubSurf; FLOAT RelativeIndexOfRefraction; D3DCOLORVALUE Absorption; D3DCOLORVALUE ReducedScattering; } D3DXSHMATERIAL; typedef struct _D3DXSHPRTSPLITMESHVERTDATA { UINT uVertRemap; UINT uSubCluster; UCHAR ucVertStatus; } D3DXSHPRTSPLITMESHVERTDATA; typedef struct _D3DXSHPRTSPLITMESHCLUSTERDATA { UINT uVertStart; UINT uVertLength; UINT uFaceStart; UINT uFaceLength; UINT uClusterStart; UINT uClusterLength; } D3DXSHPRTSPLITMESHCLUSTERDATA; typedef struct _XFILECOMPRESSEDANIMATIONSET { DWORD CompressedBlockSize; FLOAT TicksPerSec; DWORD PlaybackType; DWORD BufferLength; } XFILECOMPRESSEDANIMATIONSET; typedef HRESULT (WINAPI *LPD3DXUVATLASCB)(float complete, void *ctx); typedef HRESULT (WINAPI *LPD3DXIMTSIGNALCALLBACK)(const D3DXVECTOR2 *, UINT, UINT, void *, FLOAT *); typedef HRESULT (WINAPI *LPD3DXSHPRTSIMCB)(float complete, void *ctx); #undef INTERFACE #define INTERFACE ID3DXBaseMesh DECLARE_INTERFACE_(ID3DXBaseMesh, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseMesh ***/ STDMETHOD(DrawSubset)(THIS_ DWORD attrib_id) PURE; STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE; STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE; STDMETHOD_(DWORD, GetFVF)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD_(DWORD, GetNumBytesPerVertex)(THIS) PURE; STDMETHOD_(DWORD, GetOptions)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(GetVertexBuffer)(THIS_ struct IDirect3DVertexBuffer9 **vertex_buffer) PURE; STDMETHOD(GetIndexBuffer)(THIS_ struct IDirect3DIndexBuffer9 **index_buffer) PURE; STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockVertexBuffer)(THIS) PURE; STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockIndexBuffer)(THIS) PURE; STDMETHOD(GetAttributeTable)(THIS_ D3DXATTRIBUTERANGE* attrib_table, DWORD* attrib_table_size) PURE; STDMETHOD(ConvertPointRepsToAdjacency)(THIS_ const DWORD *point_reps, DWORD *adjacency) PURE; STDMETHOD(ConvertAdjacencyToPointReps)(THIS_ const DWORD *adjacency, DWORD *point_reps) PURE; STDMETHOD(GenerateAdjacency)(THIS_ FLOAT epsilon, DWORD* adjacency) PURE; STDMETHOD(UpdateSemantics)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; }; #undef INTERFACE #define INTERFACE ID3DXMesh DECLARE_INTERFACE_(ID3DXMesh, ID3DXBaseMesh) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseMesh ***/ STDMETHOD(DrawSubset)(THIS_ DWORD attrib_id) PURE; STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE; STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE; STDMETHOD_(DWORD, GetFVF)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD_(DWORD, GetNumBytesPerVertex)(THIS) PURE; STDMETHOD_(DWORD, GetOptions)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(GetVertexBuffer)(THIS_ struct IDirect3DVertexBuffer9 **vertex_buffer) PURE; STDMETHOD(GetIndexBuffer)(THIS_ struct IDirect3DIndexBuffer9 **index_buffer) PURE; STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockVertexBuffer)(THIS) PURE; STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockIndexBuffer)(THIS) PURE; STDMETHOD(GetAttributeTable)(THIS_ D3DXATTRIBUTERANGE* attrib_table, DWORD* attrib_table_size) PURE; STDMETHOD(ConvertPointRepsToAdjacency)(THIS_ const DWORD *point_reps, DWORD *adjacency) PURE; STDMETHOD(ConvertAdjacencyToPointReps)(THIS_ const DWORD *adjacency, DWORD *point_reps) PURE; STDMETHOD(GenerateAdjacency)(THIS_ FLOAT epsilon, DWORD* adjacency) PURE; STDMETHOD(UpdateSemantics)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; /*** ID3DXMesh ***/ STDMETHOD(LockAttributeBuffer)(THIS_ DWORD flags, DWORD** data) PURE; STDMETHOD(UnlockAttributeBuffer)(THIS) PURE; STDMETHOD(Optimize)(THIS_ DWORD flags, const DWORD *adjacency_in, DWORD *adjacency_out, DWORD *face_remap, ID3DXBuffer **vertex_remap, ID3DXMesh **opt_mesh) PURE; STDMETHOD(OptimizeInplace)(THIS_ DWORD flags, const DWORD *adjacency_in, DWORD *adjacency_out, DWORD *face_remap, ID3DXBuffer **vertex_remap) PURE; STDMETHOD(SetAttributeTable)(THIS_ const D3DXATTRIBUTERANGE *attrib_table, DWORD attrib_table_size) PURE; }; #undef INTERFACE #define INTERFACE ID3DXPMesh DECLARE_INTERFACE_(ID3DXPMesh, ID3DXBaseMesh) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBaseMesh ***/ STDMETHOD(DrawSubset)(THIS_ DWORD attrib_id) PURE; STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE; STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE; STDMETHOD_(DWORD, GetFVF)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD_(DWORD, GetNumBytesPerVertex)(THIS) PURE; STDMETHOD_(DWORD, GetOptions)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(GetVertexBuffer)(THIS_ struct IDirect3DVertexBuffer9 **vertex_buffer) PURE; STDMETHOD(GetIndexBuffer)(THIS_ struct IDirect3DIndexBuffer9 **index_buffer) PURE; STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockVertexBuffer)(THIS) PURE; STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockIndexBuffer)(THIS) PURE; STDMETHOD(GetAttributeTable)(THIS_ D3DXATTRIBUTERANGE* attrib_table, DWORD* attrib_table_size) PURE; STDMETHOD(ConvertPointRepsToAdjacency)(THIS_ const DWORD *point_reps, DWORD *adjacency) PURE; STDMETHOD(ConvertAdjacencyToPointReps)(THIS_ const DWORD *adjacency, DWORD *point_reps) PURE; STDMETHOD(GenerateAdjacency)(THIS_ FLOAT epsilon, DWORD* adjacency) PURE; STDMETHOD(UpdateSemantics)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; /*** ID3DXPMesh ***/ STDMETHOD(ClonePMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, struct ID3DXPMesh **clone_mesh) PURE; STDMETHOD(ClonePMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXPMesh **clone_mesh) PURE; STDMETHOD(SetNumFaces)(THIS_ DWORD faces) PURE; STDMETHOD(SetNumVertices)(THIS_ DWORD vertices) PURE; STDMETHOD_(DWORD, GetMaxFaces)(THIS) PURE; STDMETHOD_(DWORD, GetMinFaces)(THIS) PURE; STDMETHOD_(DWORD, GetMaxVertices)(THIS) PURE; STDMETHOD_(DWORD, GetMinVertices)(THIS) PURE; STDMETHOD(Save)(THIS_ IStream *stream, const D3DXMATERIAL *material, const D3DXEFFECTINSTANCE *effect_instance, DWORD num_materials) PURE; STDMETHOD(Optimize)(THIS_ DWORD flags, DWORD *adjacency_out, DWORD *face_remap, ID3DXBuffer **vertex_remap, ID3DXMesh **opt_mesh) PURE; STDMETHOD(OptimizeBaseLOD)(THIS_ DWORD flags, DWORD* face_remap) PURE; STDMETHOD(TrimByFaces)(THIS_ DWORD new_faces_min, DWORD new_faces_max, DWORD* face_remap, DWORD* vertex_remap) PURE; STDMETHOD(TrimByVertices)(THIS_ DWORD new_vertices_min, DWORD new_vertices_max, DWORD* face_remap, DWORD* vertex_remap) PURE; STDMETHOD(GetAdjacency)(THIS_ DWORD* adjacency) PURE; STDMETHOD(GenerateVertexHistory)(THIS_ DWORD* vertex_history) PURE; }; #undef INTERFACE #define INTERFACE ID3DXSPMesh DECLARE_INTERFACE_(ID3DXSPMesh, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXSPMesh ***/ STDMETHOD_(DWORD, GetNumFaces)(THIS) PURE; STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE; STDMETHOD_(DWORD, GetNumFVF)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD_(DWORD, GetOptions)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(CloneMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, DWORD *adjacency_out, DWORD *vertex_remap_out, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, DWORD *adjacency_out, DWORD *vertex_remap_out, struct ID3DXMesh **clone_mesh) PURE; STDMETHOD(ClonePMeshFVF)(THIS_ DWORD options, DWORD fvf, struct IDirect3DDevice9 *device, DWORD *vertex_remap_out, float *errors_by_face, struct ID3DXPMesh **clone_mesh) PURE; STDMETHOD(ClonePMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, DWORD *vertex_remap_out, float *errors_by_face, struct ID3DXPMesh **clone_mesh) PURE; STDMETHOD(ReduceFaces)(THIS_ DWORD faces) PURE; STDMETHOD(ReduceVertices)(THIS_ DWORD vertices) PURE; STDMETHOD_(DWORD, GetMaxFaces)(THIS) PURE; STDMETHOD_(DWORD, GetMaxVertices)(THIS) PURE; STDMETHOD(GetVertexAttributeWeights)(THIS_ LPD3DXATTRIBUTEWEIGHTS vertex_attribute_weights) PURE; STDMETHOD(GetVertexWeights)(THIS_ FLOAT* vertex_weights) PURE; }; #undef INTERFACE #define INTERFACE ID3DXPatchMesh DECLARE_INTERFACE_(ID3DXPatchMesh, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXPatchMesh ***/ STDMETHOD_(DWORD, GetNumPatches)(THIS) PURE; STDMETHOD_(DWORD, GetNumVertices)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD_(DWORD, GetControlVerticesPerPatch)(THIS) PURE; STDMETHOD_(DWORD, GetOptions)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD(GetPatchInfo)(THIS_ LPD3DXPATCHINFO patch_info) PURE; STDMETHOD(GetVertexBuffer)(THIS_ struct IDirect3DVertexBuffer9 **vertex_buffer) PURE; STDMETHOD(GetIndexBuffer)(THIS_ struct IDirect3DIndexBuffer9 **index_buffer) PURE; STDMETHOD(LockVertexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockVertexBuffer)(THIS) PURE; STDMETHOD(LockIndexBuffer)(THIS_ DWORD flags, void **data) PURE; STDMETHOD(UnlockIndexBuffer)(THIS) PURE; STDMETHOD(LockAttributeBuffer)(THIS_ DWORD flags, DWORD** data) PURE; STDMETHOD(UnlockAttributeBuffer)(THIS) PURE; STDMETHOD(GetTessSize)(THIS_ FLOAT tess_level, DWORD adaptive, DWORD* num_triangles, DWORD* num_vertices) PURE; STDMETHOD(GenerateAdjacency)(THIS_ FLOAT tolerance) PURE; STDMETHOD(CloneMesh)(THIS_ DWORD options, const D3DVERTEXELEMENT9 *declaration, ID3DXPatchMesh **clone_mesh) PURE; STDMETHOD(Optimize)(THIS_ DWORD flags) PURE; STDMETHOD(SetDisplaceParam)(THIS_ struct IDirect3DBaseTexture9 *texture, D3DTEXTUREFILTERTYPE min_filter, D3DTEXTUREFILTERTYPE mag_filter, D3DTEXTUREFILTERTYPE mip_filter, D3DTEXTUREADDRESS wrap, DWORD lod_bias) PURE; STDMETHOD(GetDisplaceParam)(THIS_ struct IDirect3DBaseTexture9 **texture, D3DTEXTUREFILTERTYPE *min_filter, D3DTEXTUREFILTERTYPE *mag_filter, D3DTEXTUREFILTERTYPE *mip_filter, D3DTEXTUREADDRESS *wrap, DWORD *lod_bias) PURE; STDMETHOD(Tessellate)(THIS_ float tess_level, ID3DXMesh *mesh) PURE; STDMETHOD(TessellateAdaptive)(THIS_ const D3DXVECTOR4 *trans, DWORD max_tess_level, DWORD min_tess_level, ID3DXMesh *mesh) PURE; }; #undef INTERFACE #define INTERFACE ID3DXSkinInfo DECLARE_INTERFACE_(ID3DXSkinInfo, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXSkinInfo ***/ STDMETHOD(SetBoneInfluence)(THIS_ DWORD bone, DWORD num_influences, const DWORD *vertices, const FLOAT *weights) PURE; STDMETHOD(SetBoneVertexInfluence)(THIS_ DWORD bone_num, DWORD influence_num, float weight) PURE; STDMETHOD_(DWORD, GetNumBoneInfluences)(THIS_ DWORD bone) PURE; STDMETHOD(GetBoneInfluence)(THIS_ DWORD bone, DWORD* vertices, FLOAT* weights) PURE; STDMETHOD(GetBoneVertexInfluence)(THIS_ DWORD bone_num, DWORD influence_num, float *weight, DWORD* vertex_num) PURE; STDMETHOD(GetMaxVertexInfluences)(THIS_ DWORD* max_vertex_influences) PURE; STDMETHOD_(DWORD, GetNumBones)(THIS) PURE; STDMETHOD(FindBoneVertexInfluenceIndex)(THIS_ DWORD bone_num, DWORD vertex_num, DWORD* influence_index) PURE; STDMETHOD(GetMaxFaceInfluences)(THIS_ struct IDirect3DIndexBuffer9 *index_buffer, DWORD num_faces, DWORD *max_face_influences) PURE; STDMETHOD(SetMinBoneInfluence)(THIS_ FLOAT min_influence) PURE; STDMETHOD_(FLOAT, GetMinBoneInfluence)(THIS) PURE; STDMETHOD(SetBoneName)(THIS_ DWORD bone_idx, const char *name) PURE; STDMETHOD_(const char *, GetBoneName)(THIS_ DWORD bone_idx) PURE; STDMETHOD(SetBoneOffsetMatrix)(THIS_ DWORD bone, const D3DXMATRIX *bone_transform) PURE; STDMETHOD_(D3DXMATRIX *, GetBoneOffsetMatrix)(THIS_ DWORD bone) PURE; STDMETHOD(Clone)(THIS_ ID3DXSkinInfo **skin_info) PURE; STDMETHOD(Remap)(THIS_ DWORD num_vertices, DWORD* vertex_remap) PURE; STDMETHOD(SetFVF)(THIS_ DWORD FVF) PURE; STDMETHOD(SetDeclaration)(THIS_ const D3DVERTEXELEMENT9 *declaration) PURE; STDMETHOD_(DWORD, GetFVF)(THIS) PURE; STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 declaration[MAX_FVF_DECL_SIZE]) PURE; STDMETHOD(UpdateSkinnedMesh)(THIS_ const D3DXMATRIX *bone_transforms, const D3DXMATRIX *bone_inv_transpose_transforms, const void *src_vertices, void *dst_vertices) PURE; STDMETHOD(ConvertToBlendedMesh)(THIS_ ID3DXMesh *mesh_in, DWORD options, const DWORD *adjacency_in, DWORD *adjacency_out, DWORD *face_remap, ID3DXBuffer **vertex_remap, DWORD *max_face_infl, DWORD *num_bone_combinations, ID3DXBuffer **bone_combination_table, ID3DXMesh **mesh_out) PURE; STDMETHOD(ConvertToIndexedBlendedMesh)(THIS_ ID3DXMesh *mesh_in, DWORD options, DWORD palette_size, const DWORD *adjacency_in, DWORD *adjacency_out, DWORD *face_remap, ID3DXBuffer **vertex_remap, DWORD *max_face_infl, DWORD *num_bone_combinations, ID3DXBuffer **bone_combination_table, ID3DXMesh **mesh_out) PURE; }; #undef INTERFACE #define INTERFACE ID3DXPRTBuffer DECLARE_INTERFACE_(ID3DXPRTBuffer, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXPRTBuffer methods ***/ STDMETHOD_(UINT, GetNumSamples)(THIS) PURE; STDMETHOD_(UINT, GetNumCoeffs)(THIS) PURE; STDMETHOD_(UINT, GetNumChannels)(THIS) PURE; STDMETHOD_(WINBOOL, IsTexture)(THIS) PURE; STDMETHOD_(WINBOOL, GetWidth)(THIS) PURE; STDMETHOD_(WINBOOL, GetHeight)(THIS) PURE; STDMETHOD(Resize)(THIS_ UINT new_size) PURE; STDMETHOD(LockBuffer)(THIS_ UINT start, UINT num_samples, FLOAT **data) PURE; STDMETHOD(UnlockBuffer)(THIS) PURE; STDMETHOD(ScaleBuffer)(THIS_ FLOAT scale) PURE; STDMETHOD(AddBuffer)(THIS_ ID3DXPRTBuffer *buffer) PURE; STDMETHOD(AttachGH)(THIS_ struct ID3DXTextureGutterHelper *gh) PURE; STDMETHOD(ReleaseGH)(THIS) PURE; STDMETHOD(EvalGH)(THIS) PURE; STDMETHOD(ExtractTexture)(THIS_ UINT channel, UINT start_coefficient, UINT num_coefficients, struct IDirect3DTexture9 *texture) PURE; STDMETHOD(ExtractToMesh)(THIS_ UINT num_coefficients, D3DDECLUSAGE usage, UINT usage_index_start, ID3DXMesh *scene) PURE; }; #undef INTERFACE #define INTERFACE ID3DXPRTCompBuffer DECLARE_INTERFACE_(ID3DXPRTCompBuffer, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXPRTCompBuffer methods ***/ STDMETHOD_(UINT, GetNumSamples)(THIS) PURE; STDMETHOD_(UINT, GetNumCoeffs)(THIS) PURE; STDMETHOD_(UINT, GetNumChannels)(THIS) PURE; STDMETHOD_(WINBOOL, IsTexture)(THIS) PURE; STDMETHOD_(UINT, GetWidth)(THIS) PURE; STDMETHOD_(UINT, GetHeight)(THIS) PURE; STDMETHOD_(UINT, GetNumClusters)(THIS) PURE; STDMETHOD_(UINT, GetNumPCA)(THIS) PURE; STDMETHOD(NormalizeData)(THIS) PURE; STDMETHOD(ExtractBasis)(THIS_ UINT cluster, FLOAT *cluster_basis) PURE; STDMETHOD(ExtractClusterIDs)(THIS_ UINT *cluster_ids) PURE; STDMETHOD(ExtractPCA)(THIS_ UINT start_pca, UINT num_extract, FLOAT *pca_coefficients) PURE; STDMETHOD(ExtractTexture)(THIS_ UINT start_pca, UINT num_pca, struct IDirect3DTexture9 *texture) PURE; STDMETHOD(ExtractToMesh)(THIS_ UINT num_pca, D3DDECLUSAGE usage, UINT usage_index_start, ID3DXMesh *scene) PURE; }; #undef INTERFACE #define INTERFACE ID3DXTextureGutterHelper DECLARE_INTERFACE_(ID3DXTextureGutterHelper, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXTextureGutterHelper methods ***/ STDMETHOD_(UINT, GetWidth)(THIS) PURE; STDMETHOD_(UINT, GetHeight)(THIS) PURE; STDMETHOD(ApplyGuttersFloat)(THIS_ FLOAT *data_in, UINT num_coeffs, UINT width, UINT height) PURE; STDMETHOD(ApplyGuttersTex)(THIS_ struct IDirect3DTexture9 *texture) PURE; STDMETHOD(ApplyGuttersPRT)(THIS_ ID3DXPRTBuffer *buffer) PURE; STDMETHOD(ResampleTex)(THIS_ struct IDirect3DTexture9 *texture_in, struct ID3DXMesh *mesh_in, D3DDECLUSAGE usage, UINT usage_index, struct IDirect3DTexture9 *texture_out) PURE; STDMETHOD(GetFaceMap)(THIS_ UINT *face_data) PURE; STDMETHOD(GetBaryMap)(THIS_ D3DXVECTOR2 *bary_data) PURE; STDMETHOD(GetTexelMap)(THIS_ D3DXVECTOR2 *texel_data) PURE; STDMETHOD(GetGutterMap)(THIS_ BYTE *gutter_data) PURE; STDMETHOD(SetFaceMap)(THIS_ UINT *face_data) PURE; STDMETHOD(SetBaryMap)(THIS_ D3DXVECTOR2 *bary_data) PURE; STDMETHOD(SetTexelMap)(THIS_ D3DXVECTOR2 *texel_data) PURE; STDMETHOD(SetGutterMap)(THIS_ BYTE *gutter_data) PURE; }; #undef INTERFACE #define INTERFACE ID3DXPRTEngine DECLARE_INTERFACE_(ID3DXPRTEngine, IUnknown) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXPRTEngine methods ***/ STDMETHOD(SetMeshMaterials)(THIS_ const D3DXSHMATERIAL **materials, UINT num_meshes, UINT num_channels, WINBOOL set_albedo, FLOAT length_scale) PURE; STDMETHOD(SetPerVertexAlbedo)(THIS_ const void *data_in, UINT num_channels, UINT stride) PURE; STDMETHOD(SetPerTexelAlbedo)(THIS_ struct IDirect3DTexture9 *albedo_texture, UINT num_channels, struct ID3DXTextureGutterHelper *gh) PURE; STDMETHOD(GetVertexAlbedo)(THIS_ D3DXCOLOR *vert_colors, UINT num_verts) PURE; STDMETHOD(SetPerTexelNormals)(THIS_ struct IDirect3DTexture9 *normal_texture) PURE; STDMETHOD(ExtractPerVertexAlbedo)(THIS_ ID3DXMesh *mesh, D3DDECLUSAGE usage, UINT num_channels) PURE; STDMETHOD(ResampleBuffer)(THIS_ ID3DXPRTBuffer *buffer_in, ID3DXPRTBuffer *buffer_out) PURE; STDMETHOD(GetAdaptedMesh)(THIS_ struct IDirect3DDevice9 *device, UINT *face_remap, UINT *vert_remap, float *vert_weights, struct ID3DXMesh **mesh) PURE; STDMETHOD_(UINT, GetNumVerts)(THIS) PURE; STDMETHOD_(UINT, GetNumFaces)(THIS) PURE; STDMETHOD(SetMinMaxIntersection)(THIS_ FLOAT min, FLOAT max) PURE; STDMETHOD(RobustMeshRefine)(THIS_ FLOAT min_edge_length, UINT max_subdiv) PURE; STDMETHOD(SetSamplingInfo)(THIS_ UINT num_rays, WINBOOL use_sphere, WINBOOL use_cosine, WINBOOL adaptive, FLOAT adpative_thresh) PURE; STDMETHOD(ComputeDirectLightingSH)(THIS_ UINT sh_order, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeDirectLightingSHAdaptive)(THIS_ UINT sh_order, float adaptive_thresh, float min_edge_length, UINT max_subdiv, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeDirectLightingSHGPU)(THIS_ struct IDirect3DDevice9 *device, UINT flags, UINT sh_order, float zbias, float zangle_bias, struct ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeSS)(THIS_ ID3DXPRTBuffer *data_in, ID3DXPRTBuffer *data_out, ID3DXPRTBuffer *data_total) PURE; STDMETHOD(ComputeSSAdaptive)(THIS_ ID3DXPRTBuffer *data_in, float adaptive_thres, float min_edge_length, UINT max_subdiv, ID3DXPRTBuffer *data_out, ID3DXPRTBuffer *data_total) PURE; STDMETHOD(ComputeBounce)(THIS_ ID3DXPRTBuffer *data_in, ID3DXPRTBuffer *data_out, ID3DXPRTBuffer *data_total) PURE; STDMETHOD(ComputeBounceAdaptive)(THIS_ ID3DXPRTBuffer *data_in, float adaptive_thres, float min_edge_length, UINT max_subdiv, ID3DXPRTBuffer *data_out, ID3DXPRTBuffer *data_total) PURE; STDMETHOD(ComputeVolumeSamplesDirectSH)(THIS_ UINT sh_order_in, UINT sh_order_out, UINT num_vol_samples, const D3DXVECTOR3 *sample_locs, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeVolumeSamples)(THIS_ ID3DXPRTBuffer *surf_data_in, UINT sh_order, UINT num_vol_samples, const D3DXVECTOR3 *sample_locs, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeSurfSamplesDirectSH)(THIS_ UINT sh_order, UINT num_samples, const D3DXVECTOR3 *sample_locs, const D3DXVECTOR3 *sample_norms, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ComputeSurfSamplesBounce)(THIS_ ID3DXPRTBuffer *surf_data_in, UINT num_samples, const D3DXVECTOR3 *sample_locs, const D3DXVECTOR3 *sample_norms, ID3DXPRTBuffer *data_out, ID3DXPRTBuffer *data_total) PURE; STDMETHOD(FreeSSData)(THIS) PURE; STDMETHOD(FreeBounceData)(THIS) PURE; STDMETHOD(ComputeLDPRTCoeffs)(THIS_ ID3DXPRTBuffer *data_in, UINT sh_order, D3DXVECTOR3 *norm_out, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(ScaleMeshChunk)(THIS_ UINT mesh_chunk, float scale, ID3DXPRTBuffer *data_out) PURE; STDMETHOD(MultiplyAlbedo)(THIS_ ID3DXPRTBuffer *data_out) PURE; STDMETHOD(SetCallback)(THIS_ LPD3DXSHPRTSIMCB cb, float frequency, void *user_context) PURE; STDMETHOD_(WINBOOL, ShadowRayIntersects)(THIS_ const D3DXVECTOR3 *ray_pos, const D3DXVECTOR3 *ray_dir) PURE; STDMETHOD_(WINBOOL, ClosestRayIntersects)(THIS_ const D3DXVECTOR3 *ray_pos, const D3DXVECTOR3 *ray_dir, DWORD *face_index, FLOAT *u, FLOAT *v, FLOAT *dist) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DXCreateMesh(DWORD face_count, DWORD vertex_count, DWORD flags, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXCreateMeshFVF(DWORD face_count, DWORD vertex_count, DWORD flags, DWORD fvf, struct IDirect3DDevice9 *device, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXCreateBuffer(DWORD size, ID3DXBuffer **buffer); HRESULT WINAPI D3DXCreateSPMesh(ID3DXMesh *mesh, const DWORD *adjacency, const D3DXATTRIBUTEWEIGHTS *attribute_weights, const float *vertex_weights, ID3DXSPMesh **spmesh); HRESULT WINAPI D3DXCreatePMeshFromStream(struct IStream *stream, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXPMesh **mesh); HRESULT WINAPI D3DXCreateSkinInfo(DWORD vertex_count, const D3DVERTEXELEMENT9 *declaration, DWORD bone_count, ID3DXSkinInfo **skin_info); HRESULT WINAPI D3DXCreateSkinInfoFVF(DWORD vertex_count, DWORD fvf, DWORD bone_count, ID3DXSkinInfo **skin_info); HRESULT WINAPI D3DXCreateSkinInfoFromBlendedMesh(ID3DXBaseMesh *mesh, DWORD bone_count, const D3DXBONECOMBINATION *bone_combination_table, ID3DXSkinInfo **skin_info); HRESULT WINAPI D3DXCreatePatchMesh(const D3DXPATCHINFO *patch_info, DWORD patch_count, DWORD vertex_count, DWORD flags, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXPatchMesh **mesh); HRESULT WINAPI D3DXCreatePRTBuffer(UINT sample_count, UINT coeff_count, UINT channel_count, ID3DXPRTBuffer **buffer); HRESULT WINAPI D3DXCreatePRTBufferTex(UINT width, UINT height, UINT coeff_count, UINT channel_count, ID3DXPRTBuffer **buffer); HRESULT WINAPI D3DXCreatePRTCompBuffer(D3DXSHCOMPRESSQUALITYTYPE quality, UINT cluster_count, UINT pca_count, LPD3DXSHPRTSIMCB cb, void *ctx, ID3DXPRTBuffer *input, ID3DXPRTCompBuffer **buffer); HRESULT WINAPI D3DXCreateTextureGutterHelper(UINT width, UINT height, ID3DXMesh *mesh, float gutter_size, ID3DXTextureGutterHelper **gh); HRESULT WINAPI D3DXCreatePRTEngine(ID3DXMesh *mesh, DWORD *adjacency, WINBOOL extract_uv, ID3DXMesh *blocker_mesh, ID3DXPRTEngine **engine); HRESULT WINAPI D3DXLoadMeshFromXA(const char *filename, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXLoadMeshFromXW(const WCHAR *filename, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXMesh **mesh); #define D3DXLoadMeshFromX __MINGW_NAME_AW(D3DXLoadMeshFromX) HRESULT WINAPI D3DXLoadMeshFromXInMemory(const void *data, DWORD data_size, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXLoadMeshFromXResource(HMODULE module, const char *resource, const char *resource_type, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXLoadMeshFromXof(struct ID3DXFileData *file_data, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXLoadPatchMeshFromXof(struct ID3DXFileData *file_data, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXPatchMesh **mesh); HRESULT WINAPI D3DXLoadSkinMeshFromXof(struct ID3DXFileData *file_data, DWORD flags, struct IDirect3DDevice9 *device, struct ID3DXBuffer **adjacency, struct ID3DXBuffer **materials, struct ID3DXBuffer **effect_instances, DWORD *material_count, struct ID3DXSkinInfo **skin_info, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXLoadPRTBufferFromFileA(const char *filename, ID3DXPRTBuffer **buffer); HRESULT WINAPI D3DXLoadPRTBufferFromFileW(const WCHAR *filename, ID3DXPRTBuffer **buffer); #define D3DXLoadPRTBufferFromFile __MINGW_NAME_AW(D3DXLoadPRTBufferFromFile) HRESULT WINAPI D3DXLoadPRTCompBufferFromFileA(const char *filename, ID3DXPRTCompBuffer **buffer); HRESULT WINAPI D3DXLoadPRTCompBufferFromFileW(const WCHAR *filename, ID3DXPRTCompBuffer **buffer); #define D3DXLoadPRTCompBufferFromFile __MINGW_NAME_AW(D3DXLoadPRTCompBufferFromFile) HRESULT WINAPI D3DXSaveMeshToXA(const char *filename, ID3DXMesh *mesh, const DWORD *adjacency, const D3DXMATERIAL *materials, const D3DXEFFECTINSTANCE *effect_instances, DWORD material_count, DWORD format); HRESULT WINAPI D3DXSaveMeshToXW(const WCHAR *filename, ID3DXMesh *mesh, const DWORD *adjacency, const D3DXMATERIAL *materials, const D3DXEFFECTINSTANCE *effect_instances, DWORD material_count, DWORD format); #define D3DXSaveMeshToX __MINGW_NAME_AW(D3DXSaveMeshToX) HRESULT WINAPI D3DXSavePRTBufferToFileA(const char *filename, ID3DXPRTBuffer *buffer); HRESULT WINAPI D3DXSavePRTBufferToFileW(const WCHAR *filename, ID3DXPRTBuffer *buffer); #define D3DXSavePRTBufferToFile __MINGW_NAME_AW(D3DXSavePRTBufferToFile) HRESULT WINAPI D3DXSavePRTCompBufferToFileA(const char *filename, ID3DXPRTCompBuffer *buffer); HRESULT WINAPI D3DXSavePRTCompBufferToFileW(const WCHAR *filename, ID3DXPRTCompBuffer *buffer); #define D3DXSavePRTCompBufferToFile __MINGW_NAME_AW(D3DXSavePRTCompBufferToFile) UINT WINAPI D3DXGetDeclLength(const D3DVERTEXELEMENT9 *decl); UINT WINAPI D3DXGetDeclVertexSize(const D3DVERTEXELEMENT9 *decl, DWORD stream_idx); UINT WINAPI D3DXGetFVFVertexSize(DWORD); WINBOOL WINAPI D3DXBoxBoundProbe(const D3DXVECTOR3 *vmin, const D3DXVECTOR3 *vmax, const D3DXVECTOR3 *ray_pos, const D3DXVECTOR3 *ray_dir); WINBOOL WINAPI D3DXSphereBoundProbe(const D3DXVECTOR3 *center, FLOAT radius, const D3DXVECTOR3 *ray_pos, const D3DXVECTOR3 *ray_dir); HRESULT WINAPI D3DXCleanMesh(D3DXCLEANTYPE clean_type, ID3DXMesh *mesh_in, const DWORD *adjacency_in, ID3DXMesh **mesh_out, DWORD *adjacency_out, ID3DXBuffer **errors); HRESULT WINAPI D3DXConcatenateMeshes(struct ID3DXMesh **meshes, UINT mesh_count, DWORD flags, const D3DXMATRIX *geometry_matrices, const D3DXMATRIX *texture_matrices, const D3DVERTEXELEMENT9 *declaration, struct IDirect3DDevice9 *device, struct ID3DXMesh **mesh); HRESULT WINAPI D3DXComputeBoundingBox(const D3DXVECTOR3 *first_pos, DWORD num_vertices, DWORD stride, D3DXVECTOR3 *vmin, D3DXVECTOR3 *vmax); HRESULT WINAPI D3DXComputeBoundingSphere(const D3DXVECTOR3 *first_pos, DWORD num_vertices, DWORD stride, D3DXVECTOR3 *center, FLOAT *radius); HRESULT WINAPI D3DXComputeIMTFromPerTexelSignal(ID3DXMesh *mesh, DWORD texture_idx, float *texel_signal, UINT width, UINT height, UINT signal_dimension, UINT component_count, DWORD flags, LPD3DXUVATLASCB cb, void *ctx, ID3DXBuffer **buffer); HRESULT WINAPI D3DXComputeIMTFromPerVertexSignal(ID3DXMesh *mesh, const float *vertex_signal, UINT signal_dimension, UINT signal_stride, DWORD flags, LPD3DXUVATLASCB cb, void *ctx, ID3DXBuffer **buffer); HRESULT WINAPI D3DXComputeIMTFromSignal(ID3DXMesh *mesh, DWORD texture_idx, UINT signal_dimension, float max_uv_distance, DWORD flags, LPD3DXIMTSIGNALCALLBACK signal_cb, void *signal_ctx, LPD3DXUVATLASCB status_cb, void *status_ctx, ID3DXBuffer **buffer); HRESULT WINAPI D3DXComputeIMTFromTexture(struct ID3DXMesh *mesh, struct IDirect3DTexture9 *texture, DWORD texture_idx, DWORD options, LPD3DXUVATLASCB cb, void *ctx, struct ID3DXBuffer **out); HRESULT WINAPI D3DXComputeNormals(ID3DXBaseMesh *mesh, const DWORD *adjacency); HRESULT WINAPI D3DXComputeTangentFrameEx(ID3DXMesh *mesh_in, DWORD texture_in_semantic, DWORD texture_in_idx, DWORD u_partial_out_semantic, DWORD u_partial_out_idx, DWORD v_partial_out_semantic, DWORD v_partial_out_idx, DWORD normal_out_semantic, DWORD normal_out_idx, DWORD flags, const DWORD *adjacency, float partial_edge_threshold, float singular_point_threshold, float normal_edge_threshold, ID3DXMesh **mesh_out, ID3DXBuffer **buffer); HRESULT WINAPI D3DXComputeTangent(ID3DXMesh *mesh, DWORD stage, DWORD tangent_idx, DWORD binorm_idx, DWORD wrap, const DWORD *adjacency); HRESULT WINAPI D3DXConvertMeshSubsetToSingleStrip(struct ID3DXBaseMesh *mesh_in, DWORD attribute_id, DWORD ib_flags, struct IDirect3DIndexBuffer9 **index_buffer, DWORD *index_count); HRESULT WINAPI D3DXConvertMeshSubsetToStrips(struct ID3DXBaseMesh *mesh_in, DWORD attribute_id, DWORD ib_flags, struct IDirect3DIndexBuffer9 **index_buffer, DWORD *index_count, struct ID3DXBuffer **strip_lengths, DWORD *strip_count); HRESULT WINAPI D3DXDeclaratorFromFVF(DWORD, D3DVERTEXELEMENT9[MAX_FVF_DECL_SIZE]); HRESULT WINAPI D3DXFVFFromDeclarator(const D3DVERTEXELEMENT9 *decl, DWORD *fvf); HRESULT WINAPI D3DXGenerateOutputDecl(D3DVERTEXELEMENT9 *decl_out, const D3DVERTEXELEMENT9 *decl_in); HRESULT WINAPI D3DXGeneratePMesh(ID3DXMesh *mesh, const DWORD *adjacency, const D3DXATTRIBUTEWEIGHTS *attribute_weights, const float *vertex_weights, DWORD min_value, DWORD flags, ID3DXPMesh **pmesh); HRESULT WINAPI D3DXIntersect(ID3DXBaseMesh *mesh, const D3DXVECTOR3 *ray_position, const D3DXVECTOR3 *ray_direction, WINBOOL *hit, DWORD *face_idx, float *u, float *v, float *distance, ID3DXBuffer **hits, DWORD *hit_count); HRESULT WINAPI D3DXIntersectSubset(ID3DXBaseMesh *mesh, DWORD attribute_id, const D3DXVECTOR3 *ray_position, const D3DXVECTOR3 *ray_direction, WINBOOL *hit, DWORD *face_idx, float *u, float *v, float *distance, ID3DXBuffer **hits, DWORD *hit_count); WINBOOL WINAPI D3DXIntersectTri(const D3DXVECTOR3 *vtx0, const D3DXVECTOR3 *vtx1, const D3DXVECTOR3 *vtx2, const D3DXVECTOR3 *ray_pos, const D3DXVECTOR3 *ray_dir, FLOAT *u, FLOAT *v, FLOAT *dist); HRESULT WINAPI D3DXOptimizeFaces(const void *indices, UINT face_count, UINT vertex_count, WINBOOL idx_32bit, DWORD *face_remap); HRESULT WINAPI D3DXOptimizeVertices(const void *indices, UINT face_count, UINT vertex_count, WINBOOL idx_32bit, DWORD *vertex_remap); HRESULT WINAPI D3DXRectPatchSize(const FLOAT *segment_count, DWORD *num_triangles, DWORD *num_vertices); HRESULT WINAPI D3DXSHPRTCompSuperCluster(UINT *cluster_ids, ID3DXMesh *scene, UINT max_cluster_count, UINT cluster_count, UINT *scluster_ids, UINT *scluster_count); HRESULT WINAPI D3DXSHPRTCompSplitMeshSC(UINT *cluster_idx, UINT vertex_count, UINT cluster_count, UINT *scluster_ids, UINT scluster_count, void *index_buffer_in, WINBOOL ib_in_32bit, UINT face_count, ID3DXBuffer **index_buffer_out, UINT *index_buffer_size, WINBOOL ib_out_32bit, ID3DXBuffer **face_remap, ID3DXBuffer **vertex_data, UINT *vertex_data_length, UINT *sc_cluster_list, D3DXSHPRTSPLITMESHCLUSTERDATA *sc_data); HRESULT WINAPI D3DXSimplifyMesh(ID3DXMesh *mesh_in, const DWORD *adjacency, const D3DXATTRIBUTEWEIGHTS *attribute_weights, const float *vertex_weights, DWORD min_value, DWORD flags, ID3DXMesh **mesh_out); HRESULT WINAPI D3DXSplitMesh(ID3DXMesh *mesh_in, const DWORD *adjacency_in, const DWORD max_size, const DWORD flags, DWORD *mesh_out_count, ID3DXBuffer **mesh_out, ID3DXBuffer **adjacency_out, ID3DXBuffer **face_remap_out, ID3DXBuffer **vertex_remap_out); HRESULT WINAPI D3DXTessellateNPatches(ID3DXMesh *mesh_in, const DWORD *adjacency_in, float segment_count, WINBOOL quad_interp, ID3DXMesh **mesh_out, ID3DXBuffer **adjacency_out); HRESULT WINAPI D3DXTessellateRectPatch(struct IDirect3DVertexBuffer9 *buffer, const float *segment_count, const D3DVERTEXELEMENT9 *declaration, const D3DRECTPATCH_INFO *patch_info, struct ID3DXMesh *mesh); HRESULT WINAPI D3DXTessellateTriPatch(struct IDirect3DVertexBuffer9 *buffer, const float *segment_count, const D3DVERTEXELEMENT9 *declaration, const D3DTRIPATCH_INFO *patch_info, struct ID3DXMesh *mesh); HRESULT WINAPI D3DXTriPatchSize(const FLOAT *segment_count, DWORD *num_triangles, DWORD *num_vertices); HRESULT WINAPI D3DXUVAtlasCreate(ID3DXMesh *mesh_in, UINT max_chart_count, float max_stretch_in, UINT width, UINT height, float gutter, DWORD texture_idx, const DWORD *adjacency, const DWORD *false_edges, const float *imt_array, LPD3DXUVATLASCB cb, float cb_freq, void *ctx, DWORD flags, ID3DXMesh **mesh_out, ID3DXBuffer **face_partitioning_out, ID3DXBuffer **vertex_remap_out, float *max_stretch_out, UINT *chart_count); HRESULT WINAPI D3DXUVAtlasPack(ID3DXMesh *mesh, UINT width, UINT height, float gutter, DWORD texture_idx, const DWORD *partition_result_adjacency, LPD3DXUVATLASCB cb, float cb_freq, void *ctx, DWORD flags, ID3DXBuffer *face_partitioning); HRESULT WINAPI D3DXUVAtlasPartition(ID3DXMesh *mesh_in, UINT max_chart_count, float max_stretch_in, DWORD texture_idx, const DWORD *adjacency, const DWORD *false_edges, const float *imt_array, LPD3DXUVATLASCB cb, float cb_freq, void *ctx, DWORD flags, ID3DXMesh **mesh_out, ID3DXBuffer **face_partitioning_out, ID3DXBuffer **vertex_remap_out, ID3DXBuffer **adjacency_out, float *max_stretch_out, UINT *chart_count); HRESULT WINAPI D3DXValidMesh(ID3DXMesh *mesh, const DWORD *adjacency, ID3DXBuffer **errors); HRESULT WINAPI D3DXValidPatchMesh(ID3DXPatchMesh *mesh, DWORD *degenerate_vertex_count, DWORD *degenerate_patch_count, ID3DXBuffer **errors); HRESULT WINAPI D3DXWeldVertices(ID3DXMesh *mesh, DWORD flags, const D3DXWELDEPSILONS *epsilons, const DWORD *adjacency_in, DWORD *adjacency_out, DWORD *face_remap_out, ID3DXBuffer **vertex_remap_out); #ifdef __cplusplus } #endif DEFINE_GUID(DXFILEOBJ_XSkinMeshHeader, 0x3cf169ce, 0xff7c, 0x44ab, 0x93, 0xc0, 0xf7, 0x8f, 0x62, 0xd1, 0x72, 0xe2); DEFINE_GUID(DXFILEOBJ_VertexDuplicationIndices, 0xb8d65549, 0xd7c9, 0x4995, 0x89, 0xcf, 0x53, 0xa9, 0xa8, 0xb0, 0x31, 0xe3); DEFINE_GUID(DXFILEOBJ_FaceAdjacency, 0xa64c844a, 0xe282, 0x4756, 0x8b, 0x80, 0x25, 0x0c, 0xde, 0x04, 0x39, 0x8c); DEFINE_GUID(DXFILEOBJ_SkinWeights, 0x6f0d123b, 0xbad2, 0x4167, 0xa0, 0xd0, 0x80, 0x22, 0x4f, 0x25, 0xfa, 0xbb); DEFINE_GUID(DXFILEOBJ_Patch, 0xa3eb5d44, 0xfc22, 0x429d, 0x9a, 0xfb, 0x32, 0x21, 0xcb, 0x97, 0x19, 0xa6); DEFINE_GUID(DXFILEOBJ_PatchMesh, 0xd02c95cc, 0xedba, 0x4305, 0x9b, 0x5d, 0x18, 0x20, 0xd7, 0x70, 0x4d, 0xbf); DEFINE_GUID(DXFILEOBJ_PatchMesh9, 0xb9ec94e1, 0xb9a6, 0x4251, 0xba, 0x18, 0x94, 0x89, 0x3f, 0x02, 0xc0, 0xea); DEFINE_GUID(DXFILEOBJ_PMInfo, 0xb6c3e656, 0xec8b, 0x4b92, 0x9b, 0x62, 0x68, 0x16, 0x59, 0x52, 0x29, 0x47); DEFINE_GUID(DXFILEOBJ_PMAttributeRange, 0x917e0427, 0xc61e, 0x4a14, 0x9c, 0x64, 0xaf, 0xe6, 0x5f, 0x9e, 0x98, 0x44); DEFINE_GUID(DXFILEOBJ_PMVSplitRecord, 0x574ccc14, 0xf0b3, 0x4333, 0x82, 0x2d, 0x93, 0xe8, 0xa8, 0xa0, 0x8e, 0x4c); DEFINE_GUID(DXFILEOBJ_FVFData, 0xb6e70a0e, 0x8ef9, 0x4e83, 0x94, 0xad, 0xec, 0xc8, 0xb0, 0xc0, 0x48, 0x97); DEFINE_GUID(DXFILEOBJ_VertexElement, 0xf752461c, 0x1e23, 0x48f6, 0xb9, 0xf8, 0x83, 0x50, 0x85, 0x0f, 0x33, 0x6f); DEFINE_GUID(DXFILEOBJ_DeclData, 0xbf22e553, 0x292c, 0x4781, 0x9f, 0xea, 0x62, 0xbd, 0x55, 0x4b, 0xdd, 0x93); DEFINE_GUID(DXFILEOBJ_EffectFloats, 0xf1cfe2b3, 0x0de3, 0x4e28, 0xaf, 0xa1, 0x15, 0x5a, 0x75, 0x0a, 0x28, 0x2d); DEFINE_GUID(DXFILEOBJ_EffectString, 0xd55b097e, 0xbdb6, 0x4c52, 0xb0, 0x3d, 0x60, 0x51, 0xc8, 0x9d, 0x0e, 0x42); DEFINE_GUID(DXFILEOBJ_EffectDWord, 0x622c0ed0, 0x956e, 0x4da9, 0x90, 0x8a, 0x2a, 0xf9, 0x4f, 0x3c, 0xe7, 0x16); DEFINE_GUID(DXFILEOBJ_EffectParamFloats, 0x3014b9a0, 0x62f5, 0x478c, 0x9b, 0x86, 0xe4, 0xac, 0x9f, 0x4e, 0x41, 0x8b); DEFINE_GUID(DXFILEOBJ_EffectParamString, 0x1dbc4c88, 0x94c1, 0x46ee, 0x90, 0x76, 0x2c, 0x28, 0x81, 0x8c, 0x94, 0x81); DEFINE_GUID(DXFILEOBJ_EffectParamDWord, 0xe13963bc, 0xae51, 0x4c5d, 0xb0, 0x0f, 0xcf, 0xa3, 0xa9, 0xd9, 0x7c, 0xe5); DEFINE_GUID(DXFILEOBJ_EffectInstance, 0xe331f7e4, 0x0559, 0x4cc2, 0x8e, 0x99, 0x1c, 0xec, 0x16, 0x57, 0x92, 0x8f); DEFINE_GUID(DXFILEOBJ_AnimTicksPerSecond, 0x9e415a43, 0x7ba6, 0x4a73, 0x87, 0x43, 0xb7, 0x3d, 0x47, 0xe8, 0x84, 0x76); DEFINE_GUID(DXFILEOBJ_CompressedAnimationSet, 0x7f9b00b3, 0xf125, 0x4890, 0x87, 0x6e, 0x1c, 0x42, 0xbf, 0x69, 0x7c, 0x4d); #define XSKINEXP_TEMPLATES \ "xof 0303txt 0032\ template XSkinMeshHeader \ { \ <3CF169CE-FF7C-44ab-93C0-F78F62D172E2> \ WORD nMaxSkinWeightsPerVertex; \ WORD nMaxSkinWeightsPerFace; \ WORD nBones; \ } \ template VertexDuplicationIndices \ { \ \ DWORD nIndices; \ DWORD nOriginalVertices; \ array DWORD indices[nIndices]; \ } \ template FaceAdjacency \ { \ \ DWORD nIndices; \ array DWORD indices[nIndices]; \ } \ template SkinWeights \ { \ <6F0D123B-BAD2-4167-A0D0-80224F25FABB> \ STRING transformNodeName; \ DWORD nWeights; \ array DWORD vertexIndices[nWeights]; \ array float weights[nWeights]; \ Matrix4x4 matrixOffset; \ } \ template Patch \ { \ \ DWORD nControlIndices; \ array DWORD controlIndices[nControlIndices]; \ } \ template PatchMesh \ { \ \ DWORD nVertices; \ array Vector vertices[nVertices]; \ DWORD nPatches; \ array Patch patches[nPatches]; \ [ ... ] \ } \ template PatchMesh9 \ { \ \ DWORD Type; \ DWORD Degree; \ DWORD Basis; \ DWORD nVertices; \ array Vector vertices[nVertices]; \ DWORD nPatches; \ array Patch patches[nPatches]; \ [ ... ] \ } template EffectFloats \ { \ \ DWORD nFloats; \ array float Floats[nFloats]; \ } \ template EffectString \ { \ \ STRING Value; \ } \ template EffectDWord \ { \ <622C0ED0-956E-4da9-908A-2AF94F3CE716> \ DWORD Value; \ } template EffectParamFloats \ { \ <3014B9A0-62F5-478c-9B86-E4AC9F4E418B> \ STRING ParamName; \ DWORD nFloats; \ array float Floats[nFloats]; \ } template EffectParamString \ { \ <1DBC4C88-94C1-46ee-9076-2C28818C9481> \ STRING ParamName; \ STRING Value; \ } \ template EffectParamDWord \ { \ \ STRING ParamName; \ DWORD Value; \ } \ template EffectInstance \ { \ \ STRING EffectFilename; \ [ ... ] \ } template AnimTicksPerSecond \ { \ <9E415A43-7BA6-4a73-8743-B73D47E88476> \ DWORD AnimTicksPerSecond; \ } \ template CompressedAnimationSet \ { \ <7F9B00B3-F125-4890-876E-1C42BF697C4D> \ DWORD CompressedBlockSize; \ FLOAT TicksPerSec; \ DWORD PlaybackType; \ DWORD BufferLength; \ array DWORD CompressedData[BufferLength]; \ } " #define XEXTENSIONS_TEMPLATES \ "xof 0303txt 0032\ template FVFData \ { \ \ DWORD dwFVF; \ DWORD nDWords; \ array DWORD data[nDWords]; \ } \ template VertexElement \ { \ \ DWORD Type; \ DWORD Method; \ DWORD Usage; \ DWORD UsageIndex; \ } \ template DeclData \ { \ \ DWORD nElements; \ array VertexElement Elements[nElements]; \ DWORD nDWords; \ array DWORD data[nDWords]; \ } \ template PMAttributeRange \ { \ <917E0427-C61E-4a14-9C64-AFE65F9E9844> \ DWORD iFaceOffset; \ DWORD nFacesMin; \ DWORD nFacesMax; \ DWORD iVertexOffset; \ DWORD nVerticesMin; \ DWORD nVerticesMax; \ } \ template PMVSplitRecord \ { \ <574CCC14-F0B3-4333-822D-93E8A8A08E4C> \ DWORD iFaceCLW; \ DWORD iVlrOffset; \ DWORD iCode; \ } \ template PMInfo \ { \ \ DWORD nAttributes; \ array PMAttributeRange attributeRanges[nAttributes]; \ DWORD nMaxValence; \ DWORD nMinLogicalVertices; \ DWORD nMaxLogicalVertices; \ DWORD nVSplits; \ array PMVSplitRecord splitRecords[nVSplits]; \ DWORD nAttributeMispredicts; \ array DWORD attributeMispredicts[nAttributeMispredicts]; \ } " #endif /* __WINE_D3DX9MESH_H */ dxvk-0~git20220822.9df86f2/d3dx9shader.h000066400000000000000000000564571430055512200173130ustar00rootroot00000000000000#include <_mingw_unicode.h> #undef INTERFACE /* * Copyright 2008 Luis Busquets * Copyright 2014 Kai Tietz * * 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 */ #include "d3dx9.h" #ifndef __D3DX9SHADER_H__ #define __D3DX9SHADER_H__ #define D3DXSHADER_DEBUG 0x1 #define D3DXSHADER_SKIPVALIDATION 0x2 #define D3DXSHADER_SKIPOPTIMIZATION 0x4 #define D3DXSHADER_PACKMATRIX_ROWMAJOR 0x8 #define D3DXSHADER_PACKMATRIX_COLUMNMAJOR 0x10 #define D3DXSHADER_PARTIALPRECISION 0x20 #define D3DXSHADER_FORCE_VS_SOFTWARE_NOOPT 0x40 #define D3DXSHADER_FORCE_PS_SOFTWARE_NOOPT 0x80 #define D3DXSHADER_NO_PRESHADER 0x100 #define D3DXSHADER_AVOID_FLOW_CONTROL 0x200 #define D3DXSHADER_PREFER_FLOW_CONTROL 0x400 #define D3DXSHADER_ENABLE_BACKWARDS_COMPATIBILITY 0x1000 #define D3DXSHADER_IEEE_STRICTNESS 0x2000 #define D3DXSHADER_OPTIMIZATION_LEVEL0 0x4000 #define D3DXSHADER_OPTIMIZATION_LEVEL1 0x0 #define D3DXSHADER_OPTIMIZATION_LEVEL2 0xC000 #define D3DXSHADER_OPTIMIZATION_LEVEL3 0x8000 #define D3DXSHADER_USE_LEGACY_D3DX9_31_DLL 0x10000 #define D3DXCONSTTABLE_LARGEADDRESSAWARE 0x20000 typedef const char *D3DXHANDLE; typedef D3DXHANDLE *LPD3DXHANDLE; typedef enum _D3DXREGISTER_SET { D3DXRS_BOOL, D3DXRS_INT4, D3DXRS_FLOAT4, D3DXRS_SAMPLER, D3DXRS_FORCE_DWORD = 0x7fffffff } D3DXREGISTER_SET, *LPD3DXREGISTER_SET; typedef enum D3DXPARAMETER_CLASS { D3DXPC_SCALAR, D3DXPC_VECTOR, D3DXPC_MATRIX_ROWS, D3DXPC_MATRIX_COLUMNS, D3DXPC_OBJECT, D3DXPC_STRUCT, D3DXPC_FORCE_DWORD = 0x7fffffff, } D3DXPARAMETER_CLASS, *LPD3DXPARAMETER_CLASS; typedef enum D3DXPARAMETER_TYPE { D3DXPT_VOID, D3DXPT_BOOL, D3DXPT_INT, D3DXPT_FLOAT, D3DXPT_STRING, D3DXPT_TEXTURE, D3DXPT_TEXTURE1D, D3DXPT_TEXTURE2D, D3DXPT_TEXTURE3D, D3DXPT_TEXTURECUBE, D3DXPT_SAMPLER, D3DXPT_SAMPLER1D, D3DXPT_SAMPLER2D, D3DXPT_SAMPLER3D, D3DXPT_SAMPLERCUBE, D3DXPT_PIXELSHADER, D3DXPT_VERTEXSHADER, D3DXPT_PIXELFRAGMENT, D3DXPT_VERTEXFRAGMENT, D3DXPT_UNSUPPORTED, D3DXPT_FORCE_DWORD = 0x7fffffff, } D3DXPARAMETER_TYPE, *LPD3DXPARAMETER_TYPE; typedef struct _D3DXCONSTANTTABLE_DESC { const char *Creator; DWORD Version; UINT Constants; } D3DXCONSTANTTABLE_DESC, *LPD3DXCONSTANTTABLE_DESC; typedef struct _D3DXCONSTANT_DESC { const char *Name; D3DXREGISTER_SET RegisterSet; UINT RegisterIndex; UINT RegisterCount; D3DXPARAMETER_CLASS Class; D3DXPARAMETER_TYPE Type; UINT Rows; UINT Columns; UINT Elements; UINT StructMembers; UINT Bytes; const void *DefaultValue; } D3DXCONSTANT_DESC, *LPD3DXCONSTANT_DESC; #if D3DX_SDK_VERSION < 43 DEFINE_GUID(IID_ID3DXConstantTable, 0x9dca3190, 0x38b9, 0x4fc3, 0x92, 0xe3, 0x39, 0xc6, 0xdd, 0xfb, 0x35, 0x8b); #else DEFINE_GUID(IID_ID3DXConstantTable, 0xab3c758f, 0x093e, 0x4356, 0xb7, 0x62, 0x4d, 0xb1, 0x8f, 0x1b, 0x3a, 0x01); #endif #undef INTERFACE #define INTERFACE ID3DXConstantTable DECLARE_INTERFACE_(ID3DXConstantTable, ID3DXBuffer) { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; /*** ID3DXBuffer methods ***/ STDMETHOD_(void *, GetBufferPointer)(THIS) PURE; STDMETHOD_(DWORD, GetBufferSize)(THIS) PURE; /*** ID3DXConstantTable methods ***/ STDMETHOD(GetDesc)(THIS_ D3DXCONSTANTTABLE_DESC *pDesc) PURE; STDMETHOD(GetConstantDesc)(THIS_ D3DXHANDLE hConstant, D3DXCONSTANT_DESC *pConstantDesc, UINT *pCount) PURE; STDMETHOD_(UINT, GetSamplerIndex)(THIS_ D3DXHANDLE hConstant) PURE; STDMETHOD_(D3DXHANDLE, GetConstant)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE; STDMETHOD_(D3DXHANDLE, GetConstantByName)(THIS_ D3DXHANDLE constant, const char *name) PURE; STDMETHOD_(D3DXHANDLE, GetConstantElement)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE; STDMETHOD(SetDefaults)(THIS_ struct IDirect3DDevice9 *device) PURE; STDMETHOD(SetValue)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const void *data, UINT data_size) PURE; STDMETHOD(SetBool)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, WINBOOL value) PURE; STDMETHOD(SetBoolArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const WINBOOL *values, UINT value_count) PURE; STDMETHOD(SetInt)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, INT value) PURE; STDMETHOD(SetIntArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const INT *values, UINT value_count) PURE; STDMETHOD(SetFloat)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, float value) PURE; STDMETHOD(SetFloatArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const float *values, UINT value_count) PURE; STDMETHOD(SetVector)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXVECTOR4 *value) PURE; STDMETHOD(SetVectorArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXVECTOR4 *values, UINT value_count) PURE; STDMETHOD(SetMatrix)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *value) PURE; STDMETHOD(SetMatrixArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *values, UINT value_count) PURE; STDMETHOD(SetMatrixPointerArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX **values, UINT value_count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *value) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX *values, UINT value_count) PURE; STDMETHOD(SetMatrixTransposePointerArray)(THIS_ struct IDirect3DDevice9 *device, D3DXHANDLE constant, const D3DXMATRIX **values, UINT value_count) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define ID3DXConstantTable_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define ID3DXConstantTable_AddRef(p) (p)->lpVtbl->AddRef(p) #define ID3DXConstantTable_Release(p) (p)->lpVtbl->Release(p) /*** ID3DXBuffer methods ***/ #define ID3DXConstantTable_GetBufferPointer(p) (p)->lpVtbl->GetBufferPointer(p) #define ID3DXConstantTable_GetBufferSize(p) (p)->lpVtbl->GetBufferSize(p) /*** ID3DXConstantTable methods ***/ #define ID3DXConstantTable_GetDesc(p,a) (p)->lpVtbl->GetDesc(p,a) #define ID3DXConstantTable_GetConstantDesc(p,a,b,c) (p)->lpVtbl->GetConstantDesc(p,a,b,c) #define ID3DXConstantTable_GetSamplerIndex(p,a) (p)->lpVtbl->GetSamplerIndex(p,a) #define ID3DXConstantTable_GetConstant(p,a,b) (p)->lpVtbl->GetConstant(p,a,b) #define ID3DXConstantTable_GetConstantByName(p,a,b) (p)->lpVtbl->GetConstantByName(p,a,b) #define ID3DXConstantTable_GetConstantElement(p,a,b) (p)->lpVtbl->GetConstantElement(p,a,b) #define ID3DXConstantTable_SetDefaults(p,a) (p)->lpVtbl->SetDefaults(p,a) #define ID3DXConstantTable_SetValue(p,a,b,c,d) (p)->lpVtbl->SetValue(p,a,b,c,d) #define ID3DXConstantTable_SetBool(p,a,b,c) (p)->lpVtbl->SetBool(p,a,b,c) #define ID3DXConstantTable_SetBoolArray(p,a,b,c,d) (p)->lpVtbl->SetBoolArray(p,a,b,c,d) #define ID3DXConstantTable_SetInt(p,a,b,c) (p)->lpVtbl->SetInt(p,a,b,c) #define ID3DXConstantTable_SetIntArray(p,a,b,c,d) (p)->lpVtbl->SetIntArray(p,a,b,c,d) #define ID3DXConstantTable_SetFloat(p,a,b,c) (p)->lpVtbl->SetFloat(p,a,b,c) #define ID3DXConstantTable_SetFloatArray(p,a,b,c,d) (p)->lpVtbl->SetFloatArray(p,a,b,c,d) #define ID3DXConstantTable_SetVector(p,a,b,c) (p)->lpVtbl->SetVector(p,a,b,c) #define ID3DXConstantTable_SetVectorArray(p,a,b,c,d) (p)->lpVtbl->SetVectorArray(p,a,b,c,d) #define ID3DXConstantTable_SetMatrix(p,a,b,c) (p)->lpVtbl->SetMatrix(p,a,b,c) #define ID3DXConstantTable_SetMatrixArray(p,a,b,c,d) (p)->lpVtbl->SetMatrixArray(p,a,b,c,d) #define ID3DXConstantTable_SetMatrixPointerArray(p,a,b,c,d) (p)->lpVtbl->SetMatrixPointerArray(p,a,b,c,d) #define ID3DXConstantTable_SetMatrixTranspose(p,a,b,c) (p)->lpVtbl->SetMatrixTranspose(p,a,b,c) #define ID3DXConstantTable_SetMatrixTransposeArray(p,a,b,c,d) (p)->lpVtbl->SetMatrixTransposeArray(p,a,b,c,d) #define ID3DXConstantTable_SetMatrixTransposePointerArray(p,a,b,c,d) (p)->lpVtbl->SetMatrixTransposePointerArray(p,a,b,c,d) #else /*** IUnknown methods ***/ #define ID3DXConstantTable_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define ID3DXConstantTable_AddRef(p) (p)->AddRef() #define ID3DXConstantTable_Release(p) (p)->Release() /*** ID3DXBuffer methods ***/ #define ID3DXConstantTable_GetBufferPointer(p) (p)->GetBufferPointer() #define ID3DXConstantTable_GetBufferSize(p) (p)->GetBufferSize() /*** ID3DXConstantTable methods ***/ #define ID3DXConstantTable_GetDesc(p,a) (p)->GetDesc(a) #define ID3DXConstantTable_GetConstantDesc(p,a,b,c) (p)->GetConstantDesc(a,b,c) #define ID3DXConstantTable_GetSamplerIndex(p,a) (p)->GetConstantDesc(a) #define ID3DXConstantTable_GetConstant(p,a,b) (p)->GetConstant(a,b) #define ID3DXConstantTable_GetConstantByName(p,a,b) (p)->GetConstantByName(a,b) #define ID3DXConstantTable_GetConstantElement(p,a,b) (p)->GetConstantElement(a,b) #define ID3DXConstantTable_SetDefaults(p,a) (p)->SetDefaults(a) #define ID3DXConstantTable_SetValue(p,a,b,c,d) (p)->SetValue(a,b,c,d) #define ID3DXConstantTable_SetBool(p,a,b,c) (p)->SetBool(a,b,c) #define ID3DXConstantTable_SetBoolArray(p,a,b,c,d) (p)->SetBoolArray(a,b,c,d) #define ID3DXConstantTable_SetInt(p,a,b,c) (p)->SetInt(a,b,c) #define ID3DXConstantTable_SetIntArray(p,a,b,c,d) (p)->SetIntArray(a,b,c,d) #define ID3DXConstantTable_SetFloat(p,a,b,c) (p)->SetFloat(a,b,c) #define ID3DXConstantTable_SetFloatArray(p,a,b,c,d) (p)->SetFloatArray(a,b,c,d) #define ID3DXConstantTable_SetVector(p,a,b,c) (p)->SetVector(a,b,c) #define ID3DXConstantTable_SetVectorArray(p,a,b,c,d) (p)->SetVectorArray(a,b,c,d) #define ID3DXConstantTable_SetMatrix(p,a,b,c) (p)->SetMatrix(a,b,c) #define ID3DXConstantTable_SetMatrixArray(p,a,b,c,d) (p)->SetMatrixArray(a,b,c,d) #define ID3DXConstantTable_SetMatrixPointerArray(p,a,b,c,d) (p)->SetMatrixPointerArray(a,b,c,d) #define ID3DXConstantTable_SetMatrixTranspose(p,a,b,c) (p)->SetMatrixTranspose(a,b,c) #define ID3DXConstantTable_SetMatrixTransposeArray(p,a,b,c,d) (p)->SetMatrixTransposeArray(a,b,c,d) #define ID3DXConstantTable_SetMatrixTransposePointerArray(p,a,b,c,d) (p)->SetMatrixTransposePointerArray(a,b,c,d) #endif typedef struct ID3DXConstantTable *LPD3DXCONSTANTTABLE; typedef interface ID3DXTextureShader *LPD3DXTEXTURESHADER; DEFINE_GUID(IID_ID3DXTextureShader, 0x3e3d67f8, 0xaa7a, 0x405d, 0xa8, 0x57, 0xba, 0x1, 0xd4, 0x75, 0x84, 0x26); #define INTERFACE ID3DXTextureShader DECLARE_INTERFACE_(ID3DXTextureShader, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppv) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; STDMETHOD(GetFunction)(THIS_ struct ID3DXBuffer **ppFunction) PURE; STDMETHOD(GetConstantBuffer)(THIS_ struct ID3DXBuffer **ppConstantBuffer) PURE; STDMETHOD(GetDesc)(THIS_ D3DXCONSTANTTABLE_DESC *pDesc) PURE; STDMETHOD(GetConstantDesc)(THIS_ D3DXHANDLE hConstant, D3DXCONSTANT_DESC *pConstantDesc, UINT *pCount) PURE; STDMETHOD_(D3DXHANDLE, GetConstant)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE; STDMETHOD_(D3DXHANDLE, GetConstantByName)(THIS_ D3DXHANDLE hConstant, const char *pName) PURE; STDMETHOD_(D3DXHANDLE, GetConstantElement)(THIS_ D3DXHANDLE hConstant, UINT Index) PURE; STDMETHOD(SetDefaults)(THIS) PURE; STDMETHOD(SetValue)(THIS_ D3DXHANDLE hConstant, const void *pData, UINT Bytes) PURE; STDMETHOD(SetBool)(THIS_ D3DXHANDLE hConstant, WINBOOL b) PURE; STDMETHOD(SetBoolArray)(THIS_ D3DXHANDLE hConstant, const WINBOOL *pb, UINT Count) PURE; STDMETHOD(SetInt)(THIS_ D3DXHANDLE hConstant, INT n) PURE; STDMETHOD(SetIntArray)(THIS_ D3DXHANDLE hConstant, const INT *pn, UINT Count) PURE; STDMETHOD(SetFloat)(THIS_ D3DXHANDLE hConstant, FLOAT f) PURE; STDMETHOD(SetFloatArray)(THIS_ D3DXHANDLE hConstant, const FLOAT *pf, UINT Count) PURE; STDMETHOD(SetVector)(THIS_ D3DXHANDLE hConstant, const D3DXVECTOR4 *pVector) PURE; STDMETHOD(SetVectorArray)(THIS_ D3DXHANDLE hConstant, const D3DXVECTOR4 *pVector, UINT Count) PURE; STDMETHOD(SetMatrix)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX *pMatrix) PURE; STDMETHOD(SetMatrixArray)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX *pMatrix, UINT Count) PURE; STDMETHOD(SetMatrixPointerArray)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX **ppMatrix, UINT Count) PURE; STDMETHOD(SetMatrixTranspose)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX *pMatrix) PURE; STDMETHOD(SetMatrixTransposeArray)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX *pMatrix, UINT Count) PURE; STDMETHOD(SetMatrixTransposePointerArray)(THIS_ D3DXHANDLE hConstant, const D3DXMATRIX **ppMatrix, UINT Count) PURE; }; #undef INTERFACE typedef struct _D3DXMACRO { const char *Name; const char *Definition; } D3DXMACRO, *LPD3DXMACRO; typedef struct _D3DXSEMANTIC { UINT Usage; UINT UsageIndex; } D3DXSEMANTIC, *LPD3DXSEMANTIC; typedef enum _D3DXINCLUDE_TYPE { D3DXINC_LOCAL, D3DXINC_SYSTEM, D3DXINC_FORCE_DWORD = 0x7fffffff, } D3DXINCLUDE_TYPE, *LPD3DXINCLUDE_TYPE; #define INTERFACE ID3DXInclude DECLARE_INTERFACE(ID3DXInclude) { STDMETHOD(Open)(THIS_ D3DXINCLUDE_TYPE include_type, const char *filename, const void *parent_data, const void **data, UINT *bytes) PURE; STDMETHOD(Close)(THIS_ const void *data) PURE; }; #undef INTERFACE #define ID3DXInclude_Open(p,a,b,c,d,e) (p)->lpVtbl->Open(p,a,b,c,d,e) #define ID3DXInclude_Close(p,a) (p)->lpVtbl->Close(p,a) typedef struct ID3DXInclude *LPD3DXINCLUDE; typedef struct _D3DXFRAGMENT_DESC { const char *Name; DWORD Target; } D3DXFRAGMENT_DESC, *LPD3DXFRAGMENT_DESC; DEFINE_GUID(IID_ID3DXFragmentLinker, 0x1a2c0cc2, 0xe5b6, 0x4ebc, 0x9e, 0x8d, 0x39, 0xe, 0x5, 0x78, 0x11, 0xb6); #define INTERFACE ID3DXFragmentLinker DECLARE_INTERFACE_(ID3DXFragmentLinker, IUnknown) { STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **ppv) PURE; STDMETHOD_(ULONG, AddRef)(THIS) PURE; STDMETHOD_(ULONG, Release)(THIS) PURE; STDMETHOD(GetDevice)(THIS_ struct IDirect3DDevice9 **device) PURE; STDMETHOD_(UINT, GetNumberOfFragments)(THIS) PURE; STDMETHOD_(D3DXHANDLE, GetFragmentHandleByIndex)(THIS_ UINT index) PURE; STDMETHOD_(D3DXHANDLE, GetFragmentHandleByName)(THIS_ const char *name) PURE; STDMETHOD(GetFragmentDesc)(THIS_ D3DXHANDLE name, D3DXFRAGMENT_DESC *frag_desc) PURE; STDMETHOD(AddFragments)(THIS_ const DWORD *fragments) PURE; STDMETHOD(GetAllFragments)(THIS_ ID3DXBuffer **buffer) PURE; STDMETHOD(GetFragment)(THIS_ D3DXHANDLE name, ID3DXBuffer **buffer) PURE; STDMETHOD(LinkShader)(THIS_ const char *profile, DWORD flags, const D3DXHANDLE *fragmenthandles, UINT fragments, ID3DXBuffer **buffer, ID3DXBuffer **errors) PURE; STDMETHOD(LinkVertexShader)(THIS_ const char *profile, DWORD flags, const D3DXHANDLE *fragment_handles, UINT fragments, IDirect3DVertexShader9 **shader, ID3DXBuffer **errors) PURE; STDMETHOD(LinkPixelShader)(THIS_ const char *profile, DWORD flags, const D3DXHANDLE *fragment_handles, UINT fragments, IDirect3DPixelShader9 **shader, ID3DXBuffer **errors) PURE; STDMETHOD(ClearCache)(THIS) PURE; }; #undef INTERFACE #ifdef __cplusplus extern "C" { #endif const char * WINAPI D3DXGetPixelShaderProfile(struct IDirect3DDevice9 *device); UINT WINAPI D3DXGetShaderSize(const DWORD *byte_code); DWORD WINAPI D3DXGetShaderVersion(const DWORD *byte_code); const char * WINAPI D3DXGetVertexShaderProfile(struct IDirect3DDevice9 *device); HRESULT WINAPI D3DXFindShaderComment(const DWORD *byte_code, DWORD fourcc, const void **data, UINT *size); HRESULT WINAPI D3DXGetShaderSamplers(const DWORD *byte_code, const char **samplers, UINT *count); HRESULT WINAPI D3DXAssembleShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXAssembleShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages); #define D3DXAssembleShaderFromFile __MINGW_NAME_AW(D3DXAssembleShaderFromFile) HRESULT WINAPI D3DXAssembleShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXAssembleShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages); #define D3DXAssembleShaderFromResource __MINGW_NAME_AW(D3DXAssembleShaderFromResource) HRESULT WINAPI D3DXAssembleShader(const char *data, UINT data_len, const D3DXMACRO *defines, ID3DXInclude *include, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXCompileShader(const char *src_data, UINT data_len, const D3DXMACRO *defines, ID3DXInclude *include, const char *function_name, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table); HRESULT WINAPI D3DXDisassembleShader(const DWORD *pShader, WINBOOL EnableColorCode, const char *pComments, struct ID3DXBuffer **ppDisassembly); HRESULT WINAPI D3DXCompileShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table); HRESULT WINAPI D3DXCompileShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table); #define D3DXCompileShaderFromFile __MINGW_NAME_AW(D3DXCompileShaderFromFile) HRESULT WINAPI D3DXCompileShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table); HRESULT WINAPI D3DXCompileShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, const char *entrypoint, const char *profile, DWORD flags, ID3DXBuffer **shader, ID3DXBuffer **error_messages, ID3DXConstantTable **constant_table); #define D3DXCompileShaderFromResource __MINGW_NAME_AW(D3DXCompileShaderFromResource) HRESULT WINAPI D3DXPreprocessShader(const char *data, UINT data_len, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXPreprocessShaderFromFileA(const char *filename, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXPreprocessShaderFromFileW(const WCHAR *filename, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages); #define D3DXPreprocessShaderFromFile __MINGW_NAME_AW(D3DXPreprocessShaderFromFile) HRESULT WINAPI D3DXPreprocessShaderFromResourceA(HMODULE module, const char *resource, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages); HRESULT WINAPI D3DXPreprocessShaderFromResourceW(HMODULE module, const WCHAR *resource, const D3DXMACRO *defines, ID3DXInclude *include, ID3DXBuffer **shader, ID3DXBuffer **error_messages); #define D3DXPreprocessShaderFromResource __MINGW_NAME_AW(D3DXPreprocessShaderFromResource) HRESULT WINAPI D3DXGetShaderConstantTableEx(const DWORD *byte_code, DWORD flags, ID3DXConstantTable **constant_table); HRESULT WINAPI D3DXGetShaderConstantTable(const DWORD *byte_code, ID3DXConstantTable **constant_table); HRESULT WINAPI D3DXGetShaderInputSemantics(const DWORD *pFunction, D3DXSEMANTIC *pSemantics, UINT *pCount); HRESULT WINAPI D3DXGetShaderOutputSemantics(const DWORD *pFunction, D3DXSEMANTIC *pSemantics, UINT *pCount); HRESULT WINAPI D3DXCreateTextureShader(const DWORD *pFunction, ID3DXTextureShader **ppTextureShader); HRESULT WINAPI D3DXCreateFragmentLinker(IDirect3DDevice9 *device, UINT size, ID3DXFragmentLinker **linker); HRESULT WINAPI D3DXCreateFragmentLinkerEx(IDirect3DDevice9 *device, UINT size, DWORD flags, ID3DXFragmentLinker **linker); #ifdef __cplusplus } #endif typedef struct _D3DXSHADER_CONSTANTTABLE { DWORD Size; DWORD Creator; DWORD Version; DWORD Constants; DWORD ConstantInfo; DWORD Flags; DWORD Target; } D3DXSHADER_CONSTANTTABLE, *LPD3DXSHADER_CONSTANTTABLE; typedef struct _D3DXSHADER_CONSTANTINFO { DWORD Name; WORD RegisterSet; WORD RegisterIndex; WORD RegisterCount; WORD Reserved; DWORD TypeInfo; DWORD DefaultValue; } D3DXSHADER_CONSTANTINFO, *LPD3DXSHADER_CONSTANTINFO; typedef struct _D3DXSHADER_TYPEINFO { WORD Class; WORD Type; WORD Rows; WORD Columns; WORD Elements; WORD StructMembers; DWORD StructMemberInfo; } D3DXSHADER_TYPEINFO, *LPD3DXSHADER_TYPEINFO; typedef struct _D3DXSHADER_STRUCTMEMBERINFO { DWORD Name; DWORD TypeInfo; } D3DXSHADER_STRUCTMEMBERINFO, *LPD3DXSHADER_STRUCTMEMBERINFO; #endif /* __D3DX9SHADER_H__ */ dxvk-0~git20220822.9df86f2/d3dx9shape.h000066400000000000000000000046751430055512200171400ustar00rootroot00000000000000#include <_mingw_unicode.h> /* * Copyright 2010 Christian Costa * * 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 */ #include "d3dx9.h" #ifndef __D3DX9SHAPE_H__ #define __D3DX9SHAPE_H__ #ifdef __cplusplus extern "C" { #endif HRESULT WINAPI D3DXCreateBox(struct IDirect3DDevice9 *device, float width, float height, float depth, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency); HRESULT WINAPI D3DXCreateCylinder(struct IDirect3DDevice9 *device, float radius1, float radius2, float length, UINT slices, UINT stacks, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency); HRESULT WINAPI D3DXCreatePolygon(struct IDirect3DDevice9 *device, float length, UINT sides, struct ID3DXMesh **mesh, ID3DXBuffer **adjacency); HRESULT WINAPI D3DXCreateSphere(struct IDirect3DDevice9 *device, float radius, UINT slices, UINT stacks, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency); HRESULT WINAPI D3DXCreateTeapot(struct IDirect3DDevice9 *device, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency); HRESULT WINAPI D3DXCreateTextA(struct IDirect3DDevice9 *device, HDC hdc, const char *text, float deviation, float extrusion, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency, GLYPHMETRICSFLOAT *glyphmetrics); HRESULT WINAPI D3DXCreateTextW(struct IDirect3DDevice9 *device, HDC hdc, const WCHAR *text, float deviation, FLOAT extrusion, struct ID3DXMesh **mesh, struct ID3DXBuffer **adjacency, GLYPHMETRICSFLOAT *glyphmetrics); HRESULT WINAPI D3DXCreateTorus(struct IDirect3DDevice9 *device, float innerradius, float outerradius, UINT sides, UINT rings, struct ID3DXMesh **mesh, ID3DXBuffer **adjacency); #define D3DXCreateText __MINGW_NAME_AW(D3DXCreateText) #ifdef __cplusplus } #endif #endif /* __D3DX9SHAPE_H__ */ dxvk-0~git20220822.9df86f2/d3dx9tex.h000066400000000000000000000521371430055512200166340ustar00rootroot00000000000000#include <_mingw_unicode.h> /* * Copyright (C) 2008 Tony Wasserka * * 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 */ #include "d3dx9.h" #ifndef __WINE_D3DX9TEX_H #define __WINE_D3DX9TEX_H /********************************************** ***************** Definitions **************** **********************************************/ #define D3DX_FILTER_NONE 0x00000001 #define D3DX_FILTER_POINT 0x00000002 #define D3DX_FILTER_LINEAR 0x00000003 #define D3DX_FILTER_TRIANGLE 0x00000004 #define D3DX_FILTER_BOX 0x00000005 #define D3DX_FILTER_MIRROR_U 0x00010000 #define D3DX_FILTER_MIRROR_V 0x00020000 #define D3DX_FILTER_MIRROR_W 0x00040000 #define D3DX_FILTER_MIRROR 0x00070000 #define D3DX_FILTER_DITHER 0x00080000 #define D3DX_FILTER_DITHER_DIFFUSION 0x00100000 #define D3DX_FILTER_SRGB_IN 0x00200000 #define D3DX_FILTER_SRGB_OUT 0x00400000 #define D3DX_FILTER_SRGB 0x00600000 #define D3DX_SKIP_DDS_MIP_LEVELS_MASK 0x1f #define D3DX_SKIP_DDS_MIP_LEVELS_SHIFT 26 #define D3DX_SKIP_DDS_MIP_LEVELS(l, f) ((((l) & D3DX_SKIP_DDS_MIP_LEVELS_MASK) \ << D3DX_SKIP_DDS_MIP_LEVELS_SHIFT) | ((f) == D3DX_DEFAULT ? D3DX_FILTER_BOX : (f))) #define D3DX_NORMALMAP_MIRROR_U 0x00010000 #define D3DX_NORMALMAP_MIRROR_V 0x00020000 #define D3DX_NORMALMAP_MIRROR 0x00030000 #define D3DX_NORMALMAP_INVERTSIGN 0x00080000 #define D3DX_NORMALMAP_COMPUTE_OCCLUSION 0x00100000 #define D3DX_CHANNEL_RED 0x00000001 #define D3DX_CHANNEL_BLUE 0x00000002 #define D3DX_CHANNEL_GREEN 0x00000004 #define D3DX_CHANNEL_ALPHA 0x00000008 #define D3DX_CHANNEL_LUMINANCE 0x00000010 /********************************************** ****************** Typedefs ****************** **********************************************/ typedef enum _D3DXIMAGE_FILEFORMAT { D3DXIFF_BMP, D3DXIFF_JPG, D3DXIFF_TGA, D3DXIFF_PNG, D3DXIFF_DDS, D3DXIFF_PPM, D3DXIFF_DIB, D3DXIFF_HDR, D3DXIFF_PFM, D3DXIFF_FORCE_DWORD = 0x7fffffff } D3DXIMAGE_FILEFORMAT; typedef struct _D3DXIMAGE_INFO { UINT Width; UINT Height; UINT Depth; UINT MipLevels; D3DFORMAT Format; D3DRESOURCETYPE ResourceType; D3DXIMAGE_FILEFORMAT ImageFileFormat; } D3DXIMAGE_INFO; /********************************************** ****************** Functions ***************** **********************************************/ /* Typedefs for callback functions */ typedef void (WINAPI *LPD3DXFILL2D)(D3DXVECTOR4 *out, const D3DXVECTOR2 *texcoord, const D3DXVECTOR2 *texelsize, void *data); typedef void (WINAPI *LPD3DXFILL3D)(D3DXVECTOR4 *out, const D3DXVECTOR3 *texcoord, const D3DXVECTOR3 *texelsize, void *data); #ifdef __cplusplus extern "C" { #endif /* Image Information */ HRESULT WINAPI D3DXGetImageInfoFromFileA(const char *file, D3DXIMAGE_INFO *info); HRESULT WINAPI D3DXGetImageInfoFromFileW(const WCHAR *file, D3DXIMAGE_INFO *info); #define D3DXGetImageInfoFromFile __MINGW_NAME_AW(D3DXGetImageInfoFromFile) HRESULT WINAPI D3DXGetImageInfoFromResourceA(HMODULE module, const char *resource, D3DXIMAGE_INFO *info); HRESULT WINAPI D3DXGetImageInfoFromResourceW(HMODULE module, const WCHAR *resource, D3DXIMAGE_INFO *info); #define D3DXGetImageInfoFromResource __MINGW_NAME_AW(D3DXGetImageInfoFromResource) HRESULT WINAPI D3DXGetImageInfoFromFileInMemory(const void *data, UINT data_size, D3DXIMAGE_INFO *info); /* Surface Loading/Saving */ HRESULT WINAPI D3DXLoadSurfaceFromFileA(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, const char *srcfile, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadSurfaceFromFileW(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, const WCHAR *srcfile, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); #define D3DXLoadSurfaceFromFile __MINGW_NAME_AW(D3DXLoadSurfaceFromFile) HRESULT WINAPI D3DXLoadSurfaceFromResourceA(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, HMODULE srcmodule, const char *resource, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadSurfaceFromResourceW(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, HMODULE srcmodule, const WCHAR *resource, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); #define D3DXLoadSurfaceFromResource __MINGW_NAME_AW(D3DXLoadSurfaceFromResource) HRESULT WINAPI D3DXLoadSurfaceFromFileInMemory(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, const void *srcdata, UINT srcdatasize, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadSurfaceFromSurface(struct IDirect3DSurface9 *destsurface, const PALETTEENTRY *destpalette, const RECT *destrect, struct IDirect3DSurface9 *srcsurface, const PALETTEENTRY *srcpalette, const RECT *srcrect, DWORD filter, D3DCOLOR colorkey); HRESULT WINAPI D3DXLoadSurfaceFromMemory(IDirect3DSurface9 *dst_surface, const PALETTEENTRY *dst_palette, const RECT *dst_rect, const void *src_memory, D3DFORMAT src_format, UINT src_pitch, const PALETTEENTRY *src_palette, const RECT *src_rect, DWORD filter, D3DCOLOR color_key); HRESULT WINAPI D3DXSaveSurfaceToFileInMemory(struct ID3DXBuffer **destbuffer, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DSurface9 *srcsurface, const PALETTEENTRY *srcpalette, const RECT *srcrect); HRESULT WINAPI D3DXSaveSurfaceToFileA(const char *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DSurface9 *srcsurface, const PALETTEENTRY *srcpalette, const RECT *srcrect); HRESULT WINAPI D3DXSaveSurfaceToFileW(const WCHAR *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DSurface9 *srcsurface, const PALETTEENTRY *srcpalette, const RECT *srcrect); #define D3DXSaveSurfaceToFile __MINGW_NAME_AW(D3DXSaveSurfaceToFile) /* Volume Loading/Saving */ HRESULT WINAPI D3DXLoadVolumeFromFileA(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, const char *srcfile, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadVolumeFromFileW( struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, const WCHAR *srcfile, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); #define D3DXLoadVolumeFromFile __MINGW_NAME_AW(D3DXLoadVolumeFromFile) HRESULT WINAPI D3DXLoadVolumeFromResourceA(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, HMODULE srcmodule, const char *resource, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadVolumeFromResourceW(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, HMODULE srcmodule, const WCHAR *resource, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); #define D3DXLoadVolumeFromResource __MINGW_NAME_AW(D3DXLoadVolumeFromResource) HRESULT WINAPI D3DXLoadVolumeFromFileInMemory(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, const void *srcdata, UINT srcdatasize, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo); HRESULT WINAPI D3DXLoadVolumeFromVolume(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, struct IDirect3DVolume9 *srcvolume, const PALETTEENTRY *srcpalette, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey); HRESULT WINAPI D3DXLoadVolumeFromMemory(struct IDirect3DVolume9 *destvolume, const PALETTEENTRY *destpalette, const D3DBOX *destbox, const void *srcmemory, D3DFORMAT srcformat, UINT srcrowpitch, UINT srcslicepitch, const PALETTEENTRY *srcpalette, const D3DBOX *srcbox, DWORD filter, D3DCOLOR colorkey); HRESULT WINAPI D3DXSaveVolumeToFileA(const char *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DVolume9 *srcvolume, const PALETTEENTRY *srcpalette, const D3DBOX *srcbox); HRESULT WINAPI D3DXSaveVolumeToFileW(const WCHAR *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DVolume9 *srcvolume, const PALETTEENTRY *srcpalette, const D3DBOX *srcbox); #define D3DXSaveVolumeToFile __MINGW_NAME_AW(D3DXSaveVolumeToFile) /* Texture, cube texture and volume texture creation */ HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UINT *width, UINT *height, UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool); HRESULT WINAPI D3DXCheckCubeTextureRequirements(struct IDirect3DDevice9 *device, UINT *size, UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool); HRESULT WINAPI D3DXCheckVolumeTextureRequirements(struct IDirect3DDevice9 *device, UINT *width, UINT *height, UINT *depth, UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool); HRESULT WINAPI D3DXCreateTexture(struct IDirect3DDevice9 *device, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateCubeTexture(struct IDirect3DDevice9 *device, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateVolumeTexture(struct IDirect3DDevice9 *device, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateTextureFromFileA(struct IDirect3DDevice9 *device, const char *srcfile, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateTextureFromFileW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, struct IDirect3DTexture9 **texture); #define D3DXCreateTextureFromFile __MINGW_NAME_AW(D3DXCreateTextureFromFile) HRESULT WINAPI D3DXCreateCubeTextureFromFileA(struct IDirect3DDevice9 *device, const char *srcfile, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateCubeTextureFromFileW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, struct IDirect3DCubeTexture9 **cube); #define D3DXCreateCubeTextureFromFile __MINGW_NAME_AW(D3DXCreateCubeTextureFromFile) HRESULT WINAPI D3DXCreateVolumeTextureFromFileA(struct IDirect3DDevice9 *device, const char *srcfile, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateVolumeTextureFromFileW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, struct IDirect3DVolumeTexture9 **volume); #define D3DXCreateVolumeTextureFromFile __MINGW_NAME_AW(D3DXCreateVolumeTextureFromFile) HRESULT WINAPI D3DXCreateTextureFromResourceA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateTextureFromResourceW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, struct IDirect3DTexture9 **texture); #define D3DXCreateTextureFromResource __MINGW_NAME_AW(D3DXCreateTextureFromResource) HRESULT WINAPI D3DXCreateCubeTextureFromResourceA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateCubeTextureFromResourceW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, struct IDirect3DCubeTexture9 **cube); #define D3DXCreateCubeTextureFromResource __MINGW_NAME_AW(D3DXCreateCubeTextureFromResource) HRESULT WINAPI D3DXCreateVolumeTextureFromResourceA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateVolumeTextureFromResourceW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, struct IDirect3DVolumeTexture9 **volume); #define D3DXCreateVolumeTextureFromResource __MINGW_NAME_AW(D3DXCreateVolumeTextureFromResource) HRESULT WINAPI D3DXCreateTextureFromFileExA(struct IDirect3DDevice9 *device, const char *srcfile, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateTextureFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture); #define D3DXCreateTextureFromFileEx __MINGW_NAME_AW(D3DXCreateTextureFromFileEx) HRESULT WINAPI D3DXCreateCubeTextureFromFileExA(struct IDirect3DDevice9 *device, const char *srcfile, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateCubeTextureFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DCubeTexture9 **cube); #define D3DXCreateCubeTextureFromFileEx __MINGW_NAME_AW(D3DXCreateCubeTextureFromFileEx) HRESULT WINAPI D3DXCreateVolumeTextureFromFileExA(struct IDirect3DDevice9 *device, const char *srcfile, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateVolumeTextureFromFileExW(struct IDirect3DDevice9 *device, const WCHAR *srcfile, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DVolumeTexture9 **volume); #define D3DXCreateVolumeTextureFromFileEx __MINGW_NAME_AW(D3DXCreateVolumeTextureFromFileEx) HRESULT WINAPI D3DXCreateTextureFromResourceExA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateTextureFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture); #define D3DXCreateTextureFromResourceEx __MINGW_NAME_AW(D3DXCreateTextureFromResourceEx) HRESULT WINAPI D3DXCreateCubeTextureFromResourceExA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateCubeTextureFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DCubeTexture9 **cube); #define D3DXCreateCubeTextureFromResourceEx __MINGW_NAME_AW(D3DXCreateCubeTextureFromResourceEx) HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExA(struct IDirect3DDevice9 *device, HMODULE srcmodule, const char *resource, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateVolumeTextureFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule, const WCHAR *resource, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DVolumeTexture9 **volume); #define D3DXCreateVolumeTextureFromResourceEx __MINGW_NAME_AW(D3DXCreateVolumeTextureFromResourceEx) HRESULT WINAPI D3DXCreateTextureFromFileInMemory(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemory(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemory(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXCreateTextureFromFileInMemoryEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, UINT width, UINT height, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture); HRESULT WINAPI D3DXCreateCubeTextureFromFileInMemoryEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, UINT size, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DCubeTexture9 **cube); HRESULT WINAPI D3DXCreateVolumeTextureFromFileInMemoryEx(struct IDirect3DDevice9 *device, const void *srcdata, UINT srcdatasize, UINT width, UINT height, UINT depth, UINT miplevels, DWORD usage, D3DFORMAT format, D3DPOOL pool, DWORD filter, DWORD mipfilter, D3DCOLOR colorkey, D3DXIMAGE_INFO *srcinfo, PALETTEENTRY *palette, struct IDirect3DVolumeTexture9 **volume); HRESULT WINAPI D3DXSaveTextureToFileInMemory(struct ID3DXBuffer **destbuffer, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DBaseTexture9 *srctexture, const PALETTEENTRY *srcpalette); HRESULT WINAPI D3DXSaveTextureToFileA(const char *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DBaseTexture9 *srctexture, const PALETTEENTRY *srcpalette); HRESULT WINAPI D3DXSaveTextureToFileW(const WCHAR *destfile, D3DXIMAGE_FILEFORMAT destformat, struct IDirect3DBaseTexture9 *srctexture, const PALETTEENTRY *srcpalette); #define D3DXSaveTextureToFile __MINGW_NAME_AW(D3DXSaveTextureToFile) /* Other functions */ HRESULT WINAPI D3DXFilterTexture(struct IDirect3DBaseTexture9 *texture, const PALETTEENTRY *palette, UINT srclevel, DWORD filter); #define D3DXFilterCubeTexture D3DXFilterTexture #define D3DXFilterVolumeTexture D3DXFilterTexture HRESULT WINAPI D3DXFillTexture(struct IDirect3DTexture9 *texture, LPD3DXFILL2D function, void *data); HRESULT WINAPI D3DXFillCubeTexture(struct IDirect3DCubeTexture9 *cube, LPD3DXFILL3D function, void *data); HRESULT WINAPI D3DXFillVolumeTexture(struct IDirect3DVolumeTexture9 *volume, LPD3DXFILL3D function, void *data); HRESULT WINAPI D3DXFillTextureTX(struct IDirect3DTexture9 *texture, ID3DXTextureShader *texture_shader); HRESULT WINAPI D3DXFillCubeTextureTX(struct IDirect3DCubeTexture9 *cube, ID3DXTextureShader *texture_shader); HRESULT WINAPI D3DXFillVolumeTextureTX(struct IDirect3DVolumeTexture9 *volume, ID3DXTextureShader *texture_shader); HRESULT WINAPI D3DXComputeNormalMap(IDirect3DTexture9 *texture, IDirect3DTexture9 *srctexture, const PALETTEENTRY *srcpalette, DWORD flags, DWORD channel, float amplitude); #ifdef __cplusplus } #endif #endif /* __WINE_D3DX9TEX_H */ dxvk-0~git20220822.9df86f2/d3dx9xof.h000066400000000000000000000172071430055512200166270ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2011 Dylan Smith * * 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 */ #ifndef __WINE_D3DX9XOF_H #define __WINE_D3DX9XOF_H #include "d3dx9.h" #ifdef __cplusplus extern "C" { #endif typedef DWORD D3DXF_FILEFORMAT; #define D3DXF_FILEFORMAT_BINARY 0 #define D3DXF_FILEFORMAT_TEXT 1 #define D3DXF_FILEFORMAT_COMPRESSED 2 typedef DWORD D3DXF_FILESAVEOPTIONS; #define D3DXF_FILESAVE_TOFILE 0x00 #define D3DXF_FILESAVE_TOWFILE 0x01 typedef DWORD D3DXF_FILELOADOPTIONS; #define D3DXF_FILELOAD_FROMFILE 0x00 #define D3DXF_FILELOAD_FROMWFILE 0x01 #define D3DXF_FILELOAD_FROMRESOURCE 0x02 #define D3DXF_FILELOAD_FROMMEMORY 0x03 typedef struct _D3DXF_FILELOADRESOURCE { HMODULE hModule; const char *lpName; const char *lpType; } D3DXF_FILELOADRESOURCE; typedef struct _D3DXF_FILELOADMEMORY { const void *lpMemory; SIZE_T dSize; } D3DXF_FILELOADMEMORY; #ifndef _NO_COM DEFINE_GUID(IID_ID3DXFile, 0xcef08cf9, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01); DEFINE_GUID(IID_ID3DXFileSaveObject, 0xcef08cfa, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01); DEFINE_GUID(IID_ID3DXFileSaveData, 0xcef08cfb, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01); DEFINE_GUID(IID_ID3DXFileEnumObject, 0xcef08cfc, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01); DEFINE_GUID(IID_ID3DXFileData, 0xcef08cfd, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01); #endif /* _NO_COM */ typedef interface ID3DXFile *LPD3DXFILE, **LPLPD3DXFILE; typedef interface ID3DXFileSaveObject *LPD3DXFILESAVEOBJECT, **LPLPD3DXFILESAVEOBJECT; typedef interface ID3DXFileSaveData *LPD3DXFILESAVEDATA, **LPLPD3DXFILESAVEDATA; typedef interface ID3DXFileEnumObject *LPD3DXFILEENUMOBJECT, **LPLPD3DXFILEENUMOBJECT; typedef interface ID3DXFileData *LPD3DXFILEDATA, **LPLPD3DXFILEDATA; STDAPI D3DXFileCreate(struct ID3DXFile **file); #define INTERFACE ID3DXFile DECLARE_INTERFACE_IID_(ID3DXFile,IUnknown,"cef08cf9-7b4f-4429-9624-2a690a933201") { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** ID3DXFile methods ***/ STDMETHOD(CreateEnumObject)(THIS_ const void *src, D3DXF_FILELOADOPTIONS type, struct ID3DXFileEnumObject **enum_obj) PURE; STDMETHOD(CreateSaveObject)(THIS_ const void *data, D3DXF_FILESAVEOPTIONS flags, D3DXF_FILEFORMAT format, struct ID3DXFileSaveObject **save_obj) PURE; STDMETHOD(RegisterTemplates)(THIS_ const void *data, SIZE_T data_size) PURE; STDMETHOD(RegisterEnumTemplates)(THIS_ struct ID3DXFileEnumObject *enum_obj) PURE; }; #undef INTERFACE #define INTERFACE ID3DXFileSaveObject DECLARE_INTERFACE_IID_(ID3DXFileSaveObject,IUnknown,"cef08cfa-7b4f-4429-9624-2a690a933201") { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** ID3DXFileSaveObject methods ***/ STDMETHOD(GetFile)(THIS_ ID3DXFile **file) PURE; STDMETHOD(AddDataObject)(THIS_ REFGUID template_guid, const char *name, const GUID *guid, SIZE_T data_size, const void *data, struct ID3DXFileSaveData **obj) PURE; STDMETHOD(Save)(THIS) PURE; }; #undef INTERFACE #define INTERFACE ID3DXFileSaveData DECLARE_INTERFACE_IID_(ID3DXFileSaveData,IUnknown,"cef08cfb-7b4f-4429-9624-2a690a933201") { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** ID3DXFileSaveObject methods ***/ STDMETHOD(GetSave)(THIS_ ID3DXFileSaveObject **save_obj) PURE; STDMETHOD(GetName)(THIS_ char *name, SIZE_T *size) PURE; STDMETHOD(GetId)(THIS_ LPGUID) PURE; STDMETHOD(GetType)(THIS_ GUID*) PURE; STDMETHOD(AddDataObject)(THIS_ REFGUID template_guid, const char *name, const GUID *guid, SIZE_T data_size, const void *data, ID3DXFileSaveData **obj) PURE; STDMETHOD(AddDataReference)(THIS_ const char *name, const GUID *id) PURE; }; #undef INTERFACE #define INTERFACE ID3DXFileEnumObject DECLARE_INTERFACE_IID_(ID3DXFileEnumObject,IUnknown,"cef08cfc-7b4f-4429-9624-2a690a933201") { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** ID3DXFileEnumObject methods ***/ STDMETHOD(GetFile)(THIS_ ID3DXFile **file) PURE; STDMETHOD(GetChildren)(THIS_ SIZE_T*) PURE; STDMETHOD(GetChild)(THIS_ SIZE_T id, struct ID3DXFileData **child) PURE; STDMETHOD(GetDataObjectById)(THIS_ REFGUID guid, struct ID3DXFileData **obj) PURE; STDMETHOD(GetDataObjectByName)(THIS_ const char *name, struct ID3DXFileData **obj) PURE; }; #undef INTERFACE #define INTERFACE ID3DXFileData DECLARE_INTERFACE_IID_(ID3DXFileData,IUnknown,"cef08cfd-7b4f-4429-9624-2a690a933201") { /*** IUnknown methods ***/ STDMETHOD(QueryInterface)(THIS_ REFIID iid, void **out) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** ID3DXFileData methods ***/ STDMETHOD(GetEnum)(THIS_ ID3DXFileEnumObject **enum_obj) PURE; STDMETHOD(GetName)(THIS_ char *name, SIZE_T *size) PURE; STDMETHOD(GetId)(THIS_ LPGUID) PURE; STDMETHOD(Lock)(THIS_ SIZE_T *data_size, const void **data) PURE; STDMETHOD(Unlock)(THIS) PURE; STDMETHOD(GetType)(THIS_ GUID*) PURE; STDMETHOD_(WINBOOL,IsReference)(THIS) PURE; STDMETHOD(GetChildren)(THIS_ SIZE_T*) PURE; STDMETHOD(GetChild)(THIS_ SIZE_T id, ID3DXFileData **child) PURE; }; #undef INTERFACE /* D3DX File errors */ #define _FACD3DXF 0x876 #define D3DXFERR_BADOBJECT MAKE_HRESULT(1,_FACD3DXF,900) #define D3DXFERR_BADVALUE MAKE_HRESULT(1,_FACD3DXF,901) #define D3DXFERR_BADTYPE MAKE_HRESULT(1,_FACD3DXF,902) #define D3DXFERR_NOTFOUND MAKE_HRESULT(1,_FACD3DXF,903) #define D3DXFERR_NOTDONEYET MAKE_HRESULT(1,_FACD3DXF,904) #define D3DXFERR_FILENOTFOUND MAKE_HRESULT(1,_FACD3DXF,905) #define D3DXFERR_RESOURCENOTFOUND MAKE_HRESULT(1,_FACD3DXF,906) #define D3DXFERR_BADRESOURCE MAKE_HRESULT(1,_FACD3DXF,907) #define D3DXFERR_BADFILETYPE MAKE_HRESULT(1,_FACD3DXF,908) #define D3DXFERR_BADFILEVERSION MAKE_HRESULT(1,_FACD3DXF,909) #define D3DXFERR_BADFILEFLOATSIZE MAKE_HRESULT(1,_FACD3DXF,910) #define D3DXFERR_BADFILE MAKE_HRESULT(1,_FACD3DXF,911) #define D3DXFERR_PARSEERROR MAKE_HRESULT(1,_FACD3DXF,912) #define D3DXFERR_BADARRAYSIZE MAKE_HRESULT(1,_FACD3DXF,913) #define D3DXFERR_BADDATAREFERENCE MAKE_HRESULT(1,_FACD3DXF,914) #define D3DXFERR_NOMOREOBJECTS MAKE_HRESULT(1,_FACD3DXF,915) #define D3DXFERR_NOMOREDATA MAKE_HRESULT(1,_FACD3DXF,916) #define D3DXFERR_BADCACHEFILE MAKE_HRESULT(1,_FACD3DXF,917) #ifdef __cplusplus } #endif #endif /* __WINE_D3DX9XOF_H */ dxvk-0~git20220822.9df86f2/dxdiag.h000066400000000000000000000150531430055512200164140ustar00rootroot00000000000000#undef INTERFACE /* * Copyright (C) 2004 Raphael Junqueira * * 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 */ #ifndef __WINE_DXDIAG_H #define __WINE_DXDIAG_H #include #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ /***************************************************************************** * #defines and error codes */ #define DXDIAG_DX9_SDK_VERSION 111 #define _FACDXDIAG 0x007 #define MAKE_DXDIAGHRESULT( code ) MAKE_HRESULT( 1, _FACDXDIAG, code ) /* * DXDiag Errors */ #define DXDIAG_E_INSUFFICIENT_BUFFER MAKE_DXDIAGHRESULT(0x007A) /***************************************************************************** * DXDiag structures Typedefs */ typedef struct _DXDIAG_INIT_PARAMS { DWORD dwSize; DWORD dwDxDiagHeaderVersion; WINBOOL bAllowWHQLChecks; VOID* pReserved; } DXDIAG_INIT_PARAMS; /***************************************************************************** * Predeclare the interfaces */ /* CLSIDs */ DEFINE_GUID(CLSID_DxDiagProvider, 0xA65B8071, 0x3BFE, 0x4213, 0x9A, 0x5B, 0x49, 0x1D, 0xA4, 0x46, 0x1C, 0xA7); /* IIDs */ DEFINE_GUID(IID_IDxDiagProvider, 0x9C6B4CB0, 0x23F8, 0x49CC, 0xA3, 0xED, 0x45, 0xA5, 0x50, 0x00, 0xA6, 0xD2); DEFINE_GUID(IID_IDxDiagContainer, 0x7D0F462F, 0x4064, 0x4862, 0xBC, 0x7F, 0x93, 0x3E, 0x50, 0x58, 0xC1, 0x0F); /* typedef definitions */ typedef struct IDxDiagProvider *LPDXDIAGPROVIDER, *PDXDIAGPROVIDER; typedef struct IDxDiagContainer *LPDXDIAGCONTAINER, *PDXDIAGCONTAINER; /***************************************************************************** * IDxDiagContainer interface */ #ifdef WINE_NO_UNICODE_MACROS #undef GetProp #endif #define INTERFACE IDxDiagContainer DECLARE_INTERFACE_(IDxDiagContainer,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDxDiagContainer methods ***/ STDMETHOD(GetNumberOfChildContainers)(THIS_ DWORD* pdwCount) PURE; STDMETHOD(EnumChildContainerNames)(THIS_ DWORD dwIndex, LPWSTR pwszContainer, DWORD cchContainer) PURE; STDMETHOD(GetChildContainer)(THIS_ LPCWSTR pwszContainer, IDxDiagContainer** ppInstance) PURE; STDMETHOD(GetNumberOfProps)(THIS_ DWORD* pdwCount) PURE; STDMETHOD(EnumPropNames)(THIS_ DWORD dwIndex, LPWSTR pwszPropName, DWORD cchPropName) PURE; STDMETHOD(GetProp)(THIS_ LPCWSTR pwszPropName, VARIANT* pvarProp) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDxDiagContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDxDiagContainer_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDxDiagContainer_Release(p) (p)->lpVtbl->Release(p) /*** IDxDiagContainer methods ***/ #define IDxDiagContainer_GetNumberOfChildContainers(p,a) (p)->lpVtbl->GetNumberOfChildContainers(p,a) #define IDxDiagContainer_EnumChildContainerNames(p,a,b,c) (p)->lpVtbl->EnumChildContainerNames(p,a,b,c) #define IDxDiagContainer_GetChildContainer(p,a,b) (p)->lpVtbl->GetChildContainer(p,a,b) #define IDxDiagContainer_GetNumberOfProps(p,a) (p)->lpVtbl->GetNumberOfProps(p,a) #define IDxDiagContainer_EnumPropNames(p,a,b,c) (p)->lpVtbl->EnumPropNames(p,a,b,c) #define IDxDiagContainer_GetProp(p,a,b) (p)->lpVtbl->GetProp(p,a,b) #else /*** IUnknown methods ***/ #define IDxDiagContainer_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDxDiagContainer_AddRef(p) (p)->AddRef() #define IDxDiagContainer_Release(p) (p)->Release() /*** IDxDiagContainer methods ***/ #define IDxDiagContainer_GetNumberOfChildContainers(p,a) (p)->GetNumberOfChildContainers(a) #define IDxDiagContainer_EnumChildContainerNames(p,a,b,c) (p)->EnumChildContainerNames(a,b,c) #define IDxDiagContainer_GetChildContainer(p,a,b) (p)->GetChildContainer(a,b) #define IDxDiagContainer_GetNumberOfProps(p,a) (p)->GetNumberOfProps(a) #define IDxDiagContainer_EnumPropNames(p,a,b,c) (p)->EnumPropNames(a,b,c) #define IDxDiagContainer_GetProp(p,a,b) (p)->GetProp(a,b) #endif /***************************************************************************** * IDxDiagProvider interface */ #define INTERFACE IDxDiagProvider DECLARE_INTERFACE_(IDxDiagProvider,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDxDiagProvider methods ***/ STDMETHOD(Initialize)(THIS_ DXDIAG_INIT_PARAMS* pParams) PURE; STDMETHOD(GetRootContainer)(THIS_ IDxDiagContainer** ppInstance) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDxDiagProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDxDiagProvider_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDxDiagProvider_Release(p) (p)->lpVtbl->Release(p) /*** IDxDiagProvider methods ***/ #define IDxDiagProvider_Initialize(p,a) (p)->lpVtbl->Initialize(p,a) #define IDxDiagProvider_GetRootContainer(p,a) (p)->lpVtbl->GetRootContainer(p,a) #else /*** IUnknown methods ***/ #define IDxDiagProvider_QueryInterface(p,a,b) (p)->QueryInterface(a,b) #define IDxDiagProvider_AddRef(p) (p)->AddRef() #define IDxDiagProvider_Release(p) (p)->Release() /*** IDxDiagProvider methods ***/ #define IDxDiagProvider_Initialize(p,a) (p)->Initialize(a) #define IDxDiagProvider_GetRootContainer(p,a) (p)->GetRootContainer(a) #endif #ifdef __cplusplus } #endif #endif dxvk-0~git20220822.9df86f2/dxerr8.h000066400000000000000000000041211430055512200163620ustar00rootroot00000000000000#include <_mingw_unicode.h> /* * Copyright (C) 2004 Robert Reif * * 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 */ #ifndef __WINE_DXERR8_H #define __WINE_DXERR8_H #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ const char* WINAPI DXGetErrorString8A(HRESULT hr); const WCHAR* WINAPI DXGetErrorString8W(HRESULT hr); #define DXGetErrorString8 __MINGW_NAME_AW(DXGetErrorString8) const char* WINAPI DXGetErrorDescription8A(HRESULT hr); const WCHAR* WINAPI DXGetErrorDescription8W(HRESULT hr); #define DXGetErrorDescription8 __MINGW_NAME_AW(DXGetErrorDescription8) HRESULT WINAPI DXTraceA(const char* strFile, DWORD dwLine, HRESULT hr, const char* strMsg, WINBOOL bPopMsgBox); HRESULT WINAPI DXTraceW(const char* strFile, DWORD dwLine, HRESULT hr, const WCHAR* strMsg, WINBOOL bPopMsgBox); #define DXTrace __MINGW_NAME_AW(DXTrace) #if defined(DEBUG) || defined(_DEBUG) #define DXTRACE_MSG(str) DXTrace(__FILE__, (DWORD)__LINE__, 0, str, FALSE) #define DXTRACE_ERR(str,hr) DXTrace(__FILE__, (DWORD)__LINE__, hr, str, TRUE) #define DXTRACE_ERR_NOMSGBOX(str,hr) DXTrace(__FILE__, (DWORD)__LINE__, hr, str, FALSE) #else #define DXTRACE_MSG(str) __MSABI_LONG(0) #define DXTRACE_ERR(str,hr) (hr) #define DXTRACE_ERR_NOMSGBOX(str,hr) (hr) #endif #ifdef __cplusplus } /* extern "C" */ #endif /* defined(__cplusplus) */ #endif /* __WINE_DXERR8_H */ dxvk-0~git20220822.9df86f2/dxerr9.h000066400000000000000000000041211430055512200163630ustar00rootroot00000000000000#include <_mingw_unicode.h> /* * Copyright (C) 2004 Robert Reif * * 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 */ #ifndef __WINE_DXERR9_H #define __WINE_DXERR9_H #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ const char* WINAPI DXGetErrorString9A(HRESULT hr); const WCHAR* WINAPI DXGetErrorString9W(HRESULT hr); #define DXGetErrorString9 __MINGW_NAME_AW(DXGetErrorString9) const char* WINAPI DXGetErrorDescription9A(HRESULT hr); const WCHAR* WINAPI DXGetErrorDescription9W(HRESULT hr); #define DXGetErrorDescription9 __MINGW_NAME_AW(DXGetErrorDescription9) HRESULT WINAPI DXTraceA(const char* strFile, DWORD dwLine, HRESULT hr, const char* strMsg, WINBOOL bPopMsgBox); HRESULT WINAPI DXTraceW(const char* strFile, DWORD dwLine, HRESULT hr, const WCHAR* strMsg, WINBOOL bPopMsgBox); #define DXTrace __MINGW_NAME_AW(DXTrace) #if defined(DEBUG) || defined(_DEBUG) #define DXTRACE_MSG(str) DXTrace(__FILE__, (DWORD)__LINE__, 0, str, FALSE) #define DXTRACE_ERR(str,hr) DXTrace(__FILE__, (DWORD)__LINE__, hr, str, TRUE) #define DXTRACE_ERR_NOMSGBOX(str,hr) DXTrace(__FILE__, (DWORD)__LINE__, hr, str, FALSE) #else #define DXTRACE_MSG(str) __MSABI_LONG(0) #define DXTRACE_ERR(str,hr) (hr) #define DXTRACE_ERR_NOMSGBOX(str,hr) (hr) #endif #ifdef __cplusplus } /* extern "C" */ #endif /* defined(__cplusplus) */ #endif /* __WINE_DXERR9_H */ dxvk-0~git20220822.9df86f2/dxfile.h000066400000000000000000000326421430055512200164320ustar00rootroot00000000000000#undef INTERFACE /* * Copyright 2004 Christian Costa * * 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 */ #ifndef __WINE_DXFILE_H #define __WINE_DXFILE_H #include #include #ifdef __cplusplus extern "C" { #endif /* defined(__cplusplus) */ typedef DWORD DXFILEFORMAT; #define DXFILEFORMAT_BINARY 0 #define DXFILEFORMAT_TEXT 1 #define DXFILEFORMAT_COMPRESSED 2 typedef DWORD DXFILELOADOPTIONS; #define DXFILELOAD_FROMFILE __MSABI_LONG(0x00) #define DXFILELOAD_FROMRESOURCE __MSABI_LONG(0x01) #define DXFILELOAD_FROMMEMORY __MSABI_LONG(0x02) #define DXFILELOAD_FROMSTREAM __MSABI_LONG(0x04) #define DXFILELOAD_FROMURL __MSABI_LONG(0x08) typedef struct _DXFILELOADRESOURCE { HMODULE hModule; LPCSTR /*LPCTSTR*/ lpName; LPCSTR /*LPCTSTR*/ lpType; } DXFILELOADRESOURCE, *LPDXFILELOADRESOURCE; typedef struct _DXFILELOADMEMORY { LPVOID lpMemory; DWORD dSize; } DXFILELOADMEMORY, *LPDXFILELOADMEMORY; typedef struct IDirectXFile *LPDIRECTXFILE; typedef struct IDirectXFileEnumObject *LPDIRECTXFILEENUMOBJECT; typedef struct IDirectXFileSaveObject *LPDIRECTXFILESAVEOBJECT; typedef struct IDirectXFileObject *LPDIRECTXFILEOBJECT; typedef struct IDirectXFileData *LPDIRECTXFILEDATA; typedef struct IDirectXFileDataReference *LPDIRECTXFILEDATAREFERENCE; typedef struct IDirectXFileBinary *LPDIRECTXFILEBINARY; STDAPI DirectXFileCreate(LPDIRECTXFILE *lplpDirectXFile); #define INTERFACE IDirectXFile DECLARE_INTERFACE_(IDirectXFile,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirectXFile methods ***/ STDMETHOD(CreateEnumObject) (THIS_ LPVOID, DXFILELOADOPTIONS, LPDIRECTXFILEENUMOBJECT *) PURE; STDMETHOD(CreateSaveObject) (THIS_ LPCSTR, DXFILEFORMAT, LPDIRECTXFILESAVEOBJECT *) PURE; STDMETHOD(RegisterTemplates) (THIS_ LPVOID, DWORD) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFile_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFile_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFile_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFile methods ***/ #define IDirectXFile_CreateEnumObject(p,a,b,c) (p)->lpVtbl->CreateEnumObject(p,a,b,c) #define IDirectXFile_CreateSaveObject(p,a,b,c) (p)->lpVtbl->CreateSaveObject(p,a,b,c) #define IDirectXFile_RegisterTemplates(p,a,b) (p)->lpVtbl->RegisterTemplates(p,a,b) #endif #define INTERFACE IDirectXFileEnumObject DECLARE_INTERFACE_(IDirectXFileEnumObject,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirectXFileEnumObject methods ***/ STDMETHOD(GetNextDataObject) (THIS_ LPDIRECTXFILEDATA *) PURE; STDMETHOD(GetDataObjectById) (THIS_ REFGUID, LPDIRECTXFILEDATA *) PURE; STDMETHOD(GetDataObjectByName) (THIS_ LPCSTR, LPDIRECTXFILEDATA *) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileEnumObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileEnumObject_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileEnumObject_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileEnumObject methods ***/ #define IDirectXFileEnumObject_GetNextDataObject(p,a) (p)->lpVtbl->GetNextDataObject(p,a) #define IDirectXFileEnumObject_GetDataObjectById(p,a,b) (p)->lpVtbl->GetDataObjectById(p,a,b) #define IDirectXFileEnumObject_GetDataObjectByName(p,a,b) (p)->lpVtbl->GetDataObjectByName(p,a,b) #endif #define INTERFACE IDirectXFileSaveObject DECLARE_INTERFACE_(IDirectXFileSaveObject,IUnknown) { /*** IUnknown methods ***/ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; STDMETHOD_(ULONG,AddRef)(THIS) PURE; STDMETHOD_(ULONG,Release)(THIS) PURE; /*** IDirectXFileSaveObject methods ***/ STDMETHOD(SaveTemplates) (THIS_ DWORD, const GUID **) PURE; STDMETHOD(CreateDataObject) (THIS_ REFGUID, LPCSTR, const GUID *, DWORD, LPVOID, LPDIRECTXFILEDATA *) PURE; STDMETHOD(SaveData) (THIS_ LPDIRECTXFILEDATA) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileSaveObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileSaveObject_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileSaveObject_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileSaveObject methods ***/ #define IDirectXFileSaveObject_SaveTemplates(p,a,b) (p)->lpVtbl->SaveTemplates(p,a,b) #define IDirectXFileSaveObject_CreateDataObject(p,a,b,c,d,e,f) (p)->lpVtbl->CreateDataObject(p,a,b,c,d,e,f) #define IDirectXFileSaveObject_SaveData(p,a) (p)->lpVtbl->SaveData(p,a) #endif #define IUNKNOWN_METHODS(kind) \ STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) kind; \ STDMETHOD_(ULONG,AddRef)(THIS) kind; \ STDMETHOD_(ULONG,Release)(THIS) kind #define IDIRECTXFILEOBJECT_METHODS(kind) \ STDMETHOD(GetName) (THIS_ LPSTR, LPDWORD) kind; \ STDMETHOD(GetId) (THIS_ LPGUID) kind #define INTERFACE IDirectXFileObject DECLARE_INTERFACE_(IDirectXFileObject,IUnknown) { IUNKNOWN_METHODS(PURE); IDIRECTXFILEOBJECT_METHODS(PURE); }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileObject_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileObject_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileObject_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileObject methods ***/ #define IDirectXFileObject_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirectXFileObject_GetId(p,a) (p)->lpVtbl->GetId(p,a) #endif #define INTERFACE IDirectXFileData DECLARE_INTERFACE_(IDirectXFileData,IDirectXFileObject) { IUNKNOWN_METHODS(PURE); IDIRECTXFILEOBJECT_METHODS(PURE); /*** IDirectXFileData methods ***/ STDMETHOD(GetData) (THIS_ LPCSTR, DWORD *, void **) PURE; STDMETHOD(GetType) (THIS_ const GUID **) PURE; STDMETHOD(GetNextObject) (THIS_ LPDIRECTXFILEOBJECT *) PURE; STDMETHOD(AddDataObject) (THIS_ LPDIRECTXFILEDATA) PURE; STDMETHOD(AddDataReference) (THIS_ LPCSTR, const GUID *) PURE; STDMETHOD(AddBinaryObject) (THIS_ LPCSTR, const GUID *, LPCSTR, LPVOID, DWORD) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileData_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileData_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileObject methods ***/ #define IDirectXFileData_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirectXFileData_GetId(p,a) (p)->lpVtbl->GetId(p,a) /*** IDirectXFileData methods ***/ #define IDirectXFileData_GetData(p,a,b,c) (p)->lpVtbl->GetData(p,a,b,c) #define IDirectXFileData_GetType(p,a) (p)->lpVtbl->GetType(p,a) #define IDirectXFileData_GetNextObject(p,a) (p)->lpVtbl->GetNextObject(p,a) #define IDirectXFileData_AddDataObject(p,a) (p)->lpVtbl->AddDataObject(p,a) #define IDirectXFileData_AddDataReference(p,a,b) (p)->lpVtbl->AddDataReference(p,a,b) #define IDirectXFileData_AddBinaryObject(p,a,b,c,d,e) (p)->lpVtbl->AddBinaryObject(p,a,b,c,d,e) #endif #define INTERFACE IDirectXFileDataReference DECLARE_INTERFACE_(IDirectXFileDataReference,IDirectXFileObject) { IUNKNOWN_METHODS(PURE); IDIRECTXFILEOBJECT_METHODS(PURE); /*** IDirectXFileDataReference methods ***/ STDMETHOD(Resolve) (THIS_ LPDIRECTXFILEDATA *) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileDataReference_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileDataReference_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileDataReference_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileObject methods ***/ #define IDirectXFileDataReference_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirectXFileDataReference_GetId(p,a) (p)->lpVtbl->GetId(p,a) /*** IDirectXFileDataReference methods ***/ #define IDirectXFileDataReference_Resolve(p,a) (p)->lpVtbl->Resolve(p,a) #endif #define INTERFACE IDirectXFileBinary DECLARE_INTERFACE_(IDirectXFileBinary,IDirectXFileObject) { IUNKNOWN_METHODS(PURE); IDIRECTXFILEOBJECT_METHODS(PURE); /*** IDirectXFileBinary methods ***/ STDMETHOD(GetSize) (THIS_ DWORD *) PURE; STDMETHOD(GetMimeType) (THIS_ LPCSTR *) PURE; STDMETHOD(Read) (THIS_ LPVOID, DWORD, LPDWORD) PURE; }; #undef INTERFACE #if !defined(__cplusplus) || defined(CINTERFACE) /*** IUnknown methods ***/ #define IDirectXFileBinary_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IDirectXFileBinary_AddRef(p) (p)->lpVtbl->AddRef(p) #define IDirectXFileBinary_Release(p) (p)->lpVtbl->Release(p) /*** IDirectXFileObject methods ***/ #define IDirectXFileBinary_GetName(p,a,b) (p)->lpVtbl->GetName(p,a,b) #define IDirectXFileBinary_GetId(p,a) (p)->lpVtbl->GetId(p,a) /*** IDirectXFileBinary methods ***/ #define IDirectXFileBinary_GetSize(p,a) (p)->lpVtbl->GetSize(p,a) #define IDirectXFileBinary_GetMimeType(p,a) (p)->lpVtbl->GetMimeType(p,a) #define IDirectXFileBinary_Read(p,a,b,c) (p)->lpVtbl->Read(p,a,b,c) #endif /* DirectXFile Object CLSID */ DEFINE_GUID(CLSID_CDirectXFile, 0x4516ec43, 0x8f20, 0x11d0, 0x9b, 0x6d, 0x00, 0x00, 0xc0, 0x78, 0x1b, 0xc3); /* DirectX File Interface GUIDs */ DEFINE_GUID(IID_IDirectXFile, 0x3d82ab40, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileEnumObject, 0x3d82ab41, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileSaveObject, 0x3d82ab42, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileObject, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileData, 0x3d82ab44, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileDataReference, 0x3d82ab45, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); DEFINE_GUID(IID_IDirectXFileBinary, 0x3d82ab46, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); /* DirectX File Header template's GUID */ DEFINE_GUID(TID_DXFILEHeader, 0x3d82ab43, 0x62da, 0x11cf, 0xab, 0x39, 0x00, 0x20, 0xaf, 0x71, 0xe4, 0x33); /* DirectX File errors */ #define _FACDD 0x876 #define MAKE_DDHRESULT( code ) MAKE_HRESULT( 1, _FACDD, code ) #define DXFILE_OK 0 #define DXFILEERR_BADOBJECT MAKE_DDHRESULT(850) #define DXFILEERR_BADVALUE MAKE_DDHRESULT(851) #define DXFILEERR_BADTYPE MAKE_DDHRESULT(852) #define DXFILEERR_BADSTREAMHANDLE MAKE_DDHRESULT(853) #define DXFILEERR_BADALLOC MAKE_DDHRESULT(854) #define DXFILEERR_NOTFOUND MAKE_DDHRESULT(855) #define DXFILEERR_NOTDONEYET MAKE_DDHRESULT(856) #define DXFILEERR_FILENOTFOUND MAKE_DDHRESULT(857) #define DXFILEERR_RESOURCENOTFOUND MAKE_DDHRESULT(858) #define DXFILEERR_URLNOTFOUND MAKE_DDHRESULT(859) #define DXFILEERR_BADRESOURCE MAKE_DDHRESULT(860) #define DXFILEERR_BADFILETYPE MAKE_DDHRESULT(861) #define DXFILEERR_BADFILEVERSION MAKE_DDHRESULT(862) #define DXFILEERR_BADFILEFLOATSIZE MAKE_DDHRESULT(863) #define DXFILEERR_BADFILECOMPRESSIONTYPE MAKE_DDHRESULT(864) #define DXFILEERR_BADFILE MAKE_DDHRESULT(865) #define DXFILEERR_PARSEERROR MAKE_DDHRESULT(866) #define DXFILEERR_NOTEMPLATE MAKE_DDHRESULT(867) #define DXFILEERR_BADARRAYSIZE MAKE_DDHRESULT(868) #define DXFILEERR_BADDATAREFERENCE MAKE_DDHRESULT(869) #define DXFILEERR_INTERNALERROR MAKE_DDHRESULT(870) #define DXFILEERR_NOMOREOBJECTS MAKE_DDHRESULT(871) #define DXFILEERR_BADINTRINSICS MAKE_DDHRESULT(872) #define DXFILEERR_NOMORESTREAMHANDLES MAKE_DDHRESULT(873) #define DXFILEERR_NOMOREDATA MAKE_DDHRESULT(874) #define DXFILEERR_BADCACHEFILE MAKE_DDHRESULT(875) #define DXFILEERR_NOINTERNET MAKE_DDHRESULT(876) #ifdef __cplusplus } /* extern "C" */ #endif /* defined(__cplusplus) */ #endif /* __WINE_DXFILE_H */ dxvk-0~git20220822.9df86f2/dxgi.h000066400000000000000000003010461430055512200161070ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi_h__ #define __dxgi_h__ /* Forward declarations */ #ifndef __IDXGIObject_FWD_DEFINED__ #define __IDXGIObject_FWD_DEFINED__ typedef interface IDXGIObject IDXGIObject; #ifdef __cplusplus interface IDXGIObject; #endif /* __cplusplus */ #endif #ifndef __IDXGIDeviceSubObject_FWD_DEFINED__ #define __IDXGIDeviceSubObject_FWD_DEFINED__ typedef interface IDXGIDeviceSubObject IDXGIDeviceSubObject; #ifdef __cplusplus interface IDXGIDeviceSubObject; #endif /* __cplusplus */ #endif #ifndef __IDXGIResource_FWD_DEFINED__ #define __IDXGIResource_FWD_DEFINED__ typedef interface IDXGIResource IDXGIResource; #ifdef __cplusplus interface IDXGIResource; #endif /* __cplusplus */ #endif #ifndef __IDXGIKeyedMutex_FWD_DEFINED__ #define __IDXGIKeyedMutex_FWD_DEFINED__ typedef interface IDXGIKeyedMutex IDXGIKeyedMutex; #ifdef __cplusplus interface IDXGIKeyedMutex; #endif /* __cplusplus */ #endif #ifndef __IDXGISurface_FWD_DEFINED__ #define __IDXGISurface_FWD_DEFINED__ typedef interface IDXGISurface IDXGISurface; #ifdef __cplusplus interface IDXGISurface; #endif /* __cplusplus */ #endif #ifndef __IDXGISurface1_FWD_DEFINED__ #define __IDXGISurface1_FWD_DEFINED__ typedef interface IDXGISurface1 IDXGISurface1; #ifdef __cplusplus interface IDXGISurface1; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput_FWD_DEFINED__ #define __IDXGIOutput_FWD_DEFINED__ typedef interface IDXGIOutput IDXGIOutput; #ifdef __cplusplus interface IDXGIOutput; #endif /* __cplusplus */ #endif #ifndef __IDXGIAdapter_FWD_DEFINED__ #define __IDXGIAdapter_FWD_DEFINED__ typedef interface IDXGIAdapter IDXGIAdapter; #ifdef __cplusplus interface IDXGIAdapter; #endif /* __cplusplus */ #endif #ifndef __IDXGISwapChain_FWD_DEFINED__ #define __IDXGISwapChain_FWD_DEFINED__ typedef interface IDXGISwapChain IDXGISwapChain; #ifdef __cplusplus interface IDXGISwapChain; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory_FWD_DEFINED__ #define __IDXGIFactory_FWD_DEFINED__ typedef interface IDXGIFactory IDXGIFactory; #ifdef __cplusplus interface IDXGIFactory; #endif /* __cplusplus */ #endif #ifndef __IDXGIDevice_FWD_DEFINED__ #define __IDXGIDevice_FWD_DEFINED__ typedef interface IDXGIDevice IDXGIDevice; #ifdef __cplusplus interface IDXGIDevice; #endif /* __cplusplus */ #endif #ifndef __IDXGIAdapter1_FWD_DEFINED__ #define __IDXGIAdapter1_FWD_DEFINED__ typedef interface IDXGIAdapter1 IDXGIAdapter1; #ifdef __cplusplus interface IDXGIAdapter1; #endif /* __cplusplus */ #endif #ifndef __IDXGIDevice1_FWD_DEFINED__ #define __IDXGIDevice1_FWD_DEFINED__ typedef interface IDXGIDevice1 IDXGIDevice1; #ifdef __cplusplus interface IDXGIDevice1; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory1_FWD_DEFINED__ #define __IDXGIFactory1_FWD_DEFINED__ typedef interface IDXGIFactory1 IDXGIFactory1; #ifdef __cplusplus interface IDXGIFactory1; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif #define _FACDXGI (0x87a) #define MAKE_DXGI_STATUS(x) MAKE_HRESULT(0, _FACDXGI, x) #define MAKE_DXGI_HRESULT(x) MAKE_HRESULT(1, _FACDXGI, x) #if 0 typedef HANDLE HMONITOR; typedef struct _LUID { DWORD LowPart; LONG HighPart; } LUID; typedef struct _LUID *PLUID; #endif #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) typedef UINT DXGI_USAGE; #define DXGI_USAGE_SHADER_INPUT (0x10) #define DXGI_USAGE_RENDER_TARGET_OUTPUT (0x20) #define DXGI_USAGE_BACK_BUFFER (0x40) #define DXGI_USAGE_SHARED (0x80) #define DXGI_USAGE_READ_ONLY (0x100) #define DXGI_USAGE_DISCARD_ON_PRESENT (0x200) #define DXGI_USAGE_UNORDERED_ACCESS (0x400) #define DXGI_ENUM_MODES_INTERLACED (1) #define DXGI_ENUM_MODES_SCALING (2) #define DXGI_RESOURCE_PRIORITY_MINIMUM (0x28000000) #define DXGI_RESOURCE_PRIORITY_LOW (0x50000000) #define DXGI_RESOURCE_PRIORITY_NORMAL (0x78000000) #define DXGI_RESOURCE_PRIORITY_HIGH (0xa0000000) #define DXGI_RESOURCE_PRIORITY_MAXIMUM (0xc8000000) #define DXGI_MAP_READ (0x1) #define DXGI_MAP_WRITE (0x2) #define DXGI_MAP_DISCARD (0x4) typedef enum DXGI_SWAP_EFFECT { DXGI_SWAP_EFFECT_DISCARD = 0, DXGI_SWAP_EFFECT_SEQUENTIAL = 1, DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL = 3, DXGI_SWAP_EFFECT_FLIP_DISCARD = 4 } DXGI_SWAP_EFFECT; typedef enum DXGI_RESIDENCY { DXGI_RESIDENCY_FULLY_RESIDENT = 1, DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY = 2, DXGI_RESIDENCY_EVICTED_TO_DISK = 3 } DXGI_RESIDENCY; typedef struct DXGI_SURFACE_DESC { UINT Width; UINT Height; DXGI_FORMAT Format; DXGI_SAMPLE_DESC SampleDesc; } DXGI_SURFACE_DESC; typedef struct DXGI_MAPPED_RECT { INT Pitch; BYTE *pBits; } DXGI_MAPPED_RECT; typedef struct DXGI_OUTPUT_DESC { WCHAR DeviceName[32]; RECT DesktopCoordinates; WINBOOL AttachedToDesktop; DXGI_MODE_ROTATION Rotation; HMONITOR Monitor; } DXGI_OUTPUT_DESC; typedef struct DXGI_FRAME_STATISTICS { UINT PresentCount; UINT PresentRefreshCount; UINT SyncRefreshCount; LARGE_INTEGER SyncQPCTime; LARGE_INTEGER SyncGPUTime; } DXGI_FRAME_STATISTICS; typedef struct DXGI_ADAPTER_DESC { WCHAR Description[128]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; } DXGI_ADAPTER_DESC; typedef enum DXGI_SWAP_CHAIN_FLAG { DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 0x1, DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 0x2, DXGI_SWAP_CHAIN_FLAG_GDI_COMPATIBLE = 0x4, DXGI_SWAP_CHAIN_FLAG_RESTRICTED_CONTENT = 0x8, DXGI_SWAP_CHAIN_FLAG_RESTRICT_SHARED_RESOURCE_DRIVER = 0x10, DXGI_SWAP_CHAIN_FLAG_DISPLAY_ONLY = 0x20, DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT = 0x40, DXGI_SWAP_CHAIN_FLAG_FOREGROUND_LAYER = 0x80, DXGI_SWAP_CHAIN_FLAG_FULLSCREEN_VIDEO = 0x100, DXGI_SWAP_CHAIN_FLAG_YUV_VIDEO = 0x200, DXGI_SWAP_CHAIN_FLAG_HW_PROTECTED = 0x400, DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING = 0x800, DXGI_SWAP_CHAIN_FLAG_RESTRICTED_TO_ALL_HOLOGRAPHIC_DISPLAYS = 0x1000 } DXGI_SWAP_CHAIN_FLAG; typedef struct DXGI_SWAP_CHAIN_DESC { DXGI_MODE_DESC BufferDesc; DXGI_SAMPLE_DESC SampleDesc; DXGI_USAGE BufferUsage; UINT BufferCount; HWND OutputWindow; WINBOOL Windowed; DXGI_SWAP_EFFECT SwapEffect; UINT Flags; } DXGI_SWAP_CHAIN_DESC; typedef struct DXGI_SHARED_RESOURCE { HANDLE Handle; } DXGI_SHARED_RESOURCE; /***************************************************************************** * IDXGIObject interface */ #ifndef __IDXGIObject_INTERFACE_DEFINED__ #define __IDXGIObject_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b,0xe0, 0x28,0xeb,0x43,0xa6,0x7a,0x2e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("aec22fb8-76f3-4639-9be0-28eb43a67a2e") IDXGIObject : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetPrivateData( REFGUID guid, UINT data_size, const void *data) = 0; virtual HRESULT STDMETHODCALLTYPE SetPrivateDataInterface( REFGUID guid, const IUnknown *object) = 0; virtual HRESULT STDMETHODCALLTYPE GetPrivateData( REFGUID guid, UINT *data_size, void *data) = 0; virtual HRESULT STDMETHODCALLTYPE GetParent( REFIID riid, void **parent) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIObject, 0xaec22fb8, 0x76f3, 0x4639, 0x9b,0xe0, 0x28,0xeb,0x43,0xa6,0x7a,0x2e) #endif #else typedef struct IDXGIObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIObject *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIObject *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIObject *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIObject *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIObject *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIObject *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIObject *This, REFIID riid, void **parent); END_INTERFACE } IDXGIObjectVtbl; interface IDXGIObject { CONST_VTBL IDXGIObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIObject_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIObject_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIObject_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIObject_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIObject_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIObject_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIObject_QueryInterface(IDXGIObject* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIObject_AddRef(IDXGIObject* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIObject_Release(IDXGIObject* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIObject_SetPrivateData(IDXGIObject* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIObject_SetPrivateDataInterface(IDXGIObject* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIObject_GetPrivateData(IDXGIObject* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIObject_GetParent(IDXGIObject* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } #endif #endif #endif #endif /* __IDXGIObject_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDeviceSubObject interface */ #ifndef __IDXGIDeviceSubObject_INTERFACE_DEFINED__ #define __IDXGIDeviceSubObject_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb,0x6c, 0x18,0xd6,0x29,0x92,0xf1,0xa6); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3d3e0379-f9de-4d58-bb6c-18d62992f1a6") IDXGIDeviceSubObject : public IDXGIObject { virtual HRESULT STDMETHODCALLTYPE GetDevice( REFIID riid, void **device) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDeviceSubObject, 0x3d3e0379, 0xf9de, 0x4d58, 0xbb,0x6c, 0x18,0xd6,0x29,0x92,0xf1,0xa6) #endif #else typedef struct IDXGIDeviceSubObjectVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDeviceSubObject *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDeviceSubObject *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDeviceSubObject *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDeviceSubObject *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDeviceSubObject *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDeviceSubObject *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDeviceSubObject *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGIDeviceSubObject *This, REFIID riid, void **device); END_INTERFACE } IDXGIDeviceSubObjectVtbl; interface IDXGIDeviceSubObject { CONST_VTBL IDXGIDeviceSubObjectVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDeviceSubObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDeviceSubObject_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDeviceSubObject_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDeviceSubObject_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDeviceSubObject_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDeviceSubObject_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDeviceSubObject_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGIDeviceSubObject_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDeviceSubObject_QueryInterface(IDXGIDeviceSubObject* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDeviceSubObject_AddRef(IDXGIDeviceSubObject* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDeviceSubObject_Release(IDXGIDeviceSubObject* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDeviceSubObject_SetPrivateData(IDXGIDeviceSubObject* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDeviceSubObject_SetPrivateDataInterface(IDXGIDeviceSubObject* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDeviceSubObject_GetPrivateData(IDXGIDeviceSubObject* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDeviceSubObject_GetParent(IDXGIDeviceSubObject* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGIDeviceSubObject_GetDevice(IDXGIDeviceSubObject* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } #endif #endif #endif #endif /* __IDXGIDeviceSubObject_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIResource interface */ #ifndef __IDXGIResource_INTERFACE_DEFINED__ #define __IDXGIResource_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4,0x1f, 0x8a,0x7f,0x8b,0xd8,0x96,0x0b); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("035f3ab4-482e-4e50-b41f-8a7f8bd8960b") IDXGIResource : public IDXGIDeviceSubObject { virtual HRESULT STDMETHODCALLTYPE GetSharedHandle( HANDLE *pSharedHandle) = 0; virtual HRESULT STDMETHODCALLTYPE GetUsage( DXGI_USAGE *pUsage) = 0; virtual HRESULT STDMETHODCALLTYPE SetEvictionPriority( UINT EvictionPriority) = 0; virtual HRESULT STDMETHODCALLTYPE GetEvictionPriority( UINT *pEvictionPriority) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIResource, 0x035f3ab4, 0x482e, 0x4e50, 0xb4,0x1f, 0x8a,0x7f,0x8b,0xd8,0x96,0x0b) #endif #else typedef struct IDXGIResourceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIResource *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIResource *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIResource *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIResource *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIResource *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIResource *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIResource *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGIResource *This, REFIID riid, void **device); /*** IDXGIResource methods ***/ HRESULT (STDMETHODCALLTYPE *GetSharedHandle)( IDXGIResource *This, HANDLE *pSharedHandle); HRESULT (STDMETHODCALLTYPE *GetUsage)( IDXGIResource *This, DXGI_USAGE *pUsage); HRESULT (STDMETHODCALLTYPE *SetEvictionPriority)( IDXGIResource *This, UINT EvictionPriority); HRESULT (STDMETHODCALLTYPE *GetEvictionPriority)( IDXGIResource *This, UINT *pEvictionPriority); END_INTERFACE } IDXGIResourceVtbl; interface IDXGIResource { CONST_VTBL IDXGIResourceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIResource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIResource_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIResource_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIResource_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIResource_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIResource_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIResource_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGIResource_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGIResource methods ***/ #define IDXGIResource_GetSharedHandle(This,pSharedHandle) (This)->lpVtbl->GetSharedHandle(This,pSharedHandle) #define IDXGIResource_GetUsage(This,pUsage) (This)->lpVtbl->GetUsage(This,pUsage) #define IDXGIResource_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define IDXGIResource_GetEvictionPriority(This,pEvictionPriority) (This)->lpVtbl->GetEvictionPriority(This,pEvictionPriority) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIResource_QueryInterface(IDXGIResource* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIResource_AddRef(IDXGIResource* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIResource_Release(IDXGIResource* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIResource_SetPrivateData(IDXGIResource* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIResource_SetPrivateDataInterface(IDXGIResource* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIResource_GetPrivateData(IDXGIResource* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIResource_GetParent(IDXGIResource* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGIResource_GetDevice(IDXGIResource* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGIResource methods ***/ static FORCEINLINE HRESULT IDXGIResource_GetSharedHandle(IDXGIResource* This,HANDLE *pSharedHandle) { return This->lpVtbl->GetSharedHandle(This,pSharedHandle); } static FORCEINLINE HRESULT IDXGIResource_GetUsage(IDXGIResource* This,DXGI_USAGE *pUsage) { return This->lpVtbl->GetUsage(This,pUsage); } static FORCEINLINE HRESULT IDXGIResource_SetEvictionPriority(IDXGIResource* This,UINT EvictionPriority) { return This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE HRESULT IDXGIResource_GetEvictionPriority(IDXGIResource* This,UINT *pEvictionPriority) { return This->lpVtbl->GetEvictionPriority(This,pEvictionPriority); } #endif #endif #endif #endif /* __IDXGIResource_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIKeyedMutex interface */ #ifndef __IDXGIKeyedMutex_INTERFACE_DEFINED__ #define __IDXGIKeyedMutex_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81,0x26, 0x25,0x0e,0x34,0x9a,0xf8,0x5d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("9d8e1289-d7b3-465f-8126-250e349af85d") IDXGIKeyedMutex : public IDXGIDeviceSubObject { virtual HRESULT STDMETHODCALLTYPE AcquireSync( UINT64 Key, DWORD dwMilliseconds) = 0; virtual HRESULT STDMETHODCALLTYPE ReleaseSync( UINT64 Key) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIKeyedMutex, 0x9d8e1289, 0xd7b3, 0x465f, 0x81,0x26, 0x25,0x0e,0x34,0x9a,0xf8,0x5d) #endif #else typedef struct IDXGIKeyedMutexVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIKeyedMutex *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIKeyedMutex *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIKeyedMutex *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIKeyedMutex *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIKeyedMutex *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIKeyedMutex *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIKeyedMutex *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGIKeyedMutex *This, REFIID riid, void **device); /*** IDXGIKeyedMutex methods ***/ HRESULT (STDMETHODCALLTYPE *AcquireSync)( IDXGIKeyedMutex *This, UINT64 Key, DWORD dwMilliseconds); HRESULT (STDMETHODCALLTYPE *ReleaseSync)( IDXGIKeyedMutex *This, UINT64 Key); END_INTERFACE } IDXGIKeyedMutexVtbl; interface IDXGIKeyedMutex { CONST_VTBL IDXGIKeyedMutexVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIKeyedMutex_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIKeyedMutex_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIKeyedMutex_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIKeyedMutex_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIKeyedMutex_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIKeyedMutex_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIKeyedMutex_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGIKeyedMutex_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGIKeyedMutex methods ***/ #define IDXGIKeyedMutex_AcquireSync(This,Key,dwMilliseconds) (This)->lpVtbl->AcquireSync(This,Key,dwMilliseconds) #define IDXGIKeyedMutex_ReleaseSync(This,Key) (This)->lpVtbl->ReleaseSync(This,Key) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIKeyedMutex_QueryInterface(IDXGIKeyedMutex* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIKeyedMutex_AddRef(IDXGIKeyedMutex* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIKeyedMutex_Release(IDXGIKeyedMutex* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIKeyedMutex_SetPrivateData(IDXGIKeyedMutex* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIKeyedMutex_SetPrivateDataInterface(IDXGIKeyedMutex* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIKeyedMutex_GetPrivateData(IDXGIKeyedMutex* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIKeyedMutex_GetParent(IDXGIKeyedMutex* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGIKeyedMutex_GetDevice(IDXGIKeyedMutex* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGIKeyedMutex methods ***/ static FORCEINLINE HRESULT IDXGIKeyedMutex_AcquireSync(IDXGIKeyedMutex* This,UINT64 Key,DWORD dwMilliseconds) { return This->lpVtbl->AcquireSync(This,Key,dwMilliseconds); } static FORCEINLINE HRESULT IDXGIKeyedMutex_ReleaseSync(IDXGIKeyedMutex* This,UINT64 Key) { return This->lpVtbl->ReleaseSync(This,Key); } #endif #endif #endif #endif /* __IDXGIKeyedMutex_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISurface interface */ #ifndef __IDXGISurface_INTERFACE_DEFINED__ #define __IDXGISurface_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf,0x47, 0x9e,0x23,0xbb,0xd2,0x60,0xec); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("cafcb56c-6ac3-4889-bf47-9e23bbd260ec") IDXGISurface : public IDXGIDeviceSubObject { virtual HRESULT STDMETHODCALLTYPE GetDesc( DXGI_SURFACE_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE Map( DXGI_MAPPED_RECT *mapped_rect, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE Unmap( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISurface, 0xcafcb56c, 0x6ac3, 0x4889, 0xbf,0x47, 0x9e,0x23,0xbb,0xd2,0x60,0xec) #endif #else typedef struct IDXGISurfaceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISurface *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISurface *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISurface *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISurface *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISurface *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISurface *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISurface *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISurface *This, REFIID riid, void **device); /*** IDXGISurface methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISurface *This, DXGI_SURFACE_DESC *desc); HRESULT (STDMETHODCALLTYPE *Map)( IDXGISurface *This, DXGI_MAPPED_RECT *mapped_rect, UINT flags); HRESULT (STDMETHODCALLTYPE *Unmap)( IDXGISurface *This); END_INTERFACE } IDXGISurfaceVtbl; interface IDXGISurface { CONST_VTBL IDXGISurfaceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISurface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISurface_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISurface_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISurface_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISurface_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISurface_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISurface_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISurface_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISurface methods ***/ #define IDXGISurface_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISurface_Map(This,mapped_rect,flags) (This)->lpVtbl->Map(This,mapped_rect,flags) #define IDXGISurface_Unmap(This) (This)->lpVtbl->Unmap(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISurface_QueryInterface(IDXGISurface* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISurface_AddRef(IDXGISurface* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISurface_Release(IDXGISurface* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISurface_SetPrivateData(IDXGISurface* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface_SetPrivateDataInterface(IDXGISurface* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISurface_GetPrivateData(IDXGISurface* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface_GetParent(IDXGISurface* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISurface_GetDevice(IDXGISurface* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISurface methods ***/ static FORCEINLINE HRESULT IDXGISurface_GetDesc(IDXGISurface* This,DXGI_SURFACE_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISurface_Map(IDXGISurface* This,DXGI_MAPPED_RECT *mapped_rect,UINT flags) { return This->lpVtbl->Map(This,mapped_rect,flags); } static FORCEINLINE HRESULT IDXGISurface_Unmap(IDXGISurface* This) { return This->lpVtbl->Unmap(This); } #endif #endif #endif #endif /* __IDXGISurface_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISurface1 interface */ #ifndef __IDXGISurface1_INTERFACE_DEFINED__ #define __IDXGISurface1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISurface1, 0x4ae63092, 0x6327, 0x4c1b, 0x80,0xae, 0xbf,0xe1,0x2e,0xa3,0x2b,0x86); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("4ae63092-6327-4c1b-80ae-bfe12ea32b86") IDXGISurface1 : public IDXGISurface { virtual HRESULT STDMETHODCALLTYPE GetDC( WINBOOL discard, HDC *hdc) = 0; virtual HRESULT STDMETHODCALLTYPE ReleaseDC( RECT *dirty_rect) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISurface1, 0x4ae63092, 0x6327, 0x4c1b, 0x80,0xae, 0xbf,0xe1,0x2e,0xa3,0x2b,0x86) #endif #else typedef struct IDXGISurface1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISurface1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISurface1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISurface1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISurface1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISurface1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISurface1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISurface1 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISurface1 *This, REFIID riid, void **device); /*** IDXGISurface methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISurface1 *This, DXGI_SURFACE_DESC *desc); HRESULT (STDMETHODCALLTYPE *Map)( IDXGISurface1 *This, DXGI_MAPPED_RECT *mapped_rect, UINT flags); HRESULT (STDMETHODCALLTYPE *Unmap)( IDXGISurface1 *This); /*** IDXGISurface1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDC)( IDXGISurface1 *This, WINBOOL discard, HDC *hdc); HRESULT (STDMETHODCALLTYPE *ReleaseDC)( IDXGISurface1 *This, RECT *dirty_rect); END_INTERFACE } IDXGISurface1Vtbl; interface IDXGISurface1 { CONST_VTBL IDXGISurface1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISurface1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISurface1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISurface1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISurface1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISurface1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISurface1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISurface1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISurface1_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISurface methods ***/ #define IDXGISurface1_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISurface1_Map(This,mapped_rect,flags) (This)->lpVtbl->Map(This,mapped_rect,flags) #define IDXGISurface1_Unmap(This) (This)->lpVtbl->Unmap(This) /*** IDXGISurface1 methods ***/ #define IDXGISurface1_GetDC(This,discard,hdc) (This)->lpVtbl->GetDC(This,discard,hdc) #define IDXGISurface1_ReleaseDC(This,dirty_rect) (This)->lpVtbl->ReleaseDC(This,dirty_rect) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISurface1_QueryInterface(IDXGISurface1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISurface1_AddRef(IDXGISurface1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISurface1_Release(IDXGISurface1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISurface1_SetPrivateData(IDXGISurface1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface1_SetPrivateDataInterface(IDXGISurface1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISurface1_GetPrivateData(IDXGISurface1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface1_GetParent(IDXGISurface1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISurface1_GetDevice(IDXGISurface1* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISurface methods ***/ static FORCEINLINE HRESULT IDXGISurface1_GetDesc(IDXGISurface1* This,DXGI_SURFACE_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISurface1_Map(IDXGISurface1* This,DXGI_MAPPED_RECT *mapped_rect,UINT flags) { return This->lpVtbl->Map(This,mapped_rect,flags); } static FORCEINLINE HRESULT IDXGISurface1_Unmap(IDXGISurface1* This) { return This->lpVtbl->Unmap(This); } /*** IDXGISurface1 methods ***/ static FORCEINLINE HRESULT IDXGISurface1_GetDC(IDXGISurface1* This,WINBOOL discard,HDC *hdc) { return This->lpVtbl->GetDC(This,discard,hdc); } static FORCEINLINE HRESULT IDXGISurface1_ReleaseDC(IDXGISurface1* This,RECT *dirty_rect) { return This->lpVtbl->ReleaseDC(This,dirty_rect); } #endif #endif #endif #endif /* __IDXGISurface1_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput interface */ #ifndef __IDXGIOutput_INTERFACE_DEFINED__ #define __IDXGIOutput_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d,0x52, 0x5a,0x8d,0xc2,0x02,0x13,0xaa); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ae02eedb-c735-4690-8d52-5a8dc20213aa") IDXGIOutput : public IDXGIObject { virtual HRESULT STDMETHODCALLTYPE GetDesc( DXGI_OUTPUT_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplayModeList( DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE FindClosestMatchingMode( const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device) = 0; virtual HRESULT STDMETHODCALLTYPE WaitForVBlank( ) = 0; virtual HRESULT STDMETHODCALLTYPE TakeOwnership( IUnknown *device, WINBOOL exclusive) = 0; virtual void STDMETHODCALLTYPE ReleaseOwnership( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetGammaControlCapabilities( DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) = 0; virtual HRESULT STDMETHODCALLTYPE SetGammaControl( const DXGI_GAMMA_CONTROL *gamma_control) = 0; virtual HRESULT STDMETHODCALLTYPE GetGammaControl( DXGI_GAMMA_CONTROL *gamma_control) = 0; virtual HRESULT STDMETHODCALLTYPE SetDisplaySurface( IDXGISurface *surface) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplaySurfaceData( IDXGISurface *surface) = 0; virtual HRESULT STDMETHODCALLTYPE GetFrameStatistics( DXGI_FRAME_STATISTICS *stats) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput, 0xae02eedb, 0xc735, 0x4690, 0x8d,0x52, 0x5a,0x8d,0xc2,0x02,0x13,0xaa) #endif #else typedef struct IDXGIOutputVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput *This, DXGI_FRAME_STATISTICS *stats); END_INTERFACE } IDXGIOutputVtbl; interface IDXGIOutput { CONST_VTBL IDXGIOutputVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput_QueryInterface(IDXGIOutput* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput_AddRef(IDXGIOutput* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput_Release(IDXGIOutput* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput_SetPrivateData(IDXGIOutput* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput_SetPrivateDataInterface(IDXGIOutput* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput_GetPrivateData(IDXGIOutput* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput_GetParent(IDXGIOutput* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput_GetDesc(IDXGIOutput* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput_GetDisplayModeList(IDXGIOutput* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput_FindClosestMatchingMode(IDXGIOutput* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput_WaitForVBlank(IDXGIOutput* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput_TakeOwnership(IDXGIOutput* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput_ReleaseOwnership(IDXGIOutput* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput_GetGammaControlCapabilities(IDXGIOutput* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput_SetGammaControl(IDXGIOutput* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput_GetGammaControl(IDXGIOutput* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput_SetDisplaySurface(IDXGIOutput* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput_GetDisplaySurfaceData(IDXGIOutput* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput_GetFrameStatistics(IDXGIOutput* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } #endif #endif #endif #endif /* __IDXGIOutput_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIAdapter interface */ #ifndef __IDXGIAdapter_INTERFACE_DEFINED__ #define __IDXGIAdapter_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd,0x14, 0x97,0x98,0xe8,0x53,0x4d,0xc0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2411e7e1-12ac-4ccf-bd14-9798e8534dc0") IDXGIAdapter : public IDXGIObject { virtual HRESULT STDMETHODCALLTYPE EnumOutputs( UINT output_idx, IDXGIOutput **output) = 0; virtual HRESULT STDMETHODCALLTYPE GetDesc( DXGI_ADAPTER_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE CheckInterfaceSupport( REFGUID guid, LARGE_INTEGER *umd_version) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIAdapter, 0x2411e7e1, 0x12ac, 0x4ccf, 0xbd,0x14, 0x97,0x98,0xe8,0x53,0x4d,0xc0) #endif #else typedef struct IDXGIAdapterVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIAdapter *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIAdapter *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIAdapter *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIAdapter *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIAdapter *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIAdapter *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIAdapter *This, REFIID riid, void **parent); /*** IDXGIAdapter methods ***/ HRESULT (STDMETHODCALLTYPE *EnumOutputs)( IDXGIAdapter *This, UINT output_idx, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIAdapter *This, DXGI_ADAPTER_DESC *desc); HRESULT (STDMETHODCALLTYPE *CheckInterfaceSupport)( IDXGIAdapter *This, REFGUID guid, LARGE_INTEGER *umd_version); END_INTERFACE } IDXGIAdapterVtbl; interface IDXGIAdapter { CONST_VTBL IDXGIAdapterVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIAdapter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIAdapter_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIAdapter_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIAdapter_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIAdapter_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIAdapter_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIAdapter_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIAdapter methods ***/ #define IDXGIAdapter_EnumOutputs(This,output_idx,output) (This)->lpVtbl->EnumOutputs(This,output_idx,output) #define IDXGIAdapter_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIAdapter_CheckInterfaceSupport(This,guid,umd_version) (This)->lpVtbl->CheckInterfaceSupport(This,guid,umd_version) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIAdapter_QueryInterface(IDXGIAdapter* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIAdapter_AddRef(IDXGIAdapter* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIAdapter_Release(IDXGIAdapter* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIAdapter_SetPrivateData(IDXGIAdapter* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter_SetPrivateDataInterface(IDXGIAdapter* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIAdapter_GetPrivateData(IDXGIAdapter* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter_GetParent(IDXGIAdapter* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIAdapter methods ***/ static FORCEINLINE HRESULT IDXGIAdapter_EnumOutputs(IDXGIAdapter* This,UINT output_idx,IDXGIOutput **output) { return This->lpVtbl->EnumOutputs(This,output_idx,output); } static FORCEINLINE HRESULT IDXGIAdapter_GetDesc(IDXGIAdapter* This,DXGI_ADAPTER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIAdapter_CheckInterfaceSupport(IDXGIAdapter* This,REFGUID guid,LARGE_INTEGER *umd_version) { return This->lpVtbl->CheckInterfaceSupport(This,guid,umd_version); } #endif #endif #endif #endif /* __IDXGIAdapter_INTERFACE_DEFINED__ */ #define DXGI_MAX_SWAP_CHAIN_BUFFERS (16) #define DXGI_PRESENT_TEST __MSABI_LONG(0x00000001U) #define DXGI_PRESENT_DO_NOT_SEQUENCE __MSABI_LONG(0x00000002U) #define DXGI_PRESENT_RESTART __MSABI_LONG(0x00000004U) #define DXGI_PRESENT_DO_NOT_WAIT __MSABI_LONG(0x00000008U) #define DXGI_PRESENT_STEREO_PREFER_RIGHT __MSABI_LONG(0x00000010U) #define DXGI_PRESENT_STEREO_TEMPORARY_MONO __MSABI_LONG(0x00000020U) #define DXGI_PRESENT_RESTRICT_TO_OUTPUT __MSABI_LONG(0x00000040U) #define DXGI_PRESENT_USE_DURATION __MSABI_LONG(0x00000100U) #define DXGI_PRESENT_ALLOW_TEARING __MSABI_LONG(0x00000200U) /***************************************************************************** * IDXGISwapChain interface */ #ifndef __IDXGISwapChain_INTERFACE_DEFINED__ #define __IDXGISwapChain_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa,0x04, 0x6a,0x9d,0x23,0xb8,0x88,0x6a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("310d36a0-d2e7-4c0a-aa04-6a9d23b8886a") IDXGISwapChain : public IDXGIDeviceSubObject { virtual HRESULT STDMETHODCALLTYPE Present( UINT sync_interval, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE GetBuffer( UINT buffer_idx, REFIID riid, void **surface) = 0; virtual HRESULT STDMETHODCALLTYPE SetFullscreenState( WINBOOL fullscreen, IDXGIOutput *target) = 0; virtual HRESULT STDMETHODCALLTYPE GetFullscreenState( WINBOOL *fullscreen, IDXGIOutput **target) = 0; virtual HRESULT STDMETHODCALLTYPE GetDesc( DXGI_SWAP_CHAIN_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeBuffers( UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeTarget( const DXGI_MODE_DESC *target_mode_desc) = 0; virtual HRESULT STDMETHODCALLTYPE GetContainingOutput( IDXGIOutput **output) = 0; virtual HRESULT STDMETHODCALLTYPE GetFrameStatistics( DXGI_FRAME_STATISTICS *stats) = 0; virtual HRESULT STDMETHODCALLTYPE GetLastPresentCount( UINT *last_present_count) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChain, 0x310d36a0, 0xd2e7, 0x4c0a, 0xaa,0x04, 0x6a,0x9d,0x23,0xb8,0x88,0x6a) #endif #else typedef struct IDXGISwapChainVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChain *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChain *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChain *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISwapChain *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISwapChain *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISwapChain *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISwapChain *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISwapChain *This, REFIID riid, void **device); /*** IDXGISwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *Present)( IDXGISwapChain *This, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDXGISwapChain *This, UINT buffer_idx, REFIID riid, void **surface); HRESULT (STDMETHODCALLTYPE *SetFullscreenState)( IDXGISwapChain *This, WINBOOL fullscreen, IDXGIOutput *target); HRESULT (STDMETHODCALLTYPE *GetFullscreenState)( IDXGISwapChain *This, WINBOOL *fullscreen, IDXGIOutput **target); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISwapChain *This, DXGI_SWAP_CHAIN_DESC *desc); HRESULT (STDMETHODCALLTYPE *ResizeBuffers)( IDXGISwapChain *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTarget)( IDXGISwapChain *This, const DXGI_MODE_DESC *target_mode_desc); HRESULT (STDMETHODCALLTYPE *GetContainingOutput)( IDXGISwapChain *This, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGISwapChain *This, DXGI_FRAME_STATISTICS *stats); HRESULT (STDMETHODCALLTYPE *GetLastPresentCount)( IDXGISwapChain *This, UINT *last_present_count); END_INTERFACE } IDXGISwapChainVtbl; interface IDXGISwapChain { CONST_VTBL IDXGISwapChainVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChain_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChain_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChain_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISwapChain_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISwapChain_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISwapChain_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISwapChain_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISwapChain_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISwapChain methods ***/ #define IDXGISwapChain_Present(This,sync_interval,flags) (This)->lpVtbl->Present(This,sync_interval,flags) #define IDXGISwapChain_GetBuffer(This,buffer_idx,riid,surface) (This)->lpVtbl->GetBuffer(This,buffer_idx,riid,surface) #define IDXGISwapChain_SetFullscreenState(This,fullscreen,target) (This)->lpVtbl->SetFullscreenState(This,fullscreen,target) #define IDXGISwapChain_GetFullscreenState(This,fullscreen,target) (This)->lpVtbl->GetFullscreenState(This,fullscreen,target) #define IDXGISwapChain_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISwapChain_ResizeBuffers(This,buffer_count,width,height,format,flags) (This)->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags) #define IDXGISwapChain_ResizeTarget(This,target_mode_desc) (This)->lpVtbl->ResizeTarget(This,target_mode_desc) #define IDXGISwapChain_GetContainingOutput(This,output) (This)->lpVtbl->GetContainingOutput(This,output) #define IDXGISwapChain_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #define IDXGISwapChain_GetLastPresentCount(This,last_present_count) (This)->lpVtbl->GetLastPresentCount(This,last_present_count) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChain_QueryInterface(IDXGISwapChain* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChain_AddRef(IDXGISwapChain* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChain_Release(IDXGISwapChain* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain_SetPrivateData(IDXGISwapChain* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain_SetPrivateDataInterface(IDXGISwapChain* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISwapChain_GetPrivateData(IDXGISwapChain* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain_GetParent(IDXGISwapChain* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain_GetDevice(IDXGISwapChain* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISwapChain methods ***/ static FORCEINLINE HRESULT IDXGISwapChain_Present(IDXGISwapChain* This,UINT sync_interval,UINT flags) { return This->lpVtbl->Present(This,sync_interval,flags); } static FORCEINLINE HRESULT IDXGISwapChain_GetBuffer(IDXGISwapChain* This,UINT buffer_idx,REFIID riid,void **surface) { return This->lpVtbl->GetBuffer(This,buffer_idx,riid,surface); } static FORCEINLINE HRESULT IDXGISwapChain_SetFullscreenState(IDXGISwapChain* This,WINBOOL fullscreen,IDXGIOutput *target) { return This->lpVtbl->SetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain_GetFullscreenState(IDXGISwapChain* This,WINBOOL *fullscreen,IDXGIOutput **target) { return This->lpVtbl->GetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain_GetDesc(IDXGISwapChain* This,DXGI_SWAP_CHAIN_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISwapChain_ResizeBuffers(IDXGISwapChain* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags) { return This->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags); } static FORCEINLINE HRESULT IDXGISwapChain_ResizeTarget(IDXGISwapChain* This,const DXGI_MODE_DESC *target_mode_desc) { return This->lpVtbl->ResizeTarget(This,target_mode_desc); } static FORCEINLINE HRESULT IDXGISwapChain_GetContainingOutput(IDXGISwapChain* This,IDXGIOutput **output) { return This->lpVtbl->GetContainingOutput(This,output); } static FORCEINLINE HRESULT IDXGISwapChain_GetFrameStatistics(IDXGISwapChain* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } static FORCEINLINE HRESULT IDXGISwapChain_GetLastPresentCount(IDXGISwapChain* This,UINT *last_present_count) { return This->lpVtbl->GetLastPresentCount(This,last_present_count); } #endif #endif #endif #endif /* __IDXGISwapChain_INTERFACE_DEFINED__ */ #define DXGI_MWA_NO_WINDOW_CHANGES 0x1 #define DXGI_MWA_NO_ALT_ENTER 0x2 #define DXGI_MWA_NO_PRINT_SCREEN 0x4 #define DXGI_MWA_VALID 0x7 /***************************************************************************** * IDXGIFactory interface */ #ifndef __IDXGIFactory_INTERFACE_DEFINED__ #define __IDXGIFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2,0x1a, 0xc9,0xae,0x32,0x1a,0xe3,0x69); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7b7166ec-21c7-44ae-b21a-c9ae321ae369") IDXGIFactory : public IDXGIObject { virtual HRESULT STDMETHODCALLTYPE EnumAdapters( UINT adapter_idx, IDXGIAdapter **adapter) = 0; virtual HRESULT STDMETHODCALLTYPE MakeWindowAssociation( HWND window, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE GetWindowAssociation( HWND *window) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSwapChain( IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSoftwareAdapter( HMODULE swrast, IDXGIAdapter **adapter) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory, 0x7b7166ec, 0x21c7, 0x44ae, 0xb2,0x1a, 0xc9,0xae,0x32,0x1a,0xe3,0x69) #endif #else typedef struct IDXGIFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory *This, HMODULE swrast, IDXGIAdapter **adapter); END_INTERFACE } IDXGIFactoryVtbl; interface IDXGIFactory { CONST_VTBL IDXGIFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory_QueryInterface(IDXGIFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory_AddRef(IDXGIFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory_Release(IDXGIFactory* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory_SetPrivateData(IDXGIFactory* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory_SetPrivateDataInterface(IDXGIFactory* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory_GetPrivateData(IDXGIFactory* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory_GetParent(IDXGIFactory* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory_EnumAdapters(IDXGIFactory* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory_MakeWindowAssociation(IDXGIFactory* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory_GetWindowAssociation(IDXGIFactory* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory_CreateSwapChain(IDXGIFactory* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory_CreateSoftwareAdapter(IDXGIFactory* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } #endif #endif #endif #endif /* __IDXGIFactory_INTERFACE_DEFINED__ */ HRESULT __stdcall CreateDXGIFactory(REFIID riid,void **factory); HRESULT __stdcall CreateDXGIFactory1(REFIID riid,void **factory); /***************************************************************************** * IDXGIDevice interface */ #ifndef __IDXGIDevice_INTERFACE_DEFINED__ #define __IDXGIDevice_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c,0x32, 0x88,0xfd,0x5f,0x44,0xc8,0x4c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("54ec77fa-1377-44e6-8c32-88fd5f44c84c") IDXGIDevice : public IDXGIObject { virtual HRESULT STDMETHODCALLTYPE GetAdapter( IDXGIAdapter **adapter) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSurface( const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface) = 0; virtual HRESULT STDMETHODCALLTYPE QueryResourceResidency( IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count) = 0; virtual HRESULT STDMETHODCALLTYPE SetGPUThreadPriority( INT priority) = 0; virtual HRESULT STDMETHODCALLTYPE GetGPUThreadPriority( INT *priority) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDevice, 0x54ec77fa, 0x1377, 0x44e6, 0x8c,0x32, 0x88,0xfd,0x5f,0x44,0xc8,0x4c) #endif #else typedef struct IDXGIDeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDevice *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDevice *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDevice *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDevice *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDevice *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDevice *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDevice *This, REFIID riid, void **parent); /*** IDXGIDevice methods ***/ HRESULT (STDMETHODCALLTYPE *GetAdapter)( IDXGIDevice *This, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDXGIDevice *This, const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface); HRESULT (STDMETHODCALLTYPE *QueryResourceResidency)( IDXGIDevice *This, IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count); HRESULT (STDMETHODCALLTYPE *SetGPUThreadPriority)( IDXGIDevice *This, INT priority); HRESULT (STDMETHODCALLTYPE *GetGPUThreadPriority)( IDXGIDevice *This, INT *priority); END_INTERFACE } IDXGIDeviceVtbl; interface IDXGIDevice { CONST_VTBL IDXGIDeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDevice_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDevice_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDevice_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDevice_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDevice_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDevice_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDevice_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDevice methods ***/ #define IDXGIDevice_GetAdapter(This,adapter) (This)->lpVtbl->GetAdapter(This,adapter) #define IDXGIDevice_CreateSurface(This,desc,surface_count,usage,shared_resource,surface) (This)->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface) #define IDXGIDevice_QueryResourceResidency(This,resources,residency,resource_count) (This)->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count) #define IDXGIDevice_SetGPUThreadPriority(This,priority) (This)->lpVtbl->SetGPUThreadPriority(This,priority) #define IDXGIDevice_GetGPUThreadPriority(This,priority) (This)->lpVtbl->GetGPUThreadPriority(This,priority) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDevice_QueryInterface(IDXGIDevice* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDevice_AddRef(IDXGIDevice* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDevice_Release(IDXGIDevice* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDevice_SetPrivateData(IDXGIDevice* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice_SetPrivateDataInterface(IDXGIDevice* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDevice_GetPrivateData(IDXGIDevice* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice_GetParent(IDXGIDevice* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDevice methods ***/ static FORCEINLINE HRESULT IDXGIDevice_GetAdapter(IDXGIDevice* This,IDXGIAdapter **adapter) { return This->lpVtbl->GetAdapter(This,adapter); } static FORCEINLINE HRESULT IDXGIDevice_CreateSurface(IDXGIDevice* This,const DXGI_SURFACE_DESC *desc,UINT surface_count,DXGI_USAGE usage,const DXGI_SHARED_RESOURCE *shared_resource,IDXGISurface **surface) { return This->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface); } static FORCEINLINE HRESULT IDXGIDevice_QueryResourceResidency(IDXGIDevice* This,IUnknown *const *resources,DXGI_RESIDENCY *residency,UINT resource_count) { return This->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count); } static FORCEINLINE HRESULT IDXGIDevice_SetGPUThreadPriority(IDXGIDevice* This,INT priority) { return This->lpVtbl->SetGPUThreadPriority(This,priority); } static FORCEINLINE HRESULT IDXGIDevice_GetGPUThreadPriority(IDXGIDevice* This,INT *priority) { return This->lpVtbl->GetGPUThreadPriority(This,priority); } #endif #endif #endif #endif /* __IDXGIDevice_INTERFACE_DEFINED__ */ typedef enum DXGI_ADAPTER_FLAG { DXGI_ADAPTER_FLAG_NONE = 0, DXGI_ADAPTER_FLAG_REMOTE = 1, DXGI_ADAPTER_FLAG_SOFTWARE = 2, DXGI_ADAPTER_FLAG_FORCE_DWORD = 0xffffffff } DXGI_ADAPTER_FLAG; typedef struct DXGI_ADAPTER_DESC1 { WCHAR Description[128]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; UINT Flags; } DXGI_ADAPTER_DESC1; typedef struct DXGI_DISPLAY_COLOR_SPACE { FLOAT PrimaryCoordinates[8][2]; FLOAT WhitePoints[16][2]; } DXGI_DISPLAY_COLOR_SPACE; /***************************************************************************** * IDXGIAdapter1 interface */ #ifndef __IDXGIAdapter1_INTERFACE_DEFINED__ #define __IDXGIAdapter1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91,0xfd, 0x08,0x68,0x79,0x01,0x1a,0x05); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("29038f61-3839-4626-91fd-086879011a05") IDXGIAdapter1 : public IDXGIAdapter { virtual HRESULT STDMETHODCALLTYPE GetDesc1( DXGI_ADAPTER_DESC1 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIAdapter1, 0x29038f61, 0x3839, 0x4626, 0x91,0xfd, 0x08,0x68,0x79,0x01,0x1a,0x05) #endif #else typedef struct IDXGIAdapter1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIAdapter1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIAdapter1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIAdapter1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIAdapter1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIAdapter1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIAdapter1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIAdapter1 *This, REFIID riid, void **parent); /*** IDXGIAdapter methods ***/ HRESULT (STDMETHODCALLTYPE *EnumOutputs)( IDXGIAdapter1 *This, UINT output_idx, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIAdapter1 *This, DXGI_ADAPTER_DESC *desc); HRESULT (STDMETHODCALLTYPE *CheckInterfaceSupport)( IDXGIAdapter1 *This, REFGUID guid, LARGE_INTEGER *umd_version); /*** IDXGIAdapter1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGIAdapter1 *This, DXGI_ADAPTER_DESC1 *pDesc); END_INTERFACE } IDXGIAdapter1Vtbl; interface IDXGIAdapter1 { CONST_VTBL IDXGIAdapter1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIAdapter1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIAdapter1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIAdapter1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIAdapter1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIAdapter1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIAdapter1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIAdapter1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIAdapter methods ***/ #define IDXGIAdapter1_EnumOutputs(This,output_idx,output) (This)->lpVtbl->EnumOutputs(This,output_idx,output) #define IDXGIAdapter1_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIAdapter1_CheckInterfaceSupport(This,guid,umd_version) (This)->lpVtbl->CheckInterfaceSupport(This,guid,umd_version) /*** IDXGIAdapter1 methods ***/ #define IDXGIAdapter1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIAdapter1_QueryInterface(IDXGIAdapter1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIAdapter1_AddRef(IDXGIAdapter1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIAdapter1_Release(IDXGIAdapter1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIAdapter1_SetPrivateData(IDXGIAdapter1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter1_SetPrivateDataInterface(IDXGIAdapter1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIAdapter1_GetPrivateData(IDXGIAdapter1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter1_GetParent(IDXGIAdapter1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIAdapter methods ***/ static FORCEINLINE HRESULT IDXGIAdapter1_EnumOutputs(IDXGIAdapter1* This,UINT output_idx,IDXGIOutput **output) { return This->lpVtbl->EnumOutputs(This,output_idx,output); } static FORCEINLINE HRESULT IDXGIAdapter1_GetDesc(IDXGIAdapter1* This,DXGI_ADAPTER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIAdapter1_CheckInterfaceSupport(IDXGIAdapter1* This,REFGUID guid,LARGE_INTEGER *umd_version) { return This->lpVtbl->CheckInterfaceSupport(This,guid,umd_version); } /*** IDXGIAdapter1 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter1_GetDesc1(IDXGIAdapter1* This,DXGI_ADAPTER_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } #endif #endif #endif #endif /* __IDXGIAdapter1_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDevice1 interface */ #ifndef __IDXGIDevice1_INTERFACE_DEFINED__ #define __IDXGIDevice1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba,0x28, 0x07,0x01,0x43,0xb4,0x39,0x2c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("77db970f-6276-48ba-ba28-070143b4392c") IDXGIDevice1 : public IDXGIDevice { virtual HRESULT STDMETHODCALLTYPE SetMaximumFrameLatency( UINT MaxLatency) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaximumFrameLatency( UINT *pMaxLatency) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDevice1, 0x77db970f, 0x6276, 0x48ba, 0xba,0x28, 0x07,0x01,0x43,0xb4,0x39,0x2c) #endif #else typedef struct IDXGIDevice1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDevice1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDevice1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDevice1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDevice1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDevice1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDevice1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDevice1 *This, REFIID riid, void **parent); /*** IDXGIDevice methods ***/ HRESULT (STDMETHODCALLTYPE *GetAdapter)( IDXGIDevice1 *This, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDXGIDevice1 *This, const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface); HRESULT (STDMETHODCALLTYPE *QueryResourceResidency)( IDXGIDevice1 *This, IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count); HRESULT (STDMETHODCALLTYPE *SetGPUThreadPriority)( IDXGIDevice1 *This, INT priority); HRESULT (STDMETHODCALLTYPE *GetGPUThreadPriority)( IDXGIDevice1 *This, INT *priority); /*** IDXGIDevice1 methods ***/ HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGIDevice1 *This, UINT MaxLatency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGIDevice1 *This, UINT *pMaxLatency); END_INTERFACE } IDXGIDevice1Vtbl; interface IDXGIDevice1 { CONST_VTBL IDXGIDevice1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDevice1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDevice1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDevice1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDevice1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDevice1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDevice1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDevice1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDevice methods ***/ #define IDXGIDevice1_GetAdapter(This,adapter) (This)->lpVtbl->GetAdapter(This,adapter) #define IDXGIDevice1_CreateSurface(This,desc,surface_count,usage,shared_resource,surface) (This)->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface) #define IDXGIDevice1_QueryResourceResidency(This,resources,residency,resource_count) (This)->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count) #define IDXGIDevice1_SetGPUThreadPriority(This,priority) (This)->lpVtbl->SetGPUThreadPriority(This,priority) #define IDXGIDevice1_GetGPUThreadPriority(This,priority) (This)->lpVtbl->GetGPUThreadPriority(This,priority) /*** IDXGIDevice1 methods ***/ #define IDXGIDevice1_SetMaximumFrameLatency(This,MaxLatency) (This)->lpVtbl->SetMaximumFrameLatency(This,MaxLatency) #define IDXGIDevice1_GetMaximumFrameLatency(This,pMaxLatency) (This)->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDevice1_QueryInterface(IDXGIDevice1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDevice1_AddRef(IDXGIDevice1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDevice1_Release(IDXGIDevice1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDevice1_SetPrivateData(IDXGIDevice1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice1_SetPrivateDataInterface(IDXGIDevice1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDevice1_GetPrivateData(IDXGIDevice1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice1_GetParent(IDXGIDevice1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDevice methods ***/ static FORCEINLINE HRESULT IDXGIDevice1_GetAdapter(IDXGIDevice1* This,IDXGIAdapter **adapter) { return This->lpVtbl->GetAdapter(This,adapter); } static FORCEINLINE HRESULT IDXGIDevice1_CreateSurface(IDXGIDevice1* This,const DXGI_SURFACE_DESC *desc,UINT surface_count,DXGI_USAGE usage,const DXGI_SHARED_RESOURCE *shared_resource,IDXGISurface **surface) { return This->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface); } static FORCEINLINE HRESULT IDXGIDevice1_QueryResourceResidency(IDXGIDevice1* This,IUnknown *const *resources,DXGI_RESIDENCY *residency,UINT resource_count) { return This->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count); } static FORCEINLINE HRESULT IDXGIDevice1_SetGPUThreadPriority(IDXGIDevice1* This,INT priority) { return This->lpVtbl->SetGPUThreadPriority(This,priority); } static FORCEINLINE HRESULT IDXGIDevice1_GetGPUThreadPriority(IDXGIDevice1* This,INT *priority) { return This->lpVtbl->GetGPUThreadPriority(This,priority); } /*** IDXGIDevice1 methods ***/ static FORCEINLINE HRESULT IDXGIDevice1_SetMaximumFrameLatency(IDXGIDevice1* This,UINT MaxLatency) { return This->lpVtbl->SetMaximumFrameLatency(This,MaxLatency); } static FORCEINLINE HRESULT IDXGIDevice1_GetMaximumFrameLatency(IDXGIDevice1* This,UINT *pMaxLatency) { return This->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency); } #endif #endif #endif #endif /* __IDXGIDevice1_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory1 interface */ #ifndef __IDXGIFactory1_INTERFACE_DEFINED__ #define __IDXGIFactory1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8,0x29, 0x25,0x3c,0x83,0xd1,0xb3,0x87); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("770aae78-f26f-4dba-a829-253c83d1b387") IDXGIFactory1 : public IDXGIFactory { virtual HRESULT STDMETHODCALLTYPE EnumAdapters1( UINT Adapter, IDXGIAdapter1 **ppAdapter) = 0; virtual WINBOOL STDMETHODCALLTYPE IsCurrent( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory1, 0x770aae78, 0xf26f, 0x4dba, 0xa8,0x29, 0x25,0x3c,0x83,0xd1,0xb3,0x87) #endif #else typedef struct IDXGIFactory1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory1 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory1 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory1 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory1 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory1 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory1 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory1 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory1 *This); END_INTERFACE } IDXGIFactory1Vtbl; interface IDXGIFactory1 { CONST_VTBL IDXGIFactory1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory1_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory1_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory1_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory1_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory1_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory1_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory1_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory1_QueryInterface(IDXGIFactory1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory1_AddRef(IDXGIFactory1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory1_Release(IDXGIFactory1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory1_SetPrivateData(IDXGIFactory1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory1_SetPrivateDataInterface(IDXGIFactory1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory1_GetPrivateData(IDXGIFactory1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory1_GetParent(IDXGIFactory1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory1_EnumAdapters(IDXGIFactory1* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory1_MakeWindowAssociation(IDXGIFactory1* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory1_GetWindowAssociation(IDXGIFactory1* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory1_CreateSwapChain(IDXGIFactory1* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory1_CreateSoftwareAdapter(IDXGIFactory1* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory1_EnumAdapters1(IDXGIFactory1* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory1_IsCurrent(IDXGIFactory1* This) { return This->lpVtbl->IsCurrent(This); } #endif #endif #endif #endif /* __IDXGIFactory1_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi_h__ */ dxvk-0~git20220822.9df86f2/dxgi1_2.h000066400000000000000000002570701430055512200164200ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi1_2.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi1_2_h__ #define __dxgi1_2_h__ /* Forward declarations */ #ifndef __IDXGIOutputDuplication_FWD_DEFINED__ #define __IDXGIOutputDuplication_FWD_DEFINED__ typedef interface IDXGIOutputDuplication IDXGIOutputDuplication; #ifdef __cplusplus interface IDXGIOutputDuplication; #endif /* __cplusplus */ #endif #ifndef __IDXGISurface2_FWD_DEFINED__ #define __IDXGISurface2_FWD_DEFINED__ typedef interface IDXGISurface2 IDXGISurface2; #ifdef __cplusplus interface IDXGISurface2; #endif /* __cplusplus */ #endif #ifndef __IDXGIResource1_FWD_DEFINED__ #define __IDXGIResource1_FWD_DEFINED__ typedef interface IDXGIResource1 IDXGIResource1; #ifdef __cplusplus interface IDXGIResource1; #endif /* __cplusplus */ #endif #ifndef __IDXGIDisplayControl_FWD_DEFINED__ #define __IDXGIDisplayControl_FWD_DEFINED__ typedef interface IDXGIDisplayControl IDXGIDisplayControl; #ifdef __cplusplus interface IDXGIDisplayControl; #endif /* __cplusplus */ #endif #ifndef __IDXGIDevice2_FWD_DEFINED__ #define __IDXGIDevice2_FWD_DEFINED__ typedef interface IDXGIDevice2 IDXGIDevice2; #ifdef __cplusplus interface IDXGIDevice2; #endif /* __cplusplus */ #endif #ifndef __IDXGISwapChain1_FWD_DEFINED__ #define __IDXGISwapChain1_FWD_DEFINED__ typedef interface IDXGISwapChain1 IDXGISwapChain1; #ifdef __cplusplus interface IDXGISwapChain1; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory2_FWD_DEFINED__ #define __IDXGIFactory2_FWD_DEFINED__ typedef interface IDXGIFactory2 IDXGIFactory2; #ifdef __cplusplus interface IDXGIFactory2; #endif /* __cplusplus */ #endif #ifndef __IDXGIAdapter2_FWD_DEFINED__ #define __IDXGIAdapter2_FWD_DEFINED__ typedef interface IDXGIAdapter2 IDXGIAdapter2; #ifdef __cplusplus interface IDXGIAdapter2; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput1_FWD_DEFINED__ #define __IDXGIOutput1_FWD_DEFINED__ typedef interface IDXGIOutput1 IDXGIOutput1; #ifdef __cplusplus interface IDXGIOutput1; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif #define DXGI_ENUM_MODES_STEREO (0x4) #define DXGI_ENUM_MODES_DISABLED_STEREO (0x8) #define DXGI_SHARED_RESOURCE_READ (0x80000000) #define DXGI_SHARED_RESOURCE_WRITE (0x1) typedef enum _DXGI_OFFER_RESOURCE_PRIORITY { DXGI_OFFER_RESOURCE_PRIORITY_LOW = 1, DXGI_OFFER_RESOURCE_PRIORITY_NORMAL = 2, DXGI_OFFER_RESOURCE_PRIORITY_HIGH = 3 } DXGI_OFFER_RESOURCE_PRIORITY; typedef enum DXGI_ALPHA_MODE { DXGI_ALPHA_MODE_UNSPECIFIED = 0, DXGI_ALPHA_MODE_PREMULTIPLIED = 1, DXGI_ALPHA_MODE_STRAIGHT = 2, DXGI_ALPHA_MODE_IGNORE = 3, DXGI_ALPHA_MODE_FORCE_DWORD = 0xffffffff } DXGI_ALPHA_MODE; typedef struct DXGI_OUTDUPL_MOVE_RECT { POINT SourcePoint; RECT DestinationRect; } DXGI_OUTDUPL_MOVE_RECT; typedef struct DXGI_OUTDUPL_DESC { DXGI_MODE_DESC ModeDesc; DXGI_MODE_ROTATION Rotation; WINBOOL DesktopImageInSystemMemory; } DXGI_OUTDUPL_DESC; typedef struct DXGI_OUTDUPL_POINTER_POSITION { POINT Position; WINBOOL Visible; } DXGI_OUTDUPL_POINTER_POSITION; typedef enum DXGI_OUTDUPL_POINTER_SHAPE_TYPE { DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MONOCHROME = 0x1, DXGI_OUTDUPL_POINTER_SHAPE_TYPE_COLOR = 0x2, DXGI_OUTDUPL_POINTER_SHAPE_TYPE_MASKED_COLOR = 0x4 } DXGI_OUTDUPL_POINTER_SHAPE_TYPE; typedef struct DXGI_OUTDUPL_POINTER_SHAPE_INFO { UINT Type; UINT Width; UINT Height; UINT Pitch; POINT HotSpot; } DXGI_OUTDUPL_POINTER_SHAPE_INFO; typedef struct DXGI_OUTDUPL_FRAME_INFO { LARGE_INTEGER LastPresentTime; LARGE_INTEGER LastMouseUpdateTime; UINT AccumulatedFrames; WINBOOL RectsCoalesced; WINBOOL ProtectedContentMaskedOut; DXGI_OUTDUPL_POINTER_POSITION PointerPosition; UINT TotalMetadataBufferSize; UINT PointerShapeBufferSize; } DXGI_OUTDUPL_FRAME_INFO; typedef struct DXGI_MODE_DESC1 { UINT Width; UINT Height; DXGI_RATIONAL RefreshRate; DXGI_FORMAT Format; DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; DXGI_MODE_SCALING Scaling; WINBOOL Stereo; } DXGI_MODE_DESC1; /***************************************************************************** * IDXGIOutputDuplication interface */ #ifndef __IDXGIOutputDuplication_INTERFACE_DEFINED__ #define __IDXGIOutputDuplication_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutputDuplication, 0x191cfac3, 0xa341, 0x470d, 0xb2,0x6e, 0xa8,0x64,0xf4,0x28,0x31,0x9c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("191cfac3-a341-470d-b26e-a864f428319c") IDXGIOutputDuplication : public IDXGIObject { virtual void STDMETHODCALLTYPE GetDesc( DXGI_OUTDUPL_DESC *desc) = 0; virtual HRESULT STDMETHODCALLTYPE AcquireNextFrame( UINT timeout_in_milliseconds, DXGI_OUTDUPL_FRAME_INFO *frame_info, IDXGIResource **desktop_resource) = 0; virtual HRESULT STDMETHODCALLTYPE GetFrameDirtyRects( UINT dirty_rects_buffer_size, RECT *dirty_rects_buffer, UINT *dirty_rects_buffer_size_required) = 0; virtual HRESULT STDMETHODCALLTYPE GetFrameMoveRects( UINT move_rects_buffer_size, DXGI_OUTDUPL_MOVE_RECT *move_rect_buffer, UINT *move_rects_buffer_size_required) = 0; virtual HRESULT STDMETHODCALLTYPE GetFramePointerShape( UINT pointer_shape_buffer_size, void *pointer_shape_buffer, UINT *pointer_shape_buffer_size_required, DXGI_OUTDUPL_POINTER_SHAPE_INFO *pointer_shape_info) = 0; virtual HRESULT STDMETHODCALLTYPE MapDesktopSurface( DXGI_MAPPED_RECT *locked_rect) = 0; virtual HRESULT STDMETHODCALLTYPE UnMapDesktopSurface( ) = 0; virtual HRESULT STDMETHODCALLTYPE ReleaseFrame( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutputDuplication, 0x191cfac3, 0xa341, 0x470d, 0xb2,0x6e, 0xa8,0x64,0xf4,0x28,0x31,0x9c) #endif #else typedef struct IDXGIOutputDuplicationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutputDuplication *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutputDuplication *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutputDuplication *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutputDuplication *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutputDuplication *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutputDuplication *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutputDuplication *This, REFIID riid, void **parent); /*** IDXGIOutputDuplication methods ***/ void (STDMETHODCALLTYPE *GetDesc)( IDXGIOutputDuplication *This, DXGI_OUTDUPL_DESC *desc); HRESULT (STDMETHODCALLTYPE *AcquireNextFrame)( IDXGIOutputDuplication *This, UINT timeout_in_milliseconds, DXGI_OUTDUPL_FRAME_INFO *frame_info, IDXGIResource **desktop_resource); HRESULT (STDMETHODCALLTYPE *GetFrameDirtyRects)( IDXGIOutputDuplication *This, UINT dirty_rects_buffer_size, RECT *dirty_rects_buffer, UINT *dirty_rects_buffer_size_required); HRESULT (STDMETHODCALLTYPE *GetFrameMoveRects)( IDXGIOutputDuplication *This, UINT move_rects_buffer_size, DXGI_OUTDUPL_MOVE_RECT *move_rect_buffer, UINT *move_rects_buffer_size_required); HRESULT (STDMETHODCALLTYPE *GetFramePointerShape)( IDXGIOutputDuplication *This, UINT pointer_shape_buffer_size, void *pointer_shape_buffer, UINT *pointer_shape_buffer_size_required, DXGI_OUTDUPL_POINTER_SHAPE_INFO *pointer_shape_info); HRESULT (STDMETHODCALLTYPE *MapDesktopSurface)( IDXGIOutputDuplication *This, DXGI_MAPPED_RECT *locked_rect); HRESULT (STDMETHODCALLTYPE *UnMapDesktopSurface)( IDXGIOutputDuplication *This); HRESULT (STDMETHODCALLTYPE *ReleaseFrame)( IDXGIOutputDuplication *This); END_INTERFACE } IDXGIOutputDuplicationVtbl; interface IDXGIOutputDuplication { CONST_VTBL IDXGIOutputDuplicationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutputDuplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutputDuplication_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutputDuplication_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutputDuplication_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutputDuplication_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutputDuplication_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutputDuplication_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutputDuplication methods ***/ #define IDXGIOutputDuplication_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutputDuplication_AcquireNextFrame(This,timeout_in_milliseconds,frame_info,desktop_resource) (This)->lpVtbl->AcquireNextFrame(This,timeout_in_milliseconds,frame_info,desktop_resource) #define IDXGIOutputDuplication_GetFrameDirtyRects(This,dirty_rects_buffer_size,dirty_rects_buffer,dirty_rects_buffer_size_required) (This)->lpVtbl->GetFrameDirtyRects(This,dirty_rects_buffer_size,dirty_rects_buffer,dirty_rects_buffer_size_required) #define IDXGIOutputDuplication_GetFrameMoveRects(This,move_rects_buffer_size,move_rect_buffer,move_rects_buffer_size_required) (This)->lpVtbl->GetFrameMoveRects(This,move_rects_buffer_size,move_rect_buffer,move_rects_buffer_size_required) #define IDXGIOutputDuplication_GetFramePointerShape(This,pointer_shape_buffer_size,pointer_shape_buffer,pointer_shape_buffer_size_required,pointer_shape_info) (This)->lpVtbl->GetFramePointerShape(This,pointer_shape_buffer_size,pointer_shape_buffer,pointer_shape_buffer_size_required,pointer_shape_info) #define IDXGIOutputDuplication_MapDesktopSurface(This,locked_rect) (This)->lpVtbl->MapDesktopSurface(This,locked_rect) #define IDXGIOutputDuplication_UnMapDesktopSurface(This) (This)->lpVtbl->UnMapDesktopSurface(This) #define IDXGIOutputDuplication_ReleaseFrame(This) (This)->lpVtbl->ReleaseFrame(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutputDuplication_QueryInterface(IDXGIOutputDuplication* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutputDuplication_AddRef(IDXGIOutputDuplication* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutputDuplication_Release(IDXGIOutputDuplication* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutputDuplication_SetPrivateData(IDXGIOutputDuplication* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutputDuplication_SetPrivateDataInterface(IDXGIOutputDuplication* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutputDuplication_GetPrivateData(IDXGIOutputDuplication* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutputDuplication_GetParent(IDXGIOutputDuplication* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutputDuplication methods ***/ static FORCEINLINE void IDXGIOutputDuplication_GetDesc(IDXGIOutputDuplication* This,DXGI_OUTDUPL_DESC *desc) { This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutputDuplication_AcquireNextFrame(IDXGIOutputDuplication* This,UINT timeout_in_milliseconds,DXGI_OUTDUPL_FRAME_INFO *frame_info,IDXGIResource **desktop_resource) { return This->lpVtbl->AcquireNextFrame(This,timeout_in_milliseconds,frame_info,desktop_resource); } static FORCEINLINE HRESULT IDXGIOutputDuplication_GetFrameDirtyRects(IDXGIOutputDuplication* This,UINT dirty_rects_buffer_size,RECT *dirty_rects_buffer,UINT *dirty_rects_buffer_size_required) { return This->lpVtbl->GetFrameDirtyRects(This,dirty_rects_buffer_size,dirty_rects_buffer,dirty_rects_buffer_size_required); } static FORCEINLINE HRESULT IDXGIOutputDuplication_GetFrameMoveRects(IDXGIOutputDuplication* This,UINT move_rects_buffer_size,DXGI_OUTDUPL_MOVE_RECT *move_rect_buffer,UINT *move_rects_buffer_size_required) { return This->lpVtbl->GetFrameMoveRects(This,move_rects_buffer_size,move_rect_buffer,move_rects_buffer_size_required); } static FORCEINLINE HRESULT IDXGIOutputDuplication_GetFramePointerShape(IDXGIOutputDuplication* This,UINT pointer_shape_buffer_size,void *pointer_shape_buffer,UINT *pointer_shape_buffer_size_required,DXGI_OUTDUPL_POINTER_SHAPE_INFO *pointer_shape_info) { return This->lpVtbl->GetFramePointerShape(This,pointer_shape_buffer_size,pointer_shape_buffer,pointer_shape_buffer_size_required,pointer_shape_info); } static FORCEINLINE HRESULT IDXGIOutputDuplication_MapDesktopSurface(IDXGIOutputDuplication* This,DXGI_MAPPED_RECT *locked_rect) { return This->lpVtbl->MapDesktopSurface(This,locked_rect); } static FORCEINLINE HRESULT IDXGIOutputDuplication_UnMapDesktopSurface(IDXGIOutputDuplication* This) { return This->lpVtbl->UnMapDesktopSurface(This); } static FORCEINLINE HRESULT IDXGIOutputDuplication_ReleaseFrame(IDXGIOutputDuplication* This) { return This->lpVtbl->ReleaseFrame(This); } #endif #endif #endif #endif /* __IDXGIOutputDuplication_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISurface2 interface */ #ifndef __IDXGISurface2_INTERFACE_DEFINED__ #define __IDXGISurface2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISurface2, 0xaba496dd, 0xb617, 0x4cb8, 0xa8,0x66, 0xbc,0x44,0xd7,0xeb,0x1f,0xa2); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("aba496dd-b617-4cb8-a866-bc44d7eb1fa2") IDXGISurface2 : public IDXGISurface1 { virtual HRESULT STDMETHODCALLTYPE GetResource( REFIID iid, void **parent_resource, UINT *subresource_idx) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISurface2, 0xaba496dd, 0xb617, 0x4cb8, 0xa8,0x66, 0xbc,0x44,0xd7,0xeb,0x1f,0xa2) #endif #else typedef struct IDXGISurface2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISurface2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISurface2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISurface2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISurface2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISurface2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISurface2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISurface2 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISurface2 *This, REFIID riid, void **device); /*** IDXGISurface methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISurface2 *This, DXGI_SURFACE_DESC *desc); HRESULT (STDMETHODCALLTYPE *Map)( IDXGISurface2 *This, DXGI_MAPPED_RECT *mapped_rect, UINT flags); HRESULT (STDMETHODCALLTYPE *Unmap)( IDXGISurface2 *This); /*** IDXGISurface1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDC)( IDXGISurface2 *This, WINBOOL discard, HDC *hdc); HRESULT (STDMETHODCALLTYPE *ReleaseDC)( IDXGISurface2 *This, RECT *dirty_rect); /*** IDXGISurface2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetResource)( IDXGISurface2 *This, REFIID iid, void **parent_resource, UINT *subresource_idx); END_INTERFACE } IDXGISurface2Vtbl; interface IDXGISurface2 { CONST_VTBL IDXGISurface2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISurface2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISurface2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISurface2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISurface2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISurface2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISurface2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISurface2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISurface2_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISurface methods ***/ #define IDXGISurface2_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISurface2_Map(This,mapped_rect,flags) (This)->lpVtbl->Map(This,mapped_rect,flags) #define IDXGISurface2_Unmap(This) (This)->lpVtbl->Unmap(This) /*** IDXGISurface1 methods ***/ #define IDXGISurface2_GetDC(This,discard,hdc) (This)->lpVtbl->GetDC(This,discard,hdc) #define IDXGISurface2_ReleaseDC(This,dirty_rect) (This)->lpVtbl->ReleaseDC(This,dirty_rect) /*** IDXGISurface2 methods ***/ #define IDXGISurface2_GetResource(This,iid,parent_resource,subresource_idx) (This)->lpVtbl->GetResource(This,iid,parent_resource,subresource_idx) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISurface2_QueryInterface(IDXGISurface2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISurface2_AddRef(IDXGISurface2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISurface2_Release(IDXGISurface2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISurface2_SetPrivateData(IDXGISurface2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface2_SetPrivateDataInterface(IDXGISurface2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISurface2_GetPrivateData(IDXGISurface2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISurface2_GetParent(IDXGISurface2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISurface2_GetDevice(IDXGISurface2* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISurface methods ***/ static FORCEINLINE HRESULT IDXGISurface2_GetDesc(IDXGISurface2* This,DXGI_SURFACE_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISurface2_Map(IDXGISurface2* This,DXGI_MAPPED_RECT *mapped_rect,UINT flags) { return This->lpVtbl->Map(This,mapped_rect,flags); } static FORCEINLINE HRESULT IDXGISurface2_Unmap(IDXGISurface2* This) { return This->lpVtbl->Unmap(This); } /*** IDXGISurface1 methods ***/ static FORCEINLINE HRESULT IDXGISurface2_GetDC(IDXGISurface2* This,WINBOOL discard,HDC *hdc) { return This->lpVtbl->GetDC(This,discard,hdc); } static FORCEINLINE HRESULT IDXGISurface2_ReleaseDC(IDXGISurface2* This,RECT *dirty_rect) { return This->lpVtbl->ReleaseDC(This,dirty_rect); } /*** IDXGISurface2 methods ***/ static FORCEINLINE HRESULT IDXGISurface2_GetResource(IDXGISurface2* This,REFIID iid,void **parent_resource,UINT *subresource_idx) { return This->lpVtbl->GetResource(This,iid,parent_resource,subresource_idx); } #endif #endif #endif #endif /* __IDXGISurface2_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIResource1 interface */ #ifndef __IDXGIResource1_INTERFACE_DEFINED__ #define __IDXGIResource1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIResource1, 0x30961379, 0x4609, 0x4a41, 0x99,0x8e, 0x54,0xfe,0x56,0x7e,0xe0,0xc1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("30961379-4609-4a41-998e-54fe567ee0c1") IDXGIResource1 : public IDXGIResource { virtual HRESULT STDMETHODCALLTYPE CreateSubresourceSurface( UINT index, IDXGISurface2 **surface) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSharedHandle( const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIResource1, 0x30961379, 0x4609, 0x4a41, 0x99,0x8e, 0x54,0xfe,0x56,0x7e,0xe0,0xc1) #endif #else typedef struct IDXGIResource1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIResource1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIResource1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIResource1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIResource1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIResource1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIResource1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIResource1 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGIResource1 *This, REFIID riid, void **device); /*** IDXGIResource methods ***/ HRESULT (STDMETHODCALLTYPE *GetSharedHandle)( IDXGIResource1 *This, HANDLE *pSharedHandle); HRESULT (STDMETHODCALLTYPE *GetUsage)( IDXGIResource1 *This, DXGI_USAGE *pUsage); HRESULT (STDMETHODCALLTYPE *SetEvictionPriority)( IDXGIResource1 *This, UINT EvictionPriority); HRESULT (STDMETHODCALLTYPE *GetEvictionPriority)( IDXGIResource1 *This, UINT *pEvictionPriority); /*** IDXGIResource1 methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSubresourceSurface)( IDXGIResource1 *This, UINT index, IDXGISurface2 **surface); HRESULT (STDMETHODCALLTYPE *CreateSharedHandle)( IDXGIResource1 *This, const SECURITY_ATTRIBUTES *attributes, DWORD access, const WCHAR *name, HANDLE *handle); END_INTERFACE } IDXGIResource1Vtbl; interface IDXGIResource1 { CONST_VTBL IDXGIResource1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIResource1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIResource1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIResource1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIResource1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIResource1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIResource1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIResource1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGIResource1_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGIResource methods ***/ #define IDXGIResource1_GetSharedHandle(This,pSharedHandle) (This)->lpVtbl->GetSharedHandle(This,pSharedHandle) #define IDXGIResource1_GetUsage(This,pUsage) (This)->lpVtbl->GetUsage(This,pUsage) #define IDXGIResource1_SetEvictionPriority(This,EvictionPriority) (This)->lpVtbl->SetEvictionPriority(This,EvictionPriority) #define IDXGIResource1_GetEvictionPriority(This,pEvictionPriority) (This)->lpVtbl->GetEvictionPriority(This,pEvictionPriority) /*** IDXGIResource1 methods ***/ #define IDXGIResource1_CreateSubresourceSurface(This,index,surface) (This)->lpVtbl->CreateSubresourceSurface(This,index,surface) #define IDXGIResource1_CreateSharedHandle(This,attributes,access,name,handle) (This)->lpVtbl->CreateSharedHandle(This,attributes,access,name,handle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIResource1_QueryInterface(IDXGIResource1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIResource1_AddRef(IDXGIResource1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIResource1_Release(IDXGIResource1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIResource1_SetPrivateData(IDXGIResource1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIResource1_SetPrivateDataInterface(IDXGIResource1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIResource1_GetPrivateData(IDXGIResource1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIResource1_GetParent(IDXGIResource1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGIResource1_GetDevice(IDXGIResource1* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGIResource methods ***/ static FORCEINLINE HRESULT IDXGIResource1_GetSharedHandle(IDXGIResource1* This,HANDLE *pSharedHandle) { return This->lpVtbl->GetSharedHandle(This,pSharedHandle); } static FORCEINLINE HRESULT IDXGIResource1_GetUsage(IDXGIResource1* This,DXGI_USAGE *pUsage) { return This->lpVtbl->GetUsage(This,pUsage); } static FORCEINLINE HRESULT IDXGIResource1_SetEvictionPriority(IDXGIResource1* This,UINT EvictionPriority) { return This->lpVtbl->SetEvictionPriority(This,EvictionPriority); } static FORCEINLINE HRESULT IDXGIResource1_GetEvictionPriority(IDXGIResource1* This,UINT *pEvictionPriority) { return This->lpVtbl->GetEvictionPriority(This,pEvictionPriority); } /*** IDXGIResource1 methods ***/ static FORCEINLINE HRESULT IDXGIResource1_CreateSubresourceSurface(IDXGIResource1* This,UINT index,IDXGISurface2 **surface) { return This->lpVtbl->CreateSubresourceSurface(This,index,surface); } static FORCEINLINE HRESULT IDXGIResource1_CreateSharedHandle(IDXGIResource1* This,const SECURITY_ATTRIBUTES *attributes,DWORD access,const WCHAR *name,HANDLE *handle) { return This->lpVtbl->CreateSharedHandle(This,attributes,access,name,handle); } #endif #endif #endif #endif /* __IDXGIResource1_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDisplayControl interface */ #ifndef __IDXGIDisplayControl_INTERFACE_DEFINED__ #define __IDXGIDisplayControl_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDisplayControl, 0xea9dbf1a, 0xc88e, 0x4486, 0x85,0x4a, 0x98,0xaa,0x01,0x38,0xf3,0x0c); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("ea9dbf1a-c88e-4486-854a-98aa0138f30c") IDXGIDisplayControl : public IUnknown { virtual WINBOOL STDMETHODCALLTYPE IsStereoEnabled( ) = 0; virtual void STDMETHODCALLTYPE SetStereoEnabled( WINBOOL enabled) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDisplayControl, 0xea9dbf1a, 0xc88e, 0x4486, 0x85,0x4a, 0x98,0xaa,0x01,0x38,0xf3,0x0c) #endif #else typedef struct IDXGIDisplayControlVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDisplayControl *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDisplayControl *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDisplayControl *This); /*** IDXGIDisplayControl methods ***/ WINBOOL (STDMETHODCALLTYPE *IsStereoEnabled)( IDXGIDisplayControl *This); void (STDMETHODCALLTYPE *SetStereoEnabled)( IDXGIDisplayControl *This, WINBOOL enabled); END_INTERFACE } IDXGIDisplayControlVtbl; interface IDXGIDisplayControl { CONST_VTBL IDXGIDisplayControlVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDisplayControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDisplayControl_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDisplayControl_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIDisplayControl methods ***/ #define IDXGIDisplayControl_IsStereoEnabled(This) (This)->lpVtbl->IsStereoEnabled(This) #define IDXGIDisplayControl_SetStereoEnabled(This,enabled) (This)->lpVtbl->SetStereoEnabled(This,enabled) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDisplayControl_QueryInterface(IDXGIDisplayControl* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDisplayControl_AddRef(IDXGIDisplayControl* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDisplayControl_Release(IDXGIDisplayControl* This) { return This->lpVtbl->Release(This); } /*** IDXGIDisplayControl methods ***/ static FORCEINLINE WINBOOL IDXGIDisplayControl_IsStereoEnabled(IDXGIDisplayControl* This) { return This->lpVtbl->IsStereoEnabled(This); } static FORCEINLINE void IDXGIDisplayControl_SetStereoEnabled(IDXGIDisplayControl* This,WINBOOL enabled) { This->lpVtbl->SetStereoEnabled(This,enabled); } #endif #endif #endif #endif /* __IDXGIDisplayControl_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDevice2 interface */ #ifndef __IDXGIDevice2_INTERFACE_DEFINED__ #define __IDXGIDevice2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDevice2, 0x05008617, 0xfbfd, 0x4051, 0xa7,0x90, 0x14,0x48,0x84,0xb4,0xf6,0xa9); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("05008617-fbfd-4051-a790-144884b4f6a9") IDXGIDevice2 : public IDXGIDevice1 { virtual HRESULT STDMETHODCALLTYPE OfferResources( UINT NumResources, IDXGIResource *const *ppResources, DXGI_OFFER_RESOURCE_PRIORITY Priority) = 0; virtual HRESULT STDMETHODCALLTYPE ReclaimResources( UINT NumResources, IDXGIResource *const *ppResources, WINBOOL *pDiscarded) = 0; virtual HRESULT STDMETHODCALLTYPE EnqueueSetEvent( HANDLE hEvent) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDevice2, 0x05008617, 0xfbfd, 0x4051, 0xa7,0x90, 0x14,0x48,0x84,0xb4,0xf6,0xa9) #endif #else typedef struct IDXGIDevice2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDevice2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDevice2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDevice2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDevice2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDevice2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDevice2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDevice2 *This, REFIID riid, void **parent); /*** IDXGIDevice methods ***/ HRESULT (STDMETHODCALLTYPE *GetAdapter)( IDXGIDevice2 *This, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDXGIDevice2 *This, const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface); HRESULT (STDMETHODCALLTYPE *QueryResourceResidency)( IDXGIDevice2 *This, IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count); HRESULT (STDMETHODCALLTYPE *SetGPUThreadPriority)( IDXGIDevice2 *This, INT priority); HRESULT (STDMETHODCALLTYPE *GetGPUThreadPriority)( IDXGIDevice2 *This, INT *priority); /*** IDXGIDevice1 methods ***/ HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGIDevice2 *This, UINT MaxLatency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGIDevice2 *This, UINT *pMaxLatency); /*** IDXGIDevice2 methods ***/ HRESULT (STDMETHODCALLTYPE *OfferResources)( IDXGIDevice2 *This, UINT NumResources, IDXGIResource *const *ppResources, DXGI_OFFER_RESOURCE_PRIORITY Priority); HRESULT (STDMETHODCALLTYPE *ReclaimResources)( IDXGIDevice2 *This, UINT NumResources, IDXGIResource *const *ppResources, WINBOOL *pDiscarded); HRESULT (STDMETHODCALLTYPE *EnqueueSetEvent)( IDXGIDevice2 *This, HANDLE hEvent); END_INTERFACE } IDXGIDevice2Vtbl; interface IDXGIDevice2 { CONST_VTBL IDXGIDevice2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDevice2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDevice2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDevice2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDevice2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDevice2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDevice2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDevice2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDevice methods ***/ #define IDXGIDevice2_GetAdapter(This,adapter) (This)->lpVtbl->GetAdapter(This,adapter) #define IDXGIDevice2_CreateSurface(This,desc,surface_count,usage,shared_resource,surface) (This)->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface) #define IDXGIDevice2_QueryResourceResidency(This,resources,residency,resource_count) (This)->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count) #define IDXGIDevice2_SetGPUThreadPriority(This,priority) (This)->lpVtbl->SetGPUThreadPriority(This,priority) #define IDXGIDevice2_GetGPUThreadPriority(This,priority) (This)->lpVtbl->GetGPUThreadPriority(This,priority) /*** IDXGIDevice1 methods ***/ #define IDXGIDevice2_SetMaximumFrameLatency(This,MaxLatency) (This)->lpVtbl->SetMaximumFrameLatency(This,MaxLatency) #define IDXGIDevice2_GetMaximumFrameLatency(This,pMaxLatency) (This)->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency) /*** IDXGIDevice2 methods ***/ #define IDXGIDevice2_OfferResources(This,NumResources,ppResources,Priority) (This)->lpVtbl->OfferResources(This,NumResources,ppResources,Priority) #define IDXGIDevice2_ReclaimResources(This,NumResources,ppResources,pDiscarded) (This)->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded) #define IDXGIDevice2_EnqueueSetEvent(This,hEvent) (This)->lpVtbl->EnqueueSetEvent(This,hEvent) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDevice2_QueryInterface(IDXGIDevice2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDevice2_AddRef(IDXGIDevice2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDevice2_Release(IDXGIDevice2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDevice2_SetPrivateData(IDXGIDevice2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice2_SetPrivateDataInterface(IDXGIDevice2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDevice2_GetPrivateData(IDXGIDevice2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice2_GetParent(IDXGIDevice2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDevice methods ***/ static FORCEINLINE HRESULT IDXGIDevice2_GetAdapter(IDXGIDevice2* This,IDXGIAdapter **adapter) { return This->lpVtbl->GetAdapter(This,adapter); } static FORCEINLINE HRESULT IDXGIDevice2_CreateSurface(IDXGIDevice2* This,const DXGI_SURFACE_DESC *desc,UINT surface_count,DXGI_USAGE usage,const DXGI_SHARED_RESOURCE *shared_resource,IDXGISurface **surface) { return This->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface); } static FORCEINLINE HRESULT IDXGIDevice2_QueryResourceResidency(IDXGIDevice2* This,IUnknown *const *resources,DXGI_RESIDENCY *residency,UINT resource_count) { return This->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count); } static FORCEINLINE HRESULT IDXGIDevice2_SetGPUThreadPriority(IDXGIDevice2* This,INT priority) { return This->lpVtbl->SetGPUThreadPriority(This,priority); } static FORCEINLINE HRESULT IDXGIDevice2_GetGPUThreadPriority(IDXGIDevice2* This,INT *priority) { return This->lpVtbl->GetGPUThreadPriority(This,priority); } /*** IDXGIDevice1 methods ***/ static FORCEINLINE HRESULT IDXGIDevice2_SetMaximumFrameLatency(IDXGIDevice2* This,UINT MaxLatency) { return This->lpVtbl->SetMaximumFrameLatency(This,MaxLatency); } static FORCEINLINE HRESULT IDXGIDevice2_GetMaximumFrameLatency(IDXGIDevice2* This,UINT *pMaxLatency) { return This->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency); } /*** IDXGIDevice2 methods ***/ static FORCEINLINE HRESULT IDXGIDevice2_OfferResources(IDXGIDevice2* This,UINT NumResources,IDXGIResource *const *ppResources,DXGI_OFFER_RESOURCE_PRIORITY Priority) { return This->lpVtbl->OfferResources(This,NumResources,ppResources,Priority); } static FORCEINLINE HRESULT IDXGIDevice2_ReclaimResources(IDXGIDevice2* This,UINT NumResources,IDXGIResource *const *ppResources,WINBOOL *pDiscarded) { return This->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded); } static FORCEINLINE HRESULT IDXGIDevice2_EnqueueSetEvent(IDXGIDevice2* This,HANDLE hEvent) { return This->lpVtbl->EnqueueSetEvent(This,hEvent); } #endif #endif #endif #endif /* __IDXGIDevice2_INTERFACE_DEFINED__ */ typedef enum DXGI_SCALING { DXGI_SCALING_STRETCH = 0, DXGI_SCALING_NONE = 1, DXGI_SCALING_ASPECT_RATIO_STRETCH = 2 } DXGI_SCALING; typedef struct DXGI_SWAP_CHAIN_DESC1 { UINT Width; UINT Height; DXGI_FORMAT Format; WINBOOL Stereo; DXGI_SAMPLE_DESC SampleDesc; DXGI_USAGE BufferUsage; UINT BufferCount; DXGI_SCALING Scaling; DXGI_SWAP_EFFECT SwapEffect; DXGI_ALPHA_MODE AlphaMode; UINT Flags; } DXGI_SWAP_CHAIN_DESC1; typedef struct DXGI_SWAP_CHAIN_FULLSCREEN_DESC { DXGI_RATIONAL RefreshRate; DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; DXGI_MODE_SCALING Scaling; WINBOOL Windowed; } DXGI_SWAP_CHAIN_FULLSCREEN_DESC; typedef struct DXGI_PRESENT_PARAMETERS { UINT DirtyRectsCount; RECT *pDirtyRects; RECT *pScrollRect; POINT *pScrollOffset; } DXGI_PRESENT_PARAMETERS; /***************************************************************************** * IDXGISwapChain1 interface */ #ifndef __IDXGISwapChain1_INTERFACE_DEFINED__ #define __IDXGISwapChain1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChain1, 0x790a45f7, 0x0d42, 0x4876, 0x98,0x3a, 0x0a,0x55,0xcf,0xe6,0xf4,0xaa); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("790a45f7-0d42-4876-983a-0a55cfe6f4aa") IDXGISwapChain1 : public IDXGISwapChain { virtual HRESULT STDMETHODCALLTYPE GetDesc1( DXGI_SWAP_CHAIN_DESC1 *pDesc) = 0; virtual HRESULT STDMETHODCALLTYPE GetFullscreenDesc( DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc) = 0; virtual HRESULT STDMETHODCALLTYPE GetHwnd( HWND *pHwnd) = 0; virtual HRESULT STDMETHODCALLTYPE GetCoreWindow( REFIID refiid, void **ppUnk) = 0; virtual HRESULT STDMETHODCALLTYPE Present1( UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS *pPresentParameters) = 0; virtual WINBOOL STDMETHODCALLTYPE IsTemporaryMonoSupported( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetRestrictToOutput( IDXGIOutput **ppRestrictToOutput) = 0; virtual HRESULT STDMETHODCALLTYPE SetBackgroundColor( const DXGI_RGBA *pColor) = 0; virtual HRESULT STDMETHODCALLTYPE GetBackgroundColor( DXGI_RGBA *pColor) = 0; virtual HRESULT STDMETHODCALLTYPE SetRotation( DXGI_MODE_ROTATION Rotation) = 0; virtual HRESULT STDMETHODCALLTYPE GetRotation( DXGI_MODE_ROTATION *pRotation) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChain1, 0x790a45f7, 0x0d42, 0x4876, 0x98,0x3a, 0x0a,0x55,0xcf,0xe6,0xf4,0xaa) #endif #else typedef struct IDXGISwapChain1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChain1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChain1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChain1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISwapChain1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISwapChain1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISwapChain1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISwapChain1 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISwapChain1 *This, REFIID riid, void **device); /*** IDXGISwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *Present)( IDXGISwapChain1 *This, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDXGISwapChain1 *This, UINT buffer_idx, REFIID riid, void **surface); HRESULT (STDMETHODCALLTYPE *SetFullscreenState)( IDXGISwapChain1 *This, WINBOOL fullscreen, IDXGIOutput *target); HRESULT (STDMETHODCALLTYPE *GetFullscreenState)( IDXGISwapChain1 *This, WINBOOL *fullscreen, IDXGIOutput **target); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISwapChain1 *This, DXGI_SWAP_CHAIN_DESC *desc); HRESULT (STDMETHODCALLTYPE *ResizeBuffers)( IDXGISwapChain1 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTarget)( IDXGISwapChain1 *This, const DXGI_MODE_DESC *target_mode_desc); HRESULT (STDMETHODCALLTYPE *GetContainingOutput)( IDXGISwapChain1 *This, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGISwapChain1 *This, DXGI_FRAME_STATISTICS *stats); HRESULT (STDMETHODCALLTYPE *GetLastPresentCount)( IDXGISwapChain1 *This, UINT *last_present_count); /*** IDXGISwapChain1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGISwapChain1 *This, DXGI_SWAP_CHAIN_DESC1 *pDesc); HRESULT (STDMETHODCALLTYPE *GetFullscreenDesc)( IDXGISwapChain1 *This, DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc); HRESULT (STDMETHODCALLTYPE *GetHwnd)( IDXGISwapChain1 *This, HWND *pHwnd); HRESULT (STDMETHODCALLTYPE *GetCoreWindow)( IDXGISwapChain1 *This, REFIID refiid, void **ppUnk); HRESULT (STDMETHODCALLTYPE *Present1)( IDXGISwapChain1 *This, UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS *pPresentParameters); WINBOOL (STDMETHODCALLTYPE *IsTemporaryMonoSupported)( IDXGISwapChain1 *This); HRESULT (STDMETHODCALLTYPE *GetRestrictToOutput)( IDXGISwapChain1 *This, IDXGIOutput **ppRestrictToOutput); HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IDXGISwapChain1 *This, const DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( IDXGISwapChain1 *This, DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *SetRotation)( IDXGISwapChain1 *This, DXGI_MODE_ROTATION Rotation); HRESULT (STDMETHODCALLTYPE *GetRotation)( IDXGISwapChain1 *This, DXGI_MODE_ROTATION *pRotation); END_INTERFACE } IDXGISwapChain1Vtbl; interface IDXGISwapChain1 { CONST_VTBL IDXGISwapChain1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChain1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChain1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChain1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISwapChain1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISwapChain1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISwapChain1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISwapChain1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISwapChain1_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISwapChain methods ***/ #define IDXGISwapChain1_Present(This,sync_interval,flags) (This)->lpVtbl->Present(This,sync_interval,flags) #define IDXGISwapChain1_GetBuffer(This,buffer_idx,riid,surface) (This)->lpVtbl->GetBuffer(This,buffer_idx,riid,surface) #define IDXGISwapChain1_SetFullscreenState(This,fullscreen,target) (This)->lpVtbl->SetFullscreenState(This,fullscreen,target) #define IDXGISwapChain1_GetFullscreenState(This,fullscreen,target) (This)->lpVtbl->GetFullscreenState(This,fullscreen,target) #define IDXGISwapChain1_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISwapChain1_ResizeBuffers(This,buffer_count,width,height,format,flags) (This)->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags) #define IDXGISwapChain1_ResizeTarget(This,target_mode_desc) (This)->lpVtbl->ResizeTarget(This,target_mode_desc) #define IDXGISwapChain1_GetContainingOutput(This,output) (This)->lpVtbl->GetContainingOutput(This,output) #define IDXGISwapChain1_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #define IDXGISwapChain1_GetLastPresentCount(This,last_present_count) (This)->lpVtbl->GetLastPresentCount(This,last_present_count) /*** IDXGISwapChain1 methods ***/ #define IDXGISwapChain1_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #define IDXGISwapChain1_GetFullscreenDesc(This,pDesc) (This)->lpVtbl->GetFullscreenDesc(This,pDesc) #define IDXGISwapChain1_GetHwnd(This,pHwnd) (This)->lpVtbl->GetHwnd(This,pHwnd) #define IDXGISwapChain1_GetCoreWindow(This,refiid,ppUnk) (This)->lpVtbl->GetCoreWindow(This,refiid,ppUnk) #define IDXGISwapChain1_Present1(This,SyncInterval,PresentFlags,pPresentParameters) (This)->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters) #define IDXGISwapChain1_IsTemporaryMonoSupported(This) (This)->lpVtbl->IsTemporaryMonoSupported(This) #define IDXGISwapChain1_GetRestrictToOutput(This,ppRestrictToOutput) (This)->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput) #define IDXGISwapChain1_SetBackgroundColor(This,pColor) (This)->lpVtbl->SetBackgroundColor(This,pColor) #define IDXGISwapChain1_GetBackgroundColor(This,pColor) (This)->lpVtbl->GetBackgroundColor(This,pColor) #define IDXGISwapChain1_SetRotation(This,Rotation) (This)->lpVtbl->SetRotation(This,Rotation) #define IDXGISwapChain1_GetRotation(This,pRotation) (This)->lpVtbl->GetRotation(This,pRotation) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChain1_QueryInterface(IDXGISwapChain1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChain1_AddRef(IDXGISwapChain1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChain1_Release(IDXGISwapChain1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain1_SetPrivateData(IDXGISwapChain1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain1_SetPrivateDataInterface(IDXGISwapChain1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISwapChain1_GetPrivateData(IDXGISwapChain1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain1_GetParent(IDXGISwapChain1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain1_GetDevice(IDXGISwapChain1* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISwapChain methods ***/ static FORCEINLINE HRESULT IDXGISwapChain1_Present(IDXGISwapChain1* This,UINT sync_interval,UINT flags) { return This->lpVtbl->Present(This,sync_interval,flags); } static FORCEINLINE HRESULT IDXGISwapChain1_GetBuffer(IDXGISwapChain1* This,UINT buffer_idx,REFIID riid,void **surface) { return This->lpVtbl->GetBuffer(This,buffer_idx,riid,surface); } static FORCEINLINE HRESULT IDXGISwapChain1_SetFullscreenState(IDXGISwapChain1* This,WINBOOL fullscreen,IDXGIOutput *target) { return This->lpVtbl->SetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain1_GetFullscreenState(IDXGISwapChain1* This,WINBOOL *fullscreen,IDXGIOutput **target) { return This->lpVtbl->GetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain1_GetDesc(IDXGISwapChain1* This,DXGI_SWAP_CHAIN_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISwapChain1_ResizeBuffers(IDXGISwapChain1* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags) { return This->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags); } static FORCEINLINE HRESULT IDXGISwapChain1_ResizeTarget(IDXGISwapChain1* This,const DXGI_MODE_DESC *target_mode_desc) { return This->lpVtbl->ResizeTarget(This,target_mode_desc); } static FORCEINLINE HRESULT IDXGISwapChain1_GetContainingOutput(IDXGISwapChain1* This,IDXGIOutput **output) { return This->lpVtbl->GetContainingOutput(This,output); } static FORCEINLINE HRESULT IDXGISwapChain1_GetFrameStatistics(IDXGISwapChain1* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } static FORCEINLINE HRESULT IDXGISwapChain1_GetLastPresentCount(IDXGISwapChain1* This,UINT *last_present_count) { return This->lpVtbl->GetLastPresentCount(This,last_present_count); } /*** IDXGISwapChain1 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain1_GetDesc1(IDXGISwapChain1* This,DXGI_SWAP_CHAIN_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain1_GetFullscreenDesc(IDXGISwapChain1* This,DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc) { return This->lpVtbl->GetFullscreenDesc(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain1_GetHwnd(IDXGISwapChain1* This,HWND *pHwnd) { return This->lpVtbl->GetHwnd(This,pHwnd); } static FORCEINLINE HRESULT IDXGISwapChain1_GetCoreWindow(IDXGISwapChain1* This,REFIID refiid,void **ppUnk) { return This->lpVtbl->GetCoreWindow(This,refiid,ppUnk); } static FORCEINLINE HRESULT IDXGISwapChain1_Present1(IDXGISwapChain1* This,UINT SyncInterval,UINT PresentFlags,const DXGI_PRESENT_PARAMETERS *pPresentParameters) { return This->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters); } static FORCEINLINE WINBOOL IDXGISwapChain1_IsTemporaryMonoSupported(IDXGISwapChain1* This) { return This->lpVtbl->IsTemporaryMonoSupported(This); } static FORCEINLINE HRESULT IDXGISwapChain1_GetRestrictToOutput(IDXGISwapChain1* This,IDXGIOutput **ppRestrictToOutput) { return This->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput); } static FORCEINLINE HRESULT IDXGISwapChain1_SetBackgroundColor(IDXGISwapChain1* This,const DXGI_RGBA *pColor) { return This->lpVtbl->SetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain1_GetBackgroundColor(IDXGISwapChain1* This,DXGI_RGBA *pColor) { return This->lpVtbl->GetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain1_SetRotation(IDXGISwapChain1* This,DXGI_MODE_ROTATION Rotation) { return This->lpVtbl->SetRotation(This,Rotation); } static FORCEINLINE HRESULT IDXGISwapChain1_GetRotation(IDXGISwapChain1* This,DXGI_MODE_ROTATION *pRotation) { return This->lpVtbl->GetRotation(This,pRotation); } #endif #endif #endif #endif /* __IDXGISwapChain1_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory2 interface */ #ifndef __IDXGIFactory2_INTERFACE_DEFINED__ #define __IDXGIFactory2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87,0xb0, 0x36,0x30,0xfa,0x36,0xa6,0xd0); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("50c83a1c-e072-4c48-87b0-3630fa36a6d0") IDXGIFactory2 : public IDXGIFactory1 { virtual WINBOOL STDMETHODCALLTYPE IsWindowedStereoEnabled( ) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSwapChainForHwnd( IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSwapChainForCoreWindow( IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain) = 0; virtual HRESULT STDMETHODCALLTYPE GetSharedResourceAdapterLuid( HANDLE hResource, LUID *pLuid) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterStereoStatusWindow( HWND WindowHandle, UINT wMsg, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterStereoStatusEvent( HANDLE hEvent, DWORD *pdwCookie) = 0; virtual void STDMETHODCALLTYPE UnregisterStereoStatus( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterOcclusionStatusWindow( HWND WindowHandle, UINT wMsg, DWORD *pdwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterOcclusionStatusEvent( HANDLE hEvent, DWORD *pdwCookie) = 0; virtual void STDMETHODCALLTYPE UnregisterOcclusionStatus( DWORD dwCookie) = 0; virtual HRESULT STDMETHODCALLTYPE CreateSwapChainForComposition( IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory2, 0x50c83a1c, 0xe072, 0x4c48, 0x87,0xb0, 0x36,0x30,0xfa,0x36,0xa6,0xd0) #endif #else typedef struct IDXGIFactory2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory2 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory2 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory2 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory2 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory2 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory2 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory2 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory2 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory2 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory2 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory2 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory2 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory2 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory2 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory2 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory2 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory2 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory2 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); END_INTERFACE } IDXGIFactory2Vtbl; interface IDXGIFactory2 { CONST_VTBL IDXGIFactory2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory2_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory2_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory2_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory2_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory2_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory2_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory2_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory2_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory2_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory2_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory2_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory2_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory2_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory2_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory2_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory2_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory2_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory2_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory2_QueryInterface(IDXGIFactory2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory2_AddRef(IDXGIFactory2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory2_Release(IDXGIFactory2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory2_SetPrivateData(IDXGIFactory2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory2_SetPrivateDataInterface(IDXGIFactory2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory2_GetPrivateData(IDXGIFactory2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory2_GetParent(IDXGIFactory2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory2_EnumAdapters(IDXGIFactory2* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory2_MakeWindowAssociation(IDXGIFactory2* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory2_GetWindowAssociation(IDXGIFactory2* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory2_CreateSwapChain(IDXGIFactory2* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory2_CreateSoftwareAdapter(IDXGIFactory2* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory2_EnumAdapters1(IDXGIFactory2* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory2_IsCurrent(IDXGIFactory2* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory2_IsWindowedStereoEnabled(IDXGIFactory2* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory2_CreateSwapChainForHwnd(IDXGIFactory2* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory2_CreateSwapChainForCoreWindow(IDXGIFactory2* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory2_GetSharedResourceAdapterLuid(IDXGIFactory2* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory2_RegisterStereoStatusWindow(IDXGIFactory2* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory2_RegisterStereoStatusEvent(IDXGIFactory2* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory2_UnregisterStereoStatus(IDXGIFactory2* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory2_RegisterOcclusionStatusWindow(IDXGIFactory2* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory2_RegisterOcclusionStatusEvent(IDXGIFactory2* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory2_UnregisterOcclusionStatus(IDXGIFactory2* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory2_CreateSwapChainForComposition(IDXGIFactory2* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } #endif #endif #endif #endif /* __IDXGIFactory2_INTERFACE_DEFINED__ */ typedef enum DXGI_GRAPHICS_PREEMPTION_GRANULARITY { DXGI_GRAPHICS_PREEMPTION_DMA_BUFFER_BOUNDARY = 0, DXGI_GRAPHICS_PREEMPTION_PRIMITIVE_BOUNDARY = 1, DXGI_GRAPHICS_PREEMPTION_TRIANGLE_BOUNDARY = 2, DXGI_GRAPHICS_PREEMPTION_PIXEL_BOUNDARY = 3, DXGI_GRAPHICS_PREEMPTION_INSTRUCTION_BOUNDARY = 4 } DXGI_GRAPHICS_PREEMPTION_GRANULARITY; typedef enum DXGI_COMPUTE_PREEMPTION_GRANULARITY { DXGI_COMPUTE_PREEMPTION_DMA_BUFFER_BOUNDARY = 0, DXGI_COMPUTE_PREEMPTION_DISPATCH_BOUNDARY = 1, DXGI_COMPUTE_PREEMPTION_THREAD_GROUP_BOUNDARY = 2, DXGI_COMPUTE_PREEMPTION_THREAD_BOUNDARY = 3, DXGI_COMPUTE_PREEMPTION_INSTRUCTION_BOUNDARY = 4 } DXGI_COMPUTE_PREEMPTION_GRANULARITY; typedef struct DXGI_ADAPTER_DESC2 { WCHAR Description[128]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; UINT Flags; DXGI_GRAPHICS_PREEMPTION_GRANULARITY GraphicsPreemptionGranularity; DXGI_COMPUTE_PREEMPTION_GRANULARITY ComputePreemptionGranularity; } DXGI_ADAPTER_DESC2; /***************************************************************************** * IDXGIAdapter2 interface */ #ifndef __IDXGIAdapter2_INTERFACE_DEFINED__ #define __IDXGIAdapter2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIAdapter2, 0x0aa1ae0a, 0xfa0e, 0x4b84, 0x86,0x44, 0xe0,0x5f,0xf8,0xe5,0xac,0xb5); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0aa1ae0a-fa0e-4b84-8644-e05ff8e5acb5") IDXGIAdapter2 : public IDXGIAdapter1 { virtual HRESULT STDMETHODCALLTYPE GetDesc2( DXGI_ADAPTER_DESC2 *pDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIAdapter2, 0x0aa1ae0a, 0xfa0e, 0x4b84, 0x86,0x44, 0xe0,0x5f,0xf8,0xe5,0xac,0xb5) #endif #else typedef struct IDXGIAdapter2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIAdapter2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIAdapter2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIAdapter2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIAdapter2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIAdapter2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIAdapter2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIAdapter2 *This, REFIID riid, void **parent); /*** IDXGIAdapter methods ***/ HRESULT (STDMETHODCALLTYPE *EnumOutputs)( IDXGIAdapter2 *This, UINT output_idx, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIAdapter2 *This, DXGI_ADAPTER_DESC *desc); HRESULT (STDMETHODCALLTYPE *CheckInterfaceSupport)( IDXGIAdapter2 *This, REFGUID guid, LARGE_INTEGER *umd_version); /*** IDXGIAdapter1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGIAdapter2 *This, DXGI_ADAPTER_DESC1 *pDesc); /*** IDXGIAdapter2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc2)( IDXGIAdapter2 *This, DXGI_ADAPTER_DESC2 *pDesc); END_INTERFACE } IDXGIAdapter2Vtbl; interface IDXGIAdapter2 { CONST_VTBL IDXGIAdapter2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIAdapter2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIAdapter2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIAdapter2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIAdapter2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIAdapter2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIAdapter2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIAdapter2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIAdapter methods ***/ #define IDXGIAdapter2_EnumOutputs(This,output_idx,output) (This)->lpVtbl->EnumOutputs(This,output_idx,output) #define IDXGIAdapter2_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIAdapter2_CheckInterfaceSupport(This,guid,umd_version) (This)->lpVtbl->CheckInterfaceSupport(This,guid,umd_version) /*** IDXGIAdapter1 methods ***/ #define IDXGIAdapter2_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) /*** IDXGIAdapter2 methods ***/ #define IDXGIAdapter2_GetDesc2(This,pDesc) (This)->lpVtbl->GetDesc2(This,pDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIAdapter2_QueryInterface(IDXGIAdapter2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIAdapter2_AddRef(IDXGIAdapter2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIAdapter2_Release(IDXGIAdapter2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIAdapter2_SetPrivateData(IDXGIAdapter2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter2_SetPrivateDataInterface(IDXGIAdapter2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIAdapter2_GetPrivateData(IDXGIAdapter2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter2_GetParent(IDXGIAdapter2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIAdapter methods ***/ static FORCEINLINE HRESULT IDXGIAdapter2_EnumOutputs(IDXGIAdapter2* This,UINT output_idx,IDXGIOutput **output) { return This->lpVtbl->EnumOutputs(This,output_idx,output); } static FORCEINLINE HRESULT IDXGIAdapter2_GetDesc(IDXGIAdapter2* This,DXGI_ADAPTER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIAdapter2_CheckInterfaceSupport(IDXGIAdapter2* This,REFGUID guid,LARGE_INTEGER *umd_version) { return This->lpVtbl->CheckInterfaceSupport(This,guid,umd_version); } /*** IDXGIAdapter1 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter2_GetDesc1(IDXGIAdapter2* This,DXGI_ADAPTER_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } /*** IDXGIAdapter2 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter2_GetDesc2(IDXGIAdapter2* This,DXGI_ADAPTER_DESC2 *pDesc) { return This->lpVtbl->GetDesc2(This,pDesc); } #endif #endif #endif #endif /* __IDXGIAdapter2_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput1 interface */ #ifndef __IDXGIOutput1_INTERFACE_DEFINED__ #define __IDXGIOutput1_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3,0x40, 0xa6,0x85,0x22,0x66,0x66,0xcc); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00cddea8-939b-4b83-a340-a685226666cc") IDXGIOutput1 : public IDXGIOutput { virtual HRESULT STDMETHODCALLTYPE GetDisplayModeList1( DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc) = 0; virtual HRESULT STDMETHODCALLTYPE FindClosestMatchingMode1( const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device) = 0; virtual HRESULT STDMETHODCALLTYPE GetDisplaySurfaceData1( IDXGIResource *destination) = 0; virtual HRESULT STDMETHODCALLTYPE DuplicateOutput( IUnknown *device, IDXGIOutputDuplication **output_duplication) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput1, 0x00cddea8, 0x939b, 0x4b83, 0xa3,0x40, 0xa6,0x85,0x22,0x66,0x66,0xcc) #endif #else typedef struct IDXGIOutput1Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput1 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput1 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput1 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput1 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput1 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput1 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput1 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput1 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput1 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput1 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput1 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput1 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput1 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput1 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput1 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput1 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput1 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput1 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput1 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput1 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput1 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput1 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput1 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); END_INTERFACE } IDXGIOutput1Vtbl; interface IDXGIOutput1 { CONST_VTBL IDXGIOutput1Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput1_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput1_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput1_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput1_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput1_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput1_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput1_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput1_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput1_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput1_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput1_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput1_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput1_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput1_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput1_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput1_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput1_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput1_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput1_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput1_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput1_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput1_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput1_QueryInterface(IDXGIOutput1* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput1_AddRef(IDXGIOutput1* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput1_Release(IDXGIOutput1* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput1_SetPrivateData(IDXGIOutput1* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput1_SetPrivateDataInterface(IDXGIOutput1* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput1_GetPrivateData(IDXGIOutput1* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput1_GetParent(IDXGIOutput1* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput1_GetDesc(IDXGIOutput1* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput1_GetDisplayModeList(IDXGIOutput1* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput1_FindClosestMatchingMode(IDXGIOutput1* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput1_WaitForVBlank(IDXGIOutput1* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput1_TakeOwnership(IDXGIOutput1* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput1_ReleaseOwnership(IDXGIOutput1* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput1_GetGammaControlCapabilities(IDXGIOutput1* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput1_SetGammaControl(IDXGIOutput1* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput1_GetGammaControl(IDXGIOutput1* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput1_SetDisplaySurface(IDXGIOutput1* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput1_GetDisplaySurfaceData(IDXGIOutput1* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput1_GetFrameStatistics(IDXGIOutput1* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput1_GetDisplayModeList1(IDXGIOutput1* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput1_FindClosestMatchingMode1(IDXGIOutput1* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput1_GetDisplaySurfaceData1(IDXGIOutput1* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput1_DuplicateOutput(IDXGIOutput1* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } #endif #endif #endif #endif /* __IDXGIOutput1_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi1_2_h__ */ dxvk-0~git20220822.9df86f2/dxgi1_3.h000066400000000000000000002407201430055512200164130ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi1_3.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi1_3_h__ #define __dxgi1_3_h__ /* Forward declarations */ #ifndef __IDXGIDevice3_FWD_DEFINED__ #define __IDXGIDevice3_FWD_DEFINED__ typedef interface IDXGIDevice3 IDXGIDevice3; #ifdef __cplusplus interface IDXGIDevice3; #endif /* __cplusplus */ #endif #ifndef __IDXGISwapChain2_FWD_DEFINED__ #define __IDXGISwapChain2_FWD_DEFINED__ typedef interface IDXGISwapChain2 IDXGISwapChain2; #ifdef __cplusplus interface IDXGISwapChain2; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput2_FWD_DEFINED__ #define __IDXGIOutput2_FWD_DEFINED__ typedef interface IDXGIOutput2 IDXGIOutput2; #ifdef __cplusplus interface IDXGIOutput2; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory3_FWD_DEFINED__ #define __IDXGIFactory3_FWD_DEFINED__ typedef interface IDXGIFactory3 IDXGIFactory3; #ifdef __cplusplus interface IDXGIFactory3; #endif /* __cplusplus */ #endif #ifndef __IDXGIDecodeSwapChain_FWD_DEFINED__ #define __IDXGIDecodeSwapChain_FWD_DEFINED__ typedef interface IDXGIDecodeSwapChain IDXGIDecodeSwapChain; #ifdef __cplusplus interface IDXGIDecodeSwapChain; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactoryMedia_FWD_DEFINED__ #define __IDXGIFactoryMedia_FWD_DEFINED__ typedef interface IDXGIFactoryMedia IDXGIFactoryMedia; #ifdef __cplusplus interface IDXGIFactoryMedia; #endif /* __cplusplus */ #endif #ifndef __IDXGISwapChainMedia_FWD_DEFINED__ #define __IDXGISwapChainMedia_FWD_DEFINED__ typedef interface IDXGISwapChainMedia IDXGISwapChainMedia; #ifdef __cplusplus interface IDXGISwapChainMedia; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput3_FWD_DEFINED__ #define __IDXGIOutput3_FWD_DEFINED__ typedef interface IDXGIOutput3 IDXGIOutput3; #ifdef __cplusplus interface IDXGIOutput3; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif typedef struct DXGI_MATRIX_3X2_F { float _11; float _12; float _21; float _22; float _31; float _32; } DXGI_MATRIX_3X2_F; typedef struct DXGI_DECODE_SWAP_CHAIN_DESC { UINT Flags; } DXGI_DECODE_SWAP_CHAIN_DESC; typedef enum DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS { DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_NOMINAL_RANGE = 0x1, DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_BT709 = 0x2, DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAG_xvYCC = 0x4 } DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS; typedef enum DXGI_FRAME_PRESENTATION_MODE { DXGI_FRAME_PRESENTATION_MODE_COMPOSED = 0, DXGI_FRAME_PRESENTATION_MODE_OVERLAY = 1, DXGI_FRAME_PRESENTATION_MODE_NONE = 2, DXGI_FRAME_PRESENTATION_MODE_COMPOSITION_FAILURE = 3 } DXGI_FRAME_PRESENTATION_MODE; typedef struct DXGI_FRAME_STATISTICS_MEDIA { UINT PresentCount; UINT PresentRefreshCount; UINT SyncRefreshCount; LARGE_INTEGER SyncQPCTime; LARGE_INTEGER SyncGPUTime; DXGI_FRAME_PRESENTATION_MODE CompositionMode; UINT ApprovedPresentDuration; } DXGI_FRAME_STATISTICS_MEDIA; typedef enum DXGI_OVERLAY_SUPPORT_FLAG { DXGI_OVERLAY_SUPPORT_FLAG_DIRECT = 0x1, DXGI_OVERLAY_SUPPORT_FLAG_SCALING = 0x2 } DXGI_OVERLAY_SUPPORT_FLAG; /***************************************************************************** * IDXGIDevice3 interface */ #ifndef __IDXGIDevice3_INTERFACE_DEFINED__ #define __IDXGIDevice3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDevice3, 0x6007896c, 0x3244, 0x4afd, 0xbf,0x18, 0xa6,0xd3,0xbe,0xda,0x50,0x23); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("6007896c-3244-4afd-bf18-a6d3beda5023") IDXGIDevice3 : public IDXGIDevice2 { virtual void STDMETHODCALLTYPE Trim( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDevice3, 0x6007896c, 0x3244, 0x4afd, 0xbf,0x18, 0xa6,0xd3,0xbe,0xda,0x50,0x23) #endif #else typedef struct IDXGIDevice3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDevice3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDevice3 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDevice3 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDevice3 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDevice3 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDevice3 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDevice3 *This, REFIID riid, void **parent); /*** IDXGIDevice methods ***/ HRESULT (STDMETHODCALLTYPE *GetAdapter)( IDXGIDevice3 *This, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDXGIDevice3 *This, const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface); HRESULT (STDMETHODCALLTYPE *QueryResourceResidency)( IDXGIDevice3 *This, IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count); HRESULT (STDMETHODCALLTYPE *SetGPUThreadPriority)( IDXGIDevice3 *This, INT priority); HRESULT (STDMETHODCALLTYPE *GetGPUThreadPriority)( IDXGIDevice3 *This, INT *priority); /*** IDXGIDevice1 methods ***/ HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGIDevice3 *This, UINT MaxLatency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGIDevice3 *This, UINT *pMaxLatency); /*** IDXGIDevice2 methods ***/ HRESULT (STDMETHODCALLTYPE *OfferResources)( IDXGIDevice3 *This, UINT NumResources, IDXGIResource *const *ppResources, DXGI_OFFER_RESOURCE_PRIORITY Priority); HRESULT (STDMETHODCALLTYPE *ReclaimResources)( IDXGIDevice3 *This, UINT NumResources, IDXGIResource *const *ppResources, WINBOOL *pDiscarded); HRESULT (STDMETHODCALLTYPE *EnqueueSetEvent)( IDXGIDevice3 *This, HANDLE hEvent); /*** IDXGIDevice3 methods ***/ void (STDMETHODCALLTYPE *Trim)( IDXGIDevice3 *This); END_INTERFACE } IDXGIDevice3Vtbl; interface IDXGIDevice3 { CONST_VTBL IDXGIDevice3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDevice3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDevice3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDevice3_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDevice3_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDevice3_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDevice3_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDevice3_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDevice methods ***/ #define IDXGIDevice3_GetAdapter(This,adapter) (This)->lpVtbl->GetAdapter(This,adapter) #define IDXGIDevice3_CreateSurface(This,desc,surface_count,usage,shared_resource,surface) (This)->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface) #define IDXGIDevice3_QueryResourceResidency(This,resources,residency,resource_count) (This)->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count) #define IDXGIDevice3_SetGPUThreadPriority(This,priority) (This)->lpVtbl->SetGPUThreadPriority(This,priority) #define IDXGIDevice3_GetGPUThreadPriority(This,priority) (This)->lpVtbl->GetGPUThreadPriority(This,priority) /*** IDXGIDevice1 methods ***/ #define IDXGIDevice3_SetMaximumFrameLatency(This,MaxLatency) (This)->lpVtbl->SetMaximumFrameLatency(This,MaxLatency) #define IDXGIDevice3_GetMaximumFrameLatency(This,pMaxLatency) (This)->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency) /*** IDXGIDevice2 methods ***/ #define IDXGIDevice3_OfferResources(This,NumResources,ppResources,Priority) (This)->lpVtbl->OfferResources(This,NumResources,ppResources,Priority) #define IDXGIDevice3_ReclaimResources(This,NumResources,ppResources,pDiscarded) (This)->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded) #define IDXGIDevice3_EnqueueSetEvent(This,hEvent) (This)->lpVtbl->EnqueueSetEvent(This,hEvent) /*** IDXGIDevice3 methods ***/ #define IDXGIDevice3_Trim(This) (This)->lpVtbl->Trim(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDevice3_QueryInterface(IDXGIDevice3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDevice3_AddRef(IDXGIDevice3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDevice3_Release(IDXGIDevice3* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDevice3_SetPrivateData(IDXGIDevice3* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice3_SetPrivateDataInterface(IDXGIDevice3* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDevice3_GetPrivateData(IDXGIDevice3* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice3_GetParent(IDXGIDevice3* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDevice methods ***/ static FORCEINLINE HRESULT IDXGIDevice3_GetAdapter(IDXGIDevice3* This,IDXGIAdapter **adapter) { return This->lpVtbl->GetAdapter(This,adapter); } static FORCEINLINE HRESULT IDXGIDevice3_CreateSurface(IDXGIDevice3* This,const DXGI_SURFACE_DESC *desc,UINT surface_count,DXGI_USAGE usage,const DXGI_SHARED_RESOURCE *shared_resource,IDXGISurface **surface) { return This->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface); } static FORCEINLINE HRESULT IDXGIDevice3_QueryResourceResidency(IDXGIDevice3* This,IUnknown *const *resources,DXGI_RESIDENCY *residency,UINT resource_count) { return This->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count); } static FORCEINLINE HRESULT IDXGIDevice3_SetGPUThreadPriority(IDXGIDevice3* This,INT priority) { return This->lpVtbl->SetGPUThreadPriority(This,priority); } static FORCEINLINE HRESULT IDXGIDevice3_GetGPUThreadPriority(IDXGIDevice3* This,INT *priority) { return This->lpVtbl->GetGPUThreadPriority(This,priority); } /*** IDXGIDevice1 methods ***/ static FORCEINLINE HRESULT IDXGIDevice3_SetMaximumFrameLatency(IDXGIDevice3* This,UINT MaxLatency) { return This->lpVtbl->SetMaximumFrameLatency(This,MaxLatency); } static FORCEINLINE HRESULT IDXGIDevice3_GetMaximumFrameLatency(IDXGIDevice3* This,UINT *pMaxLatency) { return This->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency); } /*** IDXGIDevice2 methods ***/ static FORCEINLINE HRESULT IDXGIDevice3_OfferResources(IDXGIDevice3* This,UINT NumResources,IDXGIResource *const *ppResources,DXGI_OFFER_RESOURCE_PRIORITY Priority) { return This->lpVtbl->OfferResources(This,NumResources,ppResources,Priority); } static FORCEINLINE HRESULT IDXGIDevice3_ReclaimResources(IDXGIDevice3* This,UINT NumResources,IDXGIResource *const *ppResources,WINBOOL *pDiscarded) { return This->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded); } static FORCEINLINE HRESULT IDXGIDevice3_EnqueueSetEvent(IDXGIDevice3* This,HANDLE hEvent) { return This->lpVtbl->EnqueueSetEvent(This,hEvent); } /*** IDXGIDevice3 methods ***/ static FORCEINLINE void IDXGIDevice3_Trim(IDXGIDevice3* This) { This->lpVtbl->Trim(This); } #endif #endif #endif #endif /* __IDXGIDevice3_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISwapChain2 interface */ #ifndef __IDXGISwapChain2_INTERFACE_DEFINED__ #define __IDXGISwapChain2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChain2, 0xa8be2ac4, 0x199f, 0x4946, 0xb3,0x31, 0x79,0x59,0x9f,0xb9,0x8d,0xe7); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a8be2ac4-199f-4946-b331-79599fb98de7") IDXGISwapChain2 : public IDXGISwapChain1 { virtual HRESULT STDMETHODCALLTYPE SetSourceSize( UINT width, UINT height) = 0; virtual HRESULT STDMETHODCALLTYPE GetSourceSize( UINT *width, UINT *height) = 0; virtual HRESULT STDMETHODCALLTYPE SetMaximumFrameLatency( UINT max_latency) = 0; virtual HRESULT STDMETHODCALLTYPE GetMaximumFrameLatency( UINT *max_latency) = 0; virtual HANDLE STDMETHODCALLTYPE GetFrameLatencyWaitableObject( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetMatrixTransform( const DXGI_MATRIX_3X2_F *matrix) = 0; virtual HRESULT STDMETHODCALLTYPE GetMatrixTransform( DXGI_MATRIX_3X2_F *matrix) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChain2, 0xa8be2ac4, 0x199f, 0x4946, 0xb3,0x31, 0x79,0x59,0x9f,0xb9,0x8d,0xe7) #endif #else typedef struct IDXGISwapChain2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChain2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChain2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChain2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISwapChain2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISwapChain2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISwapChain2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISwapChain2 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISwapChain2 *This, REFIID riid, void **device); /*** IDXGISwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *Present)( IDXGISwapChain2 *This, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDXGISwapChain2 *This, UINT buffer_idx, REFIID riid, void **surface); HRESULT (STDMETHODCALLTYPE *SetFullscreenState)( IDXGISwapChain2 *This, WINBOOL fullscreen, IDXGIOutput *target); HRESULT (STDMETHODCALLTYPE *GetFullscreenState)( IDXGISwapChain2 *This, WINBOOL *fullscreen, IDXGIOutput **target); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISwapChain2 *This, DXGI_SWAP_CHAIN_DESC *desc); HRESULT (STDMETHODCALLTYPE *ResizeBuffers)( IDXGISwapChain2 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTarget)( IDXGISwapChain2 *This, const DXGI_MODE_DESC *target_mode_desc); HRESULT (STDMETHODCALLTYPE *GetContainingOutput)( IDXGISwapChain2 *This, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGISwapChain2 *This, DXGI_FRAME_STATISTICS *stats); HRESULT (STDMETHODCALLTYPE *GetLastPresentCount)( IDXGISwapChain2 *This, UINT *last_present_count); /*** IDXGISwapChain1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGISwapChain2 *This, DXGI_SWAP_CHAIN_DESC1 *pDesc); HRESULT (STDMETHODCALLTYPE *GetFullscreenDesc)( IDXGISwapChain2 *This, DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc); HRESULT (STDMETHODCALLTYPE *GetHwnd)( IDXGISwapChain2 *This, HWND *pHwnd); HRESULT (STDMETHODCALLTYPE *GetCoreWindow)( IDXGISwapChain2 *This, REFIID refiid, void **ppUnk); HRESULT (STDMETHODCALLTYPE *Present1)( IDXGISwapChain2 *This, UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS *pPresentParameters); WINBOOL (STDMETHODCALLTYPE *IsTemporaryMonoSupported)( IDXGISwapChain2 *This); HRESULT (STDMETHODCALLTYPE *GetRestrictToOutput)( IDXGISwapChain2 *This, IDXGIOutput **ppRestrictToOutput); HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IDXGISwapChain2 *This, const DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( IDXGISwapChain2 *This, DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *SetRotation)( IDXGISwapChain2 *This, DXGI_MODE_ROTATION Rotation); HRESULT (STDMETHODCALLTYPE *GetRotation)( IDXGISwapChain2 *This, DXGI_MODE_ROTATION *pRotation); /*** IDXGISwapChain2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetSourceSize)( IDXGISwapChain2 *This, UINT width, UINT height); HRESULT (STDMETHODCALLTYPE *GetSourceSize)( IDXGISwapChain2 *This, UINT *width, UINT *height); HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGISwapChain2 *This, UINT max_latency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGISwapChain2 *This, UINT *max_latency); HANDLE (STDMETHODCALLTYPE *GetFrameLatencyWaitableObject)( IDXGISwapChain2 *This); HRESULT (STDMETHODCALLTYPE *SetMatrixTransform)( IDXGISwapChain2 *This, const DXGI_MATRIX_3X2_F *matrix); HRESULT (STDMETHODCALLTYPE *GetMatrixTransform)( IDXGISwapChain2 *This, DXGI_MATRIX_3X2_F *matrix); END_INTERFACE } IDXGISwapChain2Vtbl; interface IDXGISwapChain2 { CONST_VTBL IDXGISwapChain2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChain2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChain2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChain2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISwapChain2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISwapChain2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISwapChain2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISwapChain2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISwapChain2_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISwapChain methods ***/ #define IDXGISwapChain2_Present(This,sync_interval,flags) (This)->lpVtbl->Present(This,sync_interval,flags) #define IDXGISwapChain2_GetBuffer(This,buffer_idx,riid,surface) (This)->lpVtbl->GetBuffer(This,buffer_idx,riid,surface) #define IDXGISwapChain2_SetFullscreenState(This,fullscreen,target) (This)->lpVtbl->SetFullscreenState(This,fullscreen,target) #define IDXGISwapChain2_GetFullscreenState(This,fullscreen,target) (This)->lpVtbl->GetFullscreenState(This,fullscreen,target) #define IDXGISwapChain2_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISwapChain2_ResizeBuffers(This,buffer_count,width,height,format,flags) (This)->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags) #define IDXGISwapChain2_ResizeTarget(This,target_mode_desc) (This)->lpVtbl->ResizeTarget(This,target_mode_desc) #define IDXGISwapChain2_GetContainingOutput(This,output) (This)->lpVtbl->GetContainingOutput(This,output) #define IDXGISwapChain2_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #define IDXGISwapChain2_GetLastPresentCount(This,last_present_count) (This)->lpVtbl->GetLastPresentCount(This,last_present_count) /*** IDXGISwapChain1 methods ***/ #define IDXGISwapChain2_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #define IDXGISwapChain2_GetFullscreenDesc(This,pDesc) (This)->lpVtbl->GetFullscreenDesc(This,pDesc) #define IDXGISwapChain2_GetHwnd(This,pHwnd) (This)->lpVtbl->GetHwnd(This,pHwnd) #define IDXGISwapChain2_GetCoreWindow(This,refiid,ppUnk) (This)->lpVtbl->GetCoreWindow(This,refiid,ppUnk) #define IDXGISwapChain2_Present1(This,SyncInterval,PresentFlags,pPresentParameters) (This)->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters) #define IDXGISwapChain2_IsTemporaryMonoSupported(This) (This)->lpVtbl->IsTemporaryMonoSupported(This) #define IDXGISwapChain2_GetRestrictToOutput(This,ppRestrictToOutput) (This)->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput) #define IDXGISwapChain2_SetBackgroundColor(This,pColor) (This)->lpVtbl->SetBackgroundColor(This,pColor) #define IDXGISwapChain2_GetBackgroundColor(This,pColor) (This)->lpVtbl->GetBackgroundColor(This,pColor) #define IDXGISwapChain2_SetRotation(This,Rotation) (This)->lpVtbl->SetRotation(This,Rotation) #define IDXGISwapChain2_GetRotation(This,pRotation) (This)->lpVtbl->GetRotation(This,pRotation) /*** IDXGISwapChain2 methods ***/ #define IDXGISwapChain2_SetSourceSize(This,width,height) (This)->lpVtbl->SetSourceSize(This,width,height) #define IDXGISwapChain2_GetSourceSize(This,width,height) (This)->lpVtbl->GetSourceSize(This,width,height) #define IDXGISwapChain2_SetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->SetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain2_GetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->GetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain2_GetFrameLatencyWaitableObject(This) (This)->lpVtbl->GetFrameLatencyWaitableObject(This) #define IDXGISwapChain2_SetMatrixTransform(This,matrix) (This)->lpVtbl->SetMatrixTransform(This,matrix) #define IDXGISwapChain2_GetMatrixTransform(This,matrix) (This)->lpVtbl->GetMatrixTransform(This,matrix) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_QueryInterface(IDXGISwapChain2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChain2_AddRef(IDXGISwapChain2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChain2_Release(IDXGISwapChain2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_SetPrivateData(IDXGISwapChain2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain2_SetPrivateDataInterface(IDXGISwapChain2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISwapChain2_GetPrivateData(IDXGISwapChain2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain2_GetParent(IDXGISwapChain2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_GetDevice(IDXGISwapChain2* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISwapChain methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_Present(IDXGISwapChain2* This,UINT sync_interval,UINT flags) { return This->lpVtbl->Present(This,sync_interval,flags); } static FORCEINLINE HRESULT IDXGISwapChain2_GetBuffer(IDXGISwapChain2* This,UINT buffer_idx,REFIID riid,void **surface) { return This->lpVtbl->GetBuffer(This,buffer_idx,riid,surface); } static FORCEINLINE HRESULT IDXGISwapChain2_SetFullscreenState(IDXGISwapChain2* This,WINBOOL fullscreen,IDXGIOutput *target) { return This->lpVtbl->SetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain2_GetFullscreenState(IDXGISwapChain2* This,WINBOOL *fullscreen,IDXGIOutput **target) { return This->lpVtbl->GetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain2_GetDesc(IDXGISwapChain2* This,DXGI_SWAP_CHAIN_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISwapChain2_ResizeBuffers(IDXGISwapChain2* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags) { return This->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags); } static FORCEINLINE HRESULT IDXGISwapChain2_ResizeTarget(IDXGISwapChain2* This,const DXGI_MODE_DESC *target_mode_desc) { return This->lpVtbl->ResizeTarget(This,target_mode_desc); } static FORCEINLINE HRESULT IDXGISwapChain2_GetContainingOutput(IDXGISwapChain2* This,IDXGIOutput **output) { return This->lpVtbl->GetContainingOutput(This,output); } static FORCEINLINE HRESULT IDXGISwapChain2_GetFrameStatistics(IDXGISwapChain2* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } static FORCEINLINE HRESULT IDXGISwapChain2_GetLastPresentCount(IDXGISwapChain2* This,UINT *last_present_count) { return This->lpVtbl->GetLastPresentCount(This,last_present_count); } /*** IDXGISwapChain1 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_GetDesc1(IDXGISwapChain2* This,DXGI_SWAP_CHAIN_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain2_GetFullscreenDesc(IDXGISwapChain2* This,DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc) { return This->lpVtbl->GetFullscreenDesc(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain2_GetHwnd(IDXGISwapChain2* This,HWND *pHwnd) { return This->lpVtbl->GetHwnd(This,pHwnd); } static FORCEINLINE HRESULT IDXGISwapChain2_GetCoreWindow(IDXGISwapChain2* This,REFIID refiid,void **ppUnk) { return This->lpVtbl->GetCoreWindow(This,refiid,ppUnk); } static FORCEINLINE HRESULT IDXGISwapChain2_Present1(IDXGISwapChain2* This,UINT SyncInterval,UINT PresentFlags,const DXGI_PRESENT_PARAMETERS *pPresentParameters) { return This->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters); } static FORCEINLINE WINBOOL IDXGISwapChain2_IsTemporaryMonoSupported(IDXGISwapChain2* This) { return This->lpVtbl->IsTemporaryMonoSupported(This); } static FORCEINLINE HRESULT IDXGISwapChain2_GetRestrictToOutput(IDXGISwapChain2* This,IDXGIOutput **ppRestrictToOutput) { return This->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput); } static FORCEINLINE HRESULT IDXGISwapChain2_SetBackgroundColor(IDXGISwapChain2* This,const DXGI_RGBA *pColor) { return This->lpVtbl->SetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain2_GetBackgroundColor(IDXGISwapChain2* This,DXGI_RGBA *pColor) { return This->lpVtbl->GetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain2_SetRotation(IDXGISwapChain2* This,DXGI_MODE_ROTATION Rotation) { return This->lpVtbl->SetRotation(This,Rotation); } static FORCEINLINE HRESULT IDXGISwapChain2_GetRotation(IDXGISwapChain2* This,DXGI_MODE_ROTATION *pRotation) { return This->lpVtbl->GetRotation(This,pRotation); } /*** IDXGISwapChain2 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain2_SetSourceSize(IDXGISwapChain2* This,UINT width,UINT height) { return This->lpVtbl->SetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain2_GetSourceSize(IDXGISwapChain2* This,UINT *width,UINT *height) { return This->lpVtbl->GetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain2_SetMaximumFrameLatency(IDXGISwapChain2* This,UINT max_latency) { return This->lpVtbl->SetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HRESULT IDXGISwapChain2_GetMaximumFrameLatency(IDXGISwapChain2* This,UINT *max_latency) { return This->lpVtbl->GetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HANDLE IDXGISwapChain2_GetFrameLatencyWaitableObject(IDXGISwapChain2* This) { return This->lpVtbl->GetFrameLatencyWaitableObject(This); } static FORCEINLINE HRESULT IDXGISwapChain2_SetMatrixTransform(IDXGISwapChain2* This,const DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->SetMatrixTransform(This,matrix); } static FORCEINLINE HRESULT IDXGISwapChain2_GetMatrixTransform(IDXGISwapChain2* This,DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->GetMatrixTransform(This,matrix); } #endif #endif #endif #endif /* __IDXGISwapChain2_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput2 interface */ #ifndef __IDXGIOutput2_INTERFACE_DEFINED__ #define __IDXGIOutput2_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput2, 0x595e39d1, 0x2724, 0x4663, 0x99,0xb1, 0xda,0x96,0x9d,0xe2,0x83,0x64); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("595e39d1-2724-4663-99b1-da969de28364") IDXGIOutput2 : public IDXGIOutput1 { virtual WINBOOL STDMETHODCALLTYPE SupportsOverlays( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput2, 0x595e39d1, 0x2724, 0x4663, 0x99,0xb1, 0xda,0x96,0x9d,0xe2,0x83,0x64) #endif #else typedef struct IDXGIOutput2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput2 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput2 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput2 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput2 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput2 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput2 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput2 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput2 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput2 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput2 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput2 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput2 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput2 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput2 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput2 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput2 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput2 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput2 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput2 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput2 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput2 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput2 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); /*** IDXGIOutput2 methods ***/ WINBOOL (STDMETHODCALLTYPE *SupportsOverlays)( IDXGIOutput2 *This); END_INTERFACE } IDXGIOutput2Vtbl; interface IDXGIOutput2 { CONST_VTBL IDXGIOutput2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput2_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput2_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput2_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput2_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput2_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput2_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput2_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput2_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput2_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput2_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput2_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput2_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput2_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput2_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput2_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput2_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput2_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput2_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput2_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput2_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput2_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput2_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) /*** IDXGIOutput2 methods ***/ #define IDXGIOutput2_SupportsOverlays(This) (This)->lpVtbl->SupportsOverlays(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput2_QueryInterface(IDXGIOutput2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput2_AddRef(IDXGIOutput2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput2_Release(IDXGIOutput2* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput2_SetPrivateData(IDXGIOutput2* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput2_SetPrivateDataInterface(IDXGIOutput2* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput2_GetPrivateData(IDXGIOutput2* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput2_GetParent(IDXGIOutput2* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput2_GetDesc(IDXGIOutput2* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput2_GetDisplayModeList(IDXGIOutput2* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput2_FindClosestMatchingMode(IDXGIOutput2* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput2_WaitForVBlank(IDXGIOutput2* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput2_TakeOwnership(IDXGIOutput2* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput2_ReleaseOwnership(IDXGIOutput2* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput2_GetGammaControlCapabilities(IDXGIOutput2* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput2_SetGammaControl(IDXGIOutput2* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput2_GetGammaControl(IDXGIOutput2* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput2_SetDisplaySurface(IDXGIOutput2* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput2_GetDisplaySurfaceData(IDXGIOutput2* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput2_GetFrameStatistics(IDXGIOutput2* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput2_GetDisplayModeList1(IDXGIOutput2* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput2_FindClosestMatchingMode1(IDXGIOutput2* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput2_GetDisplaySurfaceData1(IDXGIOutput2* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput2_DuplicateOutput(IDXGIOutput2* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } /*** IDXGIOutput2 methods ***/ static FORCEINLINE WINBOOL IDXGIOutput2_SupportsOverlays(IDXGIOutput2* This) { return This->lpVtbl->SupportsOverlays(This); } #endif #endif #endif #endif /* __IDXGIOutput2_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory3 interface */ #ifndef __IDXGIFactory3_INTERFACE_DEFINED__ #define __IDXGIFactory3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory3, 0x25483823, 0xcd46, 0x4c7d, 0x86,0xca, 0x47,0xaa,0x95,0xb8,0x37,0xbd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("25483823-cd46-4c7d-86ca-47aa95b837bd") IDXGIFactory3 : public IDXGIFactory2 { virtual UINT STDMETHODCALLTYPE GetCreationFlags( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory3, 0x25483823, 0xcd46, 0x4c7d, 0x86,0xca, 0x47,0xaa,0x95,0xb8,0x37,0xbd) #endif #else typedef struct IDXGIFactory3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory3 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory3 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory3 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory3 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory3 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory3 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory3 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory3 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory3 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory3 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory3 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory3 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory3 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory3 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory3 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory3 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory3 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory3 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory3 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory3 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory3 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory3 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory3 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory3 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); /*** IDXGIFactory3 methods ***/ UINT (STDMETHODCALLTYPE *GetCreationFlags)( IDXGIFactory3 *This); END_INTERFACE } IDXGIFactory3Vtbl; interface IDXGIFactory3 { CONST_VTBL IDXGIFactory3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory3_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory3_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory3_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory3_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory3_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory3_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory3_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory3_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory3_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory3_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory3_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory3_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory3_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory3_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory3_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory3_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory3_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory3_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory3_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory3_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory3_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory3_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory3_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) /*** IDXGIFactory3 methods ***/ #define IDXGIFactory3_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory3_QueryInterface(IDXGIFactory3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory3_AddRef(IDXGIFactory3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory3_Release(IDXGIFactory3* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory3_SetPrivateData(IDXGIFactory3* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory3_SetPrivateDataInterface(IDXGIFactory3* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory3_GetPrivateData(IDXGIFactory3* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory3_GetParent(IDXGIFactory3* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory3_EnumAdapters(IDXGIFactory3* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory3_MakeWindowAssociation(IDXGIFactory3* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory3_GetWindowAssociation(IDXGIFactory3* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory3_CreateSwapChain(IDXGIFactory3* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory3_CreateSoftwareAdapter(IDXGIFactory3* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory3_EnumAdapters1(IDXGIFactory3* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory3_IsCurrent(IDXGIFactory3* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory3_IsWindowedStereoEnabled(IDXGIFactory3* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory3_CreateSwapChainForHwnd(IDXGIFactory3* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory3_CreateSwapChainForCoreWindow(IDXGIFactory3* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory3_GetSharedResourceAdapterLuid(IDXGIFactory3* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory3_RegisterStereoStatusWindow(IDXGIFactory3* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory3_RegisterStereoStatusEvent(IDXGIFactory3* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory3_UnregisterStereoStatus(IDXGIFactory3* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory3_RegisterOcclusionStatusWindow(IDXGIFactory3* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory3_RegisterOcclusionStatusEvent(IDXGIFactory3* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory3_UnregisterOcclusionStatus(IDXGIFactory3* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory3_CreateSwapChainForComposition(IDXGIFactory3* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } /*** IDXGIFactory3 methods ***/ static FORCEINLINE UINT IDXGIFactory3_GetCreationFlags(IDXGIFactory3* This) { return This->lpVtbl->GetCreationFlags(This); } #endif #endif #endif #endif /* __IDXGIFactory3_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDecodeSwapChain interface */ #ifndef __IDXGIDecodeSwapChain_INTERFACE_DEFINED__ #define __IDXGIDecodeSwapChain_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDecodeSwapChain, 0x2633066b, 0x4514, 0x4c7a, 0x8f,0xd8, 0x12,0xea,0x98,0x05,0x9d,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("2633066b-4514-4c7a-8fd8-12ea98059d18") IDXGIDecodeSwapChain : public IUnknown { virtual HRESULT STDMETHODCALLTYPE PresentBuffer( UINT buffer_to_present, UINT sync_interval, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE SetSourceRect( const RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE SetTargetRect( const RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE SetDestSize( UINT width, UINT height) = 0; virtual HRESULT STDMETHODCALLTYPE GetSourceRect( RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE GetTargetRect( RECT *rect) = 0; virtual HRESULT STDMETHODCALLTYPE GetDestSize( UINT *width, UINT *height) = 0; virtual HRESULT STDMETHODCALLTYPE SetColorSpace( DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS colorspace) = 0; virtual DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS STDMETHODCALLTYPE GetColorSpace( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDecodeSwapChain, 0x2633066b, 0x4514, 0x4c7a, 0x8f,0xd8, 0x12,0xea,0x98,0x05,0x9d,0x18) #endif #else typedef struct IDXGIDecodeSwapChainVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDecodeSwapChain *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDecodeSwapChain *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDecodeSwapChain *This); /*** IDXGIDecodeSwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *PresentBuffer)( IDXGIDecodeSwapChain *This, UINT buffer_to_present, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *SetSourceRect)( IDXGIDecodeSwapChain *This, const RECT *rect); HRESULT (STDMETHODCALLTYPE *SetTargetRect)( IDXGIDecodeSwapChain *This, const RECT *rect); HRESULT (STDMETHODCALLTYPE *SetDestSize)( IDXGIDecodeSwapChain *This, UINT width, UINT height); HRESULT (STDMETHODCALLTYPE *GetSourceRect)( IDXGIDecodeSwapChain *This, RECT *rect); HRESULT (STDMETHODCALLTYPE *GetTargetRect)( IDXGIDecodeSwapChain *This, RECT *rect); HRESULT (STDMETHODCALLTYPE *GetDestSize)( IDXGIDecodeSwapChain *This, UINT *width, UINT *height); HRESULT (STDMETHODCALLTYPE *SetColorSpace)( IDXGIDecodeSwapChain *This, DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS colorspace); DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS (STDMETHODCALLTYPE *GetColorSpace)( IDXGIDecodeSwapChain *This); END_INTERFACE } IDXGIDecodeSwapChainVtbl; interface IDXGIDecodeSwapChain { CONST_VTBL IDXGIDecodeSwapChainVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDecodeSwapChain_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDecodeSwapChain_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDecodeSwapChain_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIDecodeSwapChain methods ***/ #define IDXGIDecodeSwapChain_PresentBuffer(This,buffer_to_present,sync_interval,flags) (This)->lpVtbl->PresentBuffer(This,buffer_to_present,sync_interval,flags) #define IDXGIDecodeSwapChain_SetSourceRect(This,rect) (This)->lpVtbl->SetSourceRect(This,rect) #define IDXGIDecodeSwapChain_SetTargetRect(This,rect) (This)->lpVtbl->SetTargetRect(This,rect) #define IDXGIDecodeSwapChain_SetDestSize(This,width,height) (This)->lpVtbl->SetDestSize(This,width,height) #define IDXGIDecodeSwapChain_GetSourceRect(This,rect) (This)->lpVtbl->GetSourceRect(This,rect) #define IDXGIDecodeSwapChain_GetTargetRect(This,rect) (This)->lpVtbl->GetTargetRect(This,rect) #define IDXGIDecodeSwapChain_GetDestSize(This,width,height) (This)->lpVtbl->GetDestSize(This,width,height) #define IDXGIDecodeSwapChain_SetColorSpace(This,colorspace) (This)->lpVtbl->SetColorSpace(This,colorspace) #define IDXGIDecodeSwapChain_GetColorSpace(This) (This)->lpVtbl->GetColorSpace(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDecodeSwapChain_QueryInterface(IDXGIDecodeSwapChain* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDecodeSwapChain_AddRef(IDXGIDecodeSwapChain* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDecodeSwapChain_Release(IDXGIDecodeSwapChain* This) { return This->lpVtbl->Release(This); } /*** IDXGIDecodeSwapChain methods ***/ static FORCEINLINE HRESULT IDXGIDecodeSwapChain_PresentBuffer(IDXGIDecodeSwapChain* This,UINT buffer_to_present,UINT sync_interval,UINT flags) { return This->lpVtbl->PresentBuffer(This,buffer_to_present,sync_interval,flags); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_SetSourceRect(IDXGIDecodeSwapChain* This,const RECT *rect) { return This->lpVtbl->SetSourceRect(This,rect); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_SetTargetRect(IDXGIDecodeSwapChain* This,const RECT *rect) { return This->lpVtbl->SetTargetRect(This,rect); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_SetDestSize(IDXGIDecodeSwapChain* This,UINT width,UINT height) { return This->lpVtbl->SetDestSize(This,width,height); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_GetSourceRect(IDXGIDecodeSwapChain* This,RECT *rect) { return This->lpVtbl->GetSourceRect(This,rect); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_GetTargetRect(IDXGIDecodeSwapChain* This,RECT *rect) { return This->lpVtbl->GetTargetRect(This,rect); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_GetDestSize(IDXGIDecodeSwapChain* This,UINT *width,UINT *height) { return This->lpVtbl->GetDestSize(This,width,height); } static FORCEINLINE HRESULT IDXGIDecodeSwapChain_SetColorSpace(IDXGIDecodeSwapChain* This,DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS colorspace) { return This->lpVtbl->SetColorSpace(This,colorspace); } static FORCEINLINE DXGI_MULTIPLANE_OVERLAY_YCbCr_FLAGS IDXGIDecodeSwapChain_GetColorSpace(IDXGIDecodeSwapChain* This) { return This->lpVtbl->GetColorSpace(This); } #endif #endif #endif #endif /* __IDXGIDecodeSwapChain_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactoryMedia interface */ #ifndef __IDXGIFactoryMedia_INTERFACE_DEFINED__ #define __IDXGIFactoryMedia_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactoryMedia, 0x41e7d1f2, 0xa591, 0x4f7b, 0xa2,0xe5, 0xfa,0x9c,0x84,0x3e,0x1c,0x12); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("41e7d1f2-a591-4f7b-a2e5-fa9c843e1c12") IDXGIFactoryMedia : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateSwapChainForCompositionSurfaceHandle( IUnknown *device, HANDLE surface, const DXGI_SWAP_CHAIN_DESC1 *desc, IDXGIOutput *restrict_to_output, IDXGISwapChain1 **swapchain) = 0; virtual HRESULT STDMETHODCALLTYPE CreateDecodeSwapChainForCompositionSurfaceHandle( IUnknown *device, HANDLE surface, DXGI_DECODE_SWAP_CHAIN_DESC *desc, IDXGIResource *yuv_decode_buffers, IDXGIOutput *restrict_to_output, IDXGIDecodeSwapChain **swapchain) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactoryMedia, 0x41e7d1f2, 0xa591, 0x4f7b, 0xa2,0xe5, 0xfa,0x9c,0x84,0x3e,0x1c,0x12) #endif #else typedef struct IDXGIFactoryMediaVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactoryMedia *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactoryMedia *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactoryMedia *This); /*** IDXGIFactoryMedia methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCompositionSurfaceHandle)( IDXGIFactoryMedia *This, IUnknown *device, HANDLE surface, const DXGI_SWAP_CHAIN_DESC1 *desc, IDXGIOutput *restrict_to_output, IDXGISwapChain1 **swapchain); HRESULT (STDMETHODCALLTYPE *CreateDecodeSwapChainForCompositionSurfaceHandle)( IDXGIFactoryMedia *This, IUnknown *device, HANDLE surface, DXGI_DECODE_SWAP_CHAIN_DESC *desc, IDXGIResource *yuv_decode_buffers, IDXGIOutput *restrict_to_output, IDXGIDecodeSwapChain **swapchain); END_INTERFACE } IDXGIFactoryMediaVtbl; interface IDXGIFactoryMedia { CONST_VTBL IDXGIFactoryMediaVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactoryMedia_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactoryMedia_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactoryMedia_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIFactoryMedia methods ***/ #define IDXGIFactoryMedia_CreateSwapChainForCompositionSurfaceHandle(This,device,surface,desc,restrict_to_output,swapchain) (This)->lpVtbl->CreateSwapChainForCompositionSurfaceHandle(This,device,surface,desc,restrict_to_output,swapchain) #define IDXGIFactoryMedia_CreateDecodeSwapChainForCompositionSurfaceHandle(This,device,surface,desc,yuv_decode_buffers,restrict_to_output,swapchain) (This)->lpVtbl->CreateDecodeSwapChainForCompositionSurfaceHandle(This,device,surface,desc,yuv_decode_buffers,restrict_to_output,swapchain) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactoryMedia_QueryInterface(IDXGIFactoryMedia* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactoryMedia_AddRef(IDXGIFactoryMedia* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactoryMedia_Release(IDXGIFactoryMedia* This) { return This->lpVtbl->Release(This); } /*** IDXGIFactoryMedia methods ***/ static FORCEINLINE HRESULT IDXGIFactoryMedia_CreateSwapChainForCompositionSurfaceHandle(IDXGIFactoryMedia* This,IUnknown *device,HANDLE surface,const DXGI_SWAP_CHAIN_DESC1 *desc,IDXGIOutput *restrict_to_output,IDXGISwapChain1 **swapchain) { return This->lpVtbl->CreateSwapChainForCompositionSurfaceHandle(This,device,surface,desc,restrict_to_output,swapchain); } static FORCEINLINE HRESULT IDXGIFactoryMedia_CreateDecodeSwapChainForCompositionSurfaceHandle(IDXGIFactoryMedia* This,IUnknown *device,HANDLE surface,DXGI_DECODE_SWAP_CHAIN_DESC *desc,IDXGIResource *yuv_decode_buffers,IDXGIOutput *restrict_to_output,IDXGIDecodeSwapChain **swapchain) { return This->lpVtbl->CreateDecodeSwapChainForCompositionSurfaceHandle(This,device,surface,desc,yuv_decode_buffers,restrict_to_output,swapchain); } #endif #endif #endif #endif /* __IDXGIFactoryMedia_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISwapChainMedia interface */ #ifndef __IDXGISwapChainMedia_INTERFACE_DEFINED__ #define __IDXGISwapChainMedia_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChainMedia, 0xdd95b90b, 0xf05f, 0x4f6a, 0xbd,0x65, 0x25,0xbf,0xb2,0x64,0xbd,0x84); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dd95b90b-f05f-4f6a-bd65-25bfb264bd84") IDXGISwapChainMedia : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetFrameStatisticsMedia( DXGI_FRAME_STATISTICS_MEDIA *stats) = 0; virtual HRESULT STDMETHODCALLTYPE SetPresentDuration( UINT duration) = 0; virtual HRESULT STDMETHODCALLTYPE CheckPresentDurationSupport( UINT desired_present_duration, UINT *closest_smaller_present_duration, UINT *closest_larger_present_duration) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChainMedia, 0xdd95b90b, 0xf05f, 0x4f6a, 0xbd,0x65, 0x25,0xbf,0xb2,0x64,0xbd,0x84) #endif #else typedef struct IDXGISwapChainMediaVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChainMedia *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChainMedia *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChainMedia *This); /*** IDXGISwapChainMedia methods ***/ HRESULT (STDMETHODCALLTYPE *GetFrameStatisticsMedia)( IDXGISwapChainMedia *This, DXGI_FRAME_STATISTICS_MEDIA *stats); HRESULT (STDMETHODCALLTYPE *SetPresentDuration)( IDXGISwapChainMedia *This, UINT duration); HRESULT (STDMETHODCALLTYPE *CheckPresentDurationSupport)( IDXGISwapChainMedia *This, UINT desired_present_duration, UINT *closest_smaller_present_duration, UINT *closest_larger_present_duration); END_INTERFACE } IDXGISwapChainMediaVtbl; interface IDXGISwapChainMedia { CONST_VTBL IDXGISwapChainMediaVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChainMedia_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChainMedia_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChainMedia_Release(This) (This)->lpVtbl->Release(This) /*** IDXGISwapChainMedia methods ***/ #define IDXGISwapChainMedia_GetFrameStatisticsMedia(This,stats) (This)->lpVtbl->GetFrameStatisticsMedia(This,stats) #define IDXGISwapChainMedia_SetPresentDuration(This,duration) (This)->lpVtbl->SetPresentDuration(This,duration) #define IDXGISwapChainMedia_CheckPresentDurationSupport(This,desired_present_duration,closest_smaller_present_duration,closest_larger_present_duration) (This)->lpVtbl->CheckPresentDurationSupport(This,desired_present_duration,closest_smaller_present_duration,closest_larger_present_duration) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChainMedia_QueryInterface(IDXGISwapChainMedia* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChainMedia_AddRef(IDXGISwapChainMedia* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChainMedia_Release(IDXGISwapChainMedia* This) { return This->lpVtbl->Release(This); } /*** IDXGISwapChainMedia methods ***/ static FORCEINLINE HRESULT IDXGISwapChainMedia_GetFrameStatisticsMedia(IDXGISwapChainMedia* This,DXGI_FRAME_STATISTICS_MEDIA *stats) { return This->lpVtbl->GetFrameStatisticsMedia(This,stats); } static FORCEINLINE HRESULT IDXGISwapChainMedia_SetPresentDuration(IDXGISwapChainMedia* This,UINT duration) { return This->lpVtbl->SetPresentDuration(This,duration); } static FORCEINLINE HRESULT IDXGISwapChainMedia_CheckPresentDurationSupport(IDXGISwapChainMedia* This,UINT desired_present_duration,UINT *closest_smaller_present_duration,UINT *closest_larger_present_duration) { return This->lpVtbl->CheckPresentDurationSupport(This,desired_present_duration,closest_smaller_present_duration,closest_larger_present_duration); } #endif #endif #endif #endif /* __IDXGISwapChainMedia_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput3 interface */ #ifndef __IDXGIOutput3_INTERFACE_DEFINED__ #define __IDXGIOutput3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput3, 0x8a6bb301, 0x7e7e, 0x41f4, 0xa8,0xe0, 0x5b,0x32,0xf7,0xf9,0x9b,0x18); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8a6bb301-7e7e-41f4-a8e0-5b32f7f99b18") IDXGIOutput3 : public IDXGIOutput2 { virtual HRESULT STDMETHODCALLTYPE CheckOverlaySupport( DXGI_FORMAT enum_format, IUnknown *concerned_device, UINT *flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput3, 0x8a6bb301, 0x7e7e, 0x41f4, 0xa8,0xe0, 0x5b,0x32,0xf7,0xf9,0x9b,0x18) #endif #else typedef struct IDXGIOutput3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput3 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput3 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput3 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput3 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput3 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput3 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput3 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput3 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput3 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput3 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput3 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput3 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput3 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput3 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput3 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput3 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput3 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput3 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput3 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput3 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput3 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput3 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); /*** IDXGIOutput2 methods ***/ WINBOOL (STDMETHODCALLTYPE *SupportsOverlays)( IDXGIOutput3 *This); /*** IDXGIOutput3 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlaySupport)( IDXGIOutput3 *This, DXGI_FORMAT enum_format, IUnknown *concerned_device, UINT *flags); END_INTERFACE } IDXGIOutput3Vtbl; interface IDXGIOutput3 { CONST_VTBL IDXGIOutput3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput3_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput3_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput3_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput3_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput3_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput3_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput3_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput3_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput3_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput3_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput3_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput3_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput3_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput3_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput3_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput3_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput3_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput3_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput3_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput3_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput3_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) /*** IDXGIOutput2 methods ***/ #define IDXGIOutput3_SupportsOverlays(This) (This)->lpVtbl->SupportsOverlays(This) /*** IDXGIOutput3 methods ***/ #define IDXGIOutput3_CheckOverlaySupport(This,enum_format,concerned_device,flags) (This)->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput3_QueryInterface(IDXGIOutput3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput3_AddRef(IDXGIOutput3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput3_Release(IDXGIOutput3* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput3_SetPrivateData(IDXGIOutput3* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput3_SetPrivateDataInterface(IDXGIOutput3* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput3_GetPrivateData(IDXGIOutput3* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput3_GetParent(IDXGIOutput3* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput3_GetDesc(IDXGIOutput3* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput3_GetDisplayModeList(IDXGIOutput3* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput3_FindClosestMatchingMode(IDXGIOutput3* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput3_WaitForVBlank(IDXGIOutput3* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput3_TakeOwnership(IDXGIOutput3* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput3_ReleaseOwnership(IDXGIOutput3* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput3_GetGammaControlCapabilities(IDXGIOutput3* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput3_SetGammaControl(IDXGIOutput3* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput3_GetGammaControl(IDXGIOutput3* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput3_SetDisplaySurface(IDXGIOutput3* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput3_GetDisplaySurfaceData(IDXGIOutput3* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput3_GetFrameStatistics(IDXGIOutput3* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput3_GetDisplayModeList1(IDXGIOutput3* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput3_FindClosestMatchingMode1(IDXGIOutput3* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput3_GetDisplaySurfaceData1(IDXGIOutput3* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput3_DuplicateOutput(IDXGIOutput3* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } /*** IDXGIOutput2 methods ***/ static FORCEINLINE WINBOOL IDXGIOutput3_SupportsOverlays(IDXGIOutput3* This) { return This->lpVtbl->SupportsOverlays(This); } /*** IDXGIOutput3 methods ***/ static FORCEINLINE HRESULT IDXGIOutput3_CheckOverlaySupport(IDXGIOutput3* This,DXGI_FORMAT enum_format,IUnknown *concerned_device,UINT *flags) { return This->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags); } #endif #endif #endif #endif /* __IDXGIOutput3_INTERFACE_DEFINED__ */ #define DXGI_CREATE_FACTORY_DEBUG (0x1) HRESULT __stdcall CreateDXGIFactory2(UINT flags,REFIID iid,void **factory); HRESULT __stdcall DXGIGetDebugInterface1(UINT flags,REFIID iid,void **debug); /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi1_3_h__ */ dxvk-0~git20220822.9df86f2/dxgi1_4.h000066400000000000000000001633641430055512200164240ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi1_4.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi1_4_h__ #define __dxgi1_4_h__ /* Forward declarations */ #ifndef __IDXGISwapChain3_FWD_DEFINED__ #define __IDXGISwapChain3_FWD_DEFINED__ typedef interface IDXGISwapChain3 IDXGISwapChain3; #ifdef __cplusplus interface IDXGISwapChain3; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput4_FWD_DEFINED__ #define __IDXGIOutput4_FWD_DEFINED__ typedef interface IDXGIOutput4 IDXGIOutput4; #ifdef __cplusplus interface IDXGIOutput4; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory4_FWD_DEFINED__ #define __IDXGIFactory4_FWD_DEFINED__ typedef interface IDXGIFactory4 IDXGIFactory4; #ifdef __cplusplus interface IDXGIFactory4; #endif /* __cplusplus */ #endif #ifndef __IDXGIAdapter3_FWD_DEFINED__ #define __IDXGIAdapter3_FWD_DEFINED__ typedef interface IDXGIAdapter3 IDXGIAdapter3; #ifdef __cplusplus interface IDXGIAdapter3; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif typedef enum DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG { DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_PRESENT = 0x1, DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG_OVERLAY_PRESENT = 0x2 } DXGI_SWAP_CHAIN_COLOR_SPACE_SUPPORT_FLAG; typedef enum DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG { DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG_PRESENT = 0x1 } DXGI_OVERLAY_COLOR_SPACE_SUPPORT_FLAG; typedef enum DXGI_MEMORY_SEGMENT_GROUP { DXGI_MEMORY_SEGMENT_GROUP_LOCAL = 0x0, DXGI_MEMORY_SEGMENT_GROUP_NON_LOCAL = 0x1 } DXGI_MEMORY_SEGMENT_GROUP; typedef struct DXGI_QUERY_VIDEO_MEMORY_INFO { UINT64 Budget; UINT64 CurrentUsage; UINT64 AvailableForReservation; UINT64 CurrentReservation; } DXGI_QUERY_VIDEO_MEMORY_INFO; /***************************************************************************** * IDXGISwapChain3 interface */ #ifndef __IDXGISwapChain3_INTERFACE_DEFINED__ #define __IDXGISwapChain3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChain3, 0x94d99bdb, 0xf1f8, 0x4ab0, 0xb2,0x36, 0x7d,0xa0,0x17,0x0e,0xda,0xb1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("94d99bdb-f1f8-4ab0-b236-7da0170edab1") IDXGISwapChain3 : public IDXGISwapChain2 { virtual UINT STDMETHODCALLTYPE GetCurrentBackBufferIndex( ) = 0; virtual HRESULT STDMETHODCALLTYPE CheckColorSpaceSupport( DXGI_COLOR_SPACE_TYPE colour_space, UINT *colour_space_support) = 0; virtual HRESULT STDMETHODCALLTYPE SetColorSpace1( DXGI_COLOR_SPACE_TYPE colour_space) = 0; virtual HRESULT STDMETHODCALLTYPE ResizeBuffers1( UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags, const UINT *node_mask, IUnknown *const *present_queue) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChain3, 0x94d99bdb, 0xf1f8, 0x4ab0, 0xb2,0x36, 0x7d,0xa0,0x17,0x0e,0xda,0xb1) #endif #else typedef struct IDXGISwapChain3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChain3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChain3 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChain3 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISwapChain3 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISwapChain3 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISwapChain3 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISwapChain3 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISwapChain3 *This, REFIID riid, void **device); /*** IDXGISwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *Present)( IDXGISwapChain3 *This, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDXGISwapChain3 *This, UINT buffer_idx, REFIID riid, void **surface); HRESULT (STDMETHODCALLTYPE *SetFullscreenState)( IDXGISwapChain3 *This, WINBOOL fullscreen, IDXGIOutput *target); HRESULT (STDMETHODCALLTYPE *GetFullscreenState)( IDXGISwapChain3 *This, WINBOOL *fullscreen, IDXGIOutput **target); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISwapChain3 *This, DXGI_SWAP_CHAIN_DESC *desc); HRESULT (STDMETHODCALLTYPE *ResizeBuffers)( IDXGISwapChain3 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTarget)( IDXGISwapChain3 *This, const DXGI_MODE_DESC *target_mode_desc); HRESULT (STDMETHODCALLTYPE *GetContainingOutput)( IDXGISwapChain3 *This, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGISwapChain3 *This, DXGI_FRAME_STATISTICS *stats); HRESULT (STDMETHODCALLTYPE *GetLastPresentCount)( IDXGISwapChain3 *This, UINT *last_present_count); /*** IDXGISwapChain1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGISwapChain3 *This, DXGI_SWAP_CHAIN_DESC1 *pDesc); HRESULT (STDMETHODCALLTYPE *GetFullscreenDesc)( IDXGISwapChain3 *This, DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc); HRESULT (STDMETHODCALLTYPE *GetHwnd)( IDXGISwapChain3 *This, HWND *pHwnd); HRESULT (STDMETHODCALLTYPE *GetCoreWindow)( IDXGISwapChain3 *This, REFIID refiid, void **ppUnk); HRESULT (STDMETHODCALLTYPE *Present1)( IDXGISwapChain3 *This, UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS *pPresentParameters); WINBOOL (STDMETHODCALLTYPE *IsTemporaryMonoSupported)( IDXGISwapChain3 *This); HRESULT (STDMETHODCALLTYPE *GetRestrictToOutput)( IDXGISwapChain3 *This, IDXGIOutput **ppRestrictToOutput); HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IDXGISwapChain3 *This, const DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( IDXGISwapChain3 *This, DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *SetRotation)( IDXGISwapChain3 *This, DXGI_MODE_ROTATION Rotation); HRESULT (STDMETHODCALLTYPE *GetRotation)( IDXGISwapChain3 *This, DXGI_MODE_ROTATION *pRotation); /*** IDXGISwapChain2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetSourceSize)( IDXGISwapChain3 *This, UINT width, UINT height); HRESULT (STDMETHODCALLTYPE *GetSourceSize)( IDXGISwapChain3 *This, UINT *width, UINT *height); HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGISwapChain3 *This, UINT max_latency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGISwapChain3 *This, UINT *max_latency); HANDLE (STDMETHODCALLTYPE *GetFrameLatencyWaitableObject)( IDXGISwapChain3 *This); HRESULT (STDMETHODCALLTYPE *SetMatrixTransform)( IDXGISwapChain3 *This, const DXGI_MATRIX_3X2_F *matrix); HRESULT (STDMETHODCALLTYPE *GetMatrixTransform)( IDXGISwapChain3 *This, DXGI_MATRIX_3X2_F *matrix); /*** IDXGISwapChain3 methods ***/ UINT (STDMETHODCALLTYPE *GetCurrentBackBufferIndex)( IDXGISwapChain3 *This); HRESULT (STDMETHODCALLTYPE *CheckColorSpaceSupport)( IDXGISwapChain3 *This, DXGI_COLOR_SPACE_TYPE colour_space, UINT *colour_space_support); HRESULT (STDMETHODCALLTYPE *SetColorSpace1)( IDXGISwapChain3 *This, DXGI_COLOR_SPACE_TYPE colour_space); HRESULT (STDMETHODCALLTYPE *ResizeBuffers1)( IDXGISwapChain3 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags, const UINT *node_mask, IUnknown *const *present_queue); END_INTERFACE } IDXGISwapChain3Vtbl; interface IDXGISwapChain3 { CONST_VTBL IDXGISwapChain3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChain3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChain3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChain3_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISwapChain3_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISwapChain3_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISwapChain3_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISwapChain3_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISwapChain3_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISwapChain methods ***/ #define IDXGISwapChain3_Present(This,sync_interval,flags) (This)->lpVtbl->Present(This,sync_interval,flags) #define IDXGISwapChain3_GetBuffer(This,buffer_idx,riid,surface) (This)->lpVtbl->GetBuffer(This,buffer_idx,riid,surface) #define IDXGISwapChain3_SetFullscreenState(This,fullscreen,target) (This)->lpVtbl->SetFullscreenState(This,fullscreen,target) #define IDXGISwapChain3_GetFullscreenState(This,fullscreen,target) (This)->lpVtbl->GetFullscreenState(This,fullscreen,target) #define IDXGISwapChain3_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISwapChain3_ResizeBuffers(This,buffer_count,width,height,format,flags) (This)->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags) #define IDXGISwapChain3_ResizeTarget(This,target_mode_desc) (This)->lpVtbl->ResizeTarget(This,target_mode_desc) #define IDXGISwapChain3_GetContainingOutput(This,output) (This)->lpVtbl->GetContainingOutput(This,output) #define IDXGISwapChain3_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #define IDXGISwapChain3_GetLastPresentCount(This,last_present_count) (This)->lpVtbl->GetLastPresentCount(This,last_present_count) /*** IDXGISwapChain1 methods ***/ #define IDXGISwapChain3_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #define IDXGISwapChain3_GetFullscreenDesc(This,pDesc) (This)->lpVtbl->GetFullscreenDesc(This,pDesc) #define IDXGISwapChain3_GetHwnd(This,pHwnd) (This)->lpVtbl->GetHwnd(This,pHwnd) #define IDXGISwapChain3_GetCoreWindow(This,refiid,ppUnk) (This)->lpVtbl->GetCoreWindow(This,refiid,ppUnk) #define IDXGISwapChain3_Present1(This,SyncInterval,PresentFlags,pPresentParameters) (This)->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters) #define IDXGISwapChain3_IsTemporaryMonoSupported(This) (This)->lpVtbl->IsTemporaryMonoSupported(This) #define IDXGISwapChain3_GetRestrictToOutput(This,ppRestrictToOutput) (This)->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput) #define IDXGISwapChain3_SetBackgroundColor(This,pColor) (This)->lpVtbl->SetBackgroundColor(This,pColor) #define IDXGISwapChain3_GetBackgroundColor(This,pColor) (This)->lpVtbl->GetBackgroundColor(This,pColor) #define IDXGISwapChain3_SetRotation(This,Rotation) (This)->lpVtbl->SetRotation(This,Rotation) #define IDXGISwapChain3_GetRotation(This,pRotation) (This)->lpVtbl->GetRotation(This,pRotation) /*** IDXGISwapChain2 methods ***/ #define IDXGISwapChain3_SetSourceSize(This,width,height) (This)->lpVtbl->SetSourceSize(This,width,height) #define IDXGISwapChain3_GetSourceSize(This,width,height) (This)->lpVtbl->GetSourceSize(This,width,height) #define IDXGISwapChain3_SetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->SetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain3_GetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->GetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain3_GetFrameLatencyWaitableObject(This) (This)->lpVtbl->GetFrameLatencyWaitableObject(This) #define IDXGISwapChain3_SetMatrixTransform(This,matrix) (This)->lpVtbl->SetMatrixTransform(This,matrix) #define IDXGISwapChain3_GetMatrixTransform(This,matrix) (This)->lpVtbl->GetMatrixTransform(This,matrix) /*** IDXGISwapChain3 methods ***/ #define IDXGISwapChain3_GetCurrentBackBufferIndex(This) (This)->lpVtbl->GetCurrentBackBufferIndex(This) #define IDXGISwapChain3_CheckColorSpaceSupport(This,colour_space,colour_space_support) (This)->lpVtbl->CheckColorSpaceSupport(This,colour_space,colour_space_support) #define IDXGISwapChain3_SetColorSpace1(This,colour_space) (This)->lpVtbl->SetColorSpace1(This,colour_space) #define IDXGISwapChain3_ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue) (This)->lpVtbl->ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_QueryInterface(IDXGISwapChain3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChain3_AddRef(IDXGISwapChain3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChain3_Release(IDXGISwapChain3* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_SetPrivateData(IDXGISwapChain3* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain3_SetPrivateDataInterface(IDXGISwapChain3* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISwapChain3_GetPrivateData(IDXGISwapChain3* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain3_GetParent(IDXGISwapChain3* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_GetDevice(IDXGISwapChain3* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISwapChain methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_Present(IDXGISwapChain3* This,UINT sync_interval,UINT flags) { return This->lpVtbl->Present(This,sync_interval,flags); } static FORCEINLINE HRESULT IDXGISwapChain3_GetBuffer(IDXGISwapChain3* This,UINT buffer_idx,REFIID riid,void **surface) { return This->lpVtbl->GetBuffer(This,buffer_idx,riid,surface); } static FORCEINLINE HRESULT IDXGISwapChain3_SetFullscreenState(IDXGISwapChain3* This,WINBOOL fullscreen,IDXGIOutput *target) { return This->lpVtbl->SetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain3_GetFullscreenState(IDXGISwapChain3* This,WINBOOL *fullscreen,IDXGIOutput **target) { return This->lpVtbl->GetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain3_GetDesc(IDXGISwapChain3* This,DXGI_SWAP_CHAIN_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISwapChain3_ResizeBuffers(IDXGISwapChain3* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags) { return This->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags); } static FORCEINLINE HRESULT IDXGISwapChain3_ResizeTarget(IDXGISwapChain3* This,const DXGI_MODE_DESC *target_mode_desc) { return This->lpVtbl->ResizeTarget(This,target_mode_desc); } static FORCEINLINE HRESULT IDXGISwapChain3_GetContainingOutput(IDXGISwapChain3* This,IDXGIOutput **output) { return This->lpVtbl->GetContainingOutput(This,output); } static FORCEINLINE HRESULT IDXGISwapChain3_GetFrameStatistics(IDXGISwapChain3* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } static FORCEINLINE HRESULT IDXGISwapChain3_GetLastPresentCount(IDXGISwapChain3* This,UINT *last_present_count) { return This->lpVtbl->GetLastPresentCount(This,last_present_count); } /*** IDXGISwapChain1 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_GetDesc1(IDXGISwapChain3* This,DXGI_SWAP_CHAIN_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain3_GetFullscreenDesc(IDXGISwapChain3* This,DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc) { return This->lpVtbl->GetFullscreenDesc(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain3_GetHwnd(IDXGISwapChain3* This,HWND *pHwnd) { return This->lpVtbl->GetHwnd(This,pHwnd); } static FORCEINLINE HRESULT IDXGISwapChain3_GetCoreWindow(IDXGISwapChain3* This,REFIID refiid,void **ppUnk) { return This->lpVtbl->GetCoreWindow(This,refiid,ppUnk); } static FORCEINLINE HRESULT IDXGISwapChain3_Present1(IDXGISwapChain3* This,UINT SyncInterval,UINT PresentFlags,const DXGI_PRESENT_PARAMETERS *pPresentParameters) { return This->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters); } static FORCEINLINE WINBOOL IDXGISwapChain3_IsTemporaryMonoSupported(IDXGISwapChain3* This) { return This->lpVtbl->IsTemporaryMonoSupported(This); } static FORCEINLINE HRESULT IDXGISwapChain3_GetRestrictToOutput(IDXGISwapChain3* This,IDXGIOutput **ppRestrictToOutput) { return This->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput); } static FORCEINLINE HRESULT IDXGISwapChain3_SetBackgroundColor(IDXGISwapChain3* This,const DXGI_RGBA *pColor) { return This->lpVtbl->SetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain3_GetBackgroundColor(IDXGISwapChain3* This,DXGI_RGBA *pColor) { return This->lpVtbl->GetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain3_SetRotation(IDXGISwapChain3* This,DXGI_MODE_ROTATION Rotation) { return This->lpVtbl->SetRotation(This,Rotation); } static FORCEINLINE HRESULT IDXGISwapChain3_GetRotation(IDXGISwapChain3* This,DXGI_MODE_ROTATION *pRotation) { return This->lpVtbl->GetRotation(This,pRotation); } /*** IDXGISwapChain2 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain3_SetSourceSize(IDXGISwapChain3* This,UINT width,UINT height) { return This->lpVtbl->SetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain3_GetSourceSize(IDXGISwapChain3* This,UINT *width,UINT *height) { return This->lpVtbl->GetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain3_SetMaximumFrameLatency(IDXGISwapChain3* This,UINT max_latency) { return This->lpVtbl->SetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HRESULT IDXGISwapChain3_GetMaximumFrameLatency(IDXGISwapChain3* This,UINT *max_latency) { return This->lpVtbl->GetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HANDLE IDXGISwapChain3_GetFrameLatencyWaitableObject(IDXGISwapChain3* This) { return This->lpVtbl->GetFrameLatencyWaitableObject(This); } static FORCEINLINE HRESULT IDXGISwapChain3_SetMatrixTransform(IDXGISwapChain3* This,const DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->SetMatrixTransform(This,matrix); } static FORCEINLINE HRESULT IDXGISwapChain3_GetMatrixTransform(IDXGISwapChain3* This,DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->GetMatrixTransform(This,matrix); } /*** IDXGISwapChain3 methods ***/ static FORCEINLINE UINT IDXGISwapChain3_GetCurrentBackBufferIndex(IDXGISwapChain3* This) { return This->lpVtbl->GetCurrentBackBufferIndex(This); } static FORCEINLINE HRESULT IDXGISwapChain3_CheckColorSpaceSupport(IDXGISwapChain3* This,DXGI_COLOR_SPACE_TYPE colour_space,UINT *colour_space_support) { return This->lpVtbl->CheckColorSpaceSupport(This,colour_space,colour_space_support); } static FORCEINLINE HRESULT IDXGISwapChain3_SetColorSpace1(IDXGISwapChain3* This,DXGI_COLOR_SPACE_TYPE colour_space) { return This->lpVtbl->SetColorSpace1(This,colour_space); } static FORCEINLINE HRESULT IDXGISwapChain3_ResizeBuffers1(IDXGISwapChain3* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags,const UINT *node_mask,IUnknown *const *present_queue) { return This->lpVtbl->ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue); } #endif #endif #endif #endif /* __IDXGISwapChain3_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput4 interface */ #ifndef __IDXGIOutput4_INTERFACE_DEFINED__ #define __IDXGIOutput4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput4, 0xdc7dca35, 0x2196, 0x414d, 0x9f,0x53, 0x61,0x78,0x84,0x03,0x2a,0x60); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("dc7dca35-2196-414d-9f53-617884032a60") IDXGIOutput4 : public IDXGIOutput3 { virtual HRESULT STDMETHODCALLTYPE CheckOverlayColorSpaceSupport( DXGI_FORMAT format, DXGI_COLOR_SPACE_TYPE colour_space, IUnknown *device, UINT *flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput4, 0xdc7dca35, 0x2196, 0x414d, 0x9f,0x53, 0x61,0x78,0x84,0x03,0x2a,0x60) #endif #else typedef struct IDXGIOutput4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput4 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput4 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput4 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput4 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput4 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput4 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput4 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput4 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput4 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput4 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput4 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput4 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput4 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput4 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput4 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput4 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput4 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput4 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput4 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput4 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput4 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput4 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); /*** IDXGIOutput2 methods ***/ WINBOOL (STDMETHODCALLTYPE *SupportsOverlays)( IDXGIOutput4 *This); /*** IDXGIOutput3 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlaySupport)( IDXGIOutput4 *This, DXGI_FORMAT enum_format, IUnknown *concerned_device, UINT *flags); /*** IDXGIOutput4 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlayColorSpaceSupport)( IDXGIOutput4 *This, DXGI_FORMAT format, DXGI_COLOR_SPACE_TYPE colour_space, IUnknown *device, UINT *flags); END_INTERFACE } IDXGIOutput4Vtbl; interface IDXGIOutput4 { CONST_VTBL IDXGIOutput4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput4_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput4_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput4_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput4_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput4_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput4_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput4_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput4_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput4_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput4_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput4_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput4_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput4_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput4_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput4_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput4_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput4_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput4_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput4_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput4_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput4_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) /*** IDXGIOutput2 methods ***/ #define IDXGIOutput4_SupportsOverlays(This) (This)->lpVtbl->SupportsOverlays(This) /*** IDXGIOutput3 methods ***/ #define IDXGIOutput4_CheckOverlaySupport(This,enum_format,concerned_device,flags) (This)->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags) /*** IDXGIOutput4 methods ***/ #define IDXGIOutput4_CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) (This)->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_QueryInterface(IDXGIOutput4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput4_AddRef(IDXGIOutput4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput4_Release(IDXGIOutput4* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_SetPrivateData(IDXGIOutput4* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput4_SetPrivateDataInterface(IDXGIOutput4* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput4_GetPrivateData(IDXGIOutput4* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput4_GetParent(IDXGIOutput4* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_GetDesc(IDXGIOutput4* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput4_GetDisplayModeList(IDXGIOutput4* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput4_FindClosestMatchingMode(IDXGIOutput4* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput4_WaitForVBlank(IDXGIOutput4* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput4_TakeOwnership(IDXGIOutput4* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput4_ReleaseOwnership(IDXGIOutput4* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput4_GetGammaControlCapabilities(IDXGIOutput4* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput4_SetGammaControl(IDXGIOutput4* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput4_GetGammaControl(IDXGIOutput4* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput4_SetDisplaySurface(IDXGIOutput4* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput4_GetDisplaySurfaceData(IDXGIOutput4* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput4_GetFrameStatistics(IDXGIOutput4* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_GetDisplayModeList1(IDXGIOutput4* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput4_FindClosestMatchingMode1(IDXGIOutput4* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput4_GetDisplaySurfaceData1(IDXGIOutput4* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput4_DuplicateOutput(IDXGIOutput4* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } /*** IDXGIOutput2 methods ***/ static FORCEINLINE WINBOOL IDXGIOutput4_SupportsOverlays(IDXGIOutput4* This) { return This->lpVtbl->SupportsOverlays(This); } /*** IDXGIOutput3 methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_CheckOverlaySupport(IDXGIOutput4* This,DXGI_FORMAT enum_format,IUnknown *concerned_device,UINT *flags) { return This->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags); } /*** IDXGIOutput4 methods ***/ static FORCEINLINE HRESULT IDXGIOutput4_CheckOverlayColorSpaceSupport(IDXGIOutput4* This,DXGI_FORMAT format,DXGI_COLOR_SPACE_TYPE colour_space,IUnknown *device,UINT *flags) { return This->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags); } #endif #endif #endif #endif /* __IDXGIOutput4_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory4 interface */ #ifndef __IDXGIFactory4_INTERFACE_DEFINED__ #define __IDXGIFactory4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory4, 0x1bc6ea02, 0xef36, 0x464f, 0xbf,0x0c, 0x21,0xca,0x39,0xe5,0x16,0x8a); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1bc6ea02-ef36-464f-bf0c-21ca39e5168a") IDXGIFactory4 : public IDXGIFactory3 { virtual HRESULT STDMETHODCALLTYPE EnumAdapterByLuid( LUID luid, REFIID iid, void **adapter) = 0; virtual HRESULT STDMETHODCALLTYPE EnumWarpAdapter( REFIID iid, void **adapter) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory4, 0x1bc6ea02, 0xef36, 0x464f, 0xbf,0x0c, 0x21,0xca,0x39,0xe5,0x16,0x8a) #endif #else typedef struct IDXGIFactory4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory4 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory4 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory4 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory4 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory4 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory4 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory4 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory4 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory4 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory4 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory4 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory4 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory4 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory4 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory4 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory4 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory4 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory4 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory4 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory4 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory4 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory4 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory4 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory4 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); /*** IDXGIFactory3 methods ***/ UINT (STDMETHODCALLTYPE *GetCreationFlags)( IDXGIFactory4 *This); /*** IDXGIFactory4 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByLuid)( IDXGIFactory4 *This, LUID luid, REFIID iid, void **adapter); HRESULT (STDMETHODCALLTYPE *EnumWarpAdapter)( IDXGIFactory4 *This, REFIID iid, void **adapter); END_INTERFACE } IDXGIFactory4Vtbl; interface IDXGIFactory4 { CONST_VTBL IDXGIFactory4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory4_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory4_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory4_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory4_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory4_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory4_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory4_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory4_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory4_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory4_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory4_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory4_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory4_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory4_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory4_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory4_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory4_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory4_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory4_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory4_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory4_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory4_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory4_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) /*** IDXGIFactory3 methods ***/ #define IDXGIFactory4_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) /*** IDXGIFactory4 methods ***/ #define IDXGIFactory4_EnumAdapterByLuid(This,luid,iid,adapter) (This)->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter) #define IDXGIFactory4_EnumWarpAdapter(This,iid,adapter) (This)->lpVtbl->EnumWarpAdapter(This,iid,adapter) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory4_QueryInterface(IDXGIFactory4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory4_AddRef(IDXGIFactory4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory4_Release(IDXGIFactory4* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory4_SetPrivateData(IDXGIFactory4* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory4_SetPrivateDataInterface(IDXGIFactory4* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory4_GetPrivateData(IDXGIFactory4* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory4_GetParent(IDXGIFactory4* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory4_EnumAdapters(IDXGIFactory4* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory4_MakeWindowAssociation(IDXGIFactory4* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory4_GetWindowAssociation(IDXGIFactory4* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory4_CreateSwapChain(IDXGIFactory4* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory4_CreateSoftwareAdapter(IDXGIFactory4* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory4_EnumAdapters1(IDXGIFactory4* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory4_IsCurrent(IDXGIFactory4* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory4_IsWindowedStereoEnabled(IDXGIFactory4* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory4_CreateSwapChainForHwnd(IDXGIFactory4* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory4_CreateSwapChainForCoreWindow(IDXGIFactory4* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory4_GetSharedResourceAdapterLuid(IDXGIFactory4* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory4_RegisterStereoStatusWindow(IDXGIFactory4* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory4_RegisterStereoStatusEvent(IDXGIFactory4* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory4_UnregisterStereoStatus(IDXGIFactory4* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory4_RegisterOcclusionStatusWindow(IDXGIFactory4* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory4_RegisterOcclusionStatusEvent(IDXGIFactory4* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory4_UnregisterOcclusionStatus(IDXGIFactory4* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory4_CreateSwapChainForComposition(IDXGIFactory4* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } /*** IDXGIFactory3 methods ***/ static FORCEINLINE UINT IDXGIFactory4_GetCreationFlags(IDXGIFactory4* This) { return This->lpVtbl->GetCreationFlags(This); } /*** IDXGIFactory4 methods ***/ static FORCEINLINE HRESULT IDXGIFactory4_EnumAdapterByLuid(IDXGIFactory4* This,LUID luid,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter); } static FORCEINLINE HRESULT IDXGIFactory4_EnumWarpAdapter(IDXGIFactory4* This,REFIID iid,void **adapter) { return This->lpVtbl->EnumWarpAdapter(This,iid,adapter); } #endif #endif #endif #endif /* __IDXGIFactory4_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIAdapter3 interface */ #ifndef __IDXGIAdapter3_INTERFACE_DEFINED__ #define __IDXGIAdapter3_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIAdapter3, 0x645967a4, 0x1392, 0x4310, 0xa7,0x98, 0x80,0x53,0xce,0x3e,0x93,0xfd); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("645967a4-1392-4310-a798-8053ce3e93fd") IDXGIAdapter3 : public IDXGIAdapter2 { virtual HRESULT STDMETHODCALLTYPE RegisterHardwareContentProtectionTeardownStatusEvent( HANDLE event, DWORD *cookie) = 0; virtual void STDMETHODCALLTYPE UnregisterHardwareContentProtectionTeardownStatus( DWORD cookie) = 0; virtual HRESULT STDMETHODCALLTYPE QueryVideoMemoryInfo( UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info) = 0; virtual HRESULT STDMETHODCALLTYPE SetVideoMemoryReservation( UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, UINT64 reservation) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterVideoMemoryBudgetChangeNotificationEvent( HANDLE event, DWORD *cookie) = 0; virtual void STDMETHODCALLTYPE UnregisterVideoMemoryBudgetChangeNotification( DWORD cookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIAdapter3, 0x645967a4, 0x1392, 0x4310, 0xa7,0x98, 0x80,0x53,0xce,0x3e,0x93,0xfd) #endif #else typedef struct IDXGIAdapter3Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIAdapter3 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIAdapter3 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIAdapter3 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIAdapter3 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIAdapter3 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIAdapter3 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIAdapter3 *This, REFIID riid, void **parent); /*** IDXGIAdapter methods ***/ HRESULT (STDMETHODCALLTYPE *EnumOutputs)( IDXGIAdapter3 *This, UINT output_idx, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIAdapter3 *This, DXGI_ADAPTER_DESC *desc); HRESULT (STDMETHODCALLTYPE *CheckInterfaceSupport)( IDXGIAdapter3 *This, REFGUID guid, LARGE_INTEGER *umd_version); /*** IDXGIAdapter1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGIAdapter3 *This, DXGI_ADAPTER_DESC1 *pDesc); /*** IDXGIAdapter2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc2)( IDXGIAdapter3 *This, DXGI_ADAPTER_DESC2 *pDesc); /*** IDXGIAdapter3 methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterHardwareContentProtectionTeardownStatusEvent)( IDXGIAdapter3 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterHardwareContentProtectionTeardownStatus)( IDXGIAdapter3 *This, DWORD cookie); HRESULT (STDMETHODCALLTYPE *QueryVideoMemoryInfo)( IDXGIAdapter3 *This, UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info); HRESULT (STDMETHODCALLTYPE *SetVideoMemoryReservation)( IDXGIAdapter3 *This, UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, UINT64 reservation); HRESULT (STDMETHODCALLTYPE *RegisterVideoMemoryBudgetChangeNotificationEvent)( IDXGIAdapter3 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterVideoMemoryBudgetChangeNotification)( IDXGIAdapter3 *This, DWORD cookie); END_INTERFACE } IDXGIAdapter3Vtbl; interface IDXGIAdapter3 { CONST_VTBL IDXGIAdapter3Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIAdapter3_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIAdapter3_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIAdapter3_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIAdapter3_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIAdapter3_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIAdapter3_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIAdapter3_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIAdapter methods ***/ #define IDXGIAdapter3_EnumOutputs(This,output_idx,output) (This)->lpVtbl->EnumOutputs(This,output_idx,output) #define IDXGIAdapter3_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIAdapter3_CheckInterfaceSupport(This,guid,umd_version) (This)->lpVtbl->CheckInterfaceSupport(This,guid,umd_version) /*** IDXGIAdapter1 methods ***/ #define IDXGIAdapter3_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) /*** IDXGIAdapter2 methods ***/ #define IDXGIAdapter3_GetDesc2(This,pDesc) (This)->lpVtbl->GetDesc2(This,pDesc) /*** IDXGIAdapter3 methods ***/ #define IDXGIAdapter3_RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie) (This)->lpVtbl->RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie) #define IDXGIAdapter3_UnregisterHardwareContentProtectionTeardownStatus(This,cookie) (This)->lpVtbl->UnregisterHardwareContentProtectionTeardownStatus(This,cookie) #define IDXGIAdapter3_QueryVideoMemoryInfo(This,node_index,segment_group,memory_info) (This)->lpVtbl->QueryVideoMemoryInfo(This,node_index,segment_group,memory_info) #define IDXGIAdapter3_SetVideoMemoryReservation(This,node_index,segment_group,reservation) (This)->lpVtbl->SetVideoMemoryReservation(This,node_index,segment_group,reservation) #define IDXGIAdapter3_RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie) (This)->lpVtbl->RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie) #define IDXGIAdapter3_UnregisterVideoMemoryBudgetChangeNotification(This,cookie) (This)->lpVtbl->UnregisterVideoMemoryBudgetChangeNotification(This,cookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_QueryInterface(IDXGIAdapter3* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIAdapter3_AddRef(IDXGIAdapter3* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIAdapter3_Release(IDXGIAdapter3* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_SetPrivateData(IDXGIAdapter3* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter3_SetPrivateDataInterface(IDXGIAdapter3* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIAdapter3_GetPrivateData(IDXGIAdapter3* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter3_GetParent(IDXGIAdapter3* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIAdapter methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_EnumOutputs(IDXGIAdapter3* This,UINT output_idx,IDXGIOutput **output) { return This->lpVtbl->EnumOutputs(This,output_idx,output); } static FORCEINLINE HRESULT IDXGIAdapter3_GetDesc(IDXGIAdapter3* This,DXGI_ADAPTER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIAdapter3_CheckInterfaceSupport(IDXGIAdapter3* This,REFGUID guid,LARGE_INTEGER *umd_version) { return This->lpVtbl->CheckInterfaceSupport(This,guid,umd_version); } /*** IDXGIAdapter1 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_GetDesc1(IDXGIAdapter3* This,DXGI_ADAPTER_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } /*** IDXGIAdapter2 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_GetDesc2(IDXGIAdapter3* This,DXGI_ADAPTER_DESC2 *pDesc) { return This->lpVtbl->GetDesc2(This,pDesc); } /*** IDXGIAdapter3 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter3_RegisterHardwareContentProtectionTeardownStatusEvent(IDXGIAdapter3* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie); } static FORCEINLINE void IDXGIAdapter3_UnregisterHardwareContentProtectionTeardownStatus(IDXGIAdapter3* This,DWORD cookie) { This->lpVtbl->UnregisterHardwareContentProtectionTeardownStatus(This,cookie); } static FORCEINLINE HRESULT IDXGIAdapter3_QueryVideoMemoryInfo(IDXGIAdapter3* This,UINT node_index,DXGI_MEMORY_SEGMENT_GROUP segment_group,DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info) { return This->lpVtbl->QueryVideoMemoryInfo(This,node_index,segment_group,memory_info); } static FORCEINLINE HRESULT IDXGIAdapter3_SetVideoMemoryReservation(IDXGIAdapter3* This,UINT node_index,DXGI_MEMORY_SEGMENT_GROUP segment_group,UINT64 reservation) { return This->lpVtbl->SetVideoMemoryReservation(This,node_index,segment_group,reservation); } static FORCEINLINE HRESULT IDXGIAdapter3_RegisterVideoMemoryBudgetChangeNotificationEvent(IDXGIAdapter3* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie); } static FORCEINLINE void IDXGIAdapter3_UnregisterVideoMemoryBudgetChangeNotification(IDXGIAdapter3* This,DWORD cookie) { This->lpVtbl->UnregisterVideoMemoryBudgetChangeNotification(This,cookie); } #endif #endif #endif #endif /* __IDXGIAdapter3_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi1_4_h__ */ dxvk-0~git20220822.9df86f2/dxgi1_5.h000066400000000000000000001701711430055512200164170ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi1_5.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi1_5_h__ #define __dxgi1_5_h__ /* Forward declarations */ #ifndef __IDXGIOutput5_FWD_DEFINED__ #define __IDXGIOutput5_FWD_DEFINED__ typedef interface IDXGIOutput5 IDXGIOutput5; #ifdef __cplusplus interface IDXGIOutput5; #endif /* __cplusplus */ #endif #ifndef __IDXGISwapChain4_FWD_DEFINED__ #define __IDXGISwapChain4_FWD_DEFINED__ typedef interface IDXGISwapChain4 IDXGISwapChain4; #ifdef __cplusplus interface IDXGISwapChain4; #endif /* __cplusplus */ #endif #ifndef __IDXGIDevice4_FWD_DEFINED__ #define __IDXGIDevice4_FWD_DEFINED__ typedef interface IDXGIDevice4 IDXGIDevice4; #ifdef __cplusplus interface IDXGIDevice4; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory5_FWD_DEFINED__ #define __IDXGIFactory5_FWD_DEFINED__ typedef interface IDXGIFactory5 IDXGIFactory5; #ifdef __cplusplus interface IDXGIFactory5; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif typedef enum DXGI_OUTDUPL_FLAG { DXGI_OUTDUPL_COMPOSITED_UI_CAPTURE_ONLY = 0x1 } DXGI_OUTDUPL_FLAG; typedef enum DXGI_HDR_METADATA_TYPE { DXGI_HDR_METADATA_TYPE_NONE = 0x0, DXGI_HDR_METADATA_TYPE_HDR10 = 0x1, DXGI_HDR_METADATA_TYPE_HDR10PLUS = 0x2 } DXGI_HDR_METADATA_TYPE; typedef enum _DXGI_OFFER_RESOURCE_FLAGS { DXGI_OFFER_RESOURCE_FLAG_ALLOW_DECOMMIT = 0x1 } DXGI_OFFER_RESOURCE_FLAGS; typedef enum _DXGI_RECLAIM_RESOURCE_RESULTS { DXGI_RECLAIM_RESOURCE_RESULT_OK = 0x0, DXGI_RECLAIM_RESOURCE_RESULT_DISCARDED = 0x1, DXGI_RECLAIM_RESOURCE_RESULT_NOT_COMMITTED = 0x2 } DXGI_RECLAIM_RESOURCE_RESULTS; typedef enum DXGI_FEATURE { DXGI_FEATURE_PRESENT_ALLOW_TEARING = 0x0 } DXGI_FEATURE; typedef struct DXGI_HDR_METADATA_HDR10 { UINT16 RedPrimary[2]; UINT16 GreenPrimary[2]; UINT16 BluePrimary[2]; UINT16 WhitePoint[2]; UINT MaxMasteringLuminance; UINT MinMasteringLuminance; UINT16 MaxContentLightLevel; UINT16 MaxFrameAverageLightLevel; } DXGI_HDR_METADATA_HDR10; typedef struct DXGI_HDR_METADATA_HDR10PLUS { BYTE Data[72]; } DXGI_HDR_METADATA_HDR10PLUS; /***************************************************************************** * IDXGIOutput5 interface */ #ifndef __IDXGIOutput5_INTERFACE_DEFINED__ #define __IDXGIOutput5_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput5, 0x80a07424, 0xab52, 0x42eb, 0x83,0x3c, 0x0c,0x42,0xfd,0x28,0x2d,0x98); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("80a07424-ab52-42eb-833c-0c42fd282d98") IDXGIOutput5 : public IDXGIOutput4 { virtual HRESULT STDMETHODCALLTYPE DuplicateOutput1( IUnknown *device, UINT flags, UINT format_count, const DXGI_FORMAT *formats, IDXGIOutputDuplication **duplication) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput5, 0x80a07424, 0xab52, 0x42eb, 0x83,0x3c, 0x0c,0x42,0xfd,0x28,0x2d,0x98) #endif #else typedef struct IDXGIOutput5Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput5 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput5 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput5 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput5 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput5 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput5 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput5 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput5 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput5 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput5 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput5 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput5 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput5 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput5 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput5 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput5 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput5 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput5 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput5 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput5 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput5 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput5 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput5 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); /*** IDXGIOutput2 methods ***/ WINBOOL (STDMETHODCALLTYPE *SupportsOverlays)( IDXGIOutput5 *This); /*** IDXGIOutput3 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlaySupport)( IDXGIOutput5 *This, DXGI_FORMAT enum_format, IUnknown *concerned_device, UINT *flags); /*** IDXGIOutput4 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlayColorSpaceSupport)( IDXGIOutput5 *This, DXGI_FORMAT format, DXGI_COLOR_SPACE_TYPE colour_space, IUnknown *device, UINT *flags); /*** IDXGIOutput5 methods ***/ HRESULT (STDMETHODCALLTYPE *DuplicateOutput1)( IDXGIOutput5 *This, IUnknown *device, UINT flags, UINT format_count, const DXGI_FORMAT *formats, IDXGIOutputDuplication **duplication); END_INTERFACE } IDXGIOutput5Vtbl; interface IDXGIOutput5 { CONST_VTBL IDXGIOutput5Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput5_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput5_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput5_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput5_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput5_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput5_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput5_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput5_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput5_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput5_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput5_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput5_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput5_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput5_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput5_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput5_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput5_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput5_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput5_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput5_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput5_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput5_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) /*** IDXGIOutput2 methods ***/ #define IDXGIOutput5_SupportsOverlays(This) (This)->lpVtbl->SupportsOverlays(This) /*** IDXGIOutput3 methods ***/ #define IDXGIOutput5_CheckOverlaySupport(This,enum_format,concerned_device,flags) (This)->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags) /*** IDXGIOutput4 methods ***/ #define IDXGIOutput5_CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) (This)->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) /*** IDXGIOutput5 methods ***/ #define IDXGIOutput5_DuplicateOutput1(This,device,flags,format_count,formats,duplication) (This)->lpVtbl->DuplicateOutput1(This,device,flags,format_count,formats,duplication) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_QueryInterface(IDXGIOutput5* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput5_AddRef(IDXGIOutput5* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput5_Release(IDXGIOutput5* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_SetPrivateData(IDXGIOutput5* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput5_SetPrivateDataInterface(IDXGIOutput5* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput5_GetPrivateData(IDXGIOutput5* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput5_GetParent(IDXGIOutput5* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_GetDesc(IDXGIOutput5* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput5_GetDisplayModeList(IDXGIOutput5* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput5_FindClosestMatchingMode(IDXGIOutput5* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput5_WaitForVBlank(IDXGIOutput5* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput5_TakeOwnership(IDXGIOutput5* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput5_ReleaseOwnership(IDXGIOutput5* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput5_GetGammaControlCapabilities(IDXGIOutput5* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput5_SetGammaControl(IDXGIOutput5* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput5_GetGammaControl(IDXGIOutput5* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput5_SetDisplaySurface(IDXGIOutput5* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput5_GetDisplaySurfaceData(IDXGIOutput5* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput5_GetFrameStatistics(IDXGIOutput5* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_GetDisplayModeList1(IDXGIOutput5* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput5_FindClosestMatchingMode1(IDXGIOutput5* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput5_GetDisplaySurfaceData1(IDXGIOutput5* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput5_DuplicateOutput(IDXGIOutput5* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } /*** IDXGIOutput2 methods ***/ static FORCEINLINE WINBOOL IDXGIOutput5_SupportsOverlays(IDXGIOutput5* This) { return This->lpVtbl->SupportsOverlays(This); } /*** IDXGIOutput3 methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_CheckOverlaySupport(IDXGIOutput5* This,DXGI_FORMAT enum_format,IUnknown *concerned_device,UINT *flags) { return This->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags); } /*** IDXGIOutput4 methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_CheckOverlayColorSpaceSupport(IDXGIOutput5* This,DXGI_FORMAT format,DXGI_COLOR_SPACE_TYPE colour_space,IUnknown *device,UINT *flags) { return This->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags); } /*** IDXGIOutput5 methods ***/ static FORCEINLINE HRESULT IDXGIOutput5_DuplicateOutput1(IDXGIOutput5* This,IUnknown *device,UINT flags,UINT format_count,const DXGI_FORMAT *formats,IDXGIOutputDuplication **duplication) { return This->lpVtbl->DuplicateOutput1(This,device,flags,format_count,formats,duplication); } #endif #endif #endif #endif /* __IDXGIOutput5_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGISwapChain4 interface */ #ifndef __IDXGISwapChain4_INTERFACE_DEFINED__ #define __IDXGISwapChain4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGISwapChain4, 0x3d585d5a, 0xbd4a, 0x489e, 0xb1,0xf4, 0x3d,0xbc,0xb6,0x45,0x2f,0xfb); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3d585d5a-bd4a-489e-b1f4-3dbcb6452ffb") IDXGISwapChain4 : public IDXGISwapChain3 { virtual HRESULT STDMETHODCALLTYPE SetHDRMetaData( DXGI_HDR_METADATA_TYPE type, UINT size, void *metadata) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGISwapChain4, 0x3d585d5a, 0xbd4a, 0x489e, 0xb1,0xf4, 0x3d,0xbc,0xb6,0x45,0x2f,0xfb) #endif #else typedef struct IDXGISwapChain4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGISwapChain4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGISwapChain4 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGISwapChain4 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGISwapChain4 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGISwapChain4 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGISwapChain4 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGISwapChain4 *This, REFIID riid, void **parent); /*** IDXGIDeviceSubObject methods ***/ HRESULT (STDMETHODCALLTYPE *GetDevice)( IDXGISwapChain4 *This, REFIID riid, void **device); /*** IDXGISwapChain methods ***/ HRESULT (STDMETHODCALLTYPE *Present)( IDXGISwapChain4 *This, UINT sync_interval, UINT flags); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDXGISwapChain4 *This, UINT buffer_idx, REFIID riid, void **surface); HRESULT (STDMETHODCALLTYPE *SetFullscreenState)( IDXGISwapChain4 *This, WINBOOL fullscreen, IDXGIOutput *target); HRESULT (STDMETHODCALLTYPE *GetFullscreenState)( IDXGISwapChain4 *This, WINBOOL *fullscreen, IDXGIOutput **target); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGISwapChain4 *This, DXGI_SWAP_CHAIN_DESC *desc); HRESULT (STDMETHODCALLTYPE *ResizeBuffers)( IDXGISwapChain4 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags); HRESULT (STDMETHODCALLTYPE *ResizeTarget)( IDXGISwapChain4 *This, const DXGI_MODE_DESC *target_mode_desc); HRESULT (STDMETHODCALLTYPE *GetContainingOutput)( IDXGISwapChain4 *This, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGISwapChain4 *This, DXGI_FRAME_STATISTICS *stats); HRESULT (STDMETHODCALLTYPE *GetLastPresentCount)( IDXGISwapChain4 *This, UINT *last_present_count); /*** IDXGISwapChain1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGISwapChain4 *This, DXGI_SWAP_CHAIN_DESC1 *pDesc); HRESULT (STDMETHODCALLTYPE *GetFullscreenDesc)( IDXGISwapChain4 *This, DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc); HRESULT (STDMETHODCALLTYPE *GetHwnd)( IDXGISwapChain4 *This, HWND *pHwnd); HRESULT (STDMETHODCALLTYPE *GetCoreWindow)( IDXGISwapChain4 *This, REFIID refiid, void **ppUnk); HRESULT (STDMETHODCALLTYPE *Present1)( IDXGISwapChain4 *This, UINT SyncInterval, UINT PresentFlags, const DXGI_PRESENT_PARAMETERS *pPresentParameters); WINBOOL (STDMETHODCALLTYPE *IsTemporaryMonoSupported)( IDXGISwapChain4 *This); HRESULT (STDMETHODCALLTYPE *GetRestrictToOutput)( IDXGISwapChain4 *This, IDXGIOutput **ppRestrictToOutput); HRESULT (STDMETHODCALLTYPE *SetBackgroundColor)( IDXGISwapChain4 *This, const DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *GetBackgroundColor)( IDXGISwapChain4 *This, DXGI_RGBA *pColor); HRESULT (STDMETHODCALLTYPE *SetRotation)( IDXGISwapChain4 *This, DXGI_MODE_ROTATION Rotation); HRESULT (STDMETHODCALLTYPE *GetRotation)( IDXGISwapChain4 *This, DXGI_MODE_ROTATION *pRotation); /*** IDXGISwapChain2 methods ***/ HRESULT (STDMETHODCALLTYPE *SetSourceSize)( IDXGISwapChain4 *This, UINT width, UINT height); HRESULT (STDMETHODCALLTYPE *GetSourceSize)( IDXGISwapChain4 *This, UINT *width, UINT *height); HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGISwapChain4 *This, UINT max_latency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGISwapChain4 *This, UINT *max_latency); HANDLE (STDMETHODCALLTYPE *GetFrameLatencyWaitableObject)( IDXGISwapChain4 *This); HRESULT (STDMETHODCALLTYPE *SetMatrixTransform)( IDXGISwapChain4 *This, const DXGI_MATRIX_3X2_F *matrix); HRESULT (STDMETHODCALLTYPE *GetMatrixTransform)( IDXGISwapChain4 *This, DXGI_MATRIX_3X2_F *matrix); /*** IDXGISwapChain3 methods ***/ UINT (STDMETHODCALLTYPE *GetCurrentBackBufferIndex)( IDXGISwapChain4 *This); HRESULT (STDMETHODCALLTYPE *CheckColorSpaceSupport)( IDXGISwapChain4 *This, DXGI_COLOR_SPACE_TYPE colour_space, UINT *colour_space_support); HRESULT (STDMETHODCALLTYPE *SetColorSpace1)( IDXGISwapChain4 *This, DXGI_COLOR_SPACE_TYPE colour_space); HRESULT (STDMETHODCALLTYPE *ResizeBuffers1)( IDXGISwapChain4 *This, UINT buffer_count, UINT width, UINT height, DXGI_FORMAT format, UINT flags, const UINT *node_mask, IUnknown *const *present_queue); /*** IDXGISwapChain4 methods ***/ HRESULT (STDMETHODCALLTYPE *SetHDRMetaData)( IDXGISwapChain4 *This, DXGI_HDR_METADATA_TYPE type, UINT size, void *metadata); END_INTERFACE } IDXGISwapChain4Vtbl; interface IDXGISwapChain4 { CONST_VTBL IDXGISwapChain4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGISwapChain4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGISwapChain4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGISwapChain4_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGISwapChain4_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGISwapChain4_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGISwapChain4_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGISwapChain4_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDeviceSubObject methods ***/ #define IDXGISwapChain4_GetDevice(This,riid,device) (This)->lpVtbl->GetDevice(This,riid,device) /*** IDXGISwapChain methods ***/ #define IDXGISwapChain4_Present(This,sync_interval,flags) (This)->lpVtbl->Present(This,sync_interval,flags) #define IDXGISwapChain4_GetBuffer(This,buffer_idx,riid,surface) (This)->lpVtbl->GetBuffer(This,buffer_idx,riid,surface) #define IDXGISwapChain4_SetFullscreenState(This,fullscreen,target) (This)->lpVtbl->SetFullscreenState(This,fullscreen,target) #define IDXGISwapChain4_GetFullscreenState(This,fullscreen,target) (This)->lpVtbl->GetFullscreenState(This,fullscreen,target) #define IDXGISwapChain4_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGISwapChain4_ResizeBuffers(This,buffer_count,width,height,format,flags) (This)->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags) #define IDXGISwapChain4_ResizeTarget(This,target_mode_desc) (This)->lpVtbl->ResizeTarget(This,target_mode_desc) #define IDXGISwapChain4_GetContainingOutput(This,output) (This)->lpVtbl->GetContainingOutput(This,output) #define IDXGISwapChain4_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) #define IDXGISwapChain4_GetLastPresentCount(This,last_present_count) (This)->lpVtbl->GetLastPresentCount(This,last_present_count) /*** IDXGISwapChain1 methods ***/ #define IDXGISwapChain4_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) #define IDXGISwapChain4_GetFullscreenDesc(This,pDesc) (This)->lpVtbl->GetFullscreenDesc(This,pDesc) #define IDXGISwapChain4_GetHwnd(This,pHwnd) (This)->lpVtbl->GetHwnd(This,pHwnd) #define IDXGISwapChain4_GetCoreWindow(This,refiid,ppUnk) (This)->lpVtbl->GetCoreWindow(This,refiid,ppUnk) #define IDXGISwapChain4_Present1(This,SyncInterval,PresentFlags,pPresentParameters) (This)->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters) #define IDXGISwapChain4_IsTemporaryMonoSupported(This) (This)->lpVtbl->IsTemporaryMonoSupported(This) #define IDXGISwapChain4_GetRestrictToOutput(This,ppRestrictToOutput) (This)->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput) #define IDXGISwapChain4_SetBackgroundColor(This,pColor) (This)->lpVtbl->SetBackgroundColor(This,pColor) #define IDXGISwapChain4_GetBackgroundColor(This,pColor) (This)->lpVtbl->GetBackgroundColor(This,pColor) #define IDXGISwapChain4_SetRotation(This,Rotation) (This)->lpVtbl->SetRotation(This,Rotation) #define IDXGISwapChain4_GetRotation(This,pRotation) (This)->lpVtbl->GetRotation(This,pRotation) /*** IDXGISwapChain2 methods ***/ #define IDXGISwapChain4_SetSourceSize(This,width,height) (This)->lpVtbl->SetSourceSize(This,width,height) #define IDXGISwapChain4_GetSourceSize(This,width,height) (This)->lpVtbl->GetSourceSize(This,width,height) #define IDXGISwapChain4_SetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->SetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain4_GetMaximumFrameLatency(This,max_latency) (This)->lpVtbl->GetMaximumFrameLatency(This,max_latency) #define IDXGISwapChain4_GetFrameLatencyWaitableObject(This) (This)->lpVtbl->GetFrameLatencyWaitableObject(This) #define IDXGISwapChain4_SetMatrixTransform(This,matrix) (This)->lpVtbl->SetMatrixTransform(This,matrix) #define IDXGISwapChain4_GetMatrixTransform(This,matrix) (This)->lpVtbl->GetMatrixTransform(This,matrix) /*** IDXGISwapChain3 methods ***/ #define IDXGISwapChain4_GetCurrentBackBufferIndex(This) (This)->lpVtbl->GetCurrentBackBufferIndex(This) #define IDXGISwapChain4_CheckColorSpaceSupport(This,colour_space,colour_space_support) (This)->lpVtbl->CheckColorSpaceSupport(This,colour_space,colour_space_support) #define IDXGISwapChain4_SetColorSpace1(This,colour_space) (This)->lpVtbl->SetColorSpace1(This,colour_space) #define IDXGISwapChain4_ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue) (This)->lpVtbl->ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue) /*** IDXGISwapChain4 methods ***/ #define IDXGISwapChain4_SetHDRMetaData(This,type,size,metadata) (This)->lpVtbl->SetHDRMetaData(This,type,size,metadata) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_QueryInterface(IDXGISwapChain4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGISwapChain4_AddRef(IDXGISwapChain4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGISwapChain4_Release(IDXGISwapChain4* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_SetPrivateData(IDXGISwapChain4* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain4_SetPrivateDataInterface(IDXGISwapChain4* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGISwapChain4_GetPrivateData(IDXGISwapChain4* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGISwapChain4_GetParent(IDXGISwapChain4* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDeviceSubObject methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_GetDevice(IDXGISwapChain4* This,REFIID riid,void **device) { return This->lpVtbl->GetDevice(This,riid,device); } /*** IDXGISwapChain methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_Present(IDXGISwapChain4* This,UINT sync_interval,UINT flags) { return This->lpVtbl->Present(This,sync_interval,flags); } static FORCEINLINE HRESULT IDXGISwapChain4_GetBuffer(IDXGISwapChain4* This,UINT buffer_idx,REFIID riid,void **surface) { return This->lpVtbl->GetBuffer(This,buffer_idx,riid,surface); } static FORCEINLINE HRESULT IDXGISwapChain4_SetFullscreenState(IDXGISwapChain4* This,WINBOOL fullscreen,IDXGIOutput *target) { return This->lpVtbl->SetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain4_GetFullscreenState(IDXGISwapChain4* This,WINBOOL *fullscreen,IDXGIOutput **target) { return This->lpVtbl->GetFullscreenState(This,fullscreen,target); } static FORCEINLINE HRESULT IDXGISwapChain4_GetDesc(IDXGISwapChain4* This,DXGI_SWAP_CHAIN_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGISwapChain4_ResizeBuffers(IDXGISwapChain4* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags) { return This->lpVtbl->ResizeBuffers(This,buffer_count,width,height,format,flags); } static FORCEINLINE HRESULT IDXGISwapChain4_ResizeTarget(IDXGISwapChain4* This,const DXGI_MODE_DESC *target_mode_desc) { return This->lpVtbl->ResizeTarget(This,target_mode_desc); } static FORCEINLINE HRESULT IDXGISwapChain4_GetContainingOutput(IDXGISwapChain4* This,IDXGIOutput **output) { return This->lpVtbl->GetContainingOutput(This,output); } static FORCEINLINE HRESULT IDXGISwapChain4_GetFrameStatistics(IDXGISwapChain4* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } static FORCEINLINE HRESULT IDXGISwapChain4_GetLastPresentCount(IDXGISwapChain4* This,UINT *last_present_count) { return This->lpVtbl->GetLastPresentCount(This,last_present_count); } /*** IDXGISwapChain1 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_GetDesc1(IDXGISwapChain4* This,DXGI_SWAP_CHAIN_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain4_GetFullscreenDesc(IDXGISwapChain4* This,DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pDesc) { return This->lpVtbl->GetFullscreenDesc(This,pDesc); } static FORCEINLINE HRESULT IDXGISwapChain4_GetHwnd(IDXGISwapChain4* This,HWND *pHwnd) { return This->lpVtbl->GetHwnd(This,pHwnd); } static FORCEINLINE HRESULT IDXGISwapChain4_GetCoreWindow(IDXGISwapChain4* This,REFIID refiid,void **ppUnk) { return This->lpVtbl->GetCoreWindow(This,refiid,ppUnk); } static FORCEINLINE HRESULT IDXGISwapChain4_Present1(IDXGISwapChain4* This,UINT SyncInterval,UINT PresentFlags,const DXGI_PRESENT_PARAMETERS *pPresentParameters) { return This->lpVtbl->Present1(This,SyncInterval,PresentFlags,pPresentParameters); } static FORCEINLINE WINBOOL IDXGISwapChain4_IsTemporaryMonoSupported(IDXGISwapChain4* This) { return This->lpVtbl->IsTemporaryMonoSupported(This); } static FORCEINLINE HRESULT IDXGISwapChain4_GetRestrictToOutput(IDXGISwapChain4* This,IDXGIOutput **ppRestrictToOutput) { return This->lpVtbl->GetRestrictToOutput(This,ppRestrictToOutput); } static FORCEINLINE HRESULT IDXGISwapChain4_SetBackgroundColor(IDXGISwapChain4* This,const DXGI_RGBA *pColor) { return This->lpVtbl->SetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain4_GetBackgroundColor(IDXGISwapChain4* This,DXGI_RGBA *pColor) { return This->lpVtbl->GetBackgroundColor(This,pColor); } static FORCEINLINE HRESULT IDXGISwapChain4_SetRotation(IDXGISwapChain4* This,DXGI_MODE_ROTATION Rotation) { return This->lpVtbl->SetRotation(This,Rotation); } static FORCEINLINE HRESULT IDXGISwapChain4_GetRotation(IDXGISwapChain4* This,DXGI_MODE_ROTATION *pRotation) { return This->lpVtbl->GetRotation(This,pRotation); } /*** IDXGISwapChain2 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_SetSourceSize(IDXGISwapChain4* This,UINT width,UINT height) { return This->lpVtbl->SetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain4_GetSourceSize(IDXGISwapChain4* This,UINT *width,UINT *height) { return This->lpVtbl->GetSourceSize(This,width,height); } static FORCEINLINE HRESULT IDXGISwapChain4_SetMaximumFrameLatency(IDXGISwapChain4* This,UINT max_latency) { return This->lpVtbl->SetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HRESULT IDXGISwapChain4_GetMaximumFrameLatency(IDXGISwapChain4* This,UINT *max_latency) { return This->lpVtbl->GetMaximumFrameLatency(This,max_latency); } static FORCEINLINE HANDLE IDXGISwapChain4_GetFrameLatencyWaitableObject(IDXGISwapChain4* This) { return This->lpVtbl->GetFrameLatencyWaitableObject(This); } static FORCEINLINE HRESULT IDXGISwapChain4_SetMatrixTransform(IDXGISwapChain4* This,const DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->SetMatrixTransform(This,matrix); } static FORCEINLINE HRESULT IDXGISwapChain4_GetMatrixTransform(IDXGISwapChain4* This,DXGI_MATRIX_3X2_F *matrix) { return This->lpVtbl->GetMatrixTransform(This,matrix); } /*** IDXGISwapChain3 methods ***/ static FORCEINLINE UINT IDXGISwapChain4_GetCurrentBackBufferIndex(IDXGISwapChain4* This) { return This->lpVtbl->GetCurrentBackBufferIndex(This); } static FORCEINLINE HRESULT IDXGISwapChain4_CheckColorSpaceSupport(IDXGISwapChain4* This,DXGI_COLOR_SPACE_TYPE colour_space,UINT *colour_space_support) { return This->lpVtbl->CheckColorSpaceSupport(This,colour_space,colour_space_support); } static FORCEINLINE HRESULT IDXGISwapChain4_SetColorSpace1(IDXGISwapChain4* This,DXGI_COLOR_SPACE_TYPE colour_space) { return This->lpVtbl->SetColorSpace1(This,colour_space); } static FORCEINLINE HRESULT IDXGISwapChain4_ResizeBuffers1(IDXGISwapChain4* This,UINT buffer_count,UINT width,UINT height,DXGI_FORMAT format,UINT flags,const UINT *node_mask,IUnknown *const *present_queue) { return This->lpVtbl->ResizeBuffers1(This,buffer_count,width,height,format,flags,node_mask,present_queue); } /*** IDXGISwapChain4 methods ***/ static FORCEINLINE HRESULT IDXGISwapChain4_SetHDRMetaData(IDXGISwapChain4* This,DXGI_HDR_METADATA_TYPE type,UINT size,void *metadata) { return This->lpVtbl->SetHDRMetaData(This,type,size,metadata); } #endif #endif #endif #endif /* __IDXGISwapChain4_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIDevice4 interface */ #ifndef __IDXGIDevice4_INTERFACE_DEFINED__ #define __IDXGIDevice4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDevice4, 0x95b4f95f, 0xd8da, 0x4ca4, 0x9e,0xe6, 0x3b,0x76,0xd5,0x96,0x8a,0x10); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("95b4f95f-d8da-4ca4-9ee6-3b76d5968a10") IDXGIDevice4 : public IDXGIDevice3 { virtual HRESULT STDMETHODCALLTYPE OfferResources1( UINT resource_count, IDXGIResource *const *resources, DXGI_OFFER_RESOURCE_PRIORITY priority, UINT flags) = 0; virtual HRESULT STDMETHODCALLTYPE ReclaimResources1( UINT resource_count, IDXGIResource *const *resources, DXGI_RECLAIM_RESOURCE_RESULTS *results) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDevice4, 0x95b4f95f, 0xd8da, 0x4ca4, 0x9e,0xe6, 0x3b,0x76,0xd5,0x96,0x8a,0x10) #endif #else typedef struct IDXGIDevice4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDevice4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDevice4 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDevice4 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIDevice4 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIDevice4 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIDevice4 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIDevice4 *This, REFIID riid, void **parent); /*** IDXGIDevice methods ***/ HRESULT (STDMETHODCALLTYPE *GetAdapter)( IDXGIDevice4 *This, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDXGIDevice4 *This, const DXGI_SURFACE_DESC *desc, UINT surface_count, DXGI_USAGE usage, const DXGI_SHARED_RESOURCE *shared_resource, IDXGISurface **surface); HRESULT (STDMETHODCALLTYPE *QueryResourceResidency)( IDXGIDevice4 *This, IUnknown *const *resources, DXGI_RESIDENCY *residency, UINT resource_count); HRESULT (STDMETHODCALLTYPE *SetGPUThreadPriority)( IDXGIDevice4 *This, INT priority); HRESULT (STDMETHODCALLTYPE *GetGPUThreadPriority)( IDXGIDevice4 *This, INT *priority); /*** IDXGIDevice1 methods ***/ HRESULT (STDMETHODCALLTYPE *SetMaximumFrameLatency)( IDXGIDevice4 *This, UINT MaxLatency); HRESULT (STDMETHODCALLTYPE *GetMaximumFrameLatency)( IDXGIDevice4 *This, UINT *pMaxLatency); /*** IDXGIDevice2 methods ***/ HRESULT (STDMETHODCALLTYPE *OfferResources)( IDXGIDevice4 *This, UINT NumResources, IDXGIResource *const *ppResources, DXGI_OFFER_RESOURCE_PRIORITY Priority); HRESULT (STDMETHODCALLTYPE *ReclaimResources)( IDXGIDevice4 *This, UINT NumResources, IDXGIResource *const *ppResources, WINBOOL *pDiscarded); HRESULT (STDMETHODCALLTYPE *EnqueueSetEvent)( IDXGIDevice4 *This, HANDLE hEvent); /*** IDXGIDevice3 methods ***/ void (STDMETHODCALLTYPE *Trim)( IDXGIDevice4 *This); /*** IDXGIDevice4 methods ***/ HRESULT (STDMETHODCALLTYPE *OfferResources1)( IDXGIDevice4 *This, UINT resource_count, IDXGIResource *const *resources, DXGI_OFFER_RESOURCE_PRIORITY priority, UINT flags); HRESULT (STDMETHODCALLTYPE *ReclaimResources1)( IDXGIDevice4 *This, UINT resource_count, IDXGIResource *const *resources, DXGI_RECLAIM_RESOURCE_RESULTS *results); END_INTERFACE } IDXGIDevice4Vtbl; interface IDXGIDevice4 { CONST_VTBL IDXGIDevice4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDevice4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDevice4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDevice4_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIDevice4_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIDevice4_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIDevice4_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIDevice4_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIDevice methods ***/ #define IDXGIDevice4_GetAdapter(This,adapter) (This)->lpVtbl->GetAdapter(This,adapter) #define IDXGIDevice4_CreateSurface(This,desc,surface_count,usage,shared_resource,surface) (This)->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface) #define IDXGIDevice4_QueryResourceResidency(This,resources,residency,resource_count) (This)->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count) #define IDXGIDevice4_SetGPUThreadPriority(This,priority) (This)->lpVtbl->SetGPUThreadPriority(This,priority) #define IDXGIDevice4_GetGPUThreadPriority(This,priority) (This)->lpVtbl->GetGPUThreadPriority(This,priority) /*** IDXGIDevice1 methods ***/ #define IDXGIDevice4_SetMaximumFrameLatency(This,MaxLatency) (This)->lpVtbl->SetMaximumFrameLatency(This,MaxLatency) #define IDXGIDevice4_GetMaximumFrameLatency(This,pMaxLatency) (This)->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency) /*** IDXGIDevice2 methods ***/ #define IDXGIDevice4_OfferResources(This,NumResources,ppResources,Priority) (This)->lpVtbl->OfferResources(This,NumResources,ppResources,Priority) #define IDXGIDevice4_ReclaimResources(This,NumResources,ppResources,pDiscarded) (This)->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded) #define IDXGIDevice4_EnqueueSetEvent(This,hEvent) (This)->lpVtbl->EnqueueSetEvent(This,hEvent) /*** IDXGIDevice3 methods ***/ #define IDXGIDevice4_Trim(This) (This)->lpVtbl->Trim(This) /*** IDXGIDevice4 methods ***/ #define IDXGIDevice4_OfferResources1(This,resource_count,resources,priority,flags) (This)->lpVtbl->OfferResources1(This,resource_count,resources,priority,flags) #define IDXGIDevice4_ReclaimResources1(This,resource_count,resources,results) (This)->lpVtbl->ReclaimResources1(This,resource_count,resources,results) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_QueryInterface(IDXGIDevice4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDevice4_AddRef(IDXGIDevice4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDevice4_Release(IDXGIDevice4* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_SetPrivateData(IDXGIDevice4* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice4_SetPrivateDataInterface(IDXGIDevice4* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIDevice4_GetPrivateData(IDXGIDevice4* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIDevice4_GetParent(IDXGIDevice4* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIDevice methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_GetAdapter(IDXGIDevice4* This,IDXGIAdapter **adapter) { return This->lpVtbl->GetAdapter(This,adapter); } static FORCEINLINE HRESULT IDXGIDevice4_CreateSurface(IDXGIDevice4* This,const DXGI_SURFACE_DESC *desc,UINT surface_count,DXGI_USAGE usage,const DXGI_SHARED_RESOURCE *shared_resource,IDXGISurface **surface) { return This->lpVtbl->CreateSurface(This,desc,surface_count,usage,shared_resource,surface); } static FORCEINLINE HRESULT IDXGIDevice4_QueryResourceResidency(IDXGIDevice4* This,IUnknown *const *resources,DXGI_RESIDENCY *residency,UINT resource_count) { return This->lpVtbl->QueryResourceResidency(This,resources,residency,resource_count); } static FORCEINLINE HRESULT IDXGIDevice4_SetGPUThreadPriority(IDXGIDevice4* This,INT priority) { return This->lpVtbl->SetGPUThreadPriority(This,priority); } static FORCEINLINE HRESULT IDXGIDevice4_GetGPUThreadPriority(IDXGIDevice4* This,INT *priority) { return This->lpVtbl->GetGPUThreadPriority(This,priority); } /*** IDXGIDevice1 methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_SetMaximumFrameLatency(IDXGIDevice4* This,UINT MaxLatency) { return This->lpVtbl->SetMaximumFrameLatency(This,MaxLatency); } static FORCEINLINE HRESULT IDXGIDevice4_GetMaximumFrameLatency(IDXGIDevice4* This,UINT *pMaxLatency) { return This->lpVtbl->GetMaximumFrameLatency(This,pMaxLatency); } /*** IDXGIDevice2 methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_OfferResources(IDXGIDevice4* This,UINT NumResources,IDXGIResource *const *ppResources,DXGI_OFFER_RESOURCE_PRIORITY Priority) { return This->lpVtbl->OfferResources(This,NumResources,ppResources,Priority); } static FORCEINLINE HRESULT IDXGIDevice4_ReclaimResources(IDXGIDevice4* This,UINT NumResources,IDXGIResource *const *ppResources,WINBOOL *pDiscarded) { return This->lpVtbl->ReclaimResources(This,NumResources,ppResources,pDiscarded); } static FORCEINLINE HRESULT IDXGIDevice4_EnqueueSetEvent(IDXGIDevice4* This,HANDLE hEvent) { return This->lpVtbl->EnqueueSetEvent(This,hEvent); } /*** IDXGIDevice3 methods ***/ static FORCEINLINE void IDXGIDevice4_Trim(IDXGIDevice4* This) { This->lpVtbl->Trim(This); } /*** IDXGIDevice4 methods ***/ static FORCEINLINE HRESULT IDXGIDevice4_OfferResources1(IDXGIDevice4* This,UINT resource_count,IDXGIResource *const *resources,DXGI_OFFER_RESOURCE_PRIORITY priority,UINT flags) { return This->lpVtbl->OfferResources1(This,resource_count,resources,priority,flags); } static FORCEINLINE HRESULT IDXGIDevice4_ReclaimResources1(IDXGIDevice4* This,UINT resource_count,IDXGIResource *const *resources,DXGI_RECLAIM_RESOURCE_RESULTS *results) { return This->lpVtbl->ReclaimResources1(This,resource_count,resources,results); } #endif #endif #endif #endif /* __IDXGIDevice4_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory5 interface */ #ifndef __IDXGIFactory5_INTERFACE_DEFINED__ #define __IDXGIFactory5_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory5, 0x7632e1f5, 0xee65, 0x4dca, 0x87,0xfd, 0x84,0xcd,0x75,0xf8,0x83,0x8d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("7632e1f5-ee65-4dca-87fd-84cd75f8838d") IDXGIFactory5 : public IDXGIFactory4 { virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( DXGI_FEATURE feature, void *support_data, UINT support_data_size) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory5, 0x7632e1f5, 0xee65, 0x4dca, 0x87,0xfd, 0x84,0xcd,0x75,0xf8,0x83,0x8d) #endif #else typedef struct IDXGIFactory5Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory5 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory5 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory5 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory5 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory5 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory5 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory5 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory5 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory5 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory5 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory5 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory5 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory5 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory5 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory5 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory5 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory5 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory5 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory5 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory5 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory5 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory5 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory5 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory5 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory5 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); /*** IDXGIFactory3 methods ***/ UINT (STDMETHODCALLTYPE *GetCreationFlags)( IDXGIFactory5 *This); /*** IDXGIFactory4 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByLuid)( IDXGIFactory5 *This, LUID luid, REFIID iid, void **adapter); HRESULT (STDMETHODCALLTYPE *EnumWarpAdapter)( IDXGIFactory5 *This, REFIID iid, void **adapter); /*** IDXGIFactory5 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( IDXGIFactory5 *This, DXGI_FEATURE feature, void *support_data, UINT support_data_size); END_INTERFACE } IDXGIFactory5Vtbl; interface IDXGIFactory5 { CONST_VTBL IDXGIFactory5Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory5_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory5_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory5_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory5_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory5_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory5_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory5_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory5_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory5_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory5_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory5_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory5_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory5_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory5_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory5_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory5_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory5_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory5_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory5_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory5_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory5_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory5_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory5_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory5_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory5_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) /*** IDXGIFactory3 methods ***/ #define IDXGIFactory5_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) /*** IDXGIFactory4 methods ***/ #define IDXGIFactory5_EnumAdapterByLuid(This,luid,iid,adapter) (This)->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter) #define IDXGIFactory5_EnumWarpAdapter(This,iid,adapter) (This)->lpVtbl->EnumWarpAdapter(This,iid,adapter) /*** IDXGIFactory5 methods ***/ #define IDXGIFactory5_CheckFeatureSupport(This,feature,support_data,support_data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_QueryInterface(IDXGIFactory5* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory5_AddRef(IDXGIFactory5* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory5_Release(IDXGIFactory5* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_SetPrivateData(IDXGIFactory5* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory5_SetPrivateDataInterface(IDXGIFactory5* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory5_GetPrivateData(IDXGIFactory5* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory5_GetParent(IDXGIFactory5* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_EnumAdapters(IDXGIFactory5* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory5_MakeWindowAssociation(IDXGIFactory5* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory5_GetWindowAssociation(IDXGIFactory5* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory5_CreateSwapChain(IDXGIFactory5* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory5_CreateSoftwareAdapter(IDXGIFactory5* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_EnumAdapters1(IDXGIFactory5* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory5_IsCurrent(IDXGIFactory5* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory5_IsWindowedStereoEnabled(IDXGIFactory5* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory5_CreateSwapChainForHwnd(IDXGIFactory5* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory5_CreateSwapChainForCoreWindow(IDXGIFactory5* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory5_GetSharedResourceAdapterLuid(IDXGIFactory5* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory5_RegisterStereoStatusWindow(IDXGIFactory5* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory5_RegisterStereoStatusEvent(IDXGIFactory5* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory5_UnregisterStereoStatus(IDXGIFactory5* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory5_RegisterOcclusionStatusWindow(IDXGIFactory5* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory5_RegisterOcclusionStatusEvent(IDXGIFactory5* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory5_UnregisterOcclusionStatus(IDXGIFactory5* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory5_CreateSwapChainForComposition(IDXGIFactory5* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } /*** IDXGIFactory3 methods ***/ static FORCEINLINE UINT IDXGIFactory5_GetCreationFlags(IDXGIFactory5* This) { return This->lpVtbl->GetCreationFlags(This); } /*** IDXGIFactory4 methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_EnumAdapterByLuid(IDXGIFactory5* This,LUID luid,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter); } static FORCEINLINE HRESULT IDXGIFactory5_EnumWarpAdapter(IDXGIFactory5* This,REFIID iid,void **adapter) { return This->lpVtbl->EnumWarpAdapter(This,iid,adapter); } /*** IDXGIFactory5 methods ***/ static FORCEINLINE HRESULT IDXGIFactory5_CheckFeatureSupport(IDXGIFactory5* This,DXGI_FEATURE feature,void *support_data,UINT support_data_size) { return This->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size); } #endif #endif #endif #endif /* __IDXGIFactory5_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi1_5_h__ */ dxvk-0~git20220822.9df86f2/dxgi1_6.h000066400000000000000000001670421430055512200164230ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgi1_6.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgi1_6_h__ #define __dxgi1_6_h__ /* Forward declarations */ #ifndef __IDXGIAdapter4_FWD_DEFINED__ #define __IDXGIAdapter4_FWD_DEFINED__ typedef interface IDXGIAdapter4 IDXGIAdapter4; #ifdef __cplusplus interface IDXGIAdapter4; #endif /* __cplusplus */ #endif #ifndef __IDXGIOutput6_FWD_DEFINED__ #define __IDXGIOutput6_FWD_DEFINED__ typedef interface IDXGIOutput6 IDXGIOutput6; #ifdef __cplusplus interface IDXGIOutput6; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory6_FWD_DEFINED__ #define __IDXGIFactory6_FWD_DEFINED__ typedef interface IDXGIFactory6 IDXGIFactory6; #ifdef __cplusplus interface IDXGIFactory6; #endif /* __cplusplus */ #endif #ifndef __IDXGIFactory7_FWD_DEFINED__ #define __IDXGIFactory7_FWD_DEFINED__ typedef interface IDXGIFactory7 IDXGIFactory7; #ifdef __cplusplus interface IDXGIFactory7; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif typedef enum DXGI_ADAPTER_FLAG3 { DXGI_ADAPTER_FLAG3_NONE = 0x0, DXGI_ADAPTER_FLAG3_REMOTE = 0x1, DXGI_ADAPTER_FLAG3_SOFTWARE = 0x2, DXGI_ADAPTER_FLAG3_ACG_COMPATIBLE = 0x4, DXGI_ADAPTER_FLAG3_SUPPORT_MONITORED_FENCES = 0x8, DXGI_ADAPTER_FLAG3_SUPPORT_NON_MONITORED_FENCES = 0x10, DXGI_ADAPTER_FLAG3_KEYED_MUTEX_CONFORMANCE = 0x20, DXGI_ADAPTER_FLAG3_FORCE_DWORD = 0xffffffff } DXGI_ADAPTER_FLAG3; typedef enum DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS { DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_FULLSCREEN = 0x1, DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_WINDOWED = 0x2, DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAG_CURSOR_STRETCHED = 0x4 } DXGI_HARDWARE_COMPOSITION_SUPPORT_FLAGS; typedef enum DXGI_GPU_PREFERENCE { DXGI_GPU_PREFERENCE_UNSPECIFIED = 0x0, DXGI_GPU_PREFERENCE_MINIMUM_POWER = 0x1, DXGI_GPU_PREFERENCE_HIGH_PERFORMANCE = 0x2 } DXGI_GPU_PREFERENCE; typedef struct DXGI_ADAPTER_DESC3 { WCHAR Description[128]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; DXGI_ADAPTER_FLAG3 Flags; DXGI_GRAPHICS_PREEMPTION_GRANULARITY GraphicsPreemptionGranularity; DXGI_COMPUTE_PREEMPTION_GRANULARITY ComputePreemptionGranularity; } DXGI_ADAPTER_DESC3; typedef struct DXGI_OUTPUT_DESC1 { WCHAR DeviceName[32]; RECT DesktopCoordinates; WINBOOL AttachedToDesktop; DXGI_MODE_ROTATION Rotation; HMONITOR Monitor; UINT BitsPerColor; DXGI_COLOR_SPACE_TYPE ColorSpace; FLOAT RedPrimary[2]; FLOAT GreenPrimary[2]; FLOAT BluePrimary[2]; FLOAT WhitePoint[2]; FLOAT MinLuminance; FLOAT MaxLuminance; FLOAT MaxFullFrameLuminance; } DXGI_OUTPUT_DESC1; /***************************************************************************** * IDXGIAdapter4 interface */ #ifndef __IDXGIAdapter4_INTERFACE_DEFINED__ #define __IDXGIAdapter4_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIAdapter4, 0x3c8d99d1, 0x4fbf, 0x4181, 0xa8,0x2c, 0xaf,0x66,0xbf,0x7b,0xd2,0x4e); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3c8d99d1-4fbf-4181-a82c-af66bf7bd24e") IDXGIAdapter4 : public IDXGIAdapter3 { virtual HRESULT STDMETHODCALLTYPE GetDesc3( DXGI_ADAPTER_DESC3 *desc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIAdapter4, 0x3c8d99d1, 0x4fbf, 0x4181, 0xa8,0x2c, 0xaf,0x66,0xbf,0x7b,0xd2,0x4e) #endif #else typedef struct IDXGIAdapter4Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIAdapter4 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIAdapter4 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIAdapter4 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIAdapter4 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIAdapter4 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIAdapter4 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIAdapter4 *This, REFIID riid, void **parent); /*** IDXGIAdapter methods ***/ HRESULT (STDMETHODCALLTYPE *EnumOutputs)( IDXGIAdapter4 *This, UINT output_idx, IDXGIOutput **output); HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIAdapter4 *This, DXGI_ADAPTER_DESC *desc); HRESULT (STDMETHODCALLTYPE *CheckInterfaceSupport)( IDXGIAdapter4 *This, REFGUID guid, LARGE_INTEGER *umd_version); /*** IDXGIAdapter1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGIAdapter4 *This, DXGI_ADAPTER_DESC1 *pDesc); /*** IDXGIAdapter2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc2)( IDXGIAdapter4 *This, DXGI_ADAPTER_DESC2 *pDesc); /*** IDXGIAdapter3 methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterHardwareContentProtectionTeardownStatusEvent)( IDXGIAdapter4 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterHardwareContentProtectionTeardownStatus)( IDXGIAdapter4 *This, DWORD cookie); HRESULT (STDMETHODCALLTYPE *QueryVideoMemoryInfo)( IDXGIAdapter4 *This, UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info); HRESULT (STDMETHODCALLTYPE *SetVideoMemoryReservation)( IDXGIAdapter4 *This, UINT node_index, DXGI_MEMORY_SEGMENT_GROUP segment_group, UINT64 reservation); HRESULT (STDMETHODCALLTYPE *RegisterVideoMemoryBudgetChangeNotificationEvent)( IDXGIAdapter4 *This, HANDLE event, DWORD *cookie); void (STDMETHODCALLTYPE *UnregisterVideoMemoryBudgetChangeNotification)( IDXGIAdapter4 *This, DWORD cookie); /*** IDXGIAdapter4 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc3)( IDXGIAdapter4 *This, DXGI_ADAPTER_DESC3 *desc); END_INTERFACE } IDXGIAdapter4Vtbl; interface IDXGIAdapter4 { CONST_VTBL IDXGIAdapter4Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIAdapter4_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIAdapter4_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIAdapter4_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIAdapter4_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIAdapter4_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIAdapter4_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIAdapter4_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIAdapter methods ***/ #define IDXGIAdapter4_EnumOutputs(This,output_idx,output) (This)->lpVtbl->EnumOutputs(This,output_idx,output) #define IDXGIAdapter4_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIAdapter4_CheckInterfaceSupport(This,guid,umd_version) (This)->lpVtbl->CheckInterfaceSupport(This,guid,umd_version) /*** IDXGIAdapter1 methods ***/ #define IDXGIAdapter4_GetDesc1(This,pDesc) (This)->lpVtbl->GetDesc1(This,pDesc) /*** IDXGIAdapter2 methods ***/ #define IDXGIAdapter4_GetDesc2(This,pDesc) (This)->lpVtbl->GetDesc2(This,pDesc) /*** IDXGIAdapter3 methods ***/ #define IDXGIAdapter4_RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie) (This)->lpVtbl->RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie) #define IDXGIAdapter4_UnregisterHardwareContentProtectionTeardownStatus(This,cookie) (This)->lpVtbl->UnregisterHardwareContentProtectionTeardownStatus(This,cookie) #define IDXGIAdapter4_QueryVideoMemoryInfo(This,node_index,segment_group,memory_info) (This)->lpVtbl->QueryVideoMemoryInfo(This,node_index,segment_group,memory_info) #define IDXGIAdapter4_SetVideoMemoryReservation(This,node_index,segment_group,reservation) (This)->lpVtbl->SetVideoMemoryReservation(This,node_index,segment_group,reservation) #define IDXGIAdapter4_RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie) (This)->lpVtbl->RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie) #define IDXGIAdapter4_UnregisterVideoMemoryBudgetChangeNotification(This,cookie) (This)->lpVtbl->UnregisterVideoMemoryBudgetChangeNotification(This,cookie) /*** IDXGIAdapter4 methods ***/ #define IDXGIAdapter4_GetDesc3(This,desc) (This)->lpVtbl->GetDesc3(This,desc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_QueryInterface(IDXGIAdapter4* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIAdapter4_AddRef(IDXGIAdapter4* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIAdapter4_Release(IDXGIAdapter4* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_SetPrivateData(IDXGIAdapter4* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter4_SetPrivateDataInterface(IDXGIAdapter4* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIAdapter4_GetPrivateData(IDXGIAdapter4* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIAdapter4_GetParent(IDXGIAdapter4* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIAdapter methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_EnumOutputs(IDXGIAdapter4* This,UINT output_idx,IDXGIOutput **output) { return This->lpVtbl->EnumOutputs(This,output_idx,output); } static FORCEINLINE HRESULT IDXGIAdapter4_GetDesc(IDXGIAdapter4* This,DXGI_ADAPTER_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIAdapter4_CheckInterfaceSupport(IDXGIAdapter4* This,REFGUID guid,LARGE_INTEGER *umd_version) { return This->lpVtbl->CheckInterfaceSupport(This,guid,umd_version); } /*** IDXGIAdapter1 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_GetDesc1(IDXGIAdapter4* This,DXGI_ADAPTER_DESC1 *pDesc) { return This->lpVtbl->GetDesc1(This,pDesc); } /*** IDXGIAdapter2 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_GetDesc2(IDXGIAdapter4* This,DXGI_ADAPTER_DESC2 *pDesc) { return This->lpVtbl->GetDesc2(This,pDesc); } /*** IDXGIAdapter3 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_RegisterHardwareContentProtectionTeardownStatusEvent(IDXGIAdapter4* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterHardwareContentProtectionTeardownStatusEvent(This,event,cookie); } static FORCEINLINE void IDXGIAdapter4_UnregisterHardwareContentProtectionTeardownStatus(IDXGIAdapter4* This,DWORD cookie) { This->lpVtbl->UnregisterHardwareContentProtectionTeardownStatus(This,cookie); } static FORCEINLINE HRESULT IDXGIAdapter4_QueryVideoMemoryInfo(IDXGIAdapter4* This,UINT node_index,DXGI_MEMORY_SEGMENT_GROUP segment_group,DXGI_QUERY_VIDEO_MEMORY_INFO *memory_info) { return This->lpVtbl->QueryVideoMemoryInfo(This,node_index,segment_group,memory_info); } static FORCEINLINE HRESULT IDXGIAdapter4_SetVideoMemoryReservation(IDXGIAdapter4* This,UINT node_index,DXGI_MEMORY_SEGMENT_GROUP segment_group,UINT64 reservation) { return This->lpVtbl->SetVideoMemoryReservation(This,node_index,segment_group,reservation); } static FORCEINLINE HRESULT IDXGIAdapter4_RegisterVideoMemoryBudgetChangeNotificationEvent(IDXGIAdapter4* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterVideoMemoryBudgetChangeNotificationEvent(This,event,cookie); } static FORCEINLINE void IDXGIAdapter4_UnregisterVideoMemoryBudgetChangeNotification(IDXGIAdapter4* This,DWORD cookie) { This->lpVtbl->UnregisterVideoMemoryBudgetChangeNotification(This,cookie); } /*** IDXGIAdapter4 methods ***/ static FORCEINLINE HRESULT IDXGIAdapter4_GetDesc3(IDXGIAdapter4* This,DXGI_ADAPTER_DESC3 *desc) { return This->lpVtbl->GetDesc3(This,desc); } #endif #endif #endif #endif /* __IDXGIAdapter4_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIOutput6 interface */ #ifndef __IDXGIOutput6_INTERFACE_DEFINED__ #define __IDXGIOutput6_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIOutput6, 0x068346e8, 0xaaec, 0x4b84, 0xad,0xd7, 0x13,0x7f,0x51,0x3f,0x77,0xa1); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("068346e8-aaec-4b84-add7-137f513f77a1") IDXGIOutput6 : public IDXGIOutput5 { virtual HRESULT STDMETHODCALLTYPE GetDesc1( DXGI_OUTPUT_DESC1 *desc) = 0; virtual HRESULT STDMETHODCALLTYPE CheckHardwareCompositionSupport( UINT *flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIOutput6, 0x068346e8, 0xaaec, 0x4b84, 0xad,0xd7, 0x13,0x7f,0x51,0x3f,0x77,0xa1) #endif #else typedef struct IDXGIOutput6Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIOutput6 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIOutput6 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIOutput6 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIOutput6 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIOutput6 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIOutput6 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIOutput6 *This, REFIID riid, void **parent); /*** IDXGIOutput methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc)( IDXGIOutput6 *This, DXGI_OUTPUT_DESC *desc); HRESULT (STDMETHODCALLTYPE *GetDisplayModeList)( IDXGIOutput6 *This, DXGI_FORMAT format, UINT flags, UINT *mode_count, DXGI_MODE_DESC *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode)( IDXGIOutput6 *This, const DXGI_MODE_DESC *mode, DXGI_MODE_DESC *closest_match, IUnknown *device); HRESULT (STDMETHODCALLTYPE *WaitForVBlank)( IDXGIOutput6 *This); HRESULT (STDMETHODCALLTYPE *TakeOwnership)( IDXGIOutput6 *This, IUnknown *device, WINBOOL exclusive); void (STDMETHODCALLTYPE *ReleaseOwnership)( IDXGIOutput6 *This); HRESULT (STDMETHODCALLTYPE *GetGammaControlCapabilities)( IDXGIOutput6 *This, DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps); HRESULT (STDMETHODCALLTYPE *SetGammaControl)( IDXGIOutput6 *This, const DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *GetGammaControl)( IDXGIOutput6 *This, DXGI_GAMMA_CONTROL *gamma_control); HRESULT (STDMETHODCALLTYPE *SetDisplaySurface)( IDXGIOutput6 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData)( IDXGIOutput6 *This, IDXGISurface *surface); HRESULT (STDMETHODCALLTYPE *GetFrameStatistics)( IDXGIOutput6 *This, DXGI_FRAME_STATISTICS *stats); /*** IDXGIOutput1 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDisplayModeList1)( IDXGIOutput6 *This, DXGI_FORMAT enum_format, UINT flags, UINT *num_modes, DXGI_MODE_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *FindClosestMatchingMode1)( IDXGIOutput6 *This, const DXGI_MODE_DESC1 *mode_to_match, DXGI_MODE_DESC1 *closest_match, IUnknown *concerned_device); HRESULT (STDMETHODCALLTYPE *GetDisplaySurfaceData1)( IDXGIOutput6 *This, IDXGIResource *destination); HRESULT (STDMETHODCALLTYPE *DuplicateOutput)( IDXGIOutput6 *This, IUnknown *device, IDXGIOutputDuplication **output_duplication); /*** IDXGIOutput2 methods ***/ WINBOOL (STDMETHODCALLTYPE *SupportsOverlays)( IDXGIOutput6 *This); /*** IDXGIOutput3 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlaySupport)( IDXGIOutput6 *This, DXGI_FORMAT enum_format, IUnknown *concerned_device, UINT *flags); /*** IDXGIOutput4 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckOverlayColorSpaceSupport)( IDXGIOutput6 *This, DXGI_FORMAT format, DXGI_COLOR_SPACE_TYPE colour_space, IUnknown *device, UINT *flags); /*** IDXGIOutput5 methods ***/ HRESULT (STDMETHODCALLTYPE *DuplicateOutput1)( IDXGIOutput6 *This, IUnknown *device, UINT flags, UINT format_count, const DXGI_FORMAT *formats, IDXGIOutputDuplication **duplication); /*** IDXGIOutput6 methods ***/ HRESULT (STDMETHODCALLTYPE *GetDesc1)( IDXGIOutput6 *This, DXGI_OUTPUT_DESC1 *desc); HRESULT (STDMETHODCALLTYPE *CheckHardwareCompositionSupport)( IDXGIOutput6 *This, UINT *flags); END_INTERFACE } IDXGIOutput6Vtbl; interface IDXGIOutput6 { CONST_VTBL IDXGIOutput6Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIOutput6_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIOutput6_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIOutput6_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIOutput6_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIOutput6_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIOutput6_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIOutput6_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIOutput methods ***/ #define IDXGIOutput6_GetDesc(This,desc) (This)->lpVtbl->GetDesc(This,desc) #define IDXGIOutput6_GetDisplayModeList(This,format,flags,mode_count,desc) (This)->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc) #define IDXGIOutput6_FindClosestMatchingMode(This,mode,closest_match,device) (This)->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device) #define IDXGIOutput6_WaitForVBlank(This) (This)->lpVtbl->WaitForVBlank(This) #define IDXGIOutput6_TakeOwnership(This,device,exclusive) (This)->lpVtbl->TakeOwnership(This,device,exclusive) #define IDXGIOutput6_ReleaseOwnership(This) (This)->lpVtbl->ReleaseOwnership(This) #define IDXGIOutput6_GetGammaControlCapabilities(This,gamma_caps) (This)->lpVtbl->GetGammaControlCapabilities(This,gamma_caps) #define IDXGIOutput6_SetGammaControl(This,gamma_control) (This)->lpVtbl->SetGammaControl(This,gamma_control) #define IDXGIOutput6_GetGammaControl(This,gamma_control) (This)->lpVtbl->GetGammaControl(This,gamma_control) #define IDXGIOutput6_SetDisplaySurface(This,surface) (This)->lpVtbl->SetDisplaySurface(This,surface) #define IDXGIOutput6_GetDisplaySurfaceData(This,surface) (This)->lpVtbl->GetDisplaySurfaceData(This,surface) #define IDXGIOutput6_GetFrameStatistics(This,stats) (This)->lpVtbl->GetFrameStatistics(This,stats) /*** IDXGIOutput1 methods ***/ #define IDXGIOutput6_GetDisplayModeList1(This,enum_format,flags,num_modes,desc) (This)->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc) #define IDXGIOutput6_FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) (This)->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device) #define IDXGIOutput6_GetDisplaySurfaceData1(This,destination) (This)->lpVtbl->GetDisplaySurfaceData1(This,destination) #define IDXGIOutput6_DuplicateOutput(This,device,output_duplication) (This)->lpVtbl->DuplicateOutput(This,device,output_duplication) /*** IDXGIOutput2 methods ***/ #define IDXGIOutput6_SupportsOverlays(This) (This)->lpVtbl->SupportsOverlays(This) /*** IDXGIOutput3 methods ***/ #define IDXGIOutput6_CheckOverlaySupport(This,enum_format,concerned_device,flags) (This)->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags) /*** IDXGIOutput4 methods ***/ #define IDXGIOutput6_CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) (This)->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags) /*** IDXGIOutput5 methods ***/ #define IDXGIOutput6_DuplicateOutput1(This,device,flags,format_count,formats,duplication) (This)->lpVtbl->DuplicateOutput1(This,device,flags,format_count,formats,duplication) /*** IDXGIOutput6 methods ***/ #define IDXGIOutput6_GetDesc1(This,desc) (This)->lpVtbl->GetDesc1(This,desc) #define IDXGIOutput6_CheckHardwareCompositionSupport(This,flags) (This)->lpVtbl->CheckHardwareCompositionSupport(This,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_QueryInterface(IDXGIOutput6* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIOutput6_AddRef(IDXGIOutput6* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIOutput6_Release(IDXGIOutput6* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_SetPrivateData(IDXGIOutput6* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput6_SetPrivateDataInterface(IDXGIOutput6* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIOutput6_GetPrivateData(IDXGIOutput6* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIOutput6_GetParent(IDXGIOutput6* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIOutput methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_GetDesc(IDXGIOutput6* This,DXGI_OUTPUT_DESC *desc) { return This->lpVtbl->GetDesc(This,desc); } static FORCEINLINE HRESULT IDXGIOutput6_GetDisplayModeList(IDXGIOutput6* This,DXGI_FORMAT format,UINT flags,UINT *mode_count,DXGI_MODE_DESC *desc) { return This->lpVtbl->GetDisplayModeList(This,format,flags,mode_count,desc); } static FORCEINLINE HRESULT IDXGIOutput6_FindClosestMatchingMode(IDXGIOutput6* This,const DXGI_MODE_DESC *mode,DXGI_MODE_DESC *closest_match,IUnknown *device) { return This->lpVtbl->FindClosestMatchingMode(This,mode,closest_match,device); } static FORCEINLINE HRESULT IDXGIOutput6_WaitForVBlank(IDXGIOutput6* This) { return This->lpVtbl->WaitForVBlank(This); } static FORCEINLINE HRESULT IDXGIOutput6_TakeOwnership(IDXGIOutput6* This,IUnknown *device,WINBOOL exclusive) { return This->lpVtbl->TakeOwnership(This,device,exclusive); } static FORCEINLINE void IDXGIOutput6_ReleaseOwnership(IDXGIOutput6* This) { This->lpVtbl->ReleaseOwnership(This); } static FORCEINLINE HRESULT IDXGIOutput6_GetGammaControlCapabilities(IDXGIOutput6* This,DXGI_GAMMA_CONTROL_CAPABILITIES *gamma_caps) { return This->lpVtbl->GetGammaControlCapabilities(This,gamma_caps); } static FORCEINLINE HRESULT IDXGIOutput6_SetGammaControl(IDXGIOutput6* This,const DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->SetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput6_GetGammaControl(IDXGIOutput6* This,DXGI_GAMMA_CONTROL *gamma_control) { return This->lpVtbl->GetGammaControl(This,gamma_control); } static FORCEINLINE HRESULT IDXGIOutput6_SetDisplaySurface(IDXGIOutput6* This,IDXGISurface *surface) { return This->lpVtbl->SetDisplaySurface(This,surface); } static FORCEINLINE HRESULT IDXGIOutput6_GetDisplaySurfaceData(IDXGIOutput6* This,IDXGISurface *surface) { return This->lpVtbl->GetDisplaySurfaceData(This,surface); } static FORCEINLINE HRESULT IDXGIOutput6_GetFrameStatistics(IDXGIOutput6* This,DXGI_FRAME_STATISTICS *stats) { return This->lpVtbl->GetFrameStatistics(This,stats); } /*** IDXGIOutput1 methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_GetDisplayModeList1(IDXGIOutput6* This,DXGI_FORMAT enum_format,UINT flags,UINT *num_modes,DXGI_MODE_DESC1 *desc) { return This->lpVtbl->GetDisplayModeList1(This,enum_format,flags,num_modes,desc); } static FORCEINLINE HRESULT IDXGIOutput6_FindClosestMatchingMode1(IDXGIOutput6* This,const DXGI_MODE_DESC1 *mode_to_match,DXGI_MODE_DESC1 *closest_match,IUnknown *concerned_device) { return This->lpVtbl->FindClosestMatchingMode1(This,mode_to_match,closest_match,concerned_device); } static FORCEINLINE HRESULT IDXGIOutput6_GetDisplaySurfaceData1(IDXGIOutput6* This,IDXGIResource *destination) { return This->lpVtbl->GetDisplaySurfaceData1(This,destination); } static FORCEINLINE HRESULT IDXGIOutput6_DuplicateOutput(IDXGIOutput6* This,IUnknown *device,IDXGIOutputDuplication **output_duplication) { return This->lpVtbl->DuplicateOutput(This,device,output_duplication); } /*** IDXGIOutput2 methods ***/ static FORCEINLINE WINBOOL IDXGIOutput6_SupportsOverlays(IDXGIOutput6* This) { return This->lpVtbl->SupportsOverlays(This); } /*** IDXGIOutput3 methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_CheckOverlaySupport(IDXGIOutput6* This,DXGI_FORMAT enum_format,IUnknown *concerned_device,UINT *flags) { return This->lpVtbl->CheckOverlaySupport(This,enum_format,concerned_device,flags); } /*** IDXGIOutput4 methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_CheckOverlayColorSpaceSupport(IDXGIOutput6* This,DXGI_FORMAT format,DXGI_COLOR_SPACE_TYPE colour_space,IUnknown *device,UINT *flags) { return This->lpVtbl->CheckOverlayColorSpaceSupport(This,format,colour_space,device,flags); } /*** IDXGIOutput5 methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_DuplicateOutput1(IDXGIOutput6* This,IUnknown *device,UINT flags,UINT format_count,const DXGI_FORMAT *formats,IDXGIOutputDuplication **duplication) { return This->lpVtbl->DuplicateOutput1(This,device,flags,format_count,formats,duplication); } /*** IDXGIOutput6 methods ***/ static FORCEINLINE HRESULT IDXGIOutput6_GetDesc1(IDXGIOutput6* This,DXGI_OUTPUT_DESC1 *desc) { return This->lpVtbl->GetDesc1(This,desc); } static FORCEINLINE HRESULT IDXGIOutput6_CheckHardwareCompositionSupport(IDXGIOutput6* This,UINT *flags) { return This->lpVtbl->CheckHardwareCompositionSupport(This,flags); } #endif #endif #endif #endif /* __IDXGIOutput6_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory6 interface */ #ifndef __IDXGIFactory6_INTERFACE_DEFINED__ #define __IDXGIFactory6_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory6, 0xc1b6694f, 0xff09, 0x44a9, 0xb0,0x3c, 0x77,0x90,0x0a,0x0a,0x1d,0x17); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c1b6694f-ff09-44a9-b03c-77900a0a1d17") IDXGIFactory6 : public IDXGIFactory5 { virtual HRESULT STDMETHODCALLTYPE EnumAdapterByGpuPreference( UINT adapter_idx, DXGI_GPU_PREFERENCE gpu_preference, REFIID iid, void **adapter) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory6, 0xc1b6694f, 0xff09, 0x44a9, 0xb0,0x3c, 0x77,0x90,0x0a,0x0a,0x1d,0x17) #endif #else typedef struct IDXGIFactory6Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory6 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory6 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory6 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory6 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory6 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory6 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory6 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory6 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory6 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory6 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory6 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory6 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory6 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory6 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory6 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory6 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory6 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory6 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory6 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory6 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory6 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory6 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory6 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory6 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory6 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); /*** IDXGIFactory3 methods ***/ UINT (STDMETHODCALLTYPE *GetCreationFlags)( IDXGIFactory6 *This); /*** IDXGIFactory4 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByLuid)( IDXGIFactory6 *This, LUID luid, REFIID iid, void **adapter); HRESULT (STDMETHODCALLTYPE *EnumWarpAdapter)( IDXGIFactory6 *This, REFIID iid, void **adapter); /*** IDXGIFactory5 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( IDXGIFactory6 *This, DXGI_FEATURE feature, void *support_data, UINT support_data_size); /*** IDXGIFactory6 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByGpuPreference)( IDXGIFactory6 *This, UINT adapter_idx, DXGI_GPU_PREFERENCE gpu_preference, REFIID iid, void **adapter); END_INTERFACE } IDXGIFactory6Vtbl; interface IDXGIFactory6 { CONST_VTBL IDXGIFactory6Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory6_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory6_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory6_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory6_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory6_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory6_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory6_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory6_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory6_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory6_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory6_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory6_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory6_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory6_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory6_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory6_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory6_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory6_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory6_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory6_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory6_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory6_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory6_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory6_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory6_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) /*** IDXGIFactory3 methods ***/ #define IDXGIFactory6_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) /*** IDXGIFactory4 methods ***/ #define IDXGIFactory6_EnumAdapterByLuid(This,luid,iid,adapter) (This)->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter) #define IDXGIFactory6_EnumWarpAdapter(This,iid,adapter) (This)->lpVtbl->EnumWarpAdapter(This,iid,adapter) /*** IDXGIFactory5 methods ***/ #define IDXGIFactory6_CheckFeatureSupport(This,feature,support_data,support_data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size) /*** IDXGIFactory6 methods ***/ #define IDXGIFactory6_EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter) (This)->lpVtbl->EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_QueryInterface(IDXGIFactory6* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory6_AddRef(IDXGIFactory6* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory6_Release(IDXGIFactory6* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_SetPrivateData(IDXGIFactory6* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory6_SetPrivateDataInterface(IDXGIFactory6* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory6_GetPrivateData(IDXGIFactory6* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory6_GetParent(IDXGIFactory6* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_EnumAdapters(IDXGIFactory6* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory6_MakeWindowAssociation(IDXGIFactory6* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory6_GetWindowAssociation(IDXGIFactory6* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory6_CreateSwapChain(IDXGIFactory6* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory6_CreateSoftwareAdapter(IDXGIFactory6* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_EnumAdapters1(IDXGIFactory6* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory6_IsCurrent(IDXGIFactory6* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory6_IsWindowedStereoEnabled(IDXGIFactory6* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory6_CreateSwapChainForHwnd(IDXGIFactory6* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory6_CreateSwapChainForCoreWindow(IDXGIFactory6* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory6_GetSharedResourceAdapterLuid(IDXGIFactory6* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory6_RegisterStereoStatusWindow(IDXGIFactory6* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory6_RegisterStereoStatusEvent(IDXGIFactory6* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory6_UnregisterStereoStatus(IDXGIFactory6* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory6_RegisterOcclusionStatusWindow(IDXGIFactory6* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory6_RegisterOcclusionStatusEvent(IDXGIFactory6* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory6_UnregisterOcclusionStatus(IDXGIFactory6* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory6_CreateSwapChainForComposition(IDXGIFactory6* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } /*** IDXGIFactory3 methods ***/ static FORCEINLINE UINT IDXGIFactory6_GetCreationFlags(IDXGIFactory6* This) { return This->lpVtbl->GetCreationFlags(This); } /*** IDXGIFactory4 methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_EnumAdapterByLuid(IDXGIFactory6* This,LUID luid,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter); } static FORCEINLINE HRESULT IDXGIFactory6_EnumWarpAdapter(IDXGIFactory6* This,REFIID iid,void **adapter) { return This->lpVtbl->EnumWarpAdapter(This,iid,adapter); } /*** IDXGIFactory5 methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_CheckFeatureSupport(IDXGIFactory6* This,DXGI_FEATURE feature,void *support_data,UINT support_data_size) { return This->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size); } /*** IDXGIFactory6 methods ***/ static FORCEINLINE HRESULT IDXGIFactory6_EnumAdapterByGpuPreference(IDXGIFactory6* This,UINT adapter_idx,DXGI_GPU_PREFERENCE gpu_preference,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter); } #endif #endif #endif #endif /* __IDXGIFactory6_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXGIFactory7 interface */ #ifndef __IDXGIFactory7_INTERFACE_DEFINED__ #define __IDXGIFactory7_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIFactory7, 0xa4966eed, 0x76db, 0x44da, 0x84,0xc1, 0xee,0x9a,0x7a,0xfb,0x20,0xa8); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a4966eed-76db-44da-84c1-ee9a7afb20a8") IDXGIFactory7 : public IDXGIFactory6 { virtual HRESULT STDMETHODCALLTYPE RegisterAdaptersChangedEvent( HANDLE event, DWORD *cookie) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterAdaptersChangedEvent( DWORD cookie) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIFactory7, 0xa4966eed, 0x76db, 0x44da, 0x84,0xc1, 0xee,0x9a,0x7a,0xfb,0x20,0xa8) #endif #else typedef struct IDXGIFactory7Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIFactory7 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIFactory7 *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIFactory7 *This); /*** IDXGIObject methods ***/ HRESULT (STDMETHODCALLTYPE *SetPrivateData)( IDXGIFactory7 *This, REFGUID guid, UINT data_size, const void *data); HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)( IDXGIFactory7 *This, REFGUID guid, const IUnknown *object); HRESULT (STDMETHODCALLTYPE *GetPrivateData)( IDXGIFactory7 *This, REFGUID guid, UINT *data_size, void *data); HRESULT (STDMETHODCALLTYPE *GetParent)( IDXGIFactory7 *This, REFIID riid, void **parent); /*** IDXGIFactory methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters)( IDXGIFactory7 *This, UINT adapter_idx, IDXGIAdapter **adapter); HRESULT (STDMETHODCALLTYPE *MakeWindowAssociation)( IDXGIFactory7 *This, HWND window, UINT flags); HRESULT (STDMETHODCALLTYPE *GetWindowAssociation)( IDXGIFactory7 *This, HWND *window); HRESULT (STDMETHODCALLTYPE *CreateSwapChain)( IDXGIFactory7 *This, IUnknown *device, DXGI_SWAP_CHAIN_DESC *desc, IDXGISwapChain **swapchain); HRESULT (STDMETHODCALLTYPE *CreateSoftwareAdapter)( IDXGIFactory7 *This, HMODULE swrast, IDXGIAdapter **adapter); /*** IDXGIFactory1 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapters1)( IDXGIFactory7 *This, UINT Adapter, IDXGIAdapter1 **ppAdapter); WINBOOL (STDMETHODCALLTYPE *IsCurrent)( IDXGIFactory7 *This); /*** IDXGIFactory2 methods ***/ WINBOOL (STDMETHODCALLTYPE *IsWindowedStereoEnabled)( IDXGIFactory7 *This); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForHwnd)( IDXGIFactory7 *This, IUnknown *pDevice, HWND hWnd, const DXGI_SWAP_CHAIN_DESC1 *pDesc, const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForCoreWindow)( IDXGIFactory7 *This, IUnknown *pDevice, IUnknown *pWindow, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); HRESULT (STDMETHODCALLTYPE *GetSharedResourceAdapterLuid)( IDXGIFactory7 *This, HANDLE hResource, LUID *pLuid); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusWindow)( IDXGIFactory7 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterStereoStatusEvent)( IDXGIFactory7 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterStereoStatus)( IDXGIFactory7 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusWindow)( IDXGIFactory7 *This, HWND WindowHandle, UINT wMsg, DWORD *pdwCookie); HRESULT (STDMETHODCALLTYPE *RegisterOcclusionStatusEvent)( IDXGIFactory7 *This, HANDLE hEvent, DWORD *pdwCookie); void (STDMETHODCALLTYPE *UnregisterOcclusionStatus)( IDXGIFactory7 *This, DWORD dwCookie); HRESULT (STDMETHODCALLTYPE *CreateSwapChainForComposition)( IDXGIFactory7 *This, IUnknown *pDevice, const DXGI_SWAP_CHAIN_DESC1 *pDesc, IDXGIOutput *pRestrictToOutput, IDXGISwapChain1 **ppSwapChain); /*** IDXGIFactory3 methods ***/ UINT (STDMETHODCALLTYPE *GetCreationFlags)( IDXGIFactory7 *This); /*** IDXGIFactory4 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByLuid)( IDXGIFactory7 *This, LUID luid, REFIID iid, void **adapter); HRESULT (STDMETHODCALLTYPE *EnumWarpAdapter)( IDXGIFactory7 *This, REFIID iid, void **adapter); /*** IDXGIFactory5 methods ***/ HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( IDXGIFactory7 *This, DXGI_FEATURE feature, void *support_data, UINT support_data_size); /*** IDXGIFactory6 methods ***/ HRESULT (STDMETHODCALLTYPE *EnumAdapterByGpuPreference)( IDXGIFactory7 *This, UINT adapter_idx, DXGI_GPU_PREFERENCE gpu_preference, REFIID iid, void **adapter); /*** IDXGIFactory7 methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterAdaptersChangedEvent)( IDXGIFactory7 *This, HANDLE event, DWORD *cookie); HRESULT (STDMETHODCALLTYPE *UnregisterAdaptersChangedEvent)( IDXGIFactory7 *This, DWORD cookie); END_INTERFACE } IDXGIFactory7Vtbl; interface IDXGIFactory7 { CONST_VTBL IDXGIFactory7Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIFactory7_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIFactory7_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIFactory7_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIObject methods ***/ #define IDXGIFactory7_SetPrivateData(This,guid,data_size,data) (This)->lpVtbl->SetPrivateData(This,guid,data_size,data) #define IDXGIFactory7_SetPrivateDataInterface(This,guid,object) (This)->lpVtbl->SetPrivateDataInterface(This,guid,object) #define IDXGIFactory7_GetPrivateData(This,guid,data_size,data) (This)->lpVtbl->GetPrivateData(This,guid,data_size,data) #define IDXGIFactory7_GetParent(This,riid,parent) (This)->lpVtbl->GetParent(This,riid,parent) /*** IDXGIFactory methods ***/ #define IDXGIFactory7_EnumAdapters(This,adapter_idx,adapter) (This)->lpVtbl->EnumAdapters(This,adapter_idx,adapter) #define IDXGIFactory7_MakeWindowAssociation(This,window,flags) (This)->lpVtbl->MakeWindowAssociation(This,window,flags) #define IDXGIFactory7_GetWindowAssociation(This,window) (This)->lpVtbl->GetWindowAssociation(This,window) #define IDXGIFactory7_CreateSwapChain(This,device,desc,swapchain) (This)->lpVtbl->CreateSwapChain(This,device,desc,swapchain) #define IDXGIFactory7_CreateSoftwareAdapter(This,swrast,adapter) (This)->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter) /*** IDXGIFactory1 methods ***/ #define IDXGIFactory7_EnumAdapters1(This,Adapter,ppAdapter) (This)->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter) #define IDXGIFactory7_IsCurrent(This) (This)->lpVtbl->IsCurrent(This) /*** IDXGIFactory2 methods ***/ #define IDXGIFactory7_IsWindowedStereoEnabled(This) (This)->lpVtbl->IsWindowedStereoEnabled(This) #define IDXGIFactory7_CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory7_CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain) #define IDXGIFactory7_GetSharedResourceAdapterLuid(This,hResource,pLuid) (This)->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid) #define IDXGIFactory7_RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory7_RegisterStereoStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory7_UnregisterStereoStatus(This,dwCookie) (This)->lpVtbl->UnregisterStereoStatus(This,dwCookie) #define IDXGIFactory7_RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie) #define IDXGIFactory7_RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) (This)->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie) #define IDXGIFactory7_UnregisterOcclusionStatus(This,dwCookie) (This)->lpVtbl->UnregisterOcclusionStatus(This,dwCookie) #define IDXGIFactory7_CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) (This)->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain) /*** IDXGIFactory3 methods ***/ #define IDXGIFactory7_GetCreationFlags(This) (This)->lpVtbl->GetCreationFlags(This) /*** IDXGIFactory4 methods ***/ #define IDXGIFactory7_EnumAdapterByLuid(This,luid,iid,adapter) (This)->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter) #define IDXGIFactory7_EnumWarpAdapter(This,iid,adapter) (This)->lpVtbl->EnumWarpAdapter(This,iid,adapter) /*** IDXGIFactory5 methods ***/ #define IDXGIFactory7_CheckFeatureSupport(This,feature,support_data,support_data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size) /*** IDXGIFactory6 methods ***/ #define IDXGIFactory7_EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter) (This)->lpVtbl->EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter) /*** IDXGIFactory7 methods ***/ #define IDXGIFactory7_RegisterAdaptersChangedEvent(This,event,cookie) (This)->lpVtbl->RegisterAdaptersChangedEvent(This,event,cookie) #define IDXGIFactory7_UnregisterAdaptersChangedEvent(This,cookie) (This)->lpVtbl->UnregisterAdaptersChangedEvent(This,cookie) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_QueryInterface(IDXGIFactory7* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIFactory7_AddRef(IDXGIFactory7* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIFactory7_Release(IDXGIFactory7* This) { return This->lpVtbl->Release(This); } /*** IDXGIObject methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_SetPrivateData(IDXGIFactory7* This,REFGUID guid,UINT data_size,const void *data) { return This->lpVtbl->SetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory7_SetPrivateDataInterface(IDXGIFactory7* This,REFGUID guid,const IUnknown *object) { return This->lpVtbl->SetPrivateDataInterface(This,guid,object); } static FORCEINLINE HRESULT IDXGIFactory7_GetPrivateData(IDXGIFactory7* This,REFGUID guid,UINT *data_size,void *data) { return This->lpVtbl->GetPrivateData(This,guid,data_size,data); } static FORCEINLINE HRESULT IDXGIFactory7_GetParent(IDXGIFactory7* This,REFIID riid,void **parent) { return This->lpVtbl->GetParent(This,riid,parent); } /*** IDXGIFactory methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_EnumAdapters(IDXGIFactory7* This,UINT adapter_idx,IDXGIAdapter **adapter) { return This->lpVtbl->EnumAdapters(This,adapter_idx,adapter); } static FORCEINLINE HRESULT IDXGIFactory7_MakeWindowAssociation(IDXGIFactory7* This,HWND window,UINT flags) { return This->lpVtbl->MakeWindowAssociation(This,window,flags); } static FORCEINLINE HRESULT IDXGIFactory7_GetWindowAssociation(IDXGIFactory7* This,HWND *window) { return This->lpVtbl->GetWindowAssociation(This,window); } static FORCEINLINE HRESULT IDXGIFactory7_CreateSwapChain(IDXGIFactory7* This,IUnknown *device,DXGI_SWAP_CHAIN_DESC *desc,IDXGISwapChain **swapchain) { return This->lpVtbl->CreateSwapChain(This,device,desc,swapchain); } static FORCEINLINE HRESULT IDXGIFactory7_CreateSoftwareAdapter(IDXGIFactory7* This,HMODULE swrast,IDXGIAdapter **adapter) { return This->lpVtbl->CreateSoftwareAdapter(This,swrast,adapter); } /*** IDXGIFactory1 methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_EnumAdapters1(IDXGIFactory7* This,UINT Adapter,IDXGIAdapter1 **ppAdapter) { return This->lpVtbl->EnumAdapters1(This,Adapter,ppAdapter); } static FORCEINLINE WINBOOL IDXGIFactory7_IsCurrent(IDXGIFactory7* This) { return This->lpVtbl->IsCurrent(This); } /*** IDXGIFactory2 methods ***/ static FORCEINLINE WINBOOL IDXGIFactory7_IsWindowedStereoEnabled(IDXGIFactory7* This) { return This->lpVtbl->IsWindowedStereoEnabled(This); } static FORCEINLINE HRESULT IDXGIFactory7_CreateSwapChainForHwnd(IDXGIFactory7* This,IUnknown *pDevice,HWND hWnd,const DXGI_SWAP_CHAIN_DESC1 *pDesc,const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForHwnd(This,pDevice,hWnd,pDesc,pFullscreenDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory7_CreateSwapChainForCoreWindow(IDXGIFactory7* This,IUnknown *pDevice,IUnknown *pWindow,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForCoreWindow(This,pDevice,pWindow,pDesc,pRestrictToOutput,ppSwapChain); } static FORCEINLINE HRESULT IDXGIFactory7_GetSharedResourceAdapterLuid(IDXGIFactory7* This,HANDLE hResource,LUID *pLuid) { return This->lpVtbl->GetSharedResourceAdapterLuid(This,hResource,pLuid); } static FORCEINLINE HRESULT IDXGIFactory7_RegisterStereoStatusWindow(IDXGIFactory7* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory7_RegisterStereoStatusEvent(IDXGIFactory7* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterStereoStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory7_UnregisterStereoStatus(IDXGIFactory7* This,DWORD dwCookie) { This->lpVtbl->UnregisterStereoStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory7_RegisterOcclusionStatusWindow(IDXGIFactory7* This,HWND WindowHandle,UINT wMsg,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusWindow(This,WindowHandle,wMsg,pdwCookie); } static FORCEINLINE HRESULT IDXGIFactory7_RegisterOcclusionStatusEvent(IDXGIFactory7* This,HANDLE hEvent,DWORD *pdwCookie) { return This->lpVtbl->RegisterOcclusionStatusEvent(This,hEvent,pdwCookie); } static FORCEINLINE void IDXGIFactory7_UnregisterOcclusionStatus(IDXGIFactory7* This,DWORD dwCookie) { This->lpVtbl->UnregisterOcclusionStatus(This,dwCookie); } static FORCEINLINE HRESULT IDXGIFactory7_CreateSwapChainForComposition(IDXGIFactory7* This,IUnknown *pDevice,const DXGI_SWAP_CHAIN_DESC1 *pDesc,IDXGIOutput *pRestrictToOutput,IDXGISwapChain1 **ppSwapChain) { return This->lpVtbl->CreateSwapChainForComposition(This,pDevice,pDesc,pRestrictToOutput,ppSwapChain); } /*** IDXGIFactory3 methods ***/ static FORCEINLINE UINT IDXGIFactory7_GetCreationFlags(IDXGIFactory7* This) { return This->lpVtbl->GetCreationFlags(This); } /*** IDXGIFactory4 methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_EnumAdapterByLuid(IDXGIFactory7* This,LUID luid,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByLuid(This,luid,iid,adapter); } static FORCEINLINE HRESULT IDXGIFactory7_EnumWarpAdapter(IDXGIFactory7* This,REFIID iid,void **adapter) { return This->lpVtbl->EnumWarpAdapter(This,iid,adapter); } /*** IDXGIFactory5 methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_CheckFeatureSupport(IDXGIFactory7* This,DXGI_FEATURE feature,void *support_data,UINT support_data_size) { return This->lpVtbl->CheckFeatureSupport(This,feature,support_data,support_data_size); } /*** IDXGIFactory6 methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_EnumAdapterByGpuPreference(IDXGIFactory7* This,UINT adapter_idx,DXGI_GPU_PREFERENCE gpu_preference,REFIID iid,void **adapter) { return This->lpVtbl->EnumAdapterByGpuPreference(This,adapter_idx,gpu_preference,iid,adapter); } /*** IDXGIFactory7 methods ***/ static FORCEINLINE HRESULT IDXGIFactory7_RegisterAdaptersChangedEvent(IDXGIFactory7* This,HANDLE event,DWORD *cookie) { return This->lpVtbl->RegisterAdaptersChangedEvent(This,event,cookie); } static FORCEINLINE HRESULT IDXGIFactory7_UnregisterAdaptersChangedEvent(IDXGIFactory7* This,DWORD cookie) { return This->lpVtbl->UnregisterAdaptersChangedEvent(This,cookie); } #endif #endif #endif #endif /* __IDXGIFactory7_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgi1_6_h__ */ dxvk-0~git20220822.9df86f2/dxgicommon.h000066400000000000000000000041311430055512200173130ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgicommon.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgicommon_h__ #define __dxgicommon_h__ /* Forward declarations */ /* Headers for imported files */ #ifdef __cplusplus extern "C" { #endif #if 0 typedef unsigned int UINT; #endif #define DXGI_STANDARD_MULTISAMPLE_QUALITY_PATTERN (0xffffffff) #define DXGI_CENTER_MULTISAMPLE_QUALITY_PATTERN (0xfffffffe) typedef enum DXGI_COLOR_SPACE_TYPE { DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709 = 0x0, DXGI_COLOR_SPACE_RGB_FULL_G10_NONE_P709 = 0x1, DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P709 = 0x2, DXGI_COLOR_SPACE_RGB_STUDIO_G22_NONE_P2020 = 0x3, DXGI_COLOR_SPACE_RESERVED = 0x4, DXGI_COLOR_SPACE_YCBCR_FULL_G22_NONE_P709_X601 = 0x5, DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P601 = 0x6, DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P601 = 0x7, DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P709 = 0x8, DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P709 = 0x9, DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_LEFT_P2020 = 0xa, DXGI_COLOR_SPACE_YCBCR_FULL_G22_LEFT_P2020 = 0xb, DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020 = 0xc, DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_LEFT_P2020 = 0xd, DXGI_COLOR_SPACE_RGB_STUDIO_G2084_NONE_P2020 = 0xe, DXGI_COLOR_SPACE_YCBCR_STUDIO_G22_TOPLEFT_P2020 = 0xf, DXGI_COLOR_SPACE_YCBCR_STUDIO_G2084_TOPLEFT_P2020 = 0x10, DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P2020 = 0x11, DXGI_COLOR_SPACE_YCBCR_STUDIO_GHLG_TOPLEFT_P2020 = 0x12, DXGI_COLOR_SPACE_YCBCR_FULL_GHLG_TOPLEFT_P2020 = 0x13, DXGI_COLOR_SPACE_CUSTOM = 0xffffffff } DXGI_COLOR_SPACE_TYPE; typedef struct DXGI_SAMPLE_DESC { UINT Count; UINT Quality; } DXGI_SAMPLE_DESC; typedef struct DXGI_RATIONAL { UINT Numerator; UINT Denominator; } DXGI_RATIONAL; /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgicommon_h__ */ dxvk-0~git20220822.9df86f2/dxgidebug.h000066400000000000000000000074061430055512200171210ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgidebug.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgidebug_h__ #define __dxgidebug_h__ /* Forward declarations */ #ifndef __IDXGIDebug_FWD_DEFINED__ #define __IDXGIDebug_FWD_DEFINED__ typedef interface IDXGIDebug IDXGIDebug; #ifdef __cplusplus interface IDXGIDebug; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif DEFINE_GUID(DXGI_DEBUG_ALL, 0xe48ae283, 0xda80, 0x490b,0x87, 0xe6, 0x43, 0xe9, 0xa9, 0xcf, 0xda, 0x08); DEFINE_GUID(DXGI_DEBUG_DX, 0x35cdd7fc, 0x13b2, 0x421d,0xa5, 0xd7, 0x7e, 0x44, 0x51, 0x28, 0x7d, 0x64); DEFINE_GUID(DXGI_DEBUG_DXGI, 0x25cddaa4, 0xb1c6, 0x47e1,0xac, 0x3e, 0x98, 0x87, 0x5b, 0x5a, 0x2e, 0x2a); DEFINE_GUID(DXGI_DEBUG_APP, 0x06cd6e01, 0x4219, 0x4ebd,0x87, 0x90, 0x27, 0xed, 0x23, 0x36, 0x0c, 0x62); typedef enum DXGI_DEBUG_RLO_FLAGS { DXGI_DEBUG_RLO_SUMMARY = 0x1, DXGI_DEBUG_RLO_DETAIL = 0x2, DXGI_DEBUG_RLO_IGNORE_INTERNAL = 0x4, DXGI_DEBUG_RLO_ALL = 0x7 } DXGI_DEBUG_RLO_FLAGS; /***************************************************************************** * IDXGIDebug interface */ #ifndef __IDXGIDebug_INTERFACE_DEFINED__ #define __IDXGIDebug_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXGIDebug, 0x119e7452, 0xde9e, 0x40fe, 0x88,0x06, 0x88,0xf9,0x0c,0x12,0xb4,0x41); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("119e7452-de9e-40fe-8806-88f90c12b441") IDXGIDebug : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ReportLiveObjects( GUID apiid, DXGI_DEBUG_RLO_FLAGS flags) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXGIDebug, 0x119e7452, 0xde9e, 0x40fe, 0x88,0x06, 0x88,0xf9,0x0c,0x12,0xb4,0x41) #endif #else typedef struct IDXGIDebugVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXGIDebug *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXGIDebug *This); ULONG (STDMETHODCALLTYPE *Release)( IDXGIDebug *This); /*** IDXGIDebug methods ***/ HRESULT (STDMETHODCALLTYPE *ReportLiveObjects)( IDXGIDebug *This, GUID apiid, DXGI_DEBUG_RLO_FLAGS flags); END_INTERFACE } IDXGIDebugVtbl; interface IDXGIDebug { CONST_VTBL IDXGIDebugVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXGIDebug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXGIDebug_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXGIDebug_Release(This) (This)->lpVtbl->Release(This) /*** IDXGIDebug methods ***/ #define IDXGIDebug_ReportLiveObjects(This,apiid,flags) (This)->lpVtbl->ReportLiveObjects(This,apiid,flags) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXGIDebug_QueryInterface(IDXGIDebug* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXGIDebug_AddRef(IDXGIDebug* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXGIDebug_Release(IDXGIDebug* This) { return This->lpVtbl->Release(This); } /*** IDXGIDebug methods ***/ static FORCEINLINE HRESULT IDXGIDebug_ReportLiveObjects(IDXGIDebug* This,GUID apiid,DXGI_DEBUG_RLO_FLAGS flags) { return This->lpVtbl->ReportLiveObjects(This,apiid,flags); } #endif #endif #endif #endif /* __IDXGIDebug_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgidebug_h__ */ dxvk-0~git20220822.9df86f2/dxgiformat.h000066400000000000000000000117511430055512200173210ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgiformat.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgiformat_h__ #define __dxgiformat_h__ /* Forward declarations */ /* Headers for imported files */ #ifdef __cplusplus extern "C" { #endif #define DXGI_FORMAT_DEFINED (1) typedef enum DXGI_FORMAT { DXGI_FORMAT_UNKNOWN = 0x0, DXGI_FORMAT_R32G32B32A32_TYPELESS = 0x1, DXGI_FORMAT_R32G32B32A32_FLOAT = 0x2, DXGI_FORMAT_R32G32B32A32_UINT = 0x3, DXGI_FORMAT_R32G32B32A32_SINT = 0x4, DXGI_FORMAT_R32G32B32_TYPELESS = 0x5, DXGI_FORMAT_R32G32B32_FLOAT = 0x6, DXGI_FORMAT_R32G32B32_UINT = 0x7, DXGI_FORMAT_R32G32B32_SINT = 0x8, DXGI_FORMAT_R16G16B16A16_TYPELESS = 0x9, DXGI_FORMAT_R16G16B16A16_FLOAT = 0xa, DXGI_FORMAT_R16G16B16A16_UNORM = 0xb, DXGI_FORMAT_R16G16B16A16_UINT = 0xc, DXGI_FORMAT_R16G16B16A16_SNORM = 0xd, DXGI_FORMAT_R16G16B16A16_SINT = 0xe, DXGI_FORMAT_R32G32_TYPELESS = 0xf, DXGI_FORMAT_R32G32_FLOAT = 0x10, DXGI_FORMAT_R32G32_UINT = 0x11, DXGI_FORMAT_R32G32_SINT = 0x12, DXGI_FORMAT_R32G8X24_TYPELESS = 0x13, DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 0x14, DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 0x15, DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 0x16, DXGI_FORMAT_R10G10B10A2_TYPELESS = 0x17, DXGI_FORMAT_R10G10B10A2_UNORM = 0x18, DXGI_FORMAT_R10G10B10A2_UINT = 0x19, DXGI_FORMAT_R11G11B10_FLOAT = 0x1a, DXGI_FORMAT_R8G8B8A8_TYPELESS = 0x1b, DXGI_FORMAT_R8G8B8A8_UNORM = 0x1c, DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 0x1d, DXGI_FORMAT_R8G8B8A8_UINT = 0x1e, DXGI_FORMAT_R8G8B8A8_SNORM = 0x1f, DXGI_FORMAT_R8G8B8A8_SINT = 0x20, DXGI_FORMAT_R16G16_TYPELESS = 0x21, DXGI_FORMAT_R16G16_FLOAT = 0x22, DXGI_FORMAT_R16G16_UNORM = 0x23, DXGI_FORMAT_R16G16_UINT = 0x24, DXGI_FORMAT_R16G16_SNORM = 0x25, DXGI_FORMAT_R16G16_SINT = 0x26, DXGI_FORMAT_R32_TYPELESS = 0x27, DXGI_FORMAT_D32_FLOAT = 0x28, DXGI_FORMAT_R32_FLOAT = 0x29, DXGI_FORMAT_R32_UINT = 0x2a, DXGI_FORMAT_R32_SINT = 0x2b, DXGI_FORMAT_R24G8_TYPELESS = 0x2c, DXGI_FORMAT_D24_UNORM_S8_UINT = 0x2d, DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 0x2e, DXGI_FORMAT_X24_TYPELESS_G8_UINT = 0x2f, DXGI_FORMAT_R8G8_TYPELESS = 0x30, DXGI_FORMAT_R8G8_UNORM = 0x31, DXGI_FORMAT_R8G8_UINT = 0x32, DXGI_FORMAT_R8G8_SNORM = 0x33, DXGI_FORMAT_R8G8_SINT = 0x34, DXGI_FORMAT_R16_TYPELESS = 0x35, DXGI_FORMAT_R16_FLOAT = 0x36, DXGI_FORMAT_D16_UNORM = 0x37, DXGI_FORMAT_R16_UNORM = 0x38, DXGI_FORMAT_R16_UINT = 0x39, DXGI_FORMAT_R16_SNORM = 0x3a, DXGI_FORMAT_R16_SINT = 0x3b, DXGI_FORMAT_R8_TYPELESS = 0x3c, DXGI_FORMAT_R8_UNORM = 0x3d, DXGI_FORMAT_R8_UINT = 0x3e, DXGI_FORMAT_R8_SNORM = 0x3f, DXGI_FORMAT_R8_SINT = 0x40, DXGI_FORMAT_A8_UNORM = 0x41, DXGI_FORMAT_R1_UNORM = 0x42, DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 0x43, DXGI_FORMAT_R8G8_B8G8_UNORM = 0x44, DXGI_FORMAT_G8R8_G8B8_UNORM = 0x45, DXGI_FORMAT_BC1_TYPELESS = 0x46, DXGI_FORMAT_BC1_UNORM = 0x47, DXGI_FORMAT_BC1_UNORM_SRGB = 0x48, DXGI_FORMAT_BC2_TYPELESS = 0x49, DXGI_FORMAT_BC2_UNORM = 0x4a, DXGI_FORMAT_BC2_UNORM_SRGB = 0x4b, DXGI_FORMAT_BC3_TYPELESS = 0x4c, DXGI_FORMAT_BC3_UNORM = 0x4d, DXGI_FORMAT_BC3_UNORM_SRGB = 0x4e, DXGI_FORMAT_BC4_TYPELESS = 0x4f, DXGI_FORMAT_BC4_UNORM = 0x50, DXGI_FORMAT_BC4_SNORM = 0x51, DXGI_FORMAT_BC5_TYPELESS = 0x52, DXGI_FORMAT_BC5_UNORM = 0x53, DXGI_FORMAT_BC5_SNORM = 0x54, DXGI_FORMAT_B5G6R5_UNORM = 0x55, DXGI_FORMAT_B5G5R5A1_UNORM = 0x56, DXGI_FORMAT_B8G8R8A8_UNORM = 0x57, DXGI_FORMAT_B8G8R8X8_UNORM = 0x58, DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 0x59, DXGI_FORMAT_B8G8R8A8_TYPELESS = 0x5a, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 0x5b, DXGI_FORMAT_B8G8R8X8_TYPELESS = 0x5c, DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 0x5d, DXGI_FORMAT_BC6H_TYPELESS = 0x5e, DXGI_FORMAT_BC6H_UF16 = 0x5f, DXGI_FORMAT_BC6H_SF16 = 0x60, DXGI_FORMAT_BC7_TYPELESS = 0x61, DXGI_FORMAT_BC7_UNORM = 0x62, DXGI_FORMAT_BC7_UNORM_SRGB = 0x63, DXGI_FORMAT_AYUV = 0x64, DXGI_FORMAT_Y410 = 0x65, DXGI_FORMAT_Y416 = 0x66, DXGI_FORMAT_NV12 = 0x67, DXGI_FORMAT_P010 = 0x68, DXGI_FORMAT_P016 = 0x69, DXGI_FORMAT_420_OPAQUE = 0x6a, DXGI_FORMAT_YUY2 = 0x6b, DXGI_FORMAT_Y210 = 0x6c, DXGI_FORMAT_Y216 = 0x6d, DXGI_FORMAT_NV11 = 0x6e, DXGI_FORMAT_AI44 = 0x6f, DXGI_FORMAT_IA44 = 0x70, DXGI_FORMAT_P8 = 0x71, DXGI_FORMAT_A8P8 = 0x72, DXGI_FORMAT_B4G4R4A4_UNORM = 0x73, DXGI_FORMAT_P208 = 0x82, DXGI_FORMAT_V208 = 0x83, DXGI_FORMAT_V408 = 0x84, DXGI_FORMAT_FORCE_UINT = 0xffffffff } DXGI_FORMAT; /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgiformat_h__ */ dxvk-0~git20220822.9df86f2/dxgitype.h000066400000000000000000000043501430055512200170070ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxgitype.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxgitype_h__ #define __dxgitype_h__ /* Forward declarations */ /* Headers for imported files */ #include #include #ifdef __cplusplus extern "C" { #endif #if 0 typedef unsigned int UINT; typedef LONG WINBOOL; #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; #ifndef D3DCOLORVALUE_DEFINED #define D3DCOLORVALUE_DEFINED typedef struct _D3DCOLORVALUE { float r; float g; float b; float a; } D3DCOLORVALUE; #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 { WINBOOL 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; /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxgitype_h__ */ dxvk-0~git20220822.9df86f2/dxtmpl.h000066400000000000000000000667661430055512200165050ustar00rootroot00000000000000/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #ifndef DXTmpl_h #define DXTmpl_h #include #include #include #include #define DXASSERT_VALID(pObj) #ifndef PASCAL_INLINE #define PASCAL_INLINE WINAPI #endif typedef void *DXLISTPOS; typedef DWORD DXLISTHANDLE; #define DX_BEFORE_START_POSITION ((void*)(INT_PTR)-1) #ifndef __CRT__NO_INLINE __CRT_INLINE WINBOOL DXIsValidAddress(const void *lp,UINT nBytes,WINBOOL bReadWrite) { return (lp!=NULL && !IsBadReadPtr(lp,nBytes) && (!bReadWrite || !IsBadWritePtr((LPVOID)lp,nBytes))); } #endif #ifdef __cplusplus template inline void DXConstructElements(TYPE *pElements,int nCount) { _ASSERT(nCount==0 || DXIsValidAddress(pElements,nCount *sizeof(TYPE),TRUE)); memset((void*)pElements,0,nCount *sizeof(TYPE)); } template inline void DXDestructElements(TYPE *pElements,int nCount) { _ASSERT((nCount==0 || DXIsValidAddress(pElements,nCount *sizeof(TYPE),TRUE))); pElements; nCount; } template inline void DXCopyElements(TYPE *pDest,const TYPE *pSrc,int nCount) { _ASSERT((nCount==0 || DXIsValidAddress(pDest,nCount *sizeof(TYPE),TRUE))); _ASSERT((nCount==0 || DXIsValidAddress(pSrc,nCount *sizeof(TYPE),FALSE))); memcpy(pDest,pSrc,nCount *sizeof(TYPE)); } template WINBOOL DXCompareElements(const TYPE *pElement1,const ARG_TYPE *pElement2) { _ASSERT(DXIsValidAddress(pElement1,sizeof(TYPE),FALSE)); _ASSERT(DXIsValidAddress(pElement2,sizeof(ARG_TYPE),FALSE)); return *pElement1==*pElement2; } template inline UINT DXHashKey(ARG_KEY key) { return ((UINT)(void*)(DWORD)key) >> 4; } struct CDXPlex { CDXPlex *pNext; UINT nMax; UINT nCur; void *data() { return this+1; } static CDXPlex *PASCAL_INLINE Create(CDXPlex *&pHead,UINT nMax,UINT cbElement) { CDXPlex *p = (CDXPlex*) new BYTE[sizeof(CDXPlex) + nMax *cbElement]; if(!p) return NULL; p->nMax = nMax; p->nCur = 0; p->pNext = pHead; pHead = p; return p; } void FreeDataChain() { CDXPlex *p = this; while(p!=NULL) { BYTE *bytes = (BYTE*) p; CDXPlex *pNext = p->pNext; delete [] bytes; p = pNext; } } }; template class CDXArray { public: CDXArray(); int GetSize() const; int GetUpperBound() const; void SetSize(int nNewSize,int nGrowBy = -1); void FreeExtra(); void RemoveAll(); TYPE GetAt(int nIndex) const; void SetAt(int nIndex,ARG_TYPE newElement); TYPE &ElementAt(int nIndex); const TYPE *GetData() const; TYPE *GetData(); void SetAtGrow(int nIndex,ARG_TYPE newElement); int Add(ARG_TYPE newElement); int Append(const CDXArray &src); void Copy(const CDXArray &src); TYPE operator[](int nIndex) const; TYPE &operator[](int nIndex); void InsertAt(int nIndex,ARG_TYPE newElement,int nCount = 1); void RemoveAt(int nIndex,int nCount = 1); void InsertAt(int nStartIndex,CDXArray *pNewArray); void Sort(int (__cdecl *compare)(const void *elem1,const void *elem2)); protected: TYPE *m_pData; int m_nSize; int m_nMaxSize; int m_nGrowBy; public: ~CDXArray(); }; template inline int CDXArray::GetSize() const { return m_nSize; } template inline int CDXArray::GetUpperBound() const { return m_nSize-1; } template inline void CDXArray::RemoveAll() { SetSize(0,-1); } template inline TYPE CDXArray::GetAt(int nIndex) const { _ASSERT((nIndex >= 0 && nIndex < m_nSize)); return m_pData[nIndex]; } template inline void CDXArray::SetAt(int nIndex,ARG_TYPE newElement) { _ASSERT((nIndex >= 0 && nIndex < m_nSize)); m_pData[nIndex] = newElement; } template inline TYPE &CDXArray::ElementAt(int nIndex) { _ASSERT((nIndex >= 0 && nIndex < m_nSize)); return m_pData[nIndex]; } template inline const TYPE *CDXArray::GetData() const { return (const TYPE*)m_pData; } template inline TYPE *CDXArray::GetData() { return (TYPE*)m_pData; } template inline int CDXArray::Add(ARG_TYPE newElement) { int nIndex = m_nSize; SetAtGrow(nIndex,newElement); return nIndex; } template inline TYPE CDXArray::operator[](int nIndex) const { return GetAt(nIndex); } template inline TYPE &CDXArray::operator[](int nIndex) { return ElementAt(nIndex); } template CDXArray::CDXArray() { m_pData = NULL; m_nSize = m_nMaxSize = m_nGrowBy = 0; } emplate CDXArray::~CDXArray() { DXASSERT_VALID(this); if(m_pData!=NULL) { DXDestructElements(m_pData,m_nSize); delete[] (BYTE*)m_pData; } } template void CDXArray::SetSize(int nNewSize,int nGrowBy) { DXASSERT_VALID(this); _ASSERT(nNewSize >= 0); if(nGrowBy!=-1) m_nGrowBy = nGrowBy; if(nNewSize==0) { if(m_pData!=NULL) { DXDestructElements(m_pData,m_nSize); delete[] (BYTE*)m_pData; m_pData = NULL; } m_nSize = m_nMaxSize = 0; } else if(!m_pData) { #ifdef SIZE_T_MAX _ASSERT(nNewSize <= SIZE_T_MAX/sizeof(TYPE)); #endif m_pData = (TYPE*) new BYTE[nNewSize *sizeof(TYPE)]; DXConstructElements(m_pData,nNewSize); m_nSize = m_nMaxSize = nNewSize; } else if(nNewSize <= m_nMaxSize) { if(nNewSize > m_nSize) { DXConstructElements(&m_pData[m_nSize],nNewSize-m_nSize); } else if(m_nSize > nNewSize) { DXDestructElements(&m_pData[nNewSize],m_nSize-nNewSize); } m_nSize = nNewSize; } else { int nGrowBy = m_nGrowBy; if(!nGrowBy) nGrowBy = min(1024,max(4,m_nSize / 8)); int nNewMax; if(nNewSize < m_nMaxSize + nGrowBy) nNewMax = m_nMaxSize + nGrowBy; else nNewMax = nNewSize; _ASSERT(nNewMax >= m_nMaxSize); #ifdef SIZE_T_MAX _ASSERT(nNewMax <= SIZE_T_MAX/sizeof(TYPE)); #endif TYPE *pNewData = (TYPE*) new BYTE[nNewMax *sizeof(TYPE)]; if(!pNewData) return; memcpy(pNewData,m_pData,m_nSize *sizeof(TYPE)); _ASSERT(nNewSize > m_nSize); DXConstructElements(&pNewData[m_nSize],nNewSize-m_nSize); delete[] (BYTE*)m_pData; m_pData = pNewData; m_nSize = nNewSize; m_nMaxSize = nNewMax; } } template int CDXArray::Append(const CDXArray &src) { DXASSERT_VALID(this); _ASSERT(this!=&src); int nOldSize = m_nSize; SetSize(m_nSize + src.m_nSize); DXCopyElements(m_pData + nOldSize,src.m_pData,src.m_nSize); return nOldSize; } template void CDXArray::Copy(const CDXArray &src) { DXASSERT_VALID(this); _ASSERT(this!=&src); SetSize(src.m_nSize); DXCopyElements(m_pData,src.m_pData,src.m_nSize); } template void CDXArray::FreeExtra() { DXASSERT_VALID(this); if(m_nSize!=m_nMaxSize) { #ifdef SIZE_T_MAX _ASSERT(m_nSize <= SIZE_T_MAX/sizeof(TYPE)); #endif TYPE *pNewData = NULL; if(m_nSize!=0) { pNewData = (TYPE*) new BYTE[m_nSize *sizeof(TYPE)]; if(!pNewData) return; memcpy(pNewData,m_pData,m_nSize *sizeof(TYPE)); } delete[] (BYTE*)m_pData; m_pData = pNewData; m_nMaxSize = m_nSize; } } template void CDXArray::SetAtGrow(int nIndex,ARG_TYPE newElement) { DXASSERT_VALID(this); _ASSERT(nIndex >= 0); if(nIndex >= m_nSize) SetSize(nIndex+1,-1); m_pData[nIndex] = newElement; } template void CDXArray::InsertAt(int nIndex,ARG_TYPE newElement,int nCount) { DXASSERT_VALID(this); _ASSERT(nIndex >= 0); _ASSERT(nCount > 0); if(nIndex >= m_nSize) SetSize(nIndex + nCount,-1); else { int nOldSize = m_nSize; SetSize(m_nSize + nCount,-1); memmove(&m_pData[nIndex+nCount],&m_pData[nIndex],(nOldSize-nIndex) *sizeof(TYPE)); DXConstructElements(&m_pData[nIndex],nCount); } _ASSERT(nIndex + nCount <= m_nSize); while(nCount--) m_pData[nIndex++] = newElement; } template void CDXArray::RemoveAt(int nIndex,int nCount) { DXASSERT_VALID(this); _ASSERT(nIndex >= 0); _ASSERT(nCount >= 0); _ASSERT(nIndex + nCount <= m_nSize); int nMoveCount = m_nSize - (nIndex + nCount); DXDestructElements(&m_pData[nIndex],nCount); if(nMoveCount) memcpy(&m_pData[nIndex],&m_pData[nIndex + nCount],nMoveCount *sizeof(TYPE)); m_nSize -= nCount; } template void CDXArray::InsertAt(int nStartIndex,CDXArray *pNewArray) { DXASSERT_VALID(this); DXASSERT_VALID(pNewArray); _ASSERT(nStartIndex >= 0); if(pNewArray->GetSize() > 0) { InsertAt(nStartIndex,pNewArray->GetAt(0),pNewArray->GetSize()); for(int i = 0;i < pNewArray->GetSize();i++) SetAt(nStartIndex + i,pNewArray->GetAt(i)); } } template void CDXArray::Sort(int (__cdecl *compare)(const void *elem1,const void *elem2)) { DXASSERT_VALID(this); _ASSERT(m_pData!=NULL); qsort(m_pData,m_nSize,sizeof(TYPE),compare); } #ifdef _DEBUG template void CDXArray::AssertValid() const { if(!m_pData) { _ASSERT(m_nSize==0); _ASSERT(m_nMaxSize==0); } else { _ASSERT(m_nSize >= 0); _ASSERT(m_nMaxSize >= 0); _ASSERT(m_nSize <= m_nMaxSize); _ASSERT(DXIsValidAddress(m_pData,m_nMaxSize *sizeof(TYPE),TRUE)); } } #endif template class CDXList { protected: struct CNode { CNode *pNext; CNode *pPrev; TYPE data; }; public: CDXList(int nBlockSize = 10); int GetCount() const; WINBOOL IsEmpty() const; TYPE &GetHead(); TYPE GetHead() const; TYPE &GetTail(); TYPE GetTail() const; TYPE RemoveHead(); TYPE RemoveTail(); DXLISTPOS AddHead(ARG_TYPE newElement); DXLISTPOS AddTail(ARG_TYPE newElement); void AddHead(CDXList *pNewList); void AddTail(CDXList *pNewList); void RemoveAll(); DXLISTPOS GetHeadPosition() const; DXLISTPOS GetTailPosition() const; TYPE &GetNext(DXLISTPOS &rPosition); TYPE GetNext(DXLISTPOS &rPosition) const; TYPE &GetPrev(DXLISTPOS &rPosition); TYPE GetPrev(DXLISTPOS &rPosition) const; TYPE &GetAt(DXLISTPOS position); TYPE GetAt(DXLISTPOS position) const; void SetAt(DXLISTPOS pos,ARG_TYPE newElement); void RemoveAt(DXLISTPOS position); DXLISTPOS InsertBefore(DXLISTPOS position,ARG_TYPE newElement); DXLISTPOS InsertAfter(DXLISTPOS position,ARG_TYPE newElement); DXLISTPOS Find(ARG_TYPE searchValue,DXLISTPOS startAfter = NULL) const; DXLISTPOS FindIndex(int nIndex) const; protected: CNode *m_pNodeHead; CNode *m_pNodeTail; int m_nCount; CNode *m_pNodeFree; struct CDXPlex *m_pBlocks; int m_nBlockSize; CNode *NewNode(CNode *,CNode *); void FreeNode(CNode *); public: ~CDXList(); #ifdef _DEBUG void AssertValid() const; #endif }; template inline int CDXList::GetCount() const { return m_nCount; } template inline WINBOOL CDXList::IsEmpty() const { return m_nCount==0; } template inline TYPE &CDXList::GetHead() { _ASSERT(m_pNodeHead!=NULL); return m_pNodeHead->data; } template inline TYPE CDXList::GetHead() const { _ASSERT(m_pNodeHead!=NULL); return m_pNodeHead->data; } template inline TYPE &CDXList::GetTail() { _ASSERT(m_pNodeTail!=NULL); return m_pNodeTail->data; } template inline TYPE CDXList::GetTail() const { _ASSERT(m_pNodeTail!=NULL); return m_pNodeTail->data; } template inline DXLISTPOS CDXList::GetHeadPosition() const { return (DXLISTPOS) m_pNodeHead; } template inline DXLISTPOS CDXList::GetTailPosition() const { return (DXLISTPOS) m_pNodeTail; } template inline TYPE &CDXList::GetNext(DXLISTPOS &rPosition) { CNode *pNode = (CNode *) rPosition; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); rPosition = (DXLISTPOS) pNode->pNext; return pNode->data; } template inline TYPE CDXList::GetNext(DXLISTPOS &rPosition) const { CNode *pNode = (CNode *) rPosition; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); rPosition = (DXLISTPOS) pNode->pNext; return pNode->data; } template inline TYPE &CDXList::GetPrev(DXLISTPOS &rPosition) { CNode *pNode = (CNode *) rPosition; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); rPosition = (DXLISTPOS) pNode->pPrev; return pNode->data; } template inline TYPE CDXList::GetPrev(DXLISTPOS &rPosition) const { CNode *pNode = (CNode *) rPosition; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); rPosition = (DXLISTPOS) pNode->pPrev; return pNode->data; } template inline TYPE &CDXList::GetAt(DXLISTPOS position) { CNode *pNode = (CNode *) position; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); return pNode->data; } template inline TYPE CDXList::GetAt(DXLISTPOS position) const { CNode *pNode = (CNode *) position; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); return pNode->data; } template inline void CDXList::SetAt(DXLISTPOS pos,ARG_TYPE newElement) { CNode *pNode = (CNode *) pos; _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); pNode->data = newElement; } template CDXList::CDXList(int nBlockSize) { _ASSERT(nBlockSize > 0); m_nCount = 0; m_pNodeHead = m_pNodeTail = m_pNodeFree = NULL; m_pBlocks = NULL; m_nBlockSize = nBlockSize; } template void CDXList::RemoveAll() { DXASSERT_VALID(this); CNode *pNode; for(pNode = m_pNodeHead;pNode!=NULL;pNode = pNode->pNext) DXDestructElements(&pNode->data,1); m_nCount = 0; m_pNodeHead = m_pNodeTail = m_pNodeFree = NULL; m_pBlocks->FreeDataChain(); m_pBlocks = NULL; } template CDXList::~CDXList() { RemoveAll(); _ASSERT(m_nCount==0); } template typename CDXList::CNode * CDXList::NewNode(CNode *pPrev,CNode *pNext) { if(!m_pNodeFree) { CDXPlex *pNewBlock = CDXPlex::Create(m_pBlocks,m_nBlockSize,sizeof(CNode)); CNode *pNode = (CNode *) pNewBlock->data(); pNode += m_nBlockSize - 1; for(int i = m_nBlockSize-1;i >= 0;i--,pNode--) { pNode->pNext = m_pNodeFree; m_pNodeFree = pNode; } } _ASSERT(m_pNodeFree!=NULL); CDXList::CNode *pNode = m_pNodeFree; m_pNodeFree = m_pNodeFree->pNext; pNode->pPrev = pPrev; pNode->pNext = pNext; m_nCount++; _ASSERT(m_nCount > 0); DXConstructElements(&pNode->data,1); return pNode; } template void CDXList::FreeNode(CNode *pNode) { DXDestructElements(&pNode->data,1); pNode->pNext = m_pNodeFree; m_pNodeFree = pNode; m_nCount--; _ASSERT(m_nCount >= 0); } template DXLISTPOS CDXList::AddHead(ARG_TYPE newElement) { DXASSERT_VALID(this); CNode *pNewNode = NewNode(NULL,m_pNodeHead); pNewNode->data = newElement; if(m_pNodeHead!=NULL) m_pNodeHead->pPrev = pNewNode; else m_pNodeTail = pNewNode; m_pNodeHead = pNewNode; return (DXLISTPOS) pNewNode; } template DXLISTPOS CDXList::AddTail(ARG_TYPE newElement) { DXASSERT_VALID(this); CNode *pNewNode = NewNode(m_pNodeTail,NULL); pNewNode->data = newElement; if(m_pNodeTail!=NULL) m_pNodeTail->pNext = pNewNode; else m_pNodeHead = pNewNode; m_pNodeTail = pNewNode; return (DXLISTPOS) pNewNode; } template void CDXList::AddHead(CDXList *pNewList) { DXASSERT_VALID(this); DXASSERT_VALID(pNewList); DXLISTPOS pos = pNewList->GetTailPosition(); while(pos!=NULL) AddHead(pNewList->GetPrev(pos)); } template void CDXList::AddTail(CDXList *pNewList) { DXASSERT_VALID(this); DXASSERT_VALID(pNewList); DXLISTPOS pos = pNewList->GetHeadPosition(); while(pos!=NULL) AddTail(pNewList->GetNext(pos)); } template TYPE CDXList::RemoveHead() { DXASSERT_VALID(this); _ASSERT(m_pNodeHead!=NULL); _ASSERT(DXIsValidAddress(m_pNodeHead,sizeof(CNode),TRUE)); CNode *pOldNode = m_pNodeHead; TYPE returnValue = pOldNode->data; m_pNodeHead = pOldNode->pNext; if(m_pNodeHead!=NULL) m_pNodeHead->pPrev = NULL; else m_pNodeTail = NULL; FreeNode(pOldNode); return returnValue; } template TYPE CDXList::RemoveTail() { DXASSERT_VALID(this); _ASSERT(m_pNodeTail!=NULL); _ASSERT(DXIsValidAddress(m_pNodeTail,sizeof(CNode),TRUE)); CNode *pOldNode = m_pNodeTail; TYPE returnValue = pOldNode->data; m_pNodeTail = pOldNode->pPrev; if(m_pNodeTail!=NULL) m_pNodeTail->pNext = NULL; else m_pNodeHead = NULL; FreeNode(pOldNode); return returnValue; } template DXLISTPOS CDXList::InsertBefore(DXLISTPOS position,ARG_TYPE newElement) { DXASSERT_VALID(this); if(!position) return AddHead(newElement); CNode *pOldNode = (CNode *) position; CNode *pNewNode = NewNode(pOldNode->pPrev,pOldNode); pNewNode->data = newElement; if(pOldNode->pPrev!=NULL) { _ASSERT(DXIsValidAddress(pOldNode->pPrev,sizeof(CNode),TRUE)); pOldNode->pPrev->pNext = pNewNode; } else { _ASSERT(pOldNode==m_pNodeHead); m_pNodeHead = pNewNode; } pOldNode->pPrev = pNewNode; return (DXLISTPOS) pNewNode; } template DXLISTPOS CDXList::InsertAfter(DXLISTPOS position,ARG_TYPE newElement) { DXASSERT_VALID(this); if(!position) return AddTail(newElement); CNode *pOldNode = (CNode *) position; _ASSERT(DXIsValidAddress(pOldNode,sizeof(CNode),TRUE)); CNode *pNewNode = NewNode(pOldNode,pOldNode->pNext); pNewNode->data = newElement; if(pOldNode->pNext!=NULL) { _ASSERT(DXIsValidAddress(pOldNode->pNext,sizeof(CNode),TRUE)); pOldNode->pNext->pPrev = pNewNode; } else { _ASSERT(pOldNode==m_pNodeTail); m_pNodeTail = pNewNode; } pOldNode->pNext = pNewNode; return (DXLISTPOS) pNewNode; } template void CDXList::RemoveAt(DXLISTPOS position) { DXASSERT_VALID(this); CNode *pOldNode = (CNode *) position; _ASSERT(DXIsValidAddress(pOldNode,sizeof(CNode),TRUE)); if(pOldNode==m_pNodeHead) { m_pNodeHead = pOldNode->pNext; } else { _ASSERT(DXIsValidAddress(pOldNode->pPrev,sizeof(CNode),TRUE)); pOldNode->pPrev->pNext = pOldNode->pNext; } if(pOldNode==m_pNodeTail) m_pNodeTail = pOldNode->pPrev; else { _ASSERT(DXIsValidAddress(pOldNode->pNext,sizeof(CNode),TRUE)); pOldNode->pNext->pPrev = pOldNode->pPrev; } FreeNode(pOldNode); } template DXLISTPOS CDXList::FindIndex(int nIndex) const { DXASSERT_VALID(this); _ASSERT(nIndex >= 0); if(nIndex >= m_nCount) return NULL; CNode *pNode = m_pNodeHead; while(nIndex--) { _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); pNode = pNode->pNext; } return (DXLISTPOS) pNode; } template DXLISTPOS CDXList::Find(ARG_TYPE searchValue,DXLISTPOS startAfter) const { DXASSERT_VALID(this); CNode *pNode = (CNode *) startAfter; if(!pNode) pNode = m_pNodeHead; else { _ASSERT(DXIsValidAddress(pNode,sizeof(CNode),TRUE)); pNode = pNode->pNext; } for(;pNode!=NULL;pNode = pNode->pNext) if(DXCompareElements(&pNode->data,&searchValue)) return (DXLISTPOS)pNode; return NULL; } #ifdef _DEBUG template void CDXList::AssertValid() const { if(!m_nCount) { _ASSERT(!m_pNodeHead); _ASSERT(!m_pNodeTail); } else { _ASSERT(DXIsValidAddress(m_pNodeHead,sizeof(CNode),TRUE)); _ASSERT(DXIsValidAddress(m_pNodeTail,sizeof(CNode),TRUE)); } } #endif template class CDXMap { protected: struct CAssoc { CAssoc *pNext; UINT nHashValue; KEY key; VALUE value; }; public: CDXMap(int nBlockSize = 10); int GetCount() const; WINBOOL IsEmpty() const; WINBOOL Lookup(ARG_KEY key,VALUE& rValue) const; VALUE& operator[](ARG_KEY key); void SetAt(ARG_KEY key,ARG_VALUE newValue); WINBOOL RemoveKey(ARG_KEY key); void RemoveAll(); DXLISTPOS GetStartPosition() const; void GetNextAssoc(DXLISTPOS &rNextPosition,KEY& rKey,VALUE& rValue) const; UINT GetHashTableSize() const; void InitHashTable(UINT hashSize,WINBOOL bAllocNow = TRUE); protected: CAssoc **m_pHashTable; UINT m_nHashTableSize; int m_nCount; CAssoc *m_pFreeList; struct CDXPlex *m_pBlocks; int m_nBlockSize; CAssoc *NewAssoc(); void FreeAssoc(CAssoc*); CAssoc *GetAssocAt(ARG_KEY,UINT&) const; public: ~CDXMap(); #ifdef _DEBUG void AssertValid() const; #endif }; template inline int CDXMap::GetCount() const { return m_nCount; } template inline WINBOOL CDXMap::IsEmpty() const { return m_nCount==0; } template inline void CDXMap::SetAt(ARG_KEY key,ARG_VALUE newValue) { (*this)[key] = newValue; } template inline DXLISTPOS CDXMap::GetStartPosition() const { return (m_nCount==0) ? NULL : DX_BEFORE_START_POSITION; } template inline UINT CDXMap::GetHashTableSize() const { return m_nHashTableSize; } template CDXMap::CDXMap(int nBlockSize) { _ASSERT(nBlockSize > 0); m_pHashTable = NULL; m_nHashTableSize = 17; m_nCount = 0; m_pFreeList = NULL; m_pBlocks = NULL; m_nBlockSize = nBlockSize; } template void CDXMap::InitHashTable(UINT nHashSize,WINBOOL bAllocNow) { DXASSERT_VALID(this); _ASSERT(m_nCount==0); _ASSERT(nHashSize > 0); if(m_pHashTable!=NULL) { delete[] m_pHashTable; m_pHashTable = NULL; } if(bAllocNow) { m_pHashTable = new CAssoc *[nHashSize]; if(!m_pHashTable) return; memset(m_pHashTable,0,sizeof(CAssoc*) *nHashSize); } m_nHashTableSize = nHashSize; } template void CDXMap::RemoveAll() { DXASSERT_VALID(this); if(m_pHashTable!=NULL) { for(UINT nHash = 0;nHash < m_nHashTableSize;nHash++) { CAssoc *pAssoc; for(pAssoc = m_pHashTable[nHash]; pAssoc!=NULL; pAssoc = pAssoc->pNext) { DXDestructElements(&pAssoc->value,1); DXDestructElements(&pAssoc->key,1); } } } delete[] m_pHashTable; m_pHashTable = NULL; m_nCount = 0; m_pFreeList = NULL; m_pBlocks->FreeDataChain(); m_pBlocks = NULL; } template CDXMap::~CDXMap() { RemoveAll(); _ASSERT(m_nCount==0); } template typename CDXMap::CAssoc* CDXMap::NewAssoc() { if(!m_pFreeList) { CDXPlex *newBlock = CDXPlex::Create(m_pBlocks,m_nBlockSize,sizeof(CDXMap::CAssoc)); CDXMap::CAssoc *pAssoc = (CDXMap::CAssoc*) newBlock->data(); pAssoc += m_nBlockSize - 1; for(int i = m_nBlockSize-1;i >= 0;i--,pAssoc--) { pAssoc->pNext = m_pFreeList; m_pFreeList = pAssoc; } } _ASSERT(m_pFreeList!=NULL); CDXMap::CAssoc *pAssoc = m_pFreeList; m_pFreeList = m_pFreeList->pNext; m_nCount++; _ASSERT(m_nCount > 0); DXConstructElements(&pAssoc->key,1); DXConstructElements(&pAssoc->value,1); return pAssoc; } template void CDXMap::FreeAssoc(CAssoc *pAssoc) { DXDestructElements(&pAssoc->value,1); DXDestructElements(&pAssoc->key,1); pAssoc->pNext = m_pFreeList; m_pFreeList = pAssoc; m_nCount--; _ASSERT(m_nCount >= 0); } template typename CDXMap::CAssoc* CDXMap::GetAssocAt(ARG_KEY key,UINT& nHash) const { nHash = DXHashKey(key) % m_nHashTableSize; if(!m_pHashTable) return NULL; CAssoc *pAssoc; for(pAssoc = m_pHashTable[nHash];pAssoc!=NULL;pAssoc = pAssoc->pNext) { if(DXCompareElements(&pAssoc->key,&key)) return pAssoc; } return NULL; } template WINBOOL CDXMap::Lookup(ARG_KEY key,VALUE& rValue) const { DXASSERT_VALID(this); UINT nHash; CAssoc *pAssoc = GetAssocAt(key,nHash); if(!pAssoc) return FALSE; rValue = pAssoc->value; return TRUE; } template VALUE& CDXMap::operator[](ARG_KEY key) { DXASSERT_VALID(this); UINT nHash; CAssoc *pAssoc; if(!(pAssoc = GetAssocAt(key,nHash))) { if(!m_pHashTable) InitHashTable(m_nHashTableSize); pAssoc = NewAssoc(); pAssoc->nHashValue = nHash; pAssoc->key = key; pAssoc->pNext = m_pHashTable[nHash]; m_pHashTable[nHash] = pAssoc; } return pAssoc->value; } template WINBOOL CDXMap::RemoveKey(ARG_KEY key) { DXASSERT_VALID(this); if(!m_pHashTable) return FALSE; CAssoc **ppAssocPrev; ppAssocPrev = &m_pHashTable[DXHashKey(key) % m_nHashTableSize]; CAssoc *pAssoc; for(pAssoc = *ppAssocPrev;pAssoc!=NULL;pAssoc = pAssoc->pNext) { if(DXCompareElements(&pAssoc->key,&key)) { *ppAssocPrev = pAssoc->pNext; FreeAssoc(pAssoc); return TRUE; } ppAssocPrev = &pAssoc->pNext; } return FALSE; } template void CDXMap::GetNextAssoc(DXLISTPOS &rNextPosition,KEY& rKey,VALUE& rValue) const { DXASSERT_VALID(this); _ASSERT(m_pHashTable!=NULL); CAssoc *pAssocRet = (CAssoc*)rNextPosition; _ASSERT(pAssocRet!=NULL); if(pAssocRet==(CAssoc*) DX_BEFORE_START_POSITION) { for(UINT nBucket = 0;nBucket < m_nHashTableSize;nBucket++) if((pAssocRet = m_pHashTable[nBucket])!=NULL) break; _ASSERT(pAssocRet!=NULL); } _ASSERT(DXIsValidAddress(pAssocRet,sizeof(CAssoc),TRUE)); CAssoc *pAssocNext; if(!(pAssocNext = pAssocRet->pNext)) { for(UINT nBucket = pAssocRet->nHashValue + 1;nBucket < m_nHashTableSize;nBucket++) if((pAssocNext = m_pHashTable[nBucket])!=NULL) break; } rNextPosition = (DXLISTPOS) pAssocNext; rKey = pAssocRet->key; rValue = pAssocRet->value; } #ifdef _DEBUG template void CDXMap::AssertValid() const { _ASSERT(m_nHashTableSize > 0); _ASSERT((m_nCount==0 || m_pHashTable!=NULL)); } #endif #endif /* __cplusplus */ #endif dxvk-0~git20220822.9df86f2/dxva.h000066400000000000000000000715201430055512200161170ustar00rootroot00000000000000/* * Copyright 2015 Michael Müller * * 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 */ #ifndef __WINE_DXVA_H #define __WINE_DXVA_H #ifdef __cplusplus extern "C" { #endif DEFINE_GUID(DXVA_NoEncrypt, 0x1b81bed0, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA_USUAL_BLOCK_WIDTH 8 #define DXVA_USUAL_BLOCK_HEIGHT 8 #define DXVA_USUAL_BLOCK_SIZE (DXVA_USUAL_BLOCK_WIDTH * DXVA_USUAL_BLOCK_HEIGHT) #include typedef struct _DXVA_PicEntry_H264 { union { struct { UCHAR Index7Bits : 7; UCHAR AssociatedFlag : 1; } DUMMYSTRUCTNAME; UCHAR bPicEntry; } DUMMYUNIONNAME; } DXVA_PicEntry_H264, *LPDXVA_PicEntry_H264; typedef struct _DXVA_FilmGrainCharacteristics { USHORT wFrameWidthInMbsMinus1; USHORT wFrameHeightInMbsMinus1; DXVA_PicEntry_H264 InPic; DXVA_PicEntry_H264 OutPic; USHORT PicOrderCnt_offset; INT CurrPicOrderCnt; UINT StatusReportFeedbackNumber; UCHAR model_id; UCHAR separate_colour_description_present_flag; UCHAR film_grain_bit_depth_luma_minus8; UCHAR film_grain_bit_depth_chroma_minus8; UCHAR film_grain_full_range_flag; UCHAR film_grain_colour_primaries; UCHAR film_grain_transfer_characteristics; UCHAR film_grain_matrix_coefficients; UCHAR blending_mode_id; UCHAR log2_scale_factor; UCHAR comp_model_present_flag[4]; UCHAR num_intensity_intervals_minus1[4]; UCHAR num_model_values_minus1[4]; UCHAR intensity_interval_lower_bound[3][16]; UCHAR intensity_interval_upper_bound[3][16]; SHORT comp_model_value[3][16][8]; } DXVA_FilmGrainChar_H264, *LPDXVA_FilmGrainChar_H264; typedef struct _DXVA_PictureParameters { WORD wDecodedPictureIndex; WORD wDeblockedPictureIndex; WORD wForwardRefPictureIndex; WORD wBackwardRefPictureIndex; WORD wPicWidthInMBminus1; WORD wPicHeightInMBminus1; BYTE bMacroblockWidthMinus1; BYTE bMacroblockHeightMinus1; BYTE bBlockWidthMinus1; BYTE bBlockHeightMinus1; BYTE bBPPminus1; BYTE bPicStructure; BYTE bSecondField; BYTE bPicIntra; BYTE bPicBackwardPrediction; BYTE bBidirectionalAveragingMode; BYTE bMVprecisionAndChromaRelation; BYTE bChromaFormat; BYTE bPicScanFixed; BYTE bPicScanMethod; BYTE bPicReadbackRequests; BYTE bRcontrol; BYTE bPicSpatialResid8; BYTE bPicOverflowBlocks; BYTE bPicExtrapolation; BYTE bPicDeblocked; BYTE bPicDeblockConfined; BYTE bPic4MVallowed; BYTE bPicOBMC; BYTE bPicBinPB; BYTE bMV_RPS; BYTE bReservedBits; WORD wBitstreamFcodes; WORD wBitstreamPCEelements; BYTE bBitstreamConcealmentNeed; BYTE bBitstreamConcealmentMethod; } DXVA_PictureParameters, *LPDXVA_PictureParameters; typedef struct _DXVA_SliceInfo { WORD wHorizontalPosition; WORD wVerticalPosition; DWORD dwSliceBitsInBuffer; DWORD dwSliceDataLocation; BYTE bStartCodeBitOffset; BYTE bReservedBits; WORD wMBbitOffset; WORD wNumberMBsInSlice; WORD wQuantizerScaleCode; WORD wBadSliceChopping; } DXVA_SliceInfo, *LPDXVA_SliceInfo; typedef struct _DXVA_QmatrixData { BYTE bNewQmatrix[4]; WORD Qmatrix[4][DXVA_USUAL_BLOCK_WIDTH * DXVA_USUAL_BLOCK_HEIGHT]; } DXVA_QmatrixData, *LPDXVA_QmatrixData; typedef struct _DXVA_PicParams_H264 { USHORT wFrameWidthInMbsMinus1; USHORT wFrameHeightInMbsMinus1; DXVA_PicEntry_H264 CurrPic; UCHAR num_ref_frames; union { struct { USHORT field_pic_flag : 1; USHORT MbaffFrameFlag : 1; USHORT residual_colour_transform_flag : 1; USHORT sp_for_switch_flag : 1; USHORT chroma_format_idc : 2; USHORT RefPicFlag : 1; USHORT constrained_intra_pred_flag : 1; USHORT weighted_pred_flag : 1; USHORT weighted_bipred_idc : 2; USHORT MbsConsecutiveFlag : 1; USHORT frame_mbs_only_flag : 1; USHORT transform_8x8_mode_flag : 1; USHORT MinLumaBipredSize8x8Flag : 1; USHORT IntraPicFlag : 1; } DUMMYSTRUCTNAME; USHORT wBitFields; } DUMMYUNIONNAME; UCHAR bit_depth_luma_minus8; UCHAR bit_depth_chroma_minus8; USHORT Reserved16Bits; UINT StatusReportFeedbackNumber; DXVA_PicEntry_H264 RefFrameList[16]; INT CurrFieldOrderCnt[2]; INT FieldOrderCntList[16][2]; CHAR pic_init_qs_minus26; CHAR chroma_qp_index_offset; CHAR second_chroma_qp_index_offset; UCHAR ContinuationFlag; CHAR pic_init_qp_minus26; UCHAR num_ref_idx_l0_active_minus1; UCHAR num_ref_idx_l1_active_minus1; UCHAR Reserved8BitsA; USHORT FrameNumList[16]; UINT UsedForReferenceFlags; USHORT NonExistingFrameFlags; USHORT frame_num; UCHAR log2_max_frame_num_minus4; UCHAR pic_order_cnt_type; UCHAR log2_max_pic_order_cnt_lsb_minus4; UCHAR delta_pic_order_always_zero_flag; UCHAR direct_8x8_inference_flag; UCHAR entropy_coding_mode_flag; UCHAR pic_order_present_flag; UCHAR num_slice_groups_minus1; UCHAR slice_group_map_type; UCHAR deblocking_filter_control_present_flag; UCHAR redundant_pic_cnt_present_flag; UCHAR Reserved8BitsB; USHORT slice_group_change_rate_minus1; UCHAR SliceGroupMap[810]; } DXVA_PicParams_H264, *LPDXVA_PicParams_H264; typedef struct _DXVA_Qmatrix_H264 { UCHAR bScalingLists4x4[6][16]; UCHAR bScalingLists8x8[2][64]; } DXVA_Qmatrix_H264, *LPDXVA_Qmatrix_H264; typedef struct _DXVA_Slice_H264_Long { UINT BSNALunitDataLocation; UINT SliceBytesInBuffer; USHORT wBadSliceChopping; USHORT first_mb_in_slice; USHORT NumMbsForSlice; USHORT BitOffsetToSliceData; UCHAR slice_type; UCHAR luma_log2_weight_denom; UCHAR chroma_log2_weight_denom; UCHAR num_ref_idx_l0_active_minus1; UCHAR num_ref_idx_l1_active_minus1; CHAR slice_alpha_c0_offset_div2; CHAR slice_beta_offset_div2; UCHAR Reserved8Bits; DXVA_PicEntry_H264 RefPicList[2][32]; SHORT Weights[2][32][3][2]; CHAR slice_qs_delta; CHAR slice_qp_delta; UCHAR redundant_pic_cnt; UCHAR direct_spatial_mv_pred_flag; UCHAR cabac_init_idc; UCHAR disable_deblocking_filter_idc; USHORT slice_id; } DXVA_Slice_H264_Long, *LPDXVA_Slice_H264_Long; typedef struct _DXVA_Slice_H264_Short { UINT BSNALunitDataLocation; UINT SliceBytesInBuffer; USHORT wBadSliceChopping; } DXVA_Slice_H264_Short, *LPDXVA_Slice_H264_Short; typedef struct _DXVA_PicEntry_HEVC { union { struct { UCHAR Index7Bits : 7; UCHAR AssociatedFlag : 1; }; UCHAR bPicEntry; }; } DXVA_PicEntry_HEVC, *LPDXVA_PicEntry_HEVC; typedef struct _DXVA_PicParams_HEVC { USHORT PicWidthInMinCbsY; USHORT PicHeightInMinCbsY; union { struct { USHORT chroma_format_idc : 2; USHORT separate_colour_plane_flag : 1; USHORT bit_depth_luma_minus8 : 3; USHORT bit_depth_chroma_minus8 : 3; USHORT log2_max_pic_order_cnt_lsb_minus4 : 4; USHORT NoPicReorderingFlag : 1; USHORT NoBiPredFlag : 1; USHORT ReservedBits1 : 1; }; USHORT wFormatAndSequenceInfoFlags; }; DXVA_PicEntry_HEVC CurrPic; UCHAR sps_max_dec_pic_buffering_minus1; UCHAR log2_min_luma_coding_block_size_minus3; UCHAR log2_diff_max_min_luma_coding_block_size; UCHAR log2_min_transform_block_size_minus2; UCHAR log2_diff_max_min_transform_block_size; UCHAR max_transform_hierarchy_depth_inter; UCHAR max_transform_hierarchy_depth_intra; UCHAR num_short_term_ref_pic_sets; UCHAR num_long_term_ref_pics_sps; UCHAR num_ref_idx_l0_default_active_minus1; UCHAR num_ref_idx_l1_default_active_minus1; CHAR init_qp_minus26; UCHAR ucNumDeltaPocsOfRefRpsIdx; USHORT wNumBitsForShortTermRPSInSlice; USHORT ReservedBits2; union { struct { UINT32 scaling_list_enabled_flag : 1; UINT32 amp_enabled_flag : 1; UINT32 sample_adaptive_offset_enabled_flag : 1; UINT32 pcm_enabled_flag : 1; UINT32 pcm_sample_bit_depth_luma_minus1 : 4; UINT32 pcm_sample_bit_depth_chroma_minus1 : 4; UINT32 log2_min_pcm_luma_coding_block_size_minus3 : 2; UINT32 log2_diff_max_min_pcm_luma_coding_block_size : 2; UINT32 pcm_loop_filter_disabled_flag : 1; UINT32 long_term_ref_pics_present_flag : 1; UINT32 sps_temporal_mvp_enabled_flag : 1; UINT32 strong_intra_smoothing_enabled_flag : 1; UINT32 dependent_slice_segments_enabled_flag : 1; UINT32 output_flag_present_flag : 1; UINT32 num_extra_slice_header_bits : 3; UINT32 sign_data_hiding_enabled_flag : 1; UINT32 cabac_init_present_flag : 1; UINT32 ReservedBits3 : 5; }; UINT32 dwCodingParamToolFlags; }; union { struct { UINT32 constrained_intra_pred_flag : 1; UINT32 transform_skip_enabled_flag : 1; UINT32 cu_qp_delta_enabled_flag : 1; UINT32 pps_slice_chroma_qp_offsets_present_flag : 1; UINT32 weighted_pred_flag : 1; UINT32 weighted_bipred_flag : 1; UINT32 transquant_bypass_enabled_flag : 1; UINT32 tiles_enabled_flag : 1; UINT32 entropy_coding_sync_enabled_flag : 1; UINT32 uniform_spacing_flag : 1; UINT32 loop_filter_across_tiles_enabled_flag : 1; UINT32 pps_loop_filter_across_slices_enabled_flag : 1; UINT32 deblocking_filter_override_enabled_flag : 1; UINT32 pps_deblocking_filter_disabled_flag : 1; UINT32 lists_modification_present_flag : 1; UINT32 slice_segment_header_extension_present_flag : 1; UINT32 IrapPicFlag : 1; UINT32 IdrPicFlag : 1; UINT32 IntraPicFlag : 1; UINT32 ReservedBits4 : 13; }; UINT32 dwCodingSettingPicturePropertyFlags; }; CHAR pps_cb_qp_offset; CHAR pps_cr_qp_offset; UCHAR num_tile_columns_minus1; UCHAR num_tile_rows_minus1; USHORT column_width_minus1[19]; USHORT row_height_minus1[21]; UCHAR diff_cu_qp_delta_depth; CHAR pps_beta_offset_div2; CHAR pps_tc_offset_div2; UCHAR log2_parallel_merge_level_minus2; INT CurrPicOrderCntVal; DXVA_PicEntry_HEVC RefPicList[15]; UCHAR ReservedBits5; INT PicOrderCntValList[15]; UCHAR RefPicSetStCurrBefore[8]; UCHAR RefPicSetStCurrAfter[8]; UCHAR RefPicSetLtCurr[8]; USHORT ReservedBits6; USHORT ReservedBits7; UINT StatusReportFeedbackNumber; } DXVA_PicParams_HEVC, *LPDXVA_PicParams_HEVC; typedef struct _DXVA_Qmatrix_HEVC { UCHAR ucScalingLists0[6][16]; UCHAR ucScalingLists1[6][64]; UCHAR ucScalingLists2[6][64]; UCHAR ucScalingLists3[2][64]; UCHAR ucScalingListDCCoefSizeID2[6]; UCHAR ucScalingListDCCoefSizeID3[2]; } DXVA_Qmatrix_HEVC, *LPDXVA_Qmatrix_HEVC; typedef struct _DXVA_Slice_HEVC_Short { UINT BSNALunitDataLocation; UINT SliceBytesInBuffer; USHORT wBadSliceChopping; } DXVA_Slice_HEVC_Short, *LPDXVA_Slice_HEVC_Short; typedef struct _DXVA_PicEntry_VPx { union { struct { UCHAR Index7Bits : 7; UCHAR AssociatedFlag : 1; }; UCHAR bPicEntry; }; } DXVA_PicEntry_VPx, *LPDXVA_PicEntry_VPx; typedef struct _segmentation_VP9 { union { struct { UCHAR enabled : 1; UCHAR update_map : 1; UCHAR temporal_update : 1; UCHAR abs_delta : 1; UCHAR ReservedSegmentFlags4Bits : 4; }; UCHAR wSegmentInfoFlags; }; UCHAR tree_probs[7]; UCHAR pred_probs[3]; SHORT feature_data[8][4]; UCHAR feature_mask[8]; } DXVA_segmentation_VP9; typedef struct _DXVA_PicParams_VP9 { DXVA_PicEntry_VPx CurrPic; UCHAR profile; union { struct { USHORT frame_type : 1; USHORT show_frame : 1; USHORT error_resilient_mode : 1; USHORT subsampling_x : 1; USHORT subsampling_y : 1; USHORT extra_plane : 1; USHORT refresh_frame_context : 1; USHORT frame_parallel_decoding_mode : 1; USHORT intra_only : 1; USHORT frame_context_idx : 2; USHORT reset_frame_context : 2; USHORT allow_high_precision_mv : 1; USHORT ReservedFormatInfo2Bits : 2; }; USHORT wFormatAndPictureInfoFlags; }; UINT width; UINT height; UCHAR BitDepthMinus8Luma; UCHAR BitDepthMinus8Chroma; UCHAR interp_filter; UCHAR Reserved8Bits; DXVA_PicEntry_VPx ref_frame_map[8]; UINT ref_frame_coded_width[8]; UINT ref_frame_coded_height[8]; DXVA_PicEntry_VPx frame_refs[3]; CHAR ref_frame_sign_bias[4]; CHAR filter_level; CHAR sharpness_level; union { struct { UCHAR mode_ref_delta_enabled : 1; UCHAR mode_ref_delta_update : 1; UCHAR use_prev_in_find_mv_refs : 1; UCHAR ReservedControlInfo5Bits : 5; }; UCHAR wControlInfoFlags; }; CHAR ref_deltas[4]; CHAR mode_deltas[2]; SHORT base_qindex; CHAR y_dc_delta_q; CHAR uv_dc_delta_q; CHAR uv_ac_delta_q; DXVA_segmentation_VP9 stVP9Segments; UCHAR log2_tile_cols; UCHAR log2_tile_rows; USHORT uncompressed_header_size_byte_aligned; USHORT first_partition_size; USHORT Reserved16Bits; UINT Reserved32Bits; UINT StatusReportFeedbackNumber; } DXVA_PicParams_VP9, *LPDXVA_PicParams_VP9; typedef struct _segmentation_VP8 { union { struct { UCHAR segmentation_enabled : 1; UCHAR update_mb_segmentation_map : 1; UCHAR update_mb_segmentation_data : 1; UCHAR mb_segement_abs_delta : 1; UCHAR ReservedSegmentFlags4Bits : 4; }; UCHAR wSegmentFlags; }; CHAR segment_feature_data[2][4]; UCHAR mb_segment_tree_probs[3]; } DXVA_segmentation_VP8; typedef struct _DXVA_PicParams_VP8 { UINT first_part_size; UINT width; UINT height; DXVA_PicEntry_VPx CurrPic; union { struct { UCHAR frame_type : 1; UCHAR version : 3; UCHAR show_frame : 1; UCHAR clamp_type : 1; UCHAR ReservedFrameTag3Bits : 2; }; UCHAR wFrameTagFlags; }; DXVA_segmentation_VP8 stVP8Segments; UCHAR filter_type; UCHAR filter_level; UCHAR sharpness_level; UCHAR mode_ref_lf_delta_enabled; UCHAR mode_ref_lf_delta_update; CHAR ref_lf_deltas[4]; CHAR mode_lf_deltas[4]; UCHAR log2_nbr_of_dct_partitions; UCHAR base_qindex; CHAR y1dc_delta_q; CHAR y2dc_delta_q; CHAR y2ac_delta_q; CHAR uvdc_delta_q; CHAR uvac_delta_q; DXVA_PicEntry_VPx alt_fb_idx; DXVA_PicEntry_VPx gld_fb_idx; DXVA_PicEntry_VPx lst_fb_idx; UCHAR ref_frame_sign_bias_golden; UCHAR ref_frame_sign_bias_altref; UCHAR refresh_entropy_probs; UCHAR vp8_coef_update_probs[4][8][3][11]; UCHAR mb_no_coeff_skip; UCHAR prob_skip_false; UCHAR prob_intra; UCHAR prob_last; UCHAR prob_golden; UCHAR intra_16x16_prob[4]; UCHAR intra_chroma_prob[3]; UCHAR vp8_mv_update_probs[2][19]; USHORT ReservedBits1; USHORT ReservedBits2; USHORT ReservedBits3; UINT StatusReportFeedbackNumber; } DXVA_PicParams_VP8, *LPDXVA_PicParams_VP8; typedef struct _DXVA_Slice_VPx_Short { UINT BSNALunitDataLocation; UINT SliceBytesInBuffer; USHORT wBadSliceChopping; } DXVA_Slice_VPx_Short, *LPDXVA_Slice_VPx_Short; typedef struct _DXVA_Status_VPx { UINT StatusReportFeedbackNumber; DXVA_PicEntry_VPx CurrPic; UCHAR bBufType; UCHAR bStatus; UCHAR bReserved8Bits; USHORT wNumMbsAffected; } DXVA_Status_VPx, *LPDXVA_Status_VPx; #define _DIRECTX_AV1_VA_ /* AV1 decoder GUIDs */ DEFINE_GUID(DXVA_ModeAV1_VLD_Profile0, 0xb8be4ccb, 0xcf53, 0x46ba, 0x8d, 0x59, 0xd6, 0xb8, 0xa6, 0xda, 0x5d, 0x2a); DEFINE_GUID(DXVA_ModeAV1_VLD_Profile1, 0x6936ff0f, 0x45b1, 0x4163, 0x9c, 0xc1, 0x64, 0x6e, 0xf6, 0x94, 0x61, 0x08); DEFINE_GUID(DXVA_ModeAV1_VLD_Profile2, 0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8); DEFINE_GUID(DXVA_ModeAV1_VLD_12bit_Profile2, 0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0); DEFINE_GUID(DXVA_ModeAV1_VLD_12bit_Profile2_420, 0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8); /* AV1 picture entry data structure */ typedef struct _DXVA_PicEntry_AV1 { UINT width; UINT height; INT wmmat[6]; __C89_NAMELESS union { __C89_NAMELESS struct { UCHAR wminvalid : 1; UCHAR wmtype : 2; UCHAR Reserved : 5; } __C89_NAMELESSSTRUCTNAME; UCHAR GlobalMotionFlags; } __C89_NAMELESSUNIONNAME; UCHAR Index; UINT16 Reserved16Bits; } DXVA_PicEntry_AV1, *LPDXVA_PicEntry_AV1; /* AV1 picture parameters data structure */ typedef struct _DXVA_PicParams_AV1 { UINT width; UINT height; UINT max_width; UINT max_height; UCHAR CurrPicTextureIndex; UCHAR superres_denom; UCHAR bitdepth; UCHAR seq_profile; struct { UCHAR cols; UCHAR rows; USHORT context_update_id; USHORT widths[64]; USHORT heights[64]; } tiles; union { __C89_NAMELESS struct { UINT use_128x128_superblock : 1; UINT intra_edge_filter : 1; UINT interintra_compound : 1; UINT masked_compound : 1; UINT warped_motion : 1; UINT dual_filter : 1; UINT jnt_comp : 1; UINT screen_content_tools : 1; UINT integer_mv : 1; UINT cdef : 1; UINT restoration : 1; UINT film_grain : 1; UINT intrabc : 1; UINT high_precision_mv : 1; UINT switchable_motion_mode : 1; UINT filter_intra : 1; UINT disable_frame_end_update_cdf : 1; UINT disable_cdf_update : 1; UINT reference_mode : 1; UINT skip_mode : 1; UINT reduced_tx_set : 1; UINT superres : 1; UINT tx_mode : 2; UINT use_ref_frame_mvs : 1; UINT enable_ref_frame_mvs : 1; UINT reference_frame_update : 1; UINT Reserved : 5; } __C89_NAMELESSSTRUCTNAME; UINT32 CodingParamToolFlags; } coding; union { __C89_NAMELESS struct { UCHAR frame_type : 2; UCHAR show_frame : 1; UCHAR showable_frame : 1; UCHAR subsampling_x : 1; UCHAR subsampling_y : 1; UCHAR mono_chrome : 1; UCHAR Reserved : 1; } __C89_NAMELESSSTRUCTNAME; UCHAR FormatAndPictureInfoFlags; } format; UCHAR primary_ref_frame; UCHAR order_hint; UCHAR order_hint_bits; DXVA_PicEntry_AV1 frame_refs[7]; UCHAR RefFrameMapTextureIndex[8]; struct { UCHAR filter_level[2]; UCHAR filter_level_u; UCHAR filter_level_v; UCHAR sharpness_level; __C89_NAMELESS union { __C89_NAMELESS struct { UCHAR mode_ref_delta_enabled : 1; UCHAR mode_ref_delta_update : 1; UCHAR delta_lf_multi : 1; UCHAR delta_lf_present : 1; UCHAR Reserved : 4; } __C89_NAMELESSSTRUCTNAME; UCHAR ControlFlags; } __C89_NAMELESSUNIONNAME; CHAR ref_deltas[8]; CHAR mode_deltas[2]; UCHAR delta_lf_res; UCHAR frame_restoration_type[3]; USHORT log2_restoration_unit_size[3]; UINT16 Reserved16Bits; } loop_filter; struct { __C89_NAMELESS union { __C89_NAMELESS struct { UCHAR delta_q_present : 1; UCHAR delta_q_res : 2; UCHAR Reserved : 5; } __C89_NAMELESSSTRUCTNAME; UCHAR ControlFlags; } __C89_NAMELESSUNIONNAME; UCHAR base_qindex; CHAR y_dc_delta_q; CHAR u_dc_delta_q; CHAR v_dc_delta_q; CHAR u_ac_delta_q; CHAR v_ac_delta_q; UCHAR qm_y; UCHAR qm_u; UCHAR qm_v; UINT16 Reserved16Bits; } quantization; struct { __C89_NAMELESS union { __C89_NAMELESS struct { UCHAR damping : 2; UCHAR bits : 2; UCHAR Reserved : 4; } __C89_NAMELESSSTRUCTNAME; UCHAR ControlFlags; } __C89_NAMELESSUNIONNAME; union { __C89_NAMELESS struct { UCHAR primary : 6; UCHAR secondary : 2; } __C89_NAMELESSSTRUCTNAME; UCHAR combined; } y_strengths[8]; union { __C89_NAMELESS struct { UCHAR primary : 6; UCHAR secondary : 2; } __C89_NAMELESSSTRUCTNAME; UCHAR combined; } uv_strengths[8]; } cdef; UCHAR interp_filter; struct { __C89_NAMELESS union { __C89_NAMELESS struct { UCHAR enabled : 1; UCHAR update_map : 1; UCHAR update_data : 1; UCHAR temporal_update : 1; UCHAR Reserved : 4; } __C89_NAMELESSSTRUCTNAME; UCHAR ControlFlags; } __C89_NAMELESSUNIONNAME; UCHAR Reserved24Bits[3]; union { __C89_NAMELESS struct { UCHAR alt_q : 1; UCHAR alt_lf_y_v : 1; UCHAR alt_lf_y_h : 1; UCHAR alt_lf_u : 1; UCHAR alt_lf_v : 1; UCHAR ref_frame : 1; UCHAR skip : 1; UCHAR globalmv : 1; } __C89_NAMELESSSTRUCTNAME; UCHAR mask; } feature_mask[8]; SHORT feature_data[8][8]; } segmentation; struct { __C89_NAMELESS union { __C89_NAMELESS struct { USHORT apply_grain : 1; USHORT scaling_shift_minus8 : 2; USHORT chroma_scaling_from_luma : 1; USHORT ar_coeff_lag : 2; USHORT ar_coeff_shift_minus6 : 2; USHORT grain_scale_shift : 2; USHORT overlap_flag : 1; USHORT clip_to_restricted_range : 1; USHORT matrix_coeff_is_identity : 1; USHORT Reserved : 3; } __C89_NAMELESSSTRUCTNAME; USHORT ControlFlags; } __C89_NAMELESSUNIONNAME; USHORT grain_seed; UCHAR scaling_points_y[14][2]; UCHAR num_y_points; UCHAR scaling_points_cb[10][2]; UCHAR num_cb_points; UCHAR scaling_points_cr[10][2]; UCHAR num_cr_points; UCHAR ar_coeffs_y[24]; UCHAR ar_coeffs_cb[25]; UCHAR ar_coeffs_cr[25]; UCHAR cb_mult; UCHAR cb_luma_mult; UCHAR cr_mult; UCHAR cr_luma_mult; UCHAR Reserved8Bits; SHORT cb_offset; SHORT cr_offset; } film_grain; UINT Reserved32Bits; UINT StatusReportFeedbackNumber; } DXVA_PicParams_AV1, *LPDXVA_PicParams_AV1; /* AV1 tile data structure */ typedef struct _DXVA_Tile_AV1 { UINT DataOffset; UINT DataSize; USHORT row; USHORT column; UINT16 Reserved16Bits; UCHAR anchor_frame; UCHAR Reserved8Bits; } DXVA_Tile_AV1, *LPDXVA_Tile_AV1; typedef struct _DXVA_Status_AV1 { UINT StatusReportFeedbackNumber; DXVA_PicEntry_AV1 CurrPic; UCHAR BufType; UCHAR Status; UCHAR Reserved8Bits; USHORT NumMbsAffected; } DXVA_Status_AV1, *LPDXVA_Status_AV1; #include typedef enum _DXVA_VideoChromaSubsampling { DXVA_VideoChromaSubsampling_Vertically_AlignedChromaPlanes = 0x1, DXVA_VideoChromaSubsampling_Vertically_Cosited = 0x2, DXVA_VideoChromaSubsampling_Horizontally_Cosited = 0x4, DXVA_VideoChromaSubsampling_ProgressiveChroma = 0x8, DXVA_VideoChromaSubsampling_Unknown = 0, DXVA_VideoChromaSubsampling_Cosited = DXVA_VideoChromaSubsampling_Vertically_AlignedChromaPlanes | DXVA_VideoChromaSubsampling_Vertically_Cosited | DXVA_VideoChromaSubsampling_Horizontally_Cosited, DXVA_VideoChromaSubsampling_DV_PAL = DXVA_VideoChromaSubsampling_Vertically_Cosited | DXVA_VideoChromaSubsampling_Horizontally_Cosited, DXVA_VideoChromaSubsampling_MPEG1 = DXVA_VideoChromaSubsampling_Vertically_AlignedChromaPlanes, DXVA_VideoChromaSubsampling_MPEG2 = DXVA_VideoChromaSubsampling_Vertically_AlignedChromaPlanes | DXVA_VideoChromaSubsampling_Horizontally_Cosited, } DXVA_VideoChromaSubsampling; typedef enum _DXVA_NominalRange { DXVA_NominalRange_Unknown = 0, DXVA_NominalRange_0_255 = 1, DXVA_NominalRange_16_235 = 2, DXVA_NominalRange_48_208 = 3, DXVA_NominalRange_Normal = DXVA_NominalRange_0_255, DXVA_NominalRange_Wide = DXVA_NominalRange_16_235, } DXVA_NominalRange; typedef enum _DXVA_VideoTransferMatrix { DXVA_VideoTransferMatrix_Unknown = 0, DXVA_VideoTransferMatrix_BT709 = 1, DXVA_VideoTransferMatrix_BT601 = 2, DXVA_VideoTransferMatrix_SMPTE240M = 3, } DXVA_VideoTransferMatrix; typedef enum _DXVA_VideoLighting { DXVA_VideoLighting_Unknown = 0, DXVA_VideoLighting_bright = 1, DXVA_VideoLighting_office = 2, DXVA_VideoLighting_dim = 3, DXVA_VideoLighting_dark = 4, } DXVA_VideoLighting; typedef enum _DXVA_VideoPrimaries { DXVA_VideoPrimaries_Unknown = 0, DXVA_VideoPrimaries_reserved = 1, DXVA_VideoPrimaries_BT709 = 2, DXVA_VideoPrimaries_BT470_2_SysM = 3, DXVA_VideoPrimaries_BT470_2_SysBG = 4, DXVA_VideoPrimaries_SMPTE170M = 5, DXVA_VideoPrimaries_SMPTE420M = 6, DXVA_VideoPrimaries_EBU3213 = 7, DXVA_VideoPrimaries_SMPTE_C = 8, } DXVA_VideoPrimaries; typedef enum _DXVA_VideoTransferFunction { DXVA_VideoTransFunc_Unknown = 0, DXVA_VideoTransFunc_10 = 1, DXVA_VideoTransFunc_18 = 2, DXVA_VideoTransFunc_20 = 3, DXVA_VideoTransFunc_22 = 4, DXVA_VideoTransFunc_22_709 = 5, DXVA_VideoTransFunc_22_240M = 6, DXVA_VideoTransFunc_22_8bit_sRGB = 7, DXVA_VideoTransFunc_28 = 8, } DXVA_VideoTransferFunction; typedef struct _DXVA_ExtendedFormat { UINT SampleFormat : 8; UINT VideoChromaSubsampling : 4; DXVA_NominalRange NominalRange : 3; DXVA_VideoTransferMatrix VideoTransferMatrix : 3; DXVA_VideoLighting VideoLighting : 4; DXVA_VideoPrimaries VideoPrimaries : 5; DXVA_VideoTransferFunction VideoTransferFunction : 5; } DXVA_ExtendedFormat; #ifdef __cplusplus } #endif #endif /* __WINE_DXVA_H */ dxvk-0~git20220822.9df86f2/dxva2api.h000066400000000000000000002036651430055512200167020ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxva2api.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxva2api_h__ #define __dxva2api_h__ /* Forward declarations */ #ifndef __IDirect3DDeviceManager9_FWD_DEFINED__ #define __IDirect3DDeviceManager9_FWD_DEFINED__ typedef interface IDirect3DDeviceManager9 IDirect3DDeviceManager9; #ifdef __cplusplus interface IDirect3DDeviceManager9; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoAccelerationService_FWD_DEFINED__ #define __IDirectXVideoAccelerationService_FWD_DEFINED__ typedef interface IDirectXVideoAccelerationService IDirectXVideoAccelerationService; #ifdef __cplusplus interface IDirectXVideoAccelerationService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoDecoderService_FWD_DEFINED__ #define __IDirectXVideoDecoderService_FWD_DEFINED__ typedef interface IDirectXVideoDecoderService IDirectXVideoDecoderService; #ifdef __cplusplus interface IDirectXVideoDecoderService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoDecoder_FWD_DEFINED__ #define __IDirectXVideoDecoder_FWD_DEFINED__ typedef interface IDirectXVideoDecoder IDirectXVideoDecoder; #ifdef __cplusplus interface IDirectXVideoDecoder; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoProcessorService_FWD_DEFINED__ #define __IDirectXVideoProcessorService_FWD_DEFINED__ typedef interface IDirectXVideoProcessorService IDirectXVideoProcessorService; #ifdef __cplusplus interface IDirectXVideoProcessorService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoProcessor_FWD_DEFINED__ #define __IDirectXVideoProcessor_FWD_DEFINED__ typedef interface IDirectXVideoProcessor IDirectXVideoProcessor; #ifdef __cplusplus interface IDirectXVideoProcessor; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoMemoryConfiguration_FWD_DEFINED__ #define __IDirectXVideoMemoryConfiguration_FWD_DEFINED__ typedef interface IDirectXVideoMemoryConfiguration IDirectXVideoMemoryConfiguration; #ifdef __cplusplus interface IDirectXVideoMemoryConfiguration; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif #if 0 typedef DWORD IDirect3DDevice9; typedef DWORD IDirect3DSurface9; typedef DWORD D3DFORMAT; typedef DWORD D3DPOOL; #endif DEFINE_GUID(DXVA2_ModeMPEG2_MoComp, 0xe6a9f44b, 0x61b0,0x4563, 0x9e,0xa4,0x63,0xd2,0xa3,0xc6,0xfe,0x66); #define DXVA2_ModeMPEG2_MOCOMP DXVA2_ModeMPEG2_MoComp DEFINE_GUID(DXVA2_ModeMPEG2_IDCT, 0xbf22ad00, 0x03ea,0x4690, 0x80,0x77,0x47,0x33,0x46,0x20,0x9b,0x7e); DEFINE_GUID(DXVA2_ModeMPEG2_VLD, 0xee27417f, 0x5e28,0x4e65, 0xbe,0xea,0x1d,0x26,0xb5,0x08,0xad,0xc9); DEFINE_GUID(DXVA2_ModeMPEG1_VLD, 0x6f3ec719, 0x3735,0x42cc, 0x80,0x63,0x65,0xcc,0x3c,0xb3,0x66,0x16); DEFINE_GUID(DXVA2_ModeMPEG2and1_VLD, 0x86695f12, 0x340e,0x4f04, 0x9f,0xd3,0x92,0x53,0xdd,0x32,0x74,0x60); DEFINE_GUID(DXVA2_ModeH264_A, 0x1b81be64, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_MoComp_NoFGT DXVA2_ModeH264_A DEFINE_GUID(DXVA2_ModeH264_B, 0x1b81be65, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_MoComp_FGT DXVA2_ModeH264_B DEFINE_GUID(DXVA2_ModeH264_C, 0x1b81be66, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_IDCT_NoFGT DXVA2_ModeH264_C DEFINE_GUID(DXVA2_ModeH264_D, 0x1b81be67, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_IDCT_FGT DXVA2_ModeH264_D DEFINE_GUID(DXVA2_ModeH264_E, 0x1b81be68, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_VLD_NoFGT DXVA2_ModeH264_E DEFINE_GUID(DXVA2_ModeH264_F, 0x1b81be69, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeH264_VLD_FGT DXVA2_ModeH264_F DEFINE_GUID(DXVA2_ModeH264_VLD_WithFMOASO_NoFGT, 0xd5f04ff9, 0x3418,0x45d8, 0x95,0x61,0x32,0xa7,0x6a,0xae,0x2d,0xdd); DEFINE_GUID(DXVA2_ModeH264_VLD_Stereo_Progressive_NoFGT, 0xd79be8da, 0x0cf1,0x4c81, 0xb8,0x2a,0x69,0xa4,0xe2,0x36,0xf4,0x3d); DEFINE_GUID(DXVA2_ModeH264_VLD_Stereo_NoFGT, 0xf9aaccbb, 0xc2b6,0x4cfc, 0x87,0x79,0x57,0x07,0xb1,0x76,0x05,0x52); DEFINE_GUID(DXVA2_ModeH264_VLD_Multiview_NoFGT, 0x705b9d82, 0x76cf,0x49d6, 0xb7,0xe6,0xac,0x88,0x72,0xdb,0x01,0x3c); DEFINE_GUID(DXVA2_ModeWMV8_A, 0x1b81be80, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeWMV8_PostProc DXVA2_ModeWMV8_A DEFINE_GUID(DXVA2_ModeWMV8_B, 0x1b81be81, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeWMV8_MoComp DXVA2_ModeWMV8_B DEFINE_GUID(DXVA2_ModeWMV9_A, 0x1b81be90, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeWMV9_PostProc DXVA2_ModeWMV9_A DEFINE_GUID(DXVA2_ModeWMV9_B, 0x1b81be91, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeWMV9_MoComp DXVA2_ModeWMV9_B DEFINE_GUID(DXVA2_ModeWMV9_C, 0x1b81be94, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeWMV9_IDCT DXVA2_ModeWMV9_C DEFINE_GUID(DXVA2_ModeVC1_A, 0x1b81beA0, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeVC1_PostProc DXVA2_ModeVC1_A DEFINE_GUID(DXVA2_ModeVC1_B, 0x1b81beA1, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeVC1_MoComp DXVA2_ModeVC1_B DEFINE_GUID(DXVA2_ModeVC1_C, 0x1b81beA2, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeVC1_IDCT DXVA2_ModeVC1_C DEFINE_GUID(DXVA2_ModeVC1_D, 0x1b81beA3, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); #define DXVA2_ModeVC1_VLD DXVA2_ModeVC1_D DEFINE_GUID(DXVA2_ModeVC1_D2010, 0x1b81bea4, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); DEFINE_GUID(DXVA2_NoEncrypt, 0x1b81bed0, 0xa0c7,0x11d3, 0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5); DEFINE_GUID(DXVA2_VideoProcProgressiveDevice, 0x5a54a0c9, 0xc7ec,0x4bd9, 0x8e,0xde,0xf3,0xc7,0x5d,0xc4,0x39,0x3b); DEFINE_GUID(DXVA2_VideoProcBobDevice, 0x335aa36e, 0x7884,0x43a4, 0x9c,0x91,0x7f,0x87,0xfa,0xf3,0xe3,0x7e); DEFINE_GUID(DXVA2_VideoProcSoftwareDevice, 0x4553d47f, 0xee7e,0x4e3f, 0x94,0x75,0xdb,0xf1,0x37,0x6c,0x48,0x10); DEFINE_GUID(DXVA2_ModeMPEG4pt2_VLD_Simple, 0xefd64d74, 0xc9e8,0x41d7, 0xa5,0xe9,0xe9,0xb0,0xe3,0x9f,0xa3,0x19); DEFINE_GUID(DXVA2_ModeMPEG4pt2_VLD_AdvSimple_NoGMC, 0xed418a9f, 0x010d,0x4eda, 0x9a,0xe3,0x9a,0x65,0x35,0x8d,0x8d,0x2e); DEFINE_GUID(DXVA2_ModeMPEG4pt2_VLD_AdvSimple_GMC, 0xab998b5b, 0x4258,0x44a9, 0x9f,0xeb,0x94,0xe5,0x97,0xa6,0xba,0xae); DEFINE_GUID(DXVA2_ModeHEVC_VLD_Main, 0x5b11d51b, 0x2f4c,0x4452, 0xbc,0xc3,0x09,0xf2,0xa1,0x16,0x0c,0xc0); DEFINE_GUID(DXVA2_ModeHEVC_VLD_Main10, 0x107af0e0, 0xef1a,0x4d19, 0xab,0xa8,0x67,0xa1,0x63,0x07,0x3d,0x13); DEFINE_GUID(DXVA2_ModeVP9_VLD_Profile0, 0x463707f8, 0xa1d0,0x4585, 0x87,0x6d,0x83,0xaa,0x6d,0x60,0xb8,0x9e); DEFINE_GUID(DXVA2_ModeVP9_VLD_10bit_Profile2, 0xa4c749ef, 0x6ecf,0x48aa, 0x84,0x48,0x50,0xa7,0xa1,0x16,0x5f,0xf7); DEFINE_GUID(DXVA2_ModeVP8_VLD, 0x90b899ea, 0x3a62,0x4705, 0x88,0xb3,0x8d,0xf0,0x4b,0x27,0x44,0xe7); #ifndef REFERENCE_TIME_DEFINED #define REFERENCE_TIME_DEFINED typedef LONGLONG REFERENCE_TIME; #endif #define DXVA2_E_NOT_INITIALIZED ((HRESULT)0x80041000) #define DXVA2_E_NEW_VIDEO_DEVICE ((HRESULT)0x80041001) #define DXVA2_E_VIDEO_DEVICE_LOCKED ((HRESULT)0x80041002) #define DXVA2_E_NOT_AVAILABLE ((HRESULT)0x80041003) enum { DXVA2_PictureParametersBufferType = 0, DXVA2_MacroBlockControlBufferType = 1, DXVA2_ResidualDifferenceBufferType = 2, DXVA2_DeblockingControlBufferType = 3, DXVA2_InverseQuantizationMatrixBufferType = 4, DXVA2_SliceControlBufferType = 5, DXVA2_BitStreamDateBufferType = 6, DXVA2_MotionVectorBuffer = 7, DXVA2_FilmGrainBuffer = 8 }; enum { DXVA2_VideoDecoderRenderTarget = 0, DXVA2_VideoProcessorRenderTarget = 1, DXVA2_VideoSoftwareRenderTarget = 2 }; typedef struct _DXVA2_ExtendedFormat { __C89_NAMELESS union { __C89_NAMELESS struct { UINT SampleFormat : 8; UINT VideoChromaSubsampling : 4; UINT NominalRange : 3; UINT VideoTransferMatrix : 3; UINT VideoLighting : 4; UINT VideoPrimaries : 5; UINT VideoTransferFunction : 5; } __C89_NAMELESSSTRUCTNAME; UINT value; } __C89_NAMELESSUNIONNAME; } DXVA2_ExtendedFormat; typedef enum _DXVA2_SampleFormat { DXVA2_SampleFormatMask = 0xff, DXVA2_SampleUnknown = 0, DXVA2_SampleProgressiveFrame = 2, DXVA2_SampleFieldInterleavedEvenFirst = 3, DXVA2_SampleFieldInterleavedOddFirst = 4, DXVA2_SampleFieldSingleEven = 5, DXVA2_SampleFieldSingleOdd = 6, DXVA2_SampleSubStream = 7 } DXVA2_SampleFormat; typedef enum _DXVA2_VideoChromaSubSampling { DXVA2_VideoChromaSubsamplingMask = 0xf, DXVA2_VideoChromaSubsampling_Unknown = 0, DXVA2_VideoChromaSubsampling_ProgressiveChroma = 0x8, DXVA2_VideoChromaSubsampling_Horizontally_Cosited = 0x4, DXVA2_VideoChromaSubsampling_Vertically_Cosited = 0x2, DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes = 0x1, DXVA2_VideoChromaSubsampling_MPEG2 = DXVA2_VideoChromaSubsampling_Horizontally_Cosited | DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes, DXVA2_VideoChromaSubsampling_MPEG1 = DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes, DXVA2_VideoChromaSubsampling_DV_PAL = DXVA2_VideoChromaSubsampling_Horizontally_Cosited | DXVA2_VideoChromaSubsampling_Vertically_Cosited, DXVA2_VideoChromaSubsampling_Cosited = (DXVA2_VideoChromaSubsampling_Horizontally_Cosited | DXVA2_VideoChromaSubsampling_Vertically_Cosited) | DXVA2_VideoChromaSubsampling_Vertically_AlignedChromaPlanes } DXVA2_VideoChromaSubSampling; typedef enum _DXVA2_NominalRange { DXVA2_NominalRangeMask = 0x7, DXVA2_NominalRange_Unknown = 0, DXVA2_NominalRange_Normal = 1, DXVA2_NominalRange_Wide = 2, DXVA2_NominalRange_0_255 = 1, DXVA2_NominalRange_16_235 = 2, DXVA2_NominalRange_48_208 = 3 } DXVA2_NominalRange; typedef enum _DXVA2_VideoTransferMatrix { DXVA2_VideoTransferMatrixMask = 0x7, DXVA2_VideoTransferMatrix_Unknown = 0, DXVA2_VideoTransferMatrix_BT709 = 1, DXVA2_VideoTransferMatrix_BT601 = 2, DXVA2_VideoTransferMatrix_SMPTE240M = 3 } DXVA2_VideoTransferMatrix; typedef enum _DXVA2_VideoLighting { DXVA2_VideoLightingMask = 0xf, DXVA2_VideoLighting_Unknown = 0, DXVA2_VideoLighting_bright = 1, DXVA2_VideoLighting_office = 2, DXVA2_VideoLighting_dim = 3, DXVA2_VideoLighting_dark = 4 } DXVA2_VideoLighting; typedef enum _DXVA2_VideoPrimaries { DXVA2_VideoPrimariesMask = 0x1f, DXVA2_VideoPrimaries_Unknown = 0, DXVA2_VideoPrimaries_reserved = 1, DXVA2_VideoPrimaries_BT709 = 2, DXVA2_VideoPrimaries_BT470_2_SysM = 3, DXVA2_VideoPrimaries_BT470_2_SysBG = 4, DXVA2_VideoPrimaries_SMPTE170M = 5, DXVA2_VideoPrimaries_SMPTE240M = 6, DXVA2_VideoPrimaries_EBU3213 = 7, DXVA2_VideoPrimaries_SMPTE_C = 8 } DXVA2_VideoPrimaries; typedef enum _DXVA2_VideoTransferFunction { DXVA2_VideoTransFuncMask = 0x1f, DXVA2_VideoTransFunc_Unknown = 0, DXVA2_VideoTransFunc_10 = 1, DXVA2_VideoTransFunc_18 = 2, DXVA2_VideoTransFunc_20 = 3, DXVA2_VideoTransFunc_22 = 4, DXVA2_VideoTransFunc_709 = 5, DXVA2_VideoTransFunc_240M = 6, DXVA2_VideoTransFunc_sRGB = 7, DXVA2_VideoTransFunc_28 = 8 } DXVA2_VideoTransferFunction; #define DXVA2_VideoTransFunc_22_709 DXVA2_VideoTransFunc_709 #define DXVA2_VideoTransFunc_22_240M DXVA2_VideoTransFunc_240M #define DXVA2_VideoTransFunc_22_8bit_sRGB DXVA2_VideoTransFunc_sRGB typedef struct _DXVA2_Frequency { UINT Numerator; UINT Denominator; } DXVA2_Frequency; typedef struct _DXVA2_ConfigPictureDecode { GUID guidConfigBitstreamEncryption; GUID guidConfigMBcontrolEncryption; GUID guidConfigResidDiffEncryption; UINT ConfigBitstreamRaw; UINT ConfigMBcontrolRasterOrder; UINT ConfigResidDiffHost; UINT ConfigSpatialResid8; UINT ConfigResid8Subtraction; UINT ConfigSpatialHost8or9Clipping; UINT ConfigSpatialResidInterleaved; UINT ConfigIntraResidUnsigned; UINT ConfigResidDiffAccelerator; UINT ConfigHostInverseScan; UINT ConfigSpecificIDCT; UINT Config4GroupedCoefs; UINT ConfigMinRenderTargetBuffCount; USHORT ConfigDecoderSpecific; } DXVA2_ConfigPictureDecode; typedef struct _DXVA2_VideoDesc { UINT SampleWidth; UINT SampleHeight; DXVA2_ExtendedFormat SampleFormat; D3DFORMAT Format; DXVA2_Frequency InputSampleFreq; DXVA2_Frequency OutputFrameFreq; UINT UABProtectionLevel; UINT Reserved; } DXVA2_VideoDesc; enum { DXVA2_DeinterlaceTech_Unknown = 0x0, DXVA2_DeinterlaceTech_BOBLineReplicate = 0x1, DXVA2_DeinterlaceTech_BOBVerticalStretch = 0x2, DXVA2_DeinterlaceTech_BOBVerticalStretch4Tap = 0x4, DXVA2_DeinterlaceTech_MedianFiltering = 0x8, DXVA2_DeinterlaceTech_EdgeFiltering = 0x10, DXVA2_DeinterlaceTech_FieldAdaptive = 0x20, DXVA2_DeinterlaceTech_PixelAdaptive = 0x40, DXVA2_DeinterlaceTech_MotionVectorSteered = 0x80, DXVA2_DeinterlaceTech_InverseTelecine = 0x100, DXVA2_DeinterlaceTech_Mask = 0x1ff }; enum { DXVA2_NoiseFilterLumaLevel = 1, DXVA2_NoiseFilterLumaThreshold = 2, DXVA2_NoiseFilterLumaRadius = 3, DXVA2_NoiseFilterChromaLevel = 4, DXVA2_NoiseFilterChromaThreshold = 5, DXVA2_NoiseFilterChromaRadius = 6, DXVA2_DetailFilterLumaLevel = 7, DXVA2_DetailFilterLumaThreshold = 8, DXVA2_DetailFilterLumaRadius = 9, DXVA2_DetailFilterChromaLevel = 10, DXVA2_DetailFilterChromaThreshold = 11, DXVA2_DetailFilterChromaRadius = 12 }; enum { DXVA2_NoiseFilterTech_Unsupported = 0, DXVA2_NoiseFilterTech_Unknown = 0x1, DXVA2_NoiseFilterTech_Median = 0x2, DXVA2_NoiseFilterTech_Temporal = 0x4, DXVA2_NoiseFilterTech_BlockNoise = 0x8, DXVA2_NoiseFilterTech_MosquitoNoise = 0x10, DXVA2_NoiseFilterTech_Mask = 0x1f }; enum { DXVA2_DetailFilterTech_Unsupported = 0, DXVA2_DetailFilterTech_Unknown = 0x1, DXVA2_DetailFilterTech_Edge = 0x2, DXVA2_DetailFilterTech_Sharpening = 0x4, DXVA2_DetailFilterTech_Mask = 0x7 }; enum { DXVA2_ProcAmp_None = 0x0, DXVA2_ProcAmp_Brightness = 0x1, DXVA2_ProcAmp_Contrast = 0x2, DXVA2_ProcAmp_Hue = 0x4, DXVA2_ProcAmp_Saturation = 0x8, DXVA2_ProcAmp_Mask = 0xf }; enum { DXVA2_VideoProcess_None = 0x0, DXVA2_VideoProcess_YUV2RGB = 0x1, DXVA2_VideoProcess_StretchX = 0x2, DXVA2_VideoProcess_StretchY = 0x4, DXVA2_VideoProcess_AlphaBlend = 0x8, DXVA2_VideoProcess_SubRects = 0x10, DXVA2_VideoProcess_SubStreams = 0x20, DXVA2_VideoProcess_SubStreamsExtended = 0x40, DXVA2_VideoProcess_YUV2RGBExtended = 0x80, DXVA2_VideoProcess_AlphaBlendExtended = 0x100, DXVA2_VideoProcess_Constriction = 0x200, DXVA2_VideoProcess_NoiseFilter = 0x400, DXVA2_VideoProcess_DetailFilter = 0x800, DXVA2_VideoProcess_PlanarAlpha = 0x1000, DXVA2_VideoProcess_LinearScaling = 0x2000, DXVA2_VideoProcess_GammaCompensated = 0x4000, DXVA2_VideoProcess_MaintainsOriginalFieldData = 0x8000, DXVA2_VideoProcess_Mask = 0xffff }; enum { DXVA2_VPDev_HardwareDevice = 0x1, DXVA2_VPDev_EmulatedDXVA1 = 0x2, DXVA2_VPDev_SoftwareDevice = 0x4, DXVA2_VPDev_Mask = 0x7 }; enum { DXVA2_SampleData_RFF = 0x1, DXVA2_SampleData_TFF = 0x2, DXVA2_SampleData_RFF_TFF_Present = 0x4, DXVA2_SampleData_Mask = 0xffff }; enum { DXVA2_DestData_RFF = 0x1, DXVA2_DestData_TFF = 0x2, DXVA2_DestData_RFF_TFF_Present = 0x4, DXVA2_DestData_Mask = 0xffff }; typedef struct _DXVA2_DecodeBufferDesc { DWORD CompressedBufferType; UINT BufferIndex; UINT DataOffset; UINT DataSize; UINT FirstMBaddress; UINT NumMBsInBuffer; UINT Width; UINT Height; UINT Stride; UINT ReservedBits; PVOID pvPVPState; } DXVA2_DecodeBufferDesc; typedef struct _DXVA2_AES_CTR_IV { UINT64 IV; UINT64 Count; } DXVA2_AES_CTR_IV; typedef struct _DXVA2_DecodeExtensionData { UINT Function; PVOID pPrivateInputData; UINT PrivateInputDataSize; PVOID pPrivateOutputData; UINT PrivateOutputDataSize; } DXVA2_DecodeExtensionData; typedef struct _DXVA2_DecodeExecuteParams { UINT NumCompBuffers; DXVA2_DecodeBufferDesc *pCompressedBuffers; DXVA2_DecodeExtensionData *pExtensionData; } DXVA2_DecodeExecuteParams; typedef struct _DXVA2_VideoProcessorCaps { UINT DeviceCaps; D3DPOOL InputPool; UINT NumForwardRefSamples; UINT NumBackwardRefSamples; UINT Reserved; UINT DeinterlaceTechnology; UINT ProcAmpControlCaps; UINT VideoProcessorOperations; UINT NoiseFilterTechnology; UINT DetailFilterTechnology; } DXVA2_VideoProcessorCaps; typedef struct _DXVA2_Fixed32 { __C89_NAMELESS union { __C89_NAMELESS struct { USHORT Fraction; SHORT Value; } __C89_NAMELESSSTRUCTNAME; LONG ll; } __C89_NAMELESSUNIONNAME; } DXVA2_Fixed32; typedef struct _DXVA2_ValueRange { DXVA2_Fixed32 MinValue; DXVA2_Fixed32 MaxValue; DXVA2_Fixed32 DefaultValue; DXVA2_Fixed32 StepSize; } DXVA2_ValueRange; typedef struct _DXVA2_AYUVSample8 { UCHAR Cr; UCHAR Cb; UCHAR Y; UCHAR Alpha; } DXVA2_AYUVSample8; typedef struct _DXVA2_AYUVSample16 { USHORT Cr; USHORT Cb; USHORT Y; USHORT Alpha; } DXVA2_AYUVSample16; typedef struct _DXVA2_ProcAmpValues { DXVA2_Fixed32 Brightness; DXVA2_Fixed32 Contrast; DXVA2_Fixed32 Hue; DXVA2_Fixed32 Saturation; } DXVA2_ProcAmpValues; typedef struct _DXVA2_FilterValues { DXVA2_Fixed32 Level; DXVA2_Fixed32 Threshold; DXVA2_Fixed32 Radius; } DXVA2_FilterValues; typedef struct _DXVA2_VideoProcessBltParams { REFERENCE_TIME TargetFrame; RECT TargetRect; SIZE ConstrictionSize; UINT StreamingFlags; DXVA2_AYUVSample16 BackgroundColor; DXVA2_ExtendedFormat DestFormat; DXVA2_ProcAmpValues ProcAmpValues; DXVA2_Fixed32 Alpha; DXVA2_FilterValues NoiseFilterLuma; DXVA2_FilterValues NoiseFilterChroma; DXVA2_FilterValues DetailFilterLuma; DXVA2_FilterValues DetailFilterChroma; DWORD DestData; } DXVA2_VideoProcessBltParams; #ifdef _D3D9_H_ typedef struct _DXVA2_VideoSample { REFERENCE_TIME Start; REFERENCE_TIME End; DXVA2_ExtendedFormat SampleFormat; IDirect3DSurface9 *SrcSurface; RECT SrcRect; RECT DstRect; DXVA2_AYUVSample8 Pal[16]; DXVA2_Fixed32 PlanarAlpha; DWORD SampleData; } DXVA2_VideoSample; typedef enum __WIDL_dxva2api_generated_name_0000000C { DXVA2_SurfaceType_DecoderRenderTarget = 0, DXVA2_SurfaceType_ProcessorRenderTarget = 1, DXVA2_SurfaceType_D3DRenderTargetTexture = 2 } DXVA2_SurfaceType; #ifndef __IDirect3DDeviceManager9_FWD_DEFINED__ #define __IDirect3DDeviceManager9_FWD_DEFINED__ typedef interface IDirect3DDeviceManager9 IDirect3DDeviceManager9; #ifdef __cplusplus interface IDirect3DDeviceManager9; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoAccelerationService_FWD_DEFINED__ #define __IDirectXVideoAccelerationService_FWD_DEFINED__ typedef interface IDirectXVideoAccelerationService IDirectXVideoAccelerationService; #ifdef __cplusplus interface IDirectXVideoAccelerationService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoDecoderService_FWD_DEFINED__ #define __IDirectXVideoDecoderService_FWD_DEFINED__ typedef interface IDirectXVideoDecoderService IDirectXVideoDecoderService; #ifdef __cplusplus interface IDirectXVideoDecoderService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoProcessorService_FWD_DEFINED__ #define __IDirectXVideoProcessorService_FWD_DEFINED__ typedef interface IDirectXVideoProcessorService IDirectXVideoProcessorService; #ifdef __cplusplus interface IDirectXVideoProcessorService; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoDecoder_FWD_DEFINED__ #define __IDirectXVideoDecoder_FWD_DEFINED__ typedef interface IDirectXVideoDecoder IDirectXVideoDecoder; #ifdef __cplusplus interface IDirectXVideoDecoder; #endif /* __cplusplus */ #endif #ifndef __IDirectXVideoProcessor_FWD_DEFINED__ #define __IDirectXVideoProcessor_FWD_DEFINED__ typedef interface IDirectXVideoProcessor IDirectXVideoProcessor; #ifdef __cplusplus interface IDirectXVideoProcessor; #endif /* __cplusplus */ #endif /***************************************************************************** * IDirect3DDeviceManager9 interface */ #ifndef __IDirect3DDeviceManager9_INTERFACE_DEFINED__ #define __IDirect3DDeviceManager9_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirect3DDeviceManager9, 0xa0cade0f, 0x06d5, 0x4cf4, 0xa1,0xc7, 0xf3,0xcd,0xd7,0x25,0xaa,0x75); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("a0cade0f-06d5-4cf4-a1c7-f3cdd725aa75") IDirect3DDeviceManager9 : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ResetDevice( IDirect3DDevice9 *pDevice, UINT resetToken) = 0; virtual HRESULT STDMETHODCALLTYPE OpenDeviceHandle( HANDLE *phDevice) = 0; virtual HRESULT STDMETHODCALLTYPE CloseDeviceHandle( HANDLE hDevice) = 0; virtual HRESULT STDMETHODCALLTYPE TestDevice( HANDLE hDevice) = 0; virtual HRESULT STDMETHODCALLTYPE LockDevice( HANDLE hDevice, IDirect3DDevice9 **ppDevice, WINBOOL fBlock) = 0; virtual HRESULT STDMETHODCALLTYPE UnlockDevice( HANDLE hDevice, WINBOOL fSaveState) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoService( HANDLE hDevice, REFIID riid, void **ppService) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirect3DDeviceManager9, 0xa0cade0f, 0x06d5, 0x4cf4, 0xa1,0xc7, 0xf3,0xcd,0xd7,0x25,0xaa,0x75) #endif #else typedef struct IDirect3DDeviceManager9Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirect3DDeviceManager9 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirect3DDeviceManager9 *This); ULONG (STDMETHODCALLTYPE *Release)( IDirect3DDeviceManager9 *This); /*** IDirect3DDeviceManager9 methods ***/ HRESULT (STDMETHODCALLTYPE *ResetDevice)( IDirect3DDeviceManager9 *This, IDirect3DDevice9 *pDevice, UINT resetToken); HRESULT (STDMETHODCALLTYPE *OpenDeviceHandle)( IDirect3DDeviceManager9 *This, HANDLE *phDevice); HRESULT (STDMETHODCALLTYPE *CloseDeviceHandle)( IDirect3DDeviceManager9 *This, HANDLE hDevice); HRESULT (STDMETHODCALLTYPE *TestDevice)( IDirect3DDeviceManager9 *This, HANDLE hDevice); HRESULT (STDMETHODCALLTYPE *LockDevice)( IDirect3DDeviceManager9 *This, HANDLE hDevice, IDirect3DDevice9 **ppDevice, WINBOOL fBlock); HRESULT (STDMETHODCALLTYPE *UnlockDevice)( IDirect3DDeviceManager9 *This, HANDLE hDevice, WINBOOL fSaveState); HRESULT (STDMETHODCALLTYPE *GetVideoService)( IDirect3DDeviceManager9 *This, HANDLE hDevice, REFIID riid, void **ppService); END_INTERFACE } IDirect3DDeviceManager9Vtbl; interface IDirect3DDeviceManager9 { CONST_VTBL IDirect3DDeviceManager9Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirect3DDeviceManager9_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirect3DDeviceManager9_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirect3DDeviceManager9_Release(This) (This)->lpVtbl->Release(This) /*** IDirect3DDeviceManager9 methods ***/ #define IDirect3DDeviceManager9_ResetDevice(This,pDevice,resetToken) (This)->lpVtbl->ResetDevice(This,pDevice,resetToken) #define IDirect3DDeviceManager9_OpenDeviceHandle(This,phDevice) (This)->lpVtbl->OpenDeviceHandle(This,phDevice) #define IDirect3DDeviceManager9_CloseDeviceHandle(This,hDevice) (This)->lpVtbl->CloseDeviceHandle(This,hDevice) #define IDirect3DDeviceManager9_TestDevice(This,hDevice) (This)->lpVtbl->TestDevice(This,hDevice) #define IDirect3DDeviceManager9_LockDevice(This,hDevice,ppDevice,fBlock) (This)->lpVtbl->LockDevice(This,hDevice,ppDevice,fBlock) #define IDirect3DDeviceManager9_UnlockDevice(This,hDevice,fSaveState) (This)->lpVtbl->UnlockDevice(This,hDevice,fSaveState) #define IDirect3DDeviceManager9_GetVideoService(This,hDevice,riid,ppService) (This)->lpVtbl->GetVideoService(This,hDevice,riid,ppService) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirect3DDeviceManager9_QueryInterface(IDirect3DDeviceManager9* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirect3DDeviceManager9_AddRef(IDirect3DDeviceManager9* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirect3DDeviceManager9_Release(IDirect3DDeviceManager9* This) { return This->lpVtbl->Release(This); } /*** IDirect3DDeviceManager9 methods ***/ static FORCEINLINE HRESULT IDirect3DDeviceManager9_ResetDevice(IDirect3DDeviceManager9* This,IDirect3DDevice9 *pDevice,UINT resetToken) { return This->lpVtbl->ResetDevice(This,pDevice,resetToken); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_OpenDeviceHandle(IDirect3DDeviceManager9* This,HANDLE *phDevice) { return This->lpVtbl->OpenDeviceHandle(This,phDevice); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_CloseDeviceHandle(IDirect3DDeviceManager9* This,HANDLE hDevice) { return This->lpVtbl->CloseDeviceHandle(This,hDevice); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_TestDevice(IDirect3DDeviceManager9* This,HANDLE hDevice) { return This->lpVtbl->TestDevice(This,hDevice); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_LockDevice(IDirect3DDeviceManager9* This,HANDLE hDevice,IDirect3DDevice9 **ppDevice,WINBOOL fBlock) { return This->lpVtbl->LockDevice(This,hDevice,ppDevice,fBlock); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_UnlockDevice(IDirect3DDeviceManager9* This,HANDLE hDevice,WINBOOL fSaveState) { return This->lpVtbl->UnlockDevice(This,hDevice,fSaveState); } static FORCEINLINE HRESULT IDirect3DDeviceManager9_GetVideoService(IDirect3DDeviceManager9* This,HANDLE hDevice,REFIID riid,void **ppService) { return This->lpVtbl->GetVideoService(This,hDevice,riid,ppService); } #endif #endif #endif #endif /* __IDirect3DDeviceManager9_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoAccelerationService interface */ #ifndef __IDirectXVideoAccelerationService_INTERFACE_DEFINED__ #define __IDirectXVideoAccelerationService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoAccelerationService, 0xfc51a550, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fc51a550-d5e7-11d9-af55-00054e43ff02") IDirectXVideoAccelerationService : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateSurface( UINT width, UINT height, UINT backBuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **ppSurface, HANDLE *pSharedHandle) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoAccelerationService, 0xfc51a550, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02) #endif #else typedef struct IDirectXVideoAccelerationServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoAccelerationService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoAccelerationService *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoAccelerationService *This); /*** IDirectXVideoAccelerationService methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDirectXVideoAccelerationService *This, UINT width, UINT height, UINT backBuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **ppSurface, HANDLE *pSharedHandle); END_INTERFACE } IDirectXVideoAccelerationServiceVtbl; interface IDirectXVideoAccelerationService { CONST_VTBL IDirectXVideoAccelerationServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoAccelerationService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoAccelerationService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoAccelerationService_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoAccelerationService methods ***/ #define IDirectXVideoAccelerationService_CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) (This)->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoAccelerationService_QueryInterface(IDirectXVideoAccelerationService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoAccelerationService_AddRef(IDirectXVideoAccelerationService* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoAccelerationService_Release(IDirectXVideoAccelerationService* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoAccelerationService methods ***/ static FORCEINLINE HRESULT IDirectXVideoAccelerationService_CreateSurface(IDirectXVideoAccelerationService* This,UINT width,UINT height,UINT backBuffers,D3DFORMAT format,D3DPOOL pool,DWORD usage,DWORD dxvaType,IDirect3DSurface9 **ppSurface,HANDLE *pSharedHandle) { return This->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle); } #endif #endif #endif #endif /* __IDirectXVideoAccelerationService_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoDecoderService interface */ #ifndef __IDirectXVideoDecoderService_INTERFACE_DEFINED__ #define __IDirectXVideoDecoderService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoDecoderService, 0xfc51a551, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fc51a551-d5e7-11d9-af55-00054e43ff02") IDirectXVideoDecoderService : public IDirectXVideoAccelerationService { virtual HRESULT STDMETHODCALLTYPE GetDecoderDeviceGuids( UINT *count, GUID **pGuids) = 0; virtual HRESULT STDMETHODCALLTYPE GetDecoderRenderTargets( REFGUID guid, UINT *pCount, D3DFORMAT **pFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetDecoderConfigurations( REFGUID guid, const DXVA2_VideoDesc *pVideoDesc, void *pReserved, UINT *pCount, DXVA2_ConfigPictureDecode **ppConfigs) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder( REFGUID guid, const DXVA2_VideoDesc *pVideoDesc, const DXVA2_ConfigPictureDecode *pConfig, IDirect3DSurface9 **ppDecoderRenderTargets, UINT NumSurfaces, IDirectXVideoDecoder **ppDecode) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoDecoderService, 0xfc51a551, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02) #endif #else typedef struct IDirectXVideoDecoderServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoDecoderService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoDecoderService *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoDecoderService *This); /*** IDirectXVideoAccelerationService methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDirectXVideoDecoderService *This, UINT width, UINT height, UINT backBuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **ppSurface, HANDLE *pSharedHandle); /*** IDirectXVideoDecoderService methods ***/ HRESULT (STDMETHODCALLTYPE *GetDecoderDeviceGuids)( IDirectXVideoDecoderService *This, UINT *count, GUID **pGuids); HRESULT (STDMETHODCALLTYPE *GetDecoderRenderTargets)( IDirectXVideoDecoderService *This, REFGUID guid, UINT *pCount, D3DFORMAT **pFormats); HRESULT (STDMETHODCALLTYPE *GetDecoderConfigurations)( IDirectXVideoDecoderService *This, REFGUID guid, const DXVA2_VideoDesc *pVideoDesc, void *pReserved, UINT *pCount, DXVA2_ConfigPictureDecode **ppConfigs); HRESULT (STDMETHODCALLTYPE *CreateVideoDecoder)( IDirectXVideoDecoderService *This, REFGUID guid, const DXVA2_VideoDesc *pVideoDesc, const DXVA2_ConfigPictureDecode *pConfig, IDirect3DSurface9 **ppDecoderRenderTargets, UINT NumSurfaces, IDirectXVideoDecoder **ppDecode); END_INTERFACE } IDirectXVideoDecoderServiceVtbl; interface IDirectXVideoDecoderService { CONST_VTBL IDirectXVideoDecoderServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoDecoderService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoDecoderService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoDecoderService_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoAccelerationService methods ***/ #define IDirectXVideoDecoderService_CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) (This)->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) /*** IDirectXVideoDecoderService methods ***/ #define IDirectXVideoDecoderService_GetDecoderDeviceGuids(This,count,pGuids) (This)->lpVtbl->GetDecoderDeviceGuids(This,count,pGuids) #define IDirectXVideoDecoderService_GetDecoderRenderTargets(This,guid,pCount,pFormats) (This)->lpVtbl->GetDecoderRenderTargets(This,guid,pCount,pFormats) #define IDirectXVideoDecoderService_GetDecoderConfigurations(This,guid,pVideoDesc,pReserved,pCount,ppConfigs) (This)->lpVtbl->GetDecoderConfigurations(This,guid,pVideoDesc,pReserved,pCount,ppConfigs) #define IDirectXVideoDecoderService_CreateVideoDecoder(This,guid,pVideoDesc,pConfig,ppDecoderRenderTargets,NumSurfaces,ppDecode) (This)->lpVtbl->CreateVideoDecoder(This,guid,pVideoDesc,pConfig,ppDecoderRenderTargets,NumSurfaces,ppDecode) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoDecoderService_QueryInterface(IDirectXVideoDecoderService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoDecoderService_AddRef(IDirectXVideoDecoderService* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoDecoderService_Release(IDirectXVideoDecoderService* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoAccelerationService methods ***/ static FORCEINLINE HRESULT IDirectXVideoDecoderService_CreateSurface(IDirectXVideoDecoderService* This,UINT width,UINT height,UINT backBuffers,D3DFORMAT format,D3DPOOL pool,DWORD usage,DWORD dxvaType,IDirect3DSurface9 **ppSurface,HANDLE *pSharedHandle) { return This->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle); } /*** IDirectXVideoDecoderService methods ***/ static FORCEINLINE HRESULT IDirectXVideoDecoderService_GetDecoderDeviceGuids(IDirectXVideoDecoderService* This,UINT *count,GUID **pGuids) { return This->lpVtbl->GetDecoderDeviceGuids(This,count,pGuids); } static FORCEINLINE HRESULT IDirectXVideoDecoderService_GetDecoderRenderTargets(IDirectXVideoDecoderService* This,REFGUID guid,UINT *pCount,D3DFORMAT **pFormats) { return This->lpVtbl->GetDecoderRenderTargets(This,guid,pCount,pFormats); } static FORCEINLINE HRESULT IDirectXVideoDecoderService_GetDecoderConfigurations(IDirectXVideoDecoderService* This,REFGUID guid,const DXVA2_VideoDesc *pVideoDesc,void *pReserved,UINT *pCount,DXVA2_ConfigPictureDecode **ppConfigs) { return This->lpVtbl->GetDecoderConfigurations(This,guid,pVideoDesc,pReserved,pCount,ppConfigs); } static FORCEINLINE HRESULT IDirectXVideoDecoderService_CreateVideoDecoder(IDirectXVideoDecoderService* This,REFGUID guid,const DXVA2_VideoDesc *pVideoDesc,const DXVA2_ConfigPictureDecode *pConfig,IDirect3DSurface9 **ppDecoderRenderTargets,UINT NumSurfaces,IDirectXVideoDecoder **ppDecode) { return This->lpVtbl->CreateVideoDecoder(This,guid,pVideoDesc,pConfig,ppDecoderRenderTargets,NumSurfaces,ppDecode); } #endif #endif #endif #endif /* __IDirectXVideoDecoderService_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoDecoder interface */ #ifndef __IDirectXVideoDecoder_INTERFACE_DEFINED__ #define __IDirectXVideoDecoder_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoDecoder, 0xf2b0810a, 0xfd00, 0x43c9, 0x91,0x8c, 0xdf,0x94,0xe2,0xd8,0xef,0x7d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("f2b0810a-fd00-43c9-918c-df94e2d8ef7d") IDirectXVideoDecoder : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderService( IDirectXVideoDecoderService **ppService) = 0; virtual HRESULT STDMETHODCALLTYPE GetCreationParameters( GUID *pDeviceGuid, DXVA2_VideoDesc *pVideoDesc, DXVA2_ConfigPictureDecode *pConfig, IDirect3DSurface9 ***pDecoderRenderTargets, UINT *pNumSurfaces) = 0; virtual HRESULT STDMETHODCALLTYPE GetBuffer( UINT BufferType, void **ppBuffer, UINT *pBufferSize) = 0; virtual HRESULT STDMETHODCALLTYPE ReleaseBuffer( UINT BufferType) = 0; virtual HRESULT STDMETHODCALLTYPE BeginFrame( IDirect3DSurface9 *pRenderTarget, void *pvPVPData) = 0; virtual HRESULT STDMETHODCALLTYPE EndFrame( HANDLE *pHandleComplete) = 0; virtual HRESULT STDMETHODCALLTYPE Execute( const DXVA2_DecodeExecuteParams *pExecuteParams) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoDecoder, 0xf2b0810a, 0xfd00, 0x43c9, 0x91,0x8c, 0xdf,0x94,0xe2,0xd8,0xef,0x7d) #endif #else typedef struct IDirectXVideoDecoderVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoDecoder *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoDecoder *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoDecoder *This); /*** IDirectXVideoDecoder methods ***/ HRESULT (STDMETHODCALLTYPE *GetVideoDecoderService)( IDirectXVideoDecoder *This, IDirectXVideoDecoderService **ppService); HRESULT (STDMETHODCALLTYPE *GetCreationParameters)( IDirectXVideoDecoder *This, GUID *pDeviceGuid, DXVA2_VideoDesc *pVideoDesc, DXVA2_ConfigPictureDecode *pConfig, IDirect3DSurface9 ***pDecoderRenderTargets, UINT *pNumSurfaces); HRESULT (STDMETHODCALLTYPE *GetBuffer)( IDirectXVideoDecoder *This, UINT BufferType, void **ppBuffer, UINT *pBufferSize); HRESULT (STDMETHODCALLTYPE *ReleaseBuffer)( IDirectXVideoDecoder *This, UINT BufferType); HRESULT (STDMETHODCALLTYPE *BeginFrame)( IDirectXVideoDecoder *This, IDirect3DSurface9 *pRenderTarget, void *pvPVPData); HRESULT (STDMETHODCALLTYPE *EndFrame)( IDirectXVideoDecoder *This, HANDLE *pHandleComplete); HRESULT (STDMETHODCALLTYPE *Execute)( IDirectXVideoDecoder *This, const DXVA2_DecodeExecuteParams *pExecuteParams); END_INTERFACE } IDirectXVideoDecoderVtbl; interface IDirectXVideoDecoder { CONST_VTBL IDirectXVideoDecoderVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoDecoder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoDecoder_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoDecoder_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoDecoder methods ***/ #define IDirectXVideoDecoder_GetVideoDecoderService(This,ppService) (This)->lpVtbl->GetVideoDecoderService(This,ppService) #define IDirectXVideoDecoder_GetCreationParameters(This,pDeviceGuid,pVideoDesc,pConfig,pDecoderRenderTargets,pNumSurfaces) (This)->lpVtbl->GetCreationParameters(This,pDeviceGuid,pVideoDesc,pConfig,pDecoderRenderTargets,pNumSurfaces) #define IDirectXVideoDecoder_GetBuffer(This,BufferType,ppBuffer,pBufferSize) (This)->lpVtbl->GetBuffer(This,BufferType,ppBuffer,pBufferSize) #define IDirectXVideoDecoder_ReleaseBuffer(This,BufferType) (This)->lpVtbl->ReleaseBuffer(This,BufferType) #define IDirectXVideoDecoder_BeginFrame(This,pRenderTarget,pvPVPData) (This)->lpVtbl->BeginFrame(This,pRenderTarget,pvPVPData) #define IDirectXVideoDecoder_EndFrame(This,pHandleComplete) (This)->lpVtbl->EndFrame(This,pHandleComplete) #define IDirectXVideoDecoder_Execute(This,pExecuteParams) (This)->lpVtbl->Execute(This,pExecuteParams) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoDecoder_QueryInterface(IDirectXVideoDecoder* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoDecoder_AddRef(IDirectXVideoDecoder* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoDecoder_Release(IDirectXVideoDecoder* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoDecoder methods ***/ static FORCEINLINE HRESULT IDirectXVideoDecoder_GetVideoDecoderService(IDirectXVideoDecoder* This,IDirectXVideoDecoderService **ppService) { return This->lpVtbl->GetVideoDecoderService(This,ppService); } static FORCEINLINE HRESULT IDirectXVideoDecoder_GetCreationParameters(IDirectXVideoDecoder* This,GUID *pDeviceGuid,DXVA2_VideoDesc *pVideoDesc,DXVA2_ConfigPictureDecode *pConfig,IDirect3DSurface9 ***pDecoderRenderTargets,UINT *pNumSurfaces) { return This->lpVtbl->GetCreationParameters(This,pDeviceGuid,pVideoDesc,pConfig,pDecoderRenderTargets,pNumSurfaces); } static FORCEINLINE HRESULT IDirectXVideoDecoder_GetBuffer(IDirectXVideoDecoder* This,UINT BufferType,void **ppBuffer,UINT *pBufferSize) { return This->lpVtbl->GetBuffer(This,BufferType,ppBuffer,pBufferSize); } static FORCEINLINE HRESULT IDirectXVideoDecoder_ReleaseBuffer(IDirectXVideoDecoder* This,UINT BufferType) { return This->lpVtbl->ReleaseBuffer(This,BufferType); } static FORCEINLINE HRESULT IDirectXVideoDecoder_BeginFrame(IDirectXVideoDecoder* This,IDirect3DSurface9 *pRenderTarget,void *pvPVPData) { return This->lpVtbl->BeginFrame(This,pRenderTarget,pvPVPData); } static FORCEINLINE HRESULT IDirectXVideoDecoder_EndFrame(IDirectXVideoDecoder* This,HANDLE *pHandleComplete) { return This->lpVtbl->EndFrame(This,pHandleComplete); } static FORCEINLINE HRESULT IDirectXVideoDecoder_Execute(IDirectXVideoDecoder* This,const DXVA2_DecodeExecuteParams *pExecuteParams) { return This->lpVtbl->Execute(This,pExecuteParams); } #endif #endif #endif #endif /* __IDirectXVideoDecoder_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoProcessorService interface */ #ifndef __IDirectXVideoProcessorService_INTERFACE_DEFINED__ #define __IDirectXVideoProcessorService_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoProcessorService, 0xfc51a552, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("fc51a552-d5e7-11d9-af55-00054e43ff02") IDirectXVideoProcessorService : public IDirectXVideoAccelerationService { virtual HRESULT STDMETHODCALLTYPE RegisterVideoProcessorSoftwareDevice( void *pCallbacks) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorDeviceGuids( const DXVA2_VideoDesc *pVideoDesc, UINT *pCount, GUID **pGuids) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorRenderTargets( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, UINT *pCount, D3DFORMAT **pFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorSubStreamFormats( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT *pCount, D3DFORMAT **pFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, DXVA2_VideoProcessorCaps *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetProcAmpRange( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT ProcAmpCap, DXVA2_ValueRange *pRange) = 0; virtual HRESULT STDMETHODCALLTYPE GetFilterPropertyRange( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT renderTargetFormat, UINT FilterSetting, DXVA2_ValueRange *pRange) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor( REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT MaxNumSubStreams, IDirectXVideoProcessor **ppVidProcess) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoProcessorService, 0xfc51a552, 0xd5e7, 0x11d9, 0xaf,0x55, 0x00,0x05,0x4e,0x43,0xff,0x02) #endif #else typedef struct IDirectXVideoProcessorServiceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoProcessorService *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoProcessorService *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoProcessorService *This); /*** IDirectXVideoAccelerationService methods ***/ HRESULT (STDMETHODCALLTYPE *CreateSurface)( IDirectXVideoProcessorService *This, UINT width, UINT height, UINT backBuffers, D3DFORMAT format, D3DPOOL pool, DWORD usage, DWORD dxvaType, IDirect3DSurface9 **ppSurface, HANDLE *pSharedHandle); /*** IDirectXVideoProcessorService methods ***/ HRESULT (STDMETHODCALLTYPE *RegisterVideoProcessorSoftwareDevice)( IDirectXVideoProcessorService *This, void *pCallbacks); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorDeviceGuids)( IDirectXVideoProcessorService *This, const DXVA2_VideoDesc *pVideoDesc, UINT *pCount, GUID **pGuids); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorRenderTargets)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, UINT *pCount, D3DFORMAT **pFormats); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorSubStreamFormats)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT *pCount, D3DFORMAT **pFormats); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, DXVA2_VideoProcessorCaps *pCaps); HRESULT (STDMETHODCALLTYPE *GetProcAmpRange)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT ProcAmpCap, DXVA2_ValueRange *pRange); HRESULT (STDMETHODCALLTYPE *GetFilterPropertyRange)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT renderTargetFormat, UINT FilterSetting, DXVA2_ValueRange *pRange); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessor)( IDirectXVideoProcessorService *This, REFGUID VideoProcDeviceGuid, const DXVA2_VideoDesc *pVideoDesc, D3DFORMAT RenderTargetFormat, UINT MaxNumSubStreams, IDirectXVideoProcessor **ppVidProcess); END_INTERFACE } IDirectXVideoProcessorServiceVtbl; interface IDirectXVideoProcessorService { CONST_VTBL IDirectXVideoProcessorServiceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoProcessorService_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoProcessorService_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoProcessorService_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoAccelerationService methods ***/ #define IDirectXVideoProcessorService_CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) (This)->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle) /*** IDirectXVideoProcessorService methods ***/ #define IDirectXVideoProcessorService_RegisterVideoProcessorSoftwareDevice(This,pCallbacks) (This)->lpVtbl->RegisterVideoProcessorSoftwareDevice(This,pCallbacks) #define IDirectXVideoProcessorService_GetVideoProcessorDeviceGuids(This,pVideoDesc,pCount,pGuids) (This)->lpVtbl->GetVideoProcessorDeviceGuids(This,pVideoDesc,pCount,pGuids) #define IDirectXVideoProcessorService_GetVideoProcessorRenderTargets(This,VideoProcDeviceGuid,pVideoDesc,pCount,pFormats) (This)->lpVtbl->GetVideoProcessorRenderTargets(This,VideoProcDeviceGuid,pVideoDesc,pCount,pFormats) #define IDirectXVideoProcessorService_GetVideoProcessorSubStreamFormats(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCount,pFormats) (This)->lpVtbl->GetVideoProcessorSubStreamFormats(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCount,pFormats) #define IDirectXVideoProcessorService_GetVideoProcessorCaps(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCaps) #define IDirectXVideoProcessorService_GetProcAmpRange(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,ProcAmpCap,pRange) (This)->lpVtbl->GetProcAmpRange(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,ProcAmpCap,pRange) #define IDirectXVideoProcessorService_GetFilterPropertyRange(This,VideoProcDeviceGuid,pVideoDesc,renderTargetFormat,FilterSetting,pRange) (This)->lpVtbl->GetFilterPropertyRange(This,VideoProcDeviceGuid,pVideoDesc,renderTargetFormat,FilterSetting,pRange) #define IDirectXVideoProcessorService_CreateVideoProcessor(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,MaxNumSubStreams,ppVidProcess) (This)->lpVtbl->CreateVideoProcessor(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,MaxNumSubStreams,ppVidProcess) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoProcessorService_QueryInterface(IDirectXVideoProcessorService* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoProcessorService_AddRef(IDirectXVideoProcessorService* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoProcessorService_Release(IDirectXVideoProcessorService* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoAccelerationService methods ***/ static FORCEINLINE HRESULT IDirectXVideoProcessorService_CreateSurface(IDirectXVideoProcessorService* This,UINT width,UINT height,UINT backBuffers,D3DFORMAT format,D3DPOOL pool,DWORD usage,DWORD dxvaType,IDirect3DSurface9 **ppSurface,HANDLE *pSharedHandle) { return This->lpVtbl->CreateSurface(This,width,height,backBuffers,format,pool,usage,dxvaType,ppSurface,pSharedHandle); } /*** IDirectXVideoProcessorService methods ***/ static FORCEINLINE HRESULT IDirectXVideoProcessorService_RegisterVideoProcessorSoftwareDevice(IDirectXVideoProcessorService* This,void *pCallbacks) { return This->lpVtbl->RegisterVideoProcessorSoftwareDevice(This,pCallbacks); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetVideoProcessorDeviceGuids(IDirectXVideoProcessorService* This,const DXVA2_VideoDesc *pVideoDesc,UINT *pCount,GUID **pGuids) { return This->lpVtbl->GetVideoProcessorDeviceGuids(This,pVideoDesc,pCount,pGuids); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetVideoProcessorRenderTargets(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,UINT *pCount,D3DFORMAT **pFormats) { return This->lpVtbl->GetVideoProcessorRenderTargets(This,VideoProcDeviceGuid,pVideoDesc,pCount,pFormats); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetVideoProcessorSubStreamFormats(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,D3DFORMAT RenderTargetFormat,UINT *pCount,D3DFORMAT **pFormats) { return This->lpVtbl->GetVideoProcessorSubStreamFormats(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCount,pFormats); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetVideoProcessorCaps(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,D3DFORMAT RenderTargetFormat,DXVA2_VideoProcessorCaps *pCaps) { return This->lpVtbl->GetVideoProcessorCaps(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,pCaps); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetProcAmpRange(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,D3DFORMAT RenderTargetFormat,UINT ProcAmpCap,DXVA2_ValueRange *pRange) { return This->lpVtbl->GetProcAmpRange(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,ProcAmpCap,pRange); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_GetFilterPropertyRange(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,D3DFORMAT renderTargetFormat,UINT FilterSetting,DXVA2_ValueRange *pRange) { return This->lpVtbl->GetFilterPropertyRange(This,VideoProcDeviceGuid,pVideoDesc,renderTargetFormat,FilterSetting,pRange); } static FORCEINLINE HRESULT IDirectXVideoProcessorService_CreateVideoProcessor(IDirectXVideoProcessorService* This,REFGUID VideoProcDeviceGuid,const DXVA2_VideoDesc *pVideoDesc,D3DFORMAT RenderTargetFormat,UINT MaxNumSubStreams,IDirectXVideoProcessor **ppVidProcess) { return This->lpVtbl->CreateVideoProcessor(This,VideoProcDeviceGuid,pVideoDesc,RenderTargetFormat,MaxNumSubStreams,ppVidProcess); } #endif #endif #endif #endif /* __IDirectXVideoProcessorService_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoProcessor interface */ #ifndef __IDirectXVideoProcessor_INTERFACE_DEFINED__ #define __IDirectXVideoProcessor_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoProcessor, 0x8c3a39f0, 0x916e, 0x4690, 0x80,0x4f, 0x4c,0x80,0x01,0x35,0x5d,0x25); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8c3a39f0-916e-4690-804f-4c8001355d25") IDirectXVideoProcessor : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorService( IDirectXVideoProcessorService **ppService) = 0; virtual HRESULT STDMETHODCALLTYPE GetCreationParameters( GUID *pDeviceGuid, DXVA2_VideoDesc *pVideoDesc, D3DFORMAT *pRenderTargetFormat, UINT *pMaxNumSubStreams) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps( DXVA2_VideoProcessorCaps *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetProcAmpRange( UINT ProcAmpCap, DXVA2_ValueRange *pRange) = 0; virtual HRESULT STDMETHODCALLTYPE GetFilterPropertyRange( UINT FilterSetting, DXVA2_ValueRange *pRange) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessBlt( IDirect3DSurface9 *pRenderTarget, const DXVA2_VideoProcessBltParams *pBltParams, const DXVA2_VideoSample *pSamples, UINT NumSamples, HANDLE *pHandleComplete) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoProcessor, 0x8c3a39f0, 0x916e, 0x4690, 0x80,0x4f, 0x4c,0x80,0x01,0x35,0x5d,0x25) #endif #else typedef struct IDirectXVideoProcessorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoProcessor *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoProcessor *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoProcessor *This); /*** IDirectXVideoProcessor methods ***/ HRESULT (STDMETHODCALLTYPE *GetVideoProcessorService)( IDirectXVideoProcessor *This, IDirectXVideoProcessorService **ppService); HRESULT (STDMETHODCALLTYPE *GetCreationParameters)( IDirectXVideoProcessor *This, GUID *pDeviceGuid, DXVA2_VideoDesc *pVideoDesc, D3DFORMAT *pRenderTargetFormat, UINT *pMaxNumSubStreams); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( IDirectXVideoProcessor *This, DXVA2_VideoProcessorCaps *pCaps); HRESULT (STDMETHODCALLTYPE *GetProcAmpRange)( IDirectXVideoProcessor *This, UINT ProcAmpCap, DXVA2_ValueRange *pRange); HRESULT (STDMETHODCALLTYPE *GetFilterPropertyRange)( IDirectXVideoProcessor *This, UINT FilterSetting, DXVA2_ValueRange *pRange); HRESULT (STDMETHODCALLTYPE *VideoProcessBlt)( IDirectXVideoProcessor *This, IDirect3DSurface9 *pRenderTarget, const DXVA2_VideoProcessBltParams *pBltParams, const DXVA2_VideoSample *pSamples, UINT NumSamples, HANDLE *pHandleComplete); END_INTERFACE } IDirectXVideoProcessorVtbl; interface IDirectXVideoProcessor { CONST_VTBL IDirectXVideoProcessorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoProcessor_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoProcessor methods ***/ #define IDirectXVideoProcessor_GetVideoProcessorService(This,ppService) (This)->lpVtbl->GetVideoProcessorService(This,ppService) #define IDirectXVideoProcessor_GetCreationParameters(This,pDeviceGuid,pVideoDesc,pRenderTargetFormat,pMaxNumSubStreams) (This)->lpVtbl->GetCreationParameters(This,pDeviceGuid,pVideoDesc,pRenderTargetFormat,pMaxNumSubStreams) #define IDirectXVideoProcessor_GetVideoProcessorCaps(This,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,pCaps) #define IDirectXVideoProcessor_GetProcAmpRange(This,ProcAmpCap,pRange) (This)->lpVtbl->GetProcAmpRange(This,ProcAmpCap,pRange) #define IDirectXVideoProcessor_GetFilterPropertyRange(This,FilterSetting,pRange) (This)->lpVtbl->GetFilterPropertyRange(This,FilterSetting,pRange) #define IDirectXVideoProcessor_VideoProcessBlt(This,pRenderTarget,pBltParams,pSamples,NumSamples,pHandleComplete) (This)->lpVtbl->VideoProcessBlt(This,pRenderTarget,pBltParams,pSamples,NumSamples,pHandleComplete) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoProcessor_QueryInterface(IDirectXVideoProcessor* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoProcessor_AddRef(IDirectXVideoProcessor* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoProcessor_Release(IDirectXVideoProcessor* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoProcessor methods ***/ static FORCEINLINE HRESULT IDirectXVideoProcessor_GetVideoProcessorService(IDirectXVideoProcessor* This,IDirectXVideoProcessorService **ppService) { return This->lpVtbl->GetVideoProcessorService(This,ppService); } static FORCEINLINE HRESULT IDirectXVideoProcessor_GetCreationParameters(IDirectXVideoProcessor* This,GUID *pDeviceGuid,DXVA2_VideoDesc *pVideoDesc,D3DFORMAT *pRenderTargetFormat,UINT *pMaxNumSubStreams) { return This->lpVtbl->GetCreationParameters(This,pDeviceGuid,pVideoDesc,pRenderTargetFormat,pMaxNumSubStreams); } static FORCEINLINE HRESULT IDirectXVideoProcessor_GetVideoProcessorCaps(IDirectXVideoProcessor* This,DXVA2_VideoProcessorCaps *pCaps) { return This->lpVtbl->GetVideoProcessorCaps(This,pCaps); } static FORCEINLINE HRESULT IDirectXVideoProcessor_GetProcAmpRange(IDirectXVideoProcessor* This,UINT ProcAmpCap,DXVA2_ValueRange *pRange) { return This->lpVtbl->GetProcAmpRange(This,ProcAmpCap,pRange); } static FORCEINLINE HRESULT IDirectXVideoProcessor_GetFilterPropertyRange(IDirectXVideoProcessor* This,UINT FilterSetting,DXVA2_ValueRange *pRange) { return This->lpVtbl->GetFilterPropertyRange(This,FilterSetting,pRange); } static FORCEINLINE HRESULT IDirectXVideoProcessor_VideoProcessBlt(IDirectXVideoProcessor* This,IDirect3DSurface9 *pRenderTarget,const DXVA2_VideoProcessBltParams *pBltParams,const DXVA2_VideoSample *pSamples,UINT NumSamples,HANDLE *pHandleComplete) { return This->lpVtbl->VideoProcessBlt(This,pRenderTarget,pBltParams,pSamples,NumSamples,pHandleComplete); } #endif #endif #endif #endif /* __IDirectXVideoProcessor_INTERFACE_DEFINED__ */ /***************************************************************************** * IDirectXVideoMemoryConfiguration interface */ #ifndef __IDirectXVideoMemoryConfiguration_INTERFACE_DEFINED__ #define __IDirectXVideoMemoryConfiguration_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDirectXVideoMemoryConfiguration, 0xb7f916dd, 0xdb3b, 0x49c1, 0x84,0xd7, 0xe4,0x5e,0xf9,0x9e,0xc7,0x26); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("b7f916dd-db3b-49c1-84d7-e45ef99ec726") IDirectXVideoMemoryConfiguration : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetAvailableSurfaceTypeByIndex( DWORD wTypeIndex, DXVA2_SurfaceType *pdwType) = 0; virtual HRESULT STDMETHODCALLTYPE SetSurfaceType( DXVA2_SurfaceType dwType) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDirectXVideoMemoryConfiguration, 0xb7f916dd, 0xdb3b, 0x49c1, 0x84,0xd7, 0xe4,0x5e,0xf9,0x9e,0xc7,0x26) #endif #else typedef struct IDirectXVideoMemoryConfigurationVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDirectXVideoMemoryConfiguration *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDirectXVideoMemoryConfiguration *This); ULONG (STDMETHODCALLTYPE *Release)( IDirectXVideoMemoryConfiguration *This); /*** IDirectXVideoMemoryConfiguration methods ***/ HRESULT (STDMETHODCALLTYPE *GetAvailableSurfaceTypeByIndex)( IDirectXVideoMemoryConfiguration *This, DWORD wTypeIndex, DXVA2_SurfaceType *pdwType); HRESULT (STDMETHODCALLTYPE *SetSurfaceType)( IDirectXVideoMemoryConfiguration *This, DXVA2_SurfaceType dwType); END_INTERFACE } IDirectXVideoMemoryConfigurationVtbl; interface IDirectXVideoMemoryConfiguration { CONST_VTBL IDirectXVideoMemoryConfigurationVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDirectXVideoMemoryConfiguration_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDirectXVideoMemoryConfiguration_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDirectXVideoMemoryConfiguration_Release(This) (This)->lpVtbl->Release(This) /*** IDirectXVideoMemoryConfiguration methods ***/ #define IDirectXVideoMemoryConfiguration_GetAvailableSurfaceTypeByIndex(This,wTypeIndex,pdwType) (This)->lpVtbl->GetAvailableSurfaceTypeByIndex(This,wTypeIndex,pdwType) #define IDirectXVideoMemoryConfiguration_SetSurfaceType(This,dwType) (This)->lpVtbl->SetSurfaceType(This,dwType) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDirectXVideoMemoryConfiguration_QueryInterface(IDirectXVideoMemoryConfiguration* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDirectXVideoMemoryConfiguration_AddRef(IDirectXVideoMemoryConfiguration* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDirectXVideoMemoryConfiguration_Release(IDirectXVideoMemoryConfiguration* This) { return This->lpVtbl->Release(This); } /*** IDirectXVideoMemoryConfiguration methods ***/ static FORCEINLINE HRESULT IDirectXVideoMemoryConfiguration_GetAvailableSurfaceTypeByIndex(IDirectXVideoMemoryConfiguration* This,DWORD wTypeIndex,DXVA2_SurfaceType *pdwType) { return This->lpVtbl->GetAvailableSurfaceTypeByIndex(This,wTypeIndex,pdwType); } static FORCEINLINE HRESULT IDirectXVideoMemoryConfiguration_SetSurfaceType(IDirectXVideoMemoryConfiguration* This,DXVA2_SurfaceType dwType) { return This->lpVtbl->SetSurfaceType(This,dwType); } #endif #endif #endif #endif /* __IDirectXVideoMemoryConfiguration_INTERFACE_DEFINED__ */ HRESULT WINAPI DXVA2CreateDirect3DDeviceManager9(UINT *pResetToken,IDirect3DDeviceManager9 **ppDXVAManager); HRESULT WINAPI DXVA2CreateVideoService(IDirect3DDevice9 *pDD,REFIID riid,void **ppService); #endif static inline DXVA2_Fixed32 DXVA2_Fixed32OpaqueAlpha(void) { DXVA2_Fixed32 f32; f32.ll = 0 + (1 << 16); return f32; } static inline DXVA2_Fixed32 DXVA2_Fixed32TransparentAlpha(void) { DXVA2_Fixed32 f32; f32.ll = 0; return f32; } static inline float DXVA2FixedToFloat(DXVA2_Fixed32 f32) { return (float)f32.Value + (float)f32.Fraction / (1 << 16); } static inline DXVA2_Fixed32 DXVA2FloatToFixed(float f) { DXVA2_Fixed32 f32; f32.Value = ((ULONG) (f * (1 << 16))) >> 16; f32.Fraction = ((ULONG) (f * (1 << 16))) & 0xFFFF; return f32; } /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxva2api_h__ */ dxvk-0~git20220822.9df86f2/dxvahd.h000066400000000000000000000711701430055512200164340ustar00rootroot00000000000000/*** Autogenerated by WIDL 7.7 from include/dxvahd.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __dxvahd_h__ #define __dxvahd_h__ /* Forward declarations */ #ifndef __IDXVAHD_Device_FWD_DEFINED__ #define __IDXVAHD_Device_FWD_DEFINED__ typedef interface IDXVAHD_Device IDXVAHD_Device; #ifdef __cplusplus interface IDXVAHD_Device; #endif /* __cplusplus */ #endif #ifndef __IDXVAHD_VideoProcessor_FWD_DEFINED__ #define __IDXVAHD_VideoProcessor_FWD_DEFINED__ typedef interface IDXVAHD_VideoProcessor IDXVAHD_VideoProcessor; #ifdef __cplusplus interface IDXVAHD_VideoProcessor; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif #include #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #if (_WIN32_WINNT >= 0x0601) #if 0 #ifndef __IDirect3DSurface9_FWD_DEFINED__ #define __IDirect3DSurface9_FWD_DEFINED__ typedef interface IDirect3DSurface9 IDirect3DSurface9; #ifdef __cplusplus interface IDirect3DSurface9; #endif /* __cplusplus */ #endif #ifndef __IDirect3DDevice9Ex_FWD_DEFINED__ #define __IDirect3DDevice9Ex_FWD_DEFINED__ typedef interface IDirect3DDevice9Ex IDirect3DDevice9Ex; #ifdef __cplusplus interface IDirect3DDevice9Ex; #endif /* __cplusplus */ #endif typedef DWORD D3DFORMAT; typedef DWORD D3DPOOL; typedef struct __WIDL_dxvahd_generated_name_0000000C { char dummy; } D3DCOLOR; #endif #ifndef CALLBACK #if defined(_ARM_) #define CALLBACK #else #define CALLBACK __stdcall #endif #endif #ifndef __IDXVAHD_Device_FWD_DEFINED__ #define __IDXVAHD_Device_FWD_DEFINED__ typedef interface IDXVAHD_Device IDXVAHD_Device; #ifdef __cplusplus interface IDXVAHD_Device; #endif /* __cplusplus */ #endif #ifndef __IDXVAHD_VideoProcessor_FWD_DEFINED__ #define __IDXVAHD_VideoProcessor_FWD_DEFINED__ typedef interface IDXVAHD_VideoProcessor IDXVAHD_VideoProcessor; #ifdef __cplusplus interface IDXVAHD_VideoProcessor; #endif /* __cplusplus */ #endif typedef enum _DXVAHD_ALPHA_FILL_MODE { DXVAHD_ALPHA_FILL_MODE_OPAQUE = 0, DXVAHD_ALPHA_FILL_MODE_BACKGROUND = 1, DXVAHD_ALPHA_FILL_MODE_DESTINATION = 2, DXVAHD_ALPHA_FILL_MODE_SOURCE_STREAM = 3 } DXVAHD_ALPHA_FILL_MODE; typedef struct _DXVAHD_COLOR_YCbCrA { FLOAT Y; FLOAT Cb; FLOAT Cr; FLOAT A; } DXVAHD_COLOR_YCbCrA; typedef struct _DXVAHD_COLOR_RGBA { FLOAT R; FLOAT G; FLOAT B; FLOAT A; } DXVAHD_COLOR_RGBA; typedef union _DXVAHD_COLOR { DXVAHD_COLOR_RGBA RGB; DXVAHD_COLOR_YCbCrA YCbCr; } DXVAHD_COLOR; typedef struct _DXVAHD_BLT_STATE_BACKGROUND_COLOR_DATA { WINBOOL YCbCr; DXVAHD_COLOR BackgroundColor; } DXVAHD_BLT_STATE_BACKGROUND_COLOR_DATA; typedef enum _DXVAHD_BLT_STATE { DXVAHD_BLT_STATE_TARGET_RECT = 0, DXVAHD_BLT_STATE_BACKGROUND_COLOR = 1, DXVAHD_BLT_STATE_OUTPUT_COLOR_SPACE = 2, DXVAHD_BLT_STATE_ALPHA_FILL = 3, DXVAHD_BLT_STATE_CONSTRICTION = 4, DXVAHD_BLT_STATE_PRIVATE = 1000 } DXVAHD_BLT_STATE; typedef enum _DXVAHD_DEVICE_CAPS { DXVAHD_DEVICE_CAPS_LINEAR_SPACE = 0x1, DXVAHD_DEVICE_CAPS_xvYCC = 0x2, DXVAHD_DEVICE_CAPS_RGB_RANGE_CONVERSION = 0x4, DXVAHD_DEVICE_CAPS_YCbCr_MATRIX_CONVERSION = 0x8 } DXVAHD_DEVICE_CAPS; typedef enum _DXVAHD_DEVICE_TYPE { DXVAHD_DEVICE_TYPE_HARDWARE = 0, DXVAHD_DEVICE_TYPE_SOFTWARE = 1, DXVAHD_DEVICE_TYPE_REFERENCE = 2, DXVAHD_DEVICE_TYPE_OTHER = 3 } DXVAHD_DEVICE_TYPE; typedef enum _DXVAHD_DEVICE_USAGE { DXVAHD_DEVICE_USAGE_PLAYBACK_NORMAL = 0, DXVAHD_DEVICE_USAGE_OPTIMAL_SPEED = 1, DXVAHD_DEVICE_USAGE_OPTIMAL_QUALITY = 2 } DXVAHD_DEVICE_USAGE; typedef enum _DXVAHD_FEATURE_CAPS { DXVAHD_FEATURE_CAPS_ALPHA_FILL = 0x1, DXVAHD_FEATURE_CAPS_CONSTRICTION = 0x2, DXVAHD_FEATURE_CAPS_LUMA_KEY = 0x4, DXVAHD_FEATURE_CAPS_ALPHA_PALETTE = 0x8 } DXVAHD_FEATURE_CAPS; typedef enum _DXVAHD_FILTER { DXVAHD_FILTER_BRIGHTNESS = 0, DXVAHD_FILTER_CONTRAST = 1, DXVAHD_FILTER_HUE = 2, DXVAHD_FILTER_SATURATION = 3, DXVAHD_FILTER_NOISE_REDUCTION = 4, DXVAHD_FILTER_EDGE_ENHANCEMENT = 5, DXVAHD_FILTER_ANAMORPHIC_SCALING = 6 } DXVAHD_FILTER; typedef enum _DXVAHD_FILTER_CAPS { DXVAHD_FILTER_CAPS_BRIGHTNESS = 0x1, DXVAHD_FILTER_CAPS_CONTRAST = 0x2, DXVAHD_FILTER_CAPS_HUE = 0x4, DXVAHD_FILTER_CAPS_SATURATION = 0x8, DXVAHD_FILTER_CAPS_NOISE_REDUCTION = 0x10, DXVAHD_FILTER_CAPS_EDGE_ENHANCEMENT = 0x20, DXVAHD_FILTER_CAPS_ANAMORPHIC_SCALING = 0x40 } DXVAHD_FILTER_CAPS; typedef enum _DXVAHD_FRAME_FORMAT { DXVAHD_FRAME_FORMAT_PROGRESSIVE = 0, DXVAHD_FRAME_FORMAT_INTERLACED_TOP_FIELD_FIRST = 1, DXVAHD_FRAME_FORMAT_INTERLACED_BOTTOM_FIELD_FIRST = 2 } DXVAHD_FRAME_FORMAT; typedef enum _DXVAHD_INPUT_FORMAT_CAPS { DXVAHD_INPUT_FORMAT_CAPS_RGB_INTERLACED = 0x1, DXVAHD_INPUT_FORMAT_CAPS_RGB_PROCAMP = 0x2, DXVAHD_INPUT_FORMAT_CAPS_RGB_LUMA_KEY = 0x4, DXVAHD_INPUT_FORMAT_CAPS_PALETTE_INTERLACED = 0x8 } DXVAHD_INPUT_FORMAT_CAPS; typedef enum _DXVAHD_ITELECINE_CAPS { DXVAHD_ITELECINE_CAPS_32 = 0x1, DXVAHD_ITELECINE_CAPS_22 = 0x2, DXVAHD_ITELECINE_CAPS_2224 = 0x4, DXVAHD_ITELECINE_CAPS_2332 = 0x8, DXVAHD_ITELECINE_CAPS_32322 = 0x10, DXVAHD_ITELECINE_CAPS_55 = 0x20, DXVAHD_ITELECINE_CAPS_64 = 0x40, DXVAHD_ITELECINE_CAPS_87 = 0x80, DXVAHD_ITELECINE_CAPS_222222222223 = 0x100, DXVAHD_ITELECINE_CAPS_OTHER = 0x80000000 } DXVAHD_ITELECINE_CAPS; typedef enum _DXVAHD_OUTPUT_RATE { DXVAHD_OUTPUT_RATE_NORMAL = 0, DXVAHD_OUTPUT_RATE_HALF = 1, DXVAHD_OUTPUT_RATE_CUSTOM = 2 } DXVAHD_OUTPUT_RATE; typedef enum _DXVAHD_PROCESSOR_CAPS { DXVAHD_PROCESSOR_CAPS_DEINTERLACE_BLEND = 0x1, DXVAHD_PROCESSOR_CAPS_DEINTERLACE_BOB = 0x2, DXVAHD_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE = 0x4, DXVAHD_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION = 0x8, DXVAHD_PROCESSOR_CAPS_INVERSE_TELECINE = 0x10, DXVAHD_PROCESSOR_CAPS_FRAME_RATE_CONVERSION = 0x20 } DXVAHD_PROCESSOR_CAPS; typedef enum _DXVAHD_STREAM_STATE { DXVAHD_STREAM_STATE_D3DFORMAT = 0, DXVAHD_STREAM_STATE_FRAME_FORMAT = 1, DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE = 2, DXVAHD_STREAM_STATE_OUTPUT_RATE = 3, DXVAHD_STREAM_STATE_SOURCE_RECT = 4, DXVAHD_STREAM_STATE_DESTINATION_RECT = 5, DXVAHD_STREAM_STATE_ALPHA = 6, DXVAHD_STREAM_STATE_PALETTE = 7, DXVAHD_STREAM_STATE_LUMA_KEY = 8, DXVAHD_STREAM_STATE_ASPECT_RATIO = 9, DXVAHD_STREAM_STATE_FILTER_BRIGHTNESS = 100, DXVAHD_STREAM_STATE_FILTER_CONTRAST = 101, DXVAHD_STREAM_STATE_FILTER_HUE = 102, DXVAHD_STREAM_STATE_FILTER_SATURATION = 103, DXVAHD_STREAM_STATE_FILTER_NOISE_REDUCTION = 104, DXVAHD_STREAM_STATE_FILTER_EDGE_ENHANCEMENT = 105, DXVAHD_STREAM_STATE_FILTER_ANAMORPHIC_SCALING = 106, DXVAHD_STREAM_STATE_PRIVATE = 1000 } DXVAHD_STREAM_STATE; typedef enum _DXVAHD_SURFACE_TYPE { DXVAHD_SURFACE_TYPE_VIDEO_INPUT = 0, DXVAHD_SURFACE_TYPE_VIDEO_INPUT_PRIVATE = 1, DXVAHD_SURFACE_TYPE_VIDEO_OUTPUT = 2 } DXVAHD_SURFACE_TYPE; typedef struct _DXVAHD_VPDEVCAPS { DXVAHD_DEVICE_TYPE DeviceType; UINT DeviceCaps; UINT FeatureCaps; UINT FilterCaps; UINT InputFormatCaps; D3DPOOL InputPool; UINT OutputFormatCount; UINT InputFormatCount; UINT VideoProcessorCount; UINT MaxInputStreams; UINT MaxStreamStates; } DXVAHD_VPDEVCAPS; typedef struct _DXVAHD_BLT_STATE_ALPHA_FILL_DATA { DXVAHD_ALPHA_FILL_MODE Mode; UINT StreamNumber; } DXVAHD_BLT_STATE_ALPHA_FILL_DATA; typedef struct _DXVAHD_BLT_STATE_CONSTRICTION_DATA { WINBOOL Enable; SIZE Size; } DXVAHD_BLT_STATE_CONSTRICTION_DATA; typedef struct _DXVAHD_BLT_STATE_OUTPUT_COLOR_SPACE_DATA { UINT Usage : 1; UINT RGB_Range : 1; UINT YCbCr_Matrix : 1; UINT YCbCr_xvYCC : 1; } DXVAHD_BLT_STATE_OUTPUT_COLOR_SPACE_DATA; typedef struct _DXVAHD_BLT_STATE_PRIVATE_DATA { GUID Guid; UINT DataSize; void *pData; } DXVAHD_BLT_STATE_PRIVATE_DATA; typedef struct _DXVAHD_BLT_STATE_TARGET_RECT_DATA { WINBOOL Enable; RECT TargetRect; } DXVAHD_BLT_STATE_TARGET_RECT_DATA; typedef struct _DXVAHD_RATIONAL { UINT Numerator; UINT Denominator; } DXVAHD_RATIONAL; typedef struct _DXVAHD_CONTENT_DESC { DXVAHD_FRAME_FORMAT InputFrameFormat; DXVAHD_RATIONAL InputFrameRate; UINT InputWidth; UINT InputHeight; DXVAHD_RATIONAL OutputFrameRate; UINT OutputWidth; UINT OutputHeight; } DXVAHD_CONTENT_DESC; typedef struct _DXVAHD_CUSTOM_RATE_DATA { DXVAHD_RATIONAL CustomRate; UINT OutputFrames; WINBOOL InputInterlaced; UINT InputFramesOrFields; } DXVAHD_CUSTOM_RATE_DATA; typedef struct _DXVAHD_FILTER_RANGE_DATA { INT Minimum; INT Maximum; INT Default; FLOAT Multiplier; } DXVAHD_FILTER_RANGE_DATA; typedef struct _DXVAHD_STREAM_DATA { WINBOOL Enable; UINT OutputIndex; UINT InputFrameOrField; UINT PastFrames; UINT FutureFrames; IDirect3DSurface9 **ppPastSurfaces; IDirect3DSurface9 *pInputSurface; IDirect3DSurface9 **ppFutureSurfaces; } DXVAHD_STREAM_DATA; typedef struct _DXVAHD_VPCAPS { GUID VPGuid; UINT PastFrames; UINT FutureFrames; UINT ProcessorCaps; UINT ITelecineCaps; UINT CustomRateCount; } DXVAHD_VPCAPS; typedef struct _DXVAHD_STREAM_STATE_ALPHA_DATA { WINBOOL Enable; FLOAT Alpha; } DXVAHD_STREAM_STATE_ALPHA_DATA; typedef struct _DXVAHD_STREAM_STATE_ASPECT_RATIO_DATA { WINBOOL Enable; DXVAHD_RATIONAL SourceAspectRatio; DXVAHD_RATIONAL DestinationAspectRatio; } DXVAHD_STREAM_STATE_ASPECT_RATIO_DATA; typedef struct _DXVAHD_STREAM_STATE_D3DFORMAT_DATA { D3DFORMAT Format; } DXVAHD_STREAM_STATE_D3DFORMAT_DATA; typedef struct _DXVAHD_STREAM_STATE_DESTINATION_RECT_DATA { WINBOOL Enable; RECT DestinationRect; } DXVAHD_STREAM_STATE_DESTINATION_RECT_DATA; typedef struct _DXVAHD_STREAM_STATE_FILTER_DATA { WINBOOL Enable; INT Level; } DXVAHD_STREAM_STATE_FILTER_DATA; typedef struct _DXVAHD_STREAM_STATE_FRAME_FORMAT_DATA { DXVAHD_FRAME_FORMAT FrameFormat; } DXVAHD_STREAM_STATE_FRAME_FORMAT_DATA; typedef struct _DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA { UINT Type : 1; UINT RGB_Range : 1; UINT YCbCr_Matrix : 1; UINT YCbCr_xvYCC : 1; } DXVAHD_STREAM_STATE_INPUT_COLOR_SPACE_DATA; typedef struct _DXVAHD_STREAM_STATE_LUMA_KEY_DATA { WINBOOL Enable; FLOAT Lower; FLOAT Upper; } DXVAHD_STREAM_STATE_LUMA_KEY_DATA; typedef struct _DXVAHD_STREAM_STATE_OUTPUT_RATE_DATA { WINBOOL RepeatFrame; DXVAHD_OUTPUT_RATE OutputRate; DXVAHD_RATIONAL CustomRate; } DXVAHD_STREAM_STATE_OUTPUT_RATE_DATA; typedef struct _DXVAHD_STREAM_STATE_SOURCE_RECT_DATA { WINBOOL Enable; RECT SourceRect; } DXVAHD_STREAM_STATE_SOURCE_RECT_DATA; typedef struct _DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA { WINBOOL Enable; UINT ITelecineFlags; UINT Frames; UINT InputField; } DXVAHD_STREAM_STATE_PRIVATE_IVTC_DATA; typedef struct _DXVAHD_STREAM_STATE_PRIVATE_DATA { GUID Guid; UINT DataSize; void *pData; } DXVAHD_STREAM_STATE_PRIVATE_DATA; typedef struct _DXVAHD_STREAM_STATE_PALETTE_DATA { UINT Count; D3DCOLOR *pEntries; } DXVAHD_STREAM_STATE_PALETTE_DATA; typedef HRESULT ( CALLBACK *PDXVAHDSW_CreateDevice )(IDirect3DDevice9Ex *pD3DDevice,HANDLE *phDevice); typedef HRESULT ( CALLBACK *PDXVAHDSW_ProposeVideoPrivateFormat )(HANDLE hDevice,D3DFORMAT *pFormat); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorDeviceCaps )(HANDLE hDevice,const DXVAHD_CONTENT_DESC *pContentDesc,DXVAHD_DEVICE_USAGE Usage,DXVAHD_VPDEVCAPS *pCaps); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorOutputFormats )(HANDLE hDevice,const DXVAHD_CONTENT_DESC *pContentDesc,DXVAHD_DEVICE_USAGE Usage,UINT Count,D3DFORMAT *pFormats); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorInputFormats )(HANDLE hDevice,const DXVAHD_CONTENT_DESC *pContentDesc,DXVAHD_DEVICE_USAGE Usage,UINT Count,D3DFORMAT *pFormats); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorCaps )(HANDLE hDevice,const DXVAHD_CONTENT_DESC *pContentDesc,DXVAHD_DEVICE_USAGE Usage,UINT Count,DXVAHD_VPCAPS *pCaps); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorCustomRates )(HANDLE hDevice,const GUID *pVPGuid,UINT Count,DXVAHD_CUSTOM_RATE_DATA *pRates); typedef HRESULT ( CALLBACK *PDXVAHDSW_SetVideoProcessBltState )(HANDLE hVideoProcessor,DXVAHD_BLT_STATE State,UINT DataSize,const void *pData); typedef HRESULT ( CALLBACK *PDXVAHDSW_CreateVideoProcessor )(HANDLE hDevice,const GUID *pVPGuid,HANDLE *phVideoProcessor); typedef HRESULT ( CALLBACK *PDXVAHDSW_DestroyDevice )(HANDLE hDevice); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessorFilterRange )(HANDLE hDevice,DXVAHD_FILTER Filter,DXVAHD_FILTER_RANGE_DATA *pRange); typedef HRESULT ( CALLBACK *PDXVAHDSW_DestroyVideoProcessor )(HANDLE hVideoProcessor); typedef HRESULT ( CALLBACK *PDXVAHDSW_VideoProcessBltHD )(HANDLE hVideoProcessor,IDirect3DSurface9 *pOutputSurface,UINT OutputFrame,UINT StreamCount,const DXVAHD_STREAM_DATA *pStreams); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessStreamStatePrivate )(HANDLE hVideoProcessor,UINT StreamNumber,DXVAHD_STREAM_STATE_PRIVATE_DATA *pData); typedef HRESULT ( CALLBACK *PDXVAHDSW_SetVideoProcessStreamState )(HANDLE hVideoProcessor,UINT StreamNumber,DXVAHD_STREAM_STATE State,UINT DataSize,const void *pData); typedef HRESULT ( CALLBACK *PDXVAHDSW_GetVideoProcessBltStatePrivate )(HANDLE hVideoProcessor,DXVAHD_BLT_STATE_PRIVATE_DATA *pData); typedef HRESULT ( CALLBACK *PDXVAHDSW_Plugin )(UINT Size,void *pCallbacks); typedef struct _DXVAHDSW_CALLBACKS { PDXVAHDSW_CreateDevice CreateDevice; PDXVAHDSW_ProposeVideoPrivateFormat ProposeVideoPrivateFormat; PDXVAHDSW_GetVideoProcessorDeviceCaps GetVideoProcessorDeviceCaps; PDXVAHDSW_GetVideoProcessorOutputFormats GetVideoProcessorOutputFormats; PDXVAHDSW_GetVideoProcessorInputFormats GetVideoProcessorInputFormats; PDXVAHDSW_GetVideoProcessorCaps GetVideoProcessorCaps; PDXVAHDSW_GetVideoProcessorCustomRates GetVideoProcessorCustomRates; PDXVAHDSW_GetVideoProcessorFilterRange GetVideoProcessorFilterRange; PDXVAHDSW_DestroyDevice DestroyDevice; PDXVAHDSW_CreateVideoProcessor CreateVideoProcessor; PDXVAHDSW_SetVideoProcessBltState SetVideoProcessBltState; PDXVAHDSW_GetVideoProcessBltStatePrivate GetVideoProcessBltStatePrivate; PDXVAHDSW_SetVideoProcessStreamState SetVideoProcessStreamState; PDXVAHDSW_GetVideoProcessStreamStatePrivate GetVideoProcessStreamStatePrivate; PDXVAHDSW_VideoProcessBltHD VideoProcessBltHD; PDXVAHDSW_DestroyVideoProcessor DestroyVideoProcessor; } DXVAHDSW_CALLBACKS; HRESULT DXVAHD_CreateDevice(IDirect3DDevice9Ex *pD3DDevice,const DXVAHD_CONTENT_DESC *pContentDesc,DXVAHD_DEVICE_USAGE Usage,PDXVAHDSW_Plugin pPlugin,IDXVAHD_Device **ppDevice); /***************************************************************************** * IDXVAHD_Device interface */ #ifndef __IDXVAHD_Device_INTERFACE_DEFINED__ #define __IDXVAHD_Device_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXVAHD_Device, 0x95f12dfd, 0xd77e, 0x49be, 0x81,0x5f, 0x57,0xd5,0x79,0x63,0x4d,0x6d); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("95f12dfd-d77e-49be-815f-57d579634d6d") IDXVAHD_Device : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateVideoSurface( UINT Width, UINT Height, D3DFORMAT Format, D3DPOOL Pool, DWORD Usage, DXVAHD_SURFACE_TYPE Type, UINT NumSurfaces, IDirect3DSurface9 **ppSurfaces, HANDLE *pSharedHandle) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorDeviceCaps( DXVAHD_VPDEVCAPS *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorOutputFormats( UINT Count, D3DFORMAT *pFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorInputFormats( UINT Count, D3DFORMAT *pFormats) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCaps( UINT Count, DXVAHD_VPCAPS *pCaps) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorCustomRates( const GUID *pVPGuid, UINT Count, DXVAHD_CUSTOM_RATE_DATA *pRates) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessorFilterRange( DXVAHD_FILTER Filter, DXVAHD_FILTER_RANGE_DATA *pRange) = 0; virtual HRESULT STDMETHODCALLTYPE CreateVideoProcessor( const GUID *pVPGuid, IDXVAHD_VideoProcessor **ppVideoProcessor) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXVAHD_Device, 0x95f12dfd, 0xd77e, 0x49be, 0x81,0x5f, 0x57,0xd5,0x79,0x63,0x4d,0x6d) #endif #else typedef struct IDXVAHD_DeviceVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXVAHD_Device *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXVAHD_Device *This); ULONG (STDMETHODCALLTYPE *Release)( IDXVAHD_Device *This); /*** IDXVAHD_Device methods ***/ HRESULT (STDMETHODCALLTYPE *CreateVideoSurface)( IDXVAHD_Device *This, UINT Width, UINT Height, D3DFORMAT Format, D3DPOOL Pool, DWORD Usage, DXVAHD_SURFACE_TYPE Type, UINT NumSurfaces, IDirect3DSurface9 **ppSurfaces, HANDLE *pSharedHandle); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorDeviceCaps)( IDXVAHD_Device *This, DXVAHD_VPDEVCAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorOutputFormats)( IDXVAHD_Device *This, UINT Count, D3DFORMAT *pFormats); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorInputFormats)( IDXVAHD_Device *This, UINT Count, D3DFORMAT *pFormats); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCaps)( IDXVAHD_Device *This, UINT Count, DXVAHD_VPCAPS *pCaps); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorCustomRates)( IDXVAHD_Device *This, const GUID *pVPGuid, UINT Count, DXVAHD_CUSTOM_RATE_DATA *pRates); HRESULT (STDMETHODCALLTYPE *GetVideoProcessorFilterRange)( IDXVAHD_Device *This, DXVAHD_FILTER Filter, DXVAHD_FILTER_RANGE_DATA *pRange); HRESULT (STDMETHODCALLTYPE *CreateVideoProcessor)( IDXVAHD_Device *This, const GUID *pVPGuid, IDXVAHD_VideoProcessor **ppVideoProcessor); END_INTERFACE } IDXVAHD_DeviceVtbl; interface IDXVAHD_Device { CONST_VTBL IDXVAHD_DeviceVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXVAHD_Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXVAHD_Device_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXVAHD_Device_Release(This) (This)->lpVtbl->Release(This) /*** IDXVAHD_Device methods ***/ #define IDXVAHD_Device_CreateVideoSurface(This,Width,Height,Format,Pool,Usage,Type,NumSurfaces,ppSurfaces,pSharedHandle) (This)->lpVtbl->CreateVideoSurface(This,Width,Height,Format,Pool,Usage,Type,NumSurfaces,ppSurfaces,pSharedHandle) #define IDXVAHD_Device_GetVideoProcessorDeviceCaps(This,pCaps) (This)->lpVtbl->GetVideoProcessorDeviceCaps(This,pCaps) #define IDXVAHD_Device_GetVideoProcessorOutputFormats(This,Count,pFormats) (This)->lpVtbl->GetVideoProcessorOutputFormats(This,Count,pFormats) #define IDXVAHD_Device_GetVideoProcessorInputFormats(This,Count,pFormats) (This)->lpVtbl->GetVideoProcessorInputFormats(This,Count,pFormats) #define IDXVAHD_Device_GetVideoProcessorCaps(This,Count,pCaps) (This)->lpVtbl->GetVideoProcessorCaps(This,Count,pCaps) #define IDXVAHD_Device_GetVideoProcessorCustomRates(This,pVPGuid,Count,pRates) (This)->lpVtbl->GetVideoProcessorCustomRates(This,pVPGuid,Count,pRates) #define IDXVAHD_Device_GetVideoProcessorFilterRange(This,Filter,pRange) (This)->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange) #define IDXVAHD_Device_CreateVideoProcessor(This,pVPGuid,ppVideoProcessor) (This)->lpVtbl->CreateVideoProcessor(This,pVPGuid,ppVideoProcessor) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXVAHD_Device_QueryInterface(IDXVAHD_Device* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXVAHD_Device_AddRef(IDXVAHD_Device* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXVAHD_Device_Release(IDXVAHD_Device* This) { return This->lpVtbl->Release(This); } /*** IDXVAHD_Device methods ***/ static FORCEINLINE HRESULT IDXVAHD_Device_CreateVideoSurface(IDXVAHD_Device* This,UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,DWORD Usage,DXVAHD_SURFACE_TYPE Type,UINT NumSurfaces,IDirect3DSurface9 **ppSurfaces,HANDLE *pSharedHandle) { return This->lpVtbl->CreateVideoSurface(This,Width,Height,Format,Pool,Usage,Type,NumSurfaces,ppSurfaces,pSharedHandle); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorDeviceCaps(IDXVAHD_Device* This,DXVAHD_VPDEVCAPS *pCaps) { return This->lpVtbl->GetVideoProcessorDeviceCaps(This,pCaps); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorOutputFormats(IDXVAHD_Device* This,UINT Count,D3DFORMAT *pFormats) { return This->lpVtbl->GetVideoProcessorOutputFormats(This,Count,pFormats); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorInputFormats(IDXVAHD_Device* This,UINT Count,D3DFORMAT *pFormats) { return This->lpVtbl->GetVideoProcessorInputFormats(This,Count,pFormats); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorCaps(IDXVAHD_Device* This,UINT Count,DXVAHD_VPCAPS *pCaps) { return This->lpVtbl->GetVideoProcessorCaps(This,Count,pCaps); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorCustomRates(IDXVAHD_Device* This,const GUID *pVPGuid,UINT Count,DXVAHD_CUSTOM_RATE_DATA *pRates) { return This->lpVtbl->GetVideoProcessorCustomRates(This,pVPGuid,Count,pRates); } static FORCEINLINE HRESULT IDXVAHD_Device_GetVideoProcessorFilterRange(IDXVAHD_Device* This,DXVAHD_FILTER Filter,DXVAHD_FILTER_RANGE_DATA *pRange) { return This->lpVtbl->GetVideoProcessorFilterRange(This,Filter,pRange); } static FORCEINLINE HRESULT IDXVAHD_Device_CreateVideoProcessor(IDXVAHD_Device* This,const GUID *pVPGuid,IDXVAHD_VideoProcessor **ppVideoProcessor) { return This->lpVtbl->CreateVideoProcessor(This,pVPGuid,ppVideoProcessor); } #endif #endif #endif #endif /* __IDXVAHD_Device_INTERFACE_DEFINED__ */ /***************************************************************************** * IDXVAHD_VideoProcessor interface */ #ifndef __IDXVAHD_VideoProcessor_INTERFACE_DEFINED__ #define __IDXVAHD_VideoProcessor_INTERFACE_DEFINED__ DEFINE_GUID(IID_IDXVAHD_VideoProcessor, 0x95f4edf4, 0x6e03, 0x4cd7, 0xbe,0x1b, 0x30,0x75,0xd6,0x65,0xaa,0x52); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("95f4edf4-6e03-4cd7-be1b-3075d665aa52") IDXVAHD_VideoProcessor : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetVideoProcessBltState( DXVAHD_BLT_STATE State, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessBltState( DXVAHD_BLT_STATE State, UINT DataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE SetVideoProcessStreamState( UINT StreamNumber, DXVAHD_STREAM_STATE State, UINT DataSize, const void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE GetVideoProcessStreamState( UINT StreamNumber, DXVAHD_STREAM_STATE State, UINT DataSize, void *pData) = 0; virtual HRESULT STDMETHODCALLTYPE VideoProcessBltHD( IDirect3DSurface9 *pOutputSurface, UINT OutputFrame, UINT StreamCount, const DXVAHD_STREAM_DATA *pStreams) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDXVAHD_VideoProcessor, 0x95f4edf4, 0x6e03, 0x4cd7, 0xbe,0x1b, 0x30,0x75,0xd6,0x65,0xaa,0x52) #endif #else typedef struct IDXVAHD_VideoProcessorVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDXVAHD_VideoProcessor *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDXVAHD_VideoProcessor *This); ULONG (STDMETHODCALLTYPE *Release)( IDXVAHD_VideoProcessor *This); /*** IDXVAHD_VideoProcessor methods ***/ HRESULT (STDMETHODCALLTYPE *SetVideoProcessBltState)( IDXVAHD_VideoProcessor *This, DXVAHD_BLT_STATE State, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *GetVideoProcessBltState)( IDXVAHD_VideoProcessor *This, DXVAHD_BLT_STATE State, UINT DataSize, void *pData); HRESULT (STDMETHODCALLTYPE *SetVideoProcessStreamState)( IDXVAHD_VideoProcessor *This, UINT StreamNumber, DXVAHD_STREAM_STATE State, UINT DataSize, const void *pData); HRESULT (STDMETHODCALLTYPE *GetVideoProcessStreamState)( IDXVAHD_VideoProcessor *This, UINT StreamNumber, DXVAHD_STREAM_STATE State, UINT DataSize, void *pData); HRESULT (STDMETHODCALLTYPE *VideoProcessBltHD)( IDXVAHD_VideoProcessor *This, IDirect3DSurface9 *pOutputSurface, UINT OutputFrame, UINT StreamCount, const DXVAHD_STREAM_DATA *pStreams); END_INTERFACE } IDXVAHD_VideoProcessorVtbl; interface IDXVAHD_VideoProcessor { CONST_VTBL IDXVAHD_VideoProcessorVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDXVAHD_VideoProcessor_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDXVAHD_VideoProcessor_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDXVAHD_VideoProcessor_Release(This) (This)->lpVtbl->Release(This) /*** IDXVAHD_VideoProcessor methods ***/ #define IDXVAHD_VideoProcessor_SetVideoProcessBltState(This,State,DataSize,pData) (This)->lpVtbl->SetVideoProcessBltState(This,State,DataSize,pData) #define IDXVAHD_VideoProcessor_GetVideoProcessBltState(This,State,DataSize,pData) (This)->lpVtbl->GetVideoProcessBltState(This,State,DataSize,pData) #define IDXVAHD_VideoProcessor_SetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData) (This)->lpVtbl->SetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData) #define IDXVAHD_VideoProcessor_GetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData) (This)->lpVtbl->GetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData) #define IDXVAHD_VideoProcessor_VideoProcessBltHD(This,pOutputSurface,OutputFrame,StreamCount,pStreams) (This)->lpVtbl->VideoProcessBltHD(This,pOutputSurface,OutputFrame,StreamCount,pStreams) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_QueryInterface(IDXVAHD_VideoProcessor* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDXVAHD_VideoProcessor_AddRef(IDXVAHD_VideoProcessor* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDXVAHD_VideoProcessor_Release(IDXVAHD_VideoProcessor* This) { return This->lpVtbl->Release(This); } /*** IDXVAHD_VideoProcessor methods ***/ static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_SetVideoProcessBltState(IDXVAHD_VideoProcessor* This,DXVAHD_BLT_STATE State,UINT DataSize,const void *pData) { return This->lpVtbl->SetVideoProcessBltState(This,State,DataSize,pData); } static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_GetVideoProcessBltState(IDXVAHD_VideoProcessor* This,DXVAHD_BLT_STATE State,UINT DataSize,void *pData) { return This->lpVtbl->GetVideoProcessBltState(This,State,DataSize,pData); } static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_SetVideoProcessStreamState(IDXVAHD_VideoProcessor* This,UINT StreamNumber,DXVAHD_STREAM_STATE State,UINT DataSize,const void *pData) { return This->lpVtbl->SetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData); } static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_GetVideoProcessStreamState(IDXVAHD_VideoProcessor* This,UINT StreamNumber,DXVAHD_STREAM_STATE State,UINT DataSize,void *pData) { return This->lpVtbl->GetVideoProcessStreamState(This,StreamNumber,State,DataSize,pData); } static FORCEINLINE HRESULT IDXVAHD_VideoProcessor_VideoProcessBltHD(IDXVAHD_VideoProcessor* This,IDirect3DSurface9 *pOutputSurface,UINT OutputFrame,UINT StreamCount,const DXVAHD_STREAM_DATA *pStreams) { return This->lpVtbl->VideoProcessBltHD(This,pOutputSurface,OutputFrame,StreamCount,pStreams); } #endif #endif #endif #endif /* __IDXVAHD_VideoProcessor_INTERFACE_DEFINED__ */ #endif /*(_WIN32_WINNT >= 0x0601)*/ #endif /*WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)*/ /* Begin additional prototypes for all interfaces */ /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __dxvahd_h__ */