1 /*-------------------------------------------------------------------------------------
2  *
3  * Copyright (c) Microsoft Corporation
4  *
5  *-------------------------------------------------------------------------------------*/
6 
7 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
8 
9  /* File created by MIDL compiler version 8.00.0613 */
10 /* @@MIDL_FILE_HEADING(  ) */
11 
12 /* verify that the <rpcndr.h> version is high enough to compile this file*/
13 #ifndef __REQUIRED_RPCNDR_H_VERSION__
14 #define __REQUIRED_RPCNDR_H_VERSION__ 475
15 #endif
16 
17 /* verify that the <rpcsal.h> version is high enough to compile this file*/
18 #ifndef __REQUIRED_RPCSAL_H_VERSION__
19 #define __REQUIRED_RPCSAL_H_VERSION__ 100
20 #endif
21 
22 #include "rpc.h"
23 #include "rpcndr.h"
24 
25 #ifndef __RPCNDR_H_VERSION__
26 #error this stub requires an updated version of <rpcndr.h>
27 #endif /* __RPCNDR_H_VERSION__ */
28 
29 #ifndef COM_NO_WINDOWS_H
30 #include "windows.h"
31 #include "ole2.h"
32 #endif /*COM_NO_WINDOWS_H*/
33 
34 #ifndef __d3d10_1_h__
35 #define __d3d10_1_h__
36 
37 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
38 #pragma once
39 #endif
40 
41 /* Forward Declarations */
42 
43 #ifndef __ID3D10BlendState1_FWD_DEFINED__
44 #define __ID3D10BlendState1_FWD_DEFINED__
45 typedef interface ID3D10BlendState1 ID3D10BlendState1;
46 
47 #endif 	/* __ID3D10BlendState1_FWD_DEFINED__ */
48 
49 #ifndef __ID3D10ShaderResourceView1_FWD_DEFINED__
50 #define __ID3D10ShaderResourceView1_FWD_DEFINED__
51 typedef interface ID3D10ShaderResourceView1 ID3D10ShaderResourceView1;
52 
53 #endif 	/* __ID3D10ShaderResourceView1_FWD_DEFINED__ */
54 
55 #ifndef __ID3D10Device1_FWD_DEFINED__
56 #define __ID3D10Device1_FWD_DEFINED__
57 typedef interface ID3D10Device1 ID3D10Device1;
58 
59 #endif 	/* __ID3D10Device1_FWD_DEFINED__ */
60 
61 /* header files for imported files */
62 #include "oaidl.h"
63 #include "ocidl.h"
64 
65 #ifdef __cplusplus
66 extern "C"{
67 #endif
68 
69 /* interface __MIDL_itf_d3d10_1_0000_0000 */
70 /* [local] */
71 
72 #if defined( __d3d10_h__ ) && !defined( D3D10_ARBITRARY_HEADER_ORDERING )
73 #error d3d10.h is included before d3d10_1.h, and it will confuse tools that honor SAL annotations. \
74 If possibly targeting d3d10.1, include d3d10_1.h instead of d3d10.h, or ensure d3d10_1.h is included before d3d10.h
75 #endif
76 #ifndef _D3D10_1_CONSTANTS
77 #define _D3D10_1_CONSTANTS
78 #define	D3D10_1_DEFAULT_SAMPLE_MASK	( 0xffffffff )
79 
80 #define D3D10_1_FLOAT16_FUSED_TOLERANCE_IN_ULP	( 0.6 )
81 #define D3D10_1_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP	( 0.6f )
82 #define	D3D10_1_GS_INPUT_REGISTER_COUNT	( 32 )
83 
84 #define	D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT	( 32 )
85 
86 #define	D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS	( 128 )
87 
88 #define	D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT	( 32 )
89 
90 #define	D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENTS	( 1 )
91 
92 #define	D3D10_1_PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT	( 32 )
93 
94 #define	D3D10_1_PS_OUTPUT_MASK_REGISTER_COUNT	( 1 )
95 
96 #define	D3D10_1_SHADER_MAJOR_VERSION	( 4 )
97 
98 #define	D3D10_1_SHADER_MINOR_VERSION	( 1 )
99 
100 #define	D3D10_1_SO_BUFFER_MAX_STRIDE_IN_BYTES	( 2048 )
101 
102 #define	D3D10_1_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES	( 256 )
103 
104 #define	D3D10_1_SO_BUFFER_SLOT_COUNT	( 4 )
105 
106 #define	D3D10_1_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER	( 1 )
107 
108 #define	D3D10_1_SO_SINGLE_BUFFER_COMPONENT_LIMIT	( 64 )
109 
110 #define	D3D10_1_STANDARD_VERTEX_ELEMENT_COUNT	( 32 )
111 
112 #define	D3D10_1_SUBPIXEL_FRACTIONAL_BIT_COUNT	( 8 )
113 
114 #define	D3D10_1_VS_INPUT_REGISTER_COUNT	( 32 )
115 
116 #define	D3D10_1_VS_OUTPUT_REGISTER_COUNT	( 32 )
117 
118 #endif
119 /*#include <winapifamily.h>*/
120 #include "d3d10.h" //
121 /*#pragma region Desktop Family*/
122 /*#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)*/
123 
124 typedef
125 enum D3D10_FEATURE_LEVEL1
126     {
127         D3D10_FEATURE_LEVEL_10_0	= 0xa000,
128         D3D10_FEATURE_LEVEL_10_1	= 0xa100,
129         D3D10_FEATURE_LEVEL_9_1	= 0x9100,
130         D3D10_FEATURE_LEVEL_9_2	= 0x9200,
131         D3D10_FEATURE_LEVEL_9_3	= 0x9300
132     } 	D3D10_FEATURE_LEVEL1;
133 
134 typedef struct D3D10_RENDER_TARGET_BLEND_DESC1
135     {
136     BOOL BlendEnable;
137     D3D10_BLEND SrcBlend;
138     D3D10_BLEND DestBlend;
139     D3D10_BLEND_OP BlendOp;
140     D3D10_BLEND SrcBlendAlpha;
141     D3D10_BLEND DestBlendAlpha;
142     D3D10_BLEND_OP BlendOpAlpha;
143     UINT8 RenderTargetWriteMask;
144     } 	D3D10_RENDER_TARGET_BLEND_DESC1;
145 
146 typedef struct D3D10_BLEND_DESC1
147     {
148     BOOL AlphaToCoverageEnable;
149     BOOL IndependentBlendEnable;
150     D3D10_RENDER_TARGET_BLEND_DESC1 RenderTarget[ 8 ];
151     } 	D3D10_BLEND_DESC1;
152 
153 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0000_v0_0_c_ifspec;
154 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0000_v0_0_s_ifspec;
155 
156 #ifndef __ID3D10BlendState1_INTERFACE_DEFINED__
157 #define __ID3D10BlendState1_INTERFACE_DEFINED__
158 
159 /* interface ID3D10BlendState1 */
160 /* [unique][local][object][uuid] */
161 
162 EXTERN_C const IID IID_ID3D10BlendState1;
163 
164 #if defined(__cplusplus) && !defined(CINTERFACE)
165 
166     MIDL_INTERFACE("EDAD8D99-8A35-4d6d-8566-2EA276CDE161")
167     ID3D10BlendState1 : public ID3D10BlendState
168     {
169     public:
170         virtual void STDMETHODCALLTYPE GetDesc1(
171             /* [annotation] */
172             _Out_  D3D10_BLEND_DESC1 *pDesc) = 0;
173 
174     };
175 
176 #else 	/* C style interface */
177 
178     typedef struct ID3D10BlendState1Vtbl
179     {
180         BEGIN_INTERFACE
181 
182         HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
183             ID3D10BlendState1 * This,
184             /* [in] */ REFIID riid,
185             /* [annotation][iid_is][out] */
186             _COM_Outptr_  void **ppvObject);
187 
188         ULONG ( STDMETHODCALLTYPE *AddRef )(
189             ID3D10BlendState1 * This);
190 
191         ULONG ( STDMETHODCALLTYPE *Release )(
192             ID3D10BlendState1 * This);
193 
194         void ( STDMETHODCALLTYPE *GetDevice )(
195             ID3D10BlendState1 * This,
196             /* [annotation] */
197             _Out_  ID3D10Device **ppDevice);
198 
199         HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
200             ID3D10BlendState1 * This,
201             /* [annotation] */
202             _In_  REFGUID guid,
203             /* [annotation] */
204             _Inout_  UINT *pDataSize,
205             /* [annotation] */
206             _Out_writes_bytes_opt_(*pDataSize)  void *pData);
207 
208         HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
209             ID3D10BlendState1 * This,
210             /* [annotation] */
211             _In_  REFGUID guid,
212             /* [annotation] */
213             _In_  UINT DataSize,
214             /* [annotation] */
215             _In_reads_bytes_opt_(DataSize)  const void *pData);
216 
217         HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
218             ID3D10BlendState1 * This,
219             /* [annotation] */
220             _In_  REFGUID guid,
221             /* [annotation] */
222             _In_opt_  const IUnknown *pData);
223 
224         void ( STDMETHODCALLTYPE *GetDesc )(
225             ID3D10BlendState1 * This,
226             /* [annotation] */
227             _Out_  D3D10_BLEND_DESC *pDesc);
228 
229         void ( STDMETHODCALLTYPE *GetDesc1 )(
230             ID3D10BlendState1 * This,
231             /* [annotation] */
232             _Out_  D3D10_BLEND_DESC1 *pDesc);
233 
234         END_INTERFACE
235     } ID3D10BlendState1Vtbl;
236 
237     interface ID3D10BlendState1
238     {
239         CONST_VTBL struct ID3D10BlendState1Vtbl *lpVtbl;
240     };
241 
242 #ifdef COBJMACROS
243 
244 #define ID3D10BlendState1_QueryInterface(This,riid,ppvObject)	\
245     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
246 
247 #define ID3D10BlendState1_AddRef(This)	\
248     ( (This)->lpVtbl -> AddRef(This) )
249 
250 #define ID3D10BlendState1_Release(This)	\
251     ( (This)->lpVtbl -> Release(This) )
252 
253 #define ID3D10BlendState1_GetDevice(This,ppDevice)	\
254     ( (This)->lpVtbl -> GetDevice(This,ppDevice) )
255 
256 #define ID3D10BlendState1_GetPrivateData(This,guid,pDataSize,pData)	\
257     ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
258 
259 #define ID3D10BlendState1_SetPrivateData(This,guid,DataSize,pData)	\
260     ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
261 
262 #define ID3D10BlendState1_SetPrivateDataInterface(This,guid,pData)	\
263     ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
264 
265 #define ID3D10BlendState1_GetDesc(This,pDesc)	\
266     ( (This)->lpVtbl -> GetDesc(This,pDesc) )
267 
268 #define ID3D10BlendState1_GetDesc1(This,pDesc)	\
269     ( (This)->lpVtbl -> GetDesc1(This,pDesc) )
270 
271 #endif /* COBJMACROS */
272 
273 #endif 	/* C style interface */
274 
275 #endif 	/* __ID3D10BlendState1_INTERFACE_DEFINED__ */
276 
277 /* interface __MIDL_itf_d3d10_1_0000_0001 */
278 /* [local] */
279 
280 typedef struct D3D10_TEXCUBE_ARRAY_SRV1
281     {
282     UINT MostDetailedMip;
283     UINT MipLevels;
284     UINT First2DArrayFace;
285     UINT NumCubes;
286     } 	D3D10_TEXCUBE_ARRAY_SRV1;
287 
288 typedef D3D_SRV_DIMENSION D3D10_SRV_DIMENSION1;
289 
290 typedef struct D3D10_SHADER_RESOURCE_VIEW_DESC1
291     {
292     DXGI_FORMAT Format;
293     D3D10_SRV_DIMENSION1 ViewDimension;
294     union
295         {
296         D3D10_BUFFER_SRV Buffer;
297         D3D10_TEX1D_SRV Texture1D;
298         D3D10_TEX1D_ARRAY_SRV Texture1DArray;
299         D3D10_TEX2D_SRV Texture2D;
300         D3D10_TEX2D_ARRAY_SRV Texture2DArray;
301         D3D10_TEX2DMS_SRV Texture2DMS;
302         D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray;
303         D3D10_TEX3D_SRV Texture3D;
304         D3D10_TEXCUBE_SRV TextureCube;
305         D3D10_TEXCUBE_ARRAY_SRV1 TextureCubeArray;
306         } 	;
307     } 	D3D10_SHADER_RESOURCE_VIEW_DESC1;
308 
309 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0001_v0_0_c_ifspec;
310 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0001_v0_0_s_ifspec;
311 
312 #ifndef __ID3D10ShaderResourceView1_INTERFACE_DEFINED__
313 #define __ID3D10ShaderResourceView1_INTERFACE_DEFINED__
314 
315 /* interface ID3D10ShaderResourceView1 */
316 /* [unique][local][object][uuid] */
317 
318 EXTERN_C const IID IID_ID3D10ShaderResourceView1;
319 
320 #if defined(__cplusplus) && !defined(CINTERFACE)
321 
322     MIDL_INTERFACE("9B7E4C87-342C-4106-A19F-4F2704F689F0")
323     ID3D10ShaderResourceView1 : public ID3D10ShaderResourceView
324     {
325     public:
326         virtual void STDMETHODCALLTYPE GetDesc1(
327             /* [annotation] */
328             _Out_  D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc) = 0;
329 
330     };
331 
332 #else 	/* C style interface */
333 
334     typedef struct ID3D10ShaderResourceView1Vtbl
335     {
336         BEGIN_INTERFACE
337 
338         HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
339             ID3D10ShaderResourceView1 * This,
340             /* [in] */ REFIID riid,
341             /* [annotation][iid_is][out] */
342             _COM_Outptr_  void **ppvObject);
343 
344         ULONG ( STDMETHODCALLTYPE *AddRef )(
345             ID3D10ShaderResourceView1 * This);
346 
347         ULONG ( STDMETHODCALLTYPE *Release )(
348             ID3D10ShaderResourceView1 * This);
349 
350         void ( STDMETHODCALLTYPE *GetDevice )(
351             ID3D10ShaderResourceView1 * This,
352             /* [annotation] */
353             _Out_  ID3D10Device **ppDevice);
354 
355         HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
356             ID3D10ShaderResourceView1 * This,
357             /* [annotation] */
358             _In_  REFGUID guid,
359             /* [annotation] */
360             _Inout_  UINT *pDataSize,
361             /* [annotation] */
362             _Out_writes_bytes_opt_(*pDataSize)  void *pData);
363 
364         HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
365             ID3D10ShaderResourceView1 * This,
366             /* [annotation] */
367             _In_  REFGUID guid,
368             /* [annotation] */
369             _In_  UINT DataSize,
370             /* [annotation] */
371             _In_reads_bytes_opt_(DataSize)  const void *pData);
372 
373         HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
374             ID3D10ShaderResourceView1 * This,
375             /* [annotation] */
376             _In_  REFGUID guid,
377             /* [annotation] */
378             _In_opt_  const IUnknown *pData);
379 
380         void ( STDMETHODCALLTYPE *GetResource )(
381             ID3D10ShaderResourceView1 * This,
382             /* [annotation] */
383             _Out_  ID3D10Resource **ppResource);
384 
385         void ( STDMETHODCALLTYPE *GetDesc )(
386             ID3D10ShaderResourceView1 * This,
387             /* [annotation] */
388             _Out_  D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc);
389 
390         void ( STDMETHODCALLTYPE *GetDesc1 )(
391             ID3D10ShaderResourceView1 * This,
392             /* [annotation] */
393             _Out_  D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc);
394 
395         END_INTERFACE
396     } ID3D10ShaderResourceView1Vtbl;
397 
398     interface ID3D10ShaderResourceView1
399     {
400         CONST_VTBL struct ID3D10ShaderResourceView1Vtbl *lpVtbl;
401     };
402 
403 #ifdef COBJMACROS
404 
405 #define ID3D10ShaderResourceView1_QueryInterface(This,riid,ppvObject)	\
406     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
407 
408 #define ID3D10ShaderResourceView1_AddRef(This)	\
409     ( (This)->lpVtbl -> AddRef(This) )
410 
411 #define ID3D10ShaderResourceView1_Release(This)	\
412     ( (This)->lpVtbl -> Release(This) )
413 
414 #define ID3D10ShaderResourceView1_GetDevice(This,ppDevice)	\
415     ( (This)->lpVtbl -> GetDevice(This,ppDevice) )
416 
417 #define ID3D10ShaderResourceView1_GetPrivateData(This,guid,pDataSize,pData)	\
418     ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
419 
420 #define ID3D10ShaderResourceView1_SetPrivateData(This,guid,DataSize,pData)	\
421     ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
422 
423 #define ID3D10ShaderResourceView1_SetPrivateDataInterface(This,guid,pData)	\
424     ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
425 
426 #define ID3D10ShaderResourceView1_GetResource(This,ppResource)	\
427     ( (This)->lpVtbl -> GetResource(This,ppResource) )
428 
429 #define ID3D10ShaderResourceView1_GetDesc(This,pDesc)	\
430     ( (This)->lpVtbl -> GetDesc(This,pDesc) )
431 
432 #define ID3D10ShaderResourceView1_GetDesc1(This,pDesc)	\
433     ( (This)->lpVtbl -> GetDesc1(This,pDesc) )
434 
435 #endif /* COBJMACROS */
436 
437 #endif 	/* C style interface */
438 
439 #endif 	/* __ID3D10ShaderResourceView1_INTERFACE_DEFINED__ */
440 
441 /* interface __MIDL_itf_d3d10_1_0000_0002 */
442 /* [local] */
443 
444 typedef
445 enum D3D10_STANDARD_MULTISAMPLE_QUALITY_LEVELS
446     {
447         D3D10_STANDARD_MULTISAMPLE_PATTERN	= 0xffffffff,
448         D3D10_CENTER_MULTISAMPLE_PATTERN	= 0xfffffffe
449     } 	D3D10_STANDARD_MULTISAMPLE_QUALITY_LEVELS;
450 
451 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0002_v0_0_c_ifspec;
452 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0002_v0_0_s_ifspec;
453 
454 #ifndef __ID3D10Device1_INTERFACE_DEFINED__
455 #define __ID3D10Device1_INTERFACE_DEFINED__
456 
457 /* interface ID3D10Device1 */
458 /* [unique][local][object][uuid] */
459 
460 EXTERN_C const IID IID_ID3D10Device1;
461 
462 #if defined(__cplusplus) && !defined(CINTERFACE)
463 
464     MIDL_INTERFACE("9B7E4C8F-342C-4106-A19F-4F2704F689F0")
465     ID3D10Device1 : public ID3D10Device
466     {
467     public:
468         virtual HRESULT STDMETHODCALLTYPE CreateShaderResourceView1(
469             /* [annotation] */
470             _In_  ID3D10Resource *pResource,
471             /* [annotation] */
472             _In_opt_  const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc,
473             /* [annotation] */
474             _Out_opt_  ID3D10ShaderResourceView1 **ppSRView) = 0;
475 
476         virtual HRESULT STDMETHODCALLTYPE CreateBlendState1(
477             /* [annotation] */
478             _In_  const D3D10_BLEND_DESC1 *pBlendStateDesc,
479             /* [annotation] */
480             _Out_opt_  ID3D10BlendState1 **ppBlendState) = 0;
481 
482         virtual D3D10_FEATURE_LEVEL1 STDMETHODCALLTYPE GetFeatureLevel( void) = 0;
483 
484     };
485 
486 #else 	/* C style interface */
487 
488     typedef struct ID3D10Device1Vtbl
489     {
490         BEGIN_INTERFACE
491 
492         HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
493             ID3D10Device1 * This,
494             /* [in] */ REFIID riid,
495             /* [annotation][iid_is][out] */
496             _COM_Outptr_  void **ppvObject);
497 
498         ULONG ( STDMETHODCALLTYPE *AddRef )(
499             ID3D10Device1 * This);
500 
501         ULONG ( STDMETHODCALLTYPE *Release )(
502             ID3D10Device1 * This);
503 
504         void ( STDMETHODCALLTYPE *VSSetConstantBuffers )(
505             ID3D10Device1 * This,
506             /* [annotation] */
507             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
508             /* [annotation] */
509             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
510             /* [annotation] */
511             _In_reads_opt_(NumBuffers)  ID3D10Buffer *const *ppConstantBuffers);
512 
513         void ( STDMETHODCALLTYPE *PSSetShaderResources )(
514             ID3D10Device1 * This,
515             /* [annotation] */
516             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
517             /* [annotation] */
518             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
519             /* [annotation] */
520             _In_reads_opt_(NumViews)  ID3D10ShaderResourceView *const *ppShaderResourceViews);
521 
522         void ( STDMETHODCALLTYPE *PSSetShader )(
523             ID3D10Device1 * This,
524             /* [annotation] */
525             _In_opt_  ID3D10PixelShader *pPixelShader);
526 
527         void ( STDMETHODCALLTYPE *PSSetSamplers )(
528             ID3D10Device1 * This,
529             /* [annotation] */
530             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
531             /* [annotation] */
532             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
533             /* [annotation] */
534             _In_reads_opt_(NumSamplers)  ID3D10SamplerState *const *ppSamplers);
535 
536         void ( STDMETHODCALLTYPE *VSSetShader )(
537             ID3D10Device1 * This,
538             /* [annotation] */
539             _In_opt_  ID3D10VertexShader *pVertexShader);
540 
541         void ( STDMETHODCALLTYPE *DrawIndexed )(
542             ID3D10Device1 * This,
543             /* [annotation] */
544             _In_  UINT IndexCount,
545             /* [annotation] */
546             _In_  UINT StartIndexLocation,
547             /* [annotation] */
548             _In_  INT BaseVertexLocation);
549 
550         void ( STDMETHODCALLTYPE *Draw )(
551             ID3D10Device1 * This,
552             /* [annotation] */
553             _In_  UINT VertexCount,
554             /* [annotation] */
555             _In_  UINT StartVertexLocation);
556 
557         void ( STDMETHODCALLTYPE *PSSetConstantBuffers )(
558             ID3D10Device1 * This,
559             /* [annotation] */
560             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
561             /* [annotation] */
562             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
563             /* [annotation] */
564             _In_reads_opt_(NumBuffers)  ID3D10Buffer *const *ppConstantBuffers);
565 
566         void ( STDMETHODCALLTYPE *IASetInputLayout )(
567             ID3D10Device1 * This,
568             /* [annotation] */
569             _In_opt_  ID3D10InputLayout *pInputLayout);
570 
571         void ( STDMETHODCALLTYPE *IASetVertexBuffers )(
572             ID3D10Device1 * This,
573             /* [annotation] */
574             _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
575             /* [annotation] */
576             _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumBuffers,
577             /* [annotation] */
578             _In_reads_opt_(NumBuffers)  ID3D10Buffer *const *ppVertexBuffers,
579             /* [annotation] */
580             _In_reads_opt_(NumBuffers)  const UINT *pStrides,
581             /* [annotation] */
582             _In_reads_opt_(NumBuffers)  const UINT *pOffsets);
583 
584         void ( STDMETHODCALLTYPE *IASetIndexBuffer )(
585             ID3D10Device1 * This,
586             /* [annotation] */
587             _In_opt_  ID3D10Buffer *pIndexBuffer,
588             /* [annotation] */
589             _In_  DXGI_FORMAT Format,
590             /* [annotation] */
591             _In_  UINT Offset);
592 
593         void ( STDMETHODCALLTYPE *DrawIndexedInstanced )(
594             ID3D10Device1 * This,
595             /* [annotation] */
596             _In_  UINT IndexCountPerInstance,
597             /* [annotation] */
598             _In_  UINT InstanceCount,
599             /* [annotation] */
600             _In_  UINT StartIndexLocation,
601             /* [annotation] */
602             _In_  INT BaseVertexLocation,
603             /* [annotation] */
604             _In_  UINT StartInstanceLocation);
605 
606         void ( STDMETHODCALLTYPE *DrawInstanced )(
607             ID3D10Device1 * This,
608             /* [annotation] */
609             _In_  UINT VertexCountPerInstance,
610             /* [annotation] */
611             _In_  UINT InstanceCount,
612             /* [annotation] */
613             _In_  UINT StartVertexLocation,
614             /* [annotation] */
615             _In_  UINT StartInstanceLocation);
616 
617         void ( STDMETHODCALLTYPE *GSSetConstantBuffers )(
618             ID3D10Device1 * This,
619             /* [annotation] */
620             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
621             /* [annotation] */
622             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
623             /* [annotation] */
624             _In_reads_opt_(NumBuffers)  ID3D10Buffer *const *ppConstantBuffers);
625 
626         void ( STDMETHODCALLTYPE *GSSetShader )(
627             ID3D10Device1 * This,
628             /* [annotation] */
629             _In_opt_  ID3D10GeometryShader *pShader);
630 
631         void ( STDMETHODCALLTYPE *IASetPrimitiveTopology )(
632             ID3D10Device1 * This,
633             /* [annotation] */
634             _In_  D3D10_PRIMITIVE_TOPOLOGY Topology);
635 
636         void ( STDMETHODCALLTYPE *VSSetShaderResources )(
637             ID3D10Device1 * This,
638             /* [annotation] */
639             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
640             /* [annotation] */
641             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
642             /* [annotation] */
643             _In_reads_opt_(NumViews)  ID3D10ShaderResourceView *const *ppShaderResourceViews);
644 
645         void ( STDMETHODCALLTYPE *VSSetSamplers )(
646             ID3D10Device1 * This,
647             /* [annotation] */
648             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
649             /* [annotation] */
650             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
651             /* [annotation] */
652             _In_reads_opt_(NumSamplers)  ID3D10SamplerState *const *ppSamplers);
653 
654         void ( STDMETHODCALLTYPE *SetPredication )(
655             ID3D10Device1 * This,
656             /* [annotation] */
657             _In_opt_  ID3D10Predicate *pPredicate,
658             /* [annotation] */
659             _In_  BOOL PredicateValue);
660 
661         void ( STDMETHODCALLTYPE *GSSetShaderResources )(
662             ID3D10Device1 * This,
663             /* [annotation] */
664             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
665             /* [annotation] */
666             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
667             /* [annotation] */
668             _In_reads_opt_(NumViews)  ID3D10ShaderResourceView *const *ppShaderResourceViews);
669 
670         void ( STDMETHODCALLTYPE *GSSetSamplers )(
671             ID3D10Device1 * This,
672             /* [annotation] */
673             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
674             /* [annotation] */
675             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
676             /* [annotation] */
677             _In_reads_opt_(NumSamplers)  ID3D10SamplerState *const *ppSamplers);
678 
679         void ( STDMETHODCALLTYPE *OMSetRenderTargets )(
680             ID3D10Device1 * This,
681             /* [annotation] */
682             _In_range_( 0, D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT )  UINT NumViews,
683             /* [annotation] */
684             _In_reads_opt_(NumViews)  ID3D10RenderTargetView *const *ppRenderTargetViews,
685             /* [annotation] */
686             _In_opt_  ID3D10DepthStencilView *pDepthStencilView);
687 
688         void ( STDMETHODCALLTYPE *OMSetBlendState )(
689             ID3D10Device1 * This,
690             /* [annotation] */
691             _In_opt_  ID3D10BlendState *pBlendState,
692             /* [annotation] */
693             _In_  const FLOAT BlendFactor[ 4 ],
694             /* [annotation] */
695             _In_  UINT SampleMask);
696 
697         void ( STDMETHODCALLTYPE *OMSetDepthStencilState )(
698             ID3D10Device1 * This,
699             /* [annotation] */
700             _In_opt_  ID3D10DepthStencilState *pDepthStencilState,
701             /* [annotation] */
702             _In_  UINT StencilRef);
703 
704         void ( STDMETHODCALLTYPE *SOSetTargets )(
705             ID3D10Device1 * This,
706             /* [annotation] */
707             _In_range_( 0, D3D10_SO_BUFFER_SLOT_COUNT)  UINT NumBuffers,
708             /* [annotation] */
709             _In_reads_opt_(NumBuffers)  ID3D10Buffer *const *ppSOTargets,
710             /* [annotation] */
711             _In_reads_opt_(NumBuffers)  const UINT *pOffsets);
712 
713         void ( STDMETHODCALLTYPE *DrawAuto )(
714             ID3D10Device1 * This);
715 
716         void ( STDMETHODCALLTYPE *RSSetState )(
717             ID3D10Device1 * This,
718             /* [annotation] */
719             _In_opt_  ID3D10RasterizerState *pRasterizerState);
720 
721         void ( STDMETHODCALLTYPE *RSSetViewports )(
722             ID3D10Device1 * This,
723             /* [annotation] */
724             _In_range_(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE)  UINT NumViewports,
725             /* [annotation] */
726             _In_reads_opt_(NumViewports)  const D3D10_VIEWPORT *pViewports);
727 
728         void ( STDMETHODCALLTYPE *RSSetScissorRects )(
729             ID3D10Device1 * This,
730             /* [annotation] */
731             _In_range_(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE)  UINT NumRects,
732             /* [annotation] */
733             _In_reads_opt_(NumRects)  const D3D10_RECT *pRects);
734 
735         void ( STDMETHODCALLTYPE *CopySubresourceRegion )(
736             ID3D10Device1 * This,
737             /* [annotation] */
738             _In_  ID3D10Resource *pDstResource,
739             /* [annotation] */
740             _In_  UINT DstSubresource,
741             /* [annotation] */
742             _In_  UINT DstX,
743             /* [annotation] */
744             _In_  UINT DstY,
745             /* [annotation] */
746             _In_  UINT DstZ,
747             /* [annotation] */
748             _In_  ID3D10Resource *pSrcResource,
749             /* [annotation] */
750             _In_  UINT SrcSubresource,
751             /* [annotation] */
752             _In_opt_  const D3D10_BOX *pSrcBox);
753 
754         void ( STDMETHODCALLTYPE *CopyResource )(
755             ID3D10Device1 * This,
756             /* [annotation] */
757             _In_  ID3D10Resource *pDstResource,
758             /* [annotation] */
759             _In_  ID3D10Resource *pSrcResource);
760 
761         void ( STDMETHODCALLTYPE *UpdateSubresource )(
762             ID3D10Device1 * This,
763             /* [annotation] */
764             _In_  ID3D10Resource *pDstResource,
765             /* [annotation] */
766             _In_  UINT DstSubresource,
767             /* [annotation] */
768             _In_opt_  const D3D10_BOX *pDstBox,
769             /* [annotation] */
770             _In_  const void *pSrcData,
771             /* [annotation] */
772             _In_  UINT SrcRowPitch,
773             /* [annotation] */
774             _In_  UINT SrcDepthPitch);
775 
776         void ( STDMETHODCALLTYPE *ClearRenderTargetView )(
777             ID3D10Device1 * This,
778             /* [annotation] */
779             _In_  ID3D10RenderTargetView *pRenderTargetView,
780             /* [annotation] */
781             _In_  const FLOAT ColorRGBA[ 4 ]);
782 
783         void ( STDMETHODCALLTYPE *ClearDepthStencilView )(
784             ID3D10Device1 * This,
785             /* [annotation] */
786             _In_  ID3D10DepthStencilView *pDepthStencilView,
787             /* [annotation] */
788             _In_  UINT ClearFlags,
789             /* [annotation] */
790             _In_  FLOAT Depth,
791             /* [annotation] */
792             _In_  UINT8 Stencil);
793 
794         void ( STDMETHODCALLTYPE *GenerateMips )(
795             ID3D10Device1 * This,
796             /* [annotation] */
797             _In_  ID3D10ShaderResourceView *pShaderResourceView);
798 
799         void ( STDMETHODCALLTYPE *ResolveSubresource )(
800             ID3D10Device1 * This,
801             /* [annotation] */
802             _In_  ID3D10Resource *pDstResource,
803             /* [annotation] */
804             _In_  UINT DstSubresource,
805             /* [annotation] */
806             _In_  ID3D10Resource *pSrcResource,
807             /* [annotation] */
808             _In_  UINT SrcSubresource,
809             /* [annotation] */
810             _In_  DXGI_FORMAT Format);
811 
812         void ( STDMETHODCALLTYPE *VSGetConstantBuffers )(
813             ID3D10Device1 * This,
814             /* [annotation] */
815             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
816             /* [annotation] */
817             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
818             /* [annotation] */
819             _Out_writes_opt_(NumBuffers)  ID3D10Buffer **ppConstantBuffers);
820 
821         void ( STDMETHODCALLTYPE *PSGetShaderResources )(
822             ID3D10Device1 * This,
823             /* [annotation] */
824             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
825             /* [annotation] */
826             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
827             /* [annotation] */
828             _Out_writes_opt_(NumViews)  ID3D10ShaderResourceView **ppShaderResourceViews);
829 
830         void ( STDMETHODCALLTYPE *PSGetShader )(
831             ID3D10Device1 * This,
832             /* [annotation] */
833             _Out_  ID3D10PixelShader **ppPixelShader);
834 
835         void ( STDMETHODCALLTYPE *PSGetSamplers )(
836             ID3D10Device1 * This,
837             /* [annotation] */
838             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
839             /* [annotation] */
840             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
841             /* [annotation] */
842             _Out_writes_opt_(NumSamplers)  ID3D10SamplerState **ppSamplers);
843 
844         void ( STDMETHODCALLTYPE *VSGetShader )(
845             ID3D10Device1 * This,
846             /* [annotation] */
847             _Out_  ID3D10VertexShader **ppVertexShader);
848 
849         void ( STDMETHODCALLTYPE *PSGetConstantBuffers )(
850             ID3D10Device1 * This,
851             /* [annotation] */
852             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
853             /* [annotation] */
854             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
855             /* [annotation] */
856             _Out_writes_opt_(NumBuffers)  ID3D10Buffer **ppConstantBuffers);
857 
858         void ( STDMETHODCALLTYPE *IAGetInputLayout )(
859             ID3D10Device1 * This,
860             /* [annotation] */
861             _Out_  ID3D10InputLayout **ppInputLayout);
862 
863         void ( STDMETHODCALLTYPE *IAGetVertexBuffers )(
864             ID3D10Device1 * This,
865             /* [annotation] */
866             _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
867             /* [annotation] */
868             _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumBuffers,
869             /* [annotation] */
870             _Out_writes_opt_(NumBuffers)  ID3D10Buffer **ppVertexBuffers,
871             /* [annotation] */
872             _Out_writes_opt_(NumBuffers)  UINT *pStrides,
873             /* [annotation] */
874             _Out_writes_opt_(NumBuffers)  UINT *pOffsets);
875 
876         void ( STDMETHODCALLTYPE *IAGetIndexBuffer )(
877             ID3D10Device1 * This,
878             /* [annotation] */
879             _Out_opt_  ID3D10Buffer **pIndexBuffer,
880             /* [annotation] */
881             _Out_opt_  DXGI_FORMAT *Format,
882             /* [annotation] */
883             _Out_opt_  UINT *Offset);
884 
885         void ( STDMETHODCALLTYPE *GSGetConstantBuffers )(
886             ID3D10Device1 * This,
887             /* [annotation] */
888             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - 1 )  UINT StartSlot,
889             /* [annotation] */
890             _In_range_( 0, D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT - StartSlot )  UINT NumBuffers,
891             /* [annotation] */
892             _Out_writes_opt_(NumBuffers)  ID3D10Buffer **ppConstantBuffers);
893 
894         void ( STDMETHODCALLTYPE *GSGetShader )(
895             ID3D10Device1 * This,
896             /* [annotation] */
897             _Out_  ID3D10GeometryShader **ppGeometryShader);
898 
899         void ( STDMETHODCALLTYPE *IAGetPrimitiveTopology )(
900             ID3D10Device1 * This,
901             /* [annotation] */
902             _Out_  D3D10_PRIMITIVE_TOPOLOGY *pTopology);
903 
904         void ( STDMETHODCALLTYPE *VSGetShaderResources )(
905             ID3D10Device1 * This,
906             /* [annotation] */
907             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
908             /* [annotation] */
909             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
910             /* [annotation] */
911             _Out_writes_opt_(NumViews)  ID3D10ShaderResourceView **ppShaderResourceViews);
912 
913         void ( STDMETHODCALLTYPE *VSGetSamplers )(
914             ID3D10Device1 * This,
915             /* [annotation] */
916             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
917             /* [annotation] */
918             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
919             /* [annotation] */
920             _Out_writes_opt_(NumSamplers)  ID3D10SamplerState **ppSamplers);
921 
922         void ( STDMETHODCALLTYPE *GetPredication )(
923             ID3D10Device1 * This,
924             /* [annotation] */
925             _Out_opt_  ID3D10Predicate **ppPredicate,
926             /* [annotation] */
927             _Out_opt_  BOOL *pPredicateValue);
928 
929         void ( STDMETHODCALLTYPE *GSGetShaderResources )(
930             ID3D10Device1 * This,
931             /* [annotation] */
932             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - 1 )  UINT StartSlot,
933             /* [annotation] */
934             _In_range_( 0, D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT - StartSlot )  UINT NumViews,
935             /* [annotation] */
936             _Out_writes_opt_(NumViews)  ID3D10ShaderResourceView **ppShaderResourceViews);
937 
938         void ( STDMETHODCALLTYPE *GSGetSamplers )(
939             ID3D10Device1 * This,
940             /* [annotation] */
941             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - 1 )  UINT StartSlot,
942             /* [annotation] */
943             _In_range_( 0, D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT - StartSlot )  UINT NumSamplers,
944             /* [annotation] */
945             _Out_writes_opt_(NumSamplers)  ID3D10SamplerState **ppSamplers);
946 
947         void ( STDMETHODCALLTYPE *OMGetRenderTargets )(
948             ID3D10Device1 * This,
949             /* [annotation] */
950             _In_range_( 0, D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT )  UINT NumViews,
951             /* [annotation] */
952             _Out_writes_opt_(NumViews)  ID3D10RenderTargetView **ppRenderTargetViews,
953             /* [annotation] */
954             _Out_opt_  ID3D10DepthStencilView **ppDepthStencilView);
955 
956         void ( STDMETHODCALLTYPE *OMGetBlendState )(
957             ID3D10Device1 * This,
958             /* [annotation] */
959             _Out_opt_  ID3D10BlendState **ppBlendState,
960             /* [annotation] */
961             _Out_opt_  FLOAT BlendFactor[ 4 ],
962             /* [annotation] */
963             _Out_opt_  UINT *pSampleMask);
964 
965         void ( STDMETHODCALLTYPE *OMGetDepthStencilState )(
966             ID3D10Device1 * This,
967             /* [annotation] */
968             _Out_opt_  ID3D10DepthStencilState **ppDepthStencilState,
969             /* [annotation] */
970             _Out_opt_  UINT *pStencilRef);
971 
972         void ( STDMETHODCALLTYPE *SOGetTargets )(
973             ID3D10Device1 * This,
974             /* [annotation] */
975             _In_range_( 0, D3D10_SO_BUFFER_SLOT_COUNT )  UINT NumBuffers,
976             /* [annotation] */
977             _Out_writes_opt_(NumBuffers)  ID3D10Buffer **ppSOTargets,
978             /* [annotation] */
979             _Out_writes_opt_(NumBuffers)  UINT *pOffsets);
980 
981         void ( STDMETHODCALLTYPE *RSGetState )(
982             ID3D10Device1 * This,
983             /* [annotation] */
984             _Out_  ID3D10RasterizerState **ppRasterizerState);
985 
986         void ( STDMETHODCALLTYPE *RSGetViewports )(
987             ID3D10Device1 * This,
988             /* [annotation] */
989             _Inout_ /*_range(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE )*/   UINT *NumViewports,
990             /* [annotation] */
991             _Out_writes_opt_(*NumViewports)  D3D10_VIEWPORT *pViewports);
992 
993         void ( STDMETHODCALLTYPE *RSGetScissorRects )(
994             ID3D10Device1 * This,
995             /* [annotation] */
996             _Inout_ /*_range(0, D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE )*/   UINT *NumRects,
997             /* [annotation] */
998             _Out_writes_opt_(*NumRects)  D3D10_RECT *pRects);
999 
1000         HRESULT ( STDMETHODCALLTYPE *GetDeviceRemovedReason )(
1001             ID3D10Device1 * This);
1002 
1003         HRESULT ( STDMETHODCALLTYPE *SetExceptionMode )(
1004             ID3D10Device1 * This,
1005             UINT RaiseFlags);
1006 
1007         UINT ( STDMETHODCALLTYPE *GetExceptionMode )(
1008             ID3D10Device1 * This);
1009 
1010         HRESULT ( STDMETHODCALLTYPE *GetPrivateData )(
1011             ID3D10Device1 * This,
1012             /* [annotation] */
1013             _In_  REFGUID guid,
1014             /* [annotation] */
1015             _Inout_  UINT *pDataSize,
1016             /* [annotation] */
1017             _Out_writes_bytes_opt_(*pDataSize)  void *pData);
1018 
1019         HRESULT ( STDMETHODCALLTYPE *SetPrivateData )(
1020             ID3D10Device1 * This,
1021             /* [annotation] */
1022             _In_  REFGUID guid,
1023             /* [annotation] */
1024             _In_  UINT DataSize,
1025             /* [annotation] */
1026             _In_reads_bytes_opt_(DataSize)  const void *pData);
1027 
1028         HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )(
1029             ID3D10Device1 * This,
1030             /* [annotation] */
1031             _In_  REFGUID guid,
1032             /* [annotation] */
1033             _In_opt_  const IUnknown *pData);
1034 
1035         void ( STDMETHODCALLTYPE *ClearState )(
1036             ID3D10Device1 * This);
1037 
1038         void ( STDMETHODCALLTYPE *Flush )(
1039             ID3D10Device1 * This);
1040 
1041         HRESULT ( STDMETHODCALLTYPE *CreateBuffer )(
1042             ID3D10Device1 * This,
1043             /* [annotation] */
1044             _In_  const D3D10_BUFFER_DESC *pDesc,
1045             /* [annotation] */
1046             _In_opt_  const D3D10_SUBRESOURCE_DATA *pInitialData,
1047             /* [annotation] */
1048             _Out_opt_  ID3D10Buffer **ppBuffer);
1049 
1050         HRESULT ( STDMETHODCALLTYPE *CreateTexture1D )(
1051             ID3D10Device1 * This,
1052             /* [annotation] */
1053             _In_  const D3D10_TEXTURE1D_DESC *pDesc,
1054             /* [annotation] */
1055             _In_reads_opt_(_Inexpressible_(pDesc->MipLevels * pDesc->ArraySize))  const D3D10_SUBRESOURCE_DATA *pInitialData,
1056             /* [annotation] */
1057             _Out_  ID3D10Texture1D **ppTexture1D);
1058 
1059         HRESULT ( STDMETHODCALLTYPE *CreateTexture2D )(
1060             ID3D10Device1 * This,
1061             /* [annotation] */
1062             _In_  const D3D10_TEXTURE2D_DESC *pDesc,
1063             /* [annotation] */
1064             _In_reads_opt_(_Inexpressible_(pDesc->MipLevels * pDesc->ArraySize))  const D3D10_SUBRESOURCE_DATA *pInitialData,
1065             /* [annotation] */
1066             _Out_  ID3D10Texture2D **ppTexture2D);
1067 
1068         HRESULT ( STDMETHODCALLTYPE *CreateTexture3D )(
1069             ID3D10Device1 * This,
1070             /* [annotation] */
1071             _In_  const D3D10_TEXTURE3D_DESC *pDesc,
1072             /* [annotation] */
1073             _In_reads_opt_(_Inexpressible_(pDesc->MipLevels))  const D3D10_SUBRESOURCE_DATA *pInitialData,
1074             /* [annotation] */
1075             _Out_  ID3D10Texture3D **ppTexture3D);
1076 
1077         HRESULT ( STDMETHODCALLTYPE *CreateShaderResourceView )(
1078             ID3D10Device1 * This,
1079             /* [annotation] */
1080             _In_  ID3D10Resource *pResource,
1081             /* [annotation] */
1082             _In_opt_  const D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc,
1083             /* [annotation] */
1084             _Out_opt_  ID3D10ShaderResourceView **ppSRView);
1085 
1086         HRESULT ( STDMETHODCALLTYPE *CreateRenderTargetView )(
1087             ID3D10Device1 * This,
1088             /* [annotation] */
1089             _In_  ID3D10Resource *pResource,
1090             /* [annotation] */
1091             _In_opt_  const D3D10_RENDER_TARGET_VIEW_DESC *pDesc,
1092             /* [annotation] */
1093             _Out_opt_  ID3D10RenderTargetView **ppRTView);
1094 
1095         HRESULT ( STDMETHODCALLTYPE *CreateDepthStencilView )(
1096             ID3D10Device1 * This,
1097             /* [annotation] */
1098             _In_  ID3D10Resource *pResource,
1099             /* [annotation] */
1100             _In_opt_  const D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc,
1101             /* [annotation] */
1102             _Out_opt_  ID3D10DepthStencilView **ppDepthStencilView);
1103 
1104         HRESULT ( STDMETHODCALLTYPE *CreateInputLayout )(
1105             ID3D10Device1 * This,
1106             /* [annotation] */
1107             _In_reads_(NumElements)  const D3D10_INPUT_ELEMENT_DESC *pInputElementDescs,
1108             /* [annotation] */
1109             _In_range_( 0, D3D10_1_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT )  UINT NumElements,
1110             /* [annotation] */
1111             _In_reads_(BytecodeLength)  const void *pShaderBytecodeWithInputSignature,
1112             /* [annotation] */
1113             _In_  SIZE_T BytecodeLength,
1114             /* [annotation] */
1115             _Out_opt_  ID3D10InputLayout **ppInputLayout);
1116 
1117         HRESULT ( STDMETHODCALLTYPE *CreateVertexShader )(
1118             ID3D10Device1 * This,
1119             /* [annotation] */
1120             _In_reads_(BytecodeLength)  const void *pShaderBytecode,
1121             /* [annotation] */
1122             _In_  SIZE_T BytecodeLength,
1123             /* [annotation] */
1124             _Out_opt_  ID3D10VertexShader **ppVertexShader);
1125 
1126         HRESULT ( STDMETHODCALLTYPE *CreateGeometryShader )(
1127             ID3D10Device1 * This,
1128             /* [annotation] */
1129             _In_reads_(BytecodeLength)  const void *pShaderBytecode,
1130             /* [annotation] */
1131             _In_  SIZE_T BytecodeLength,
1132             /* [annotation] */
1133             _Out_opt_  ID3D10GeometryShader **ppGeometryShader);
1134 
1135         HRESULT ( STDMETHODCALLTYPE *CreateGeometryShaderWithStreamOutput )(
1136             ID3D10Device1 * This,
1137             /* [annotation] */
1138             _In_reads_(BytecodeLength)  const void *pShaderBytecode,
1139             /* [annotation] */
1140             _In_  SIZE_T BytecodeLength,
1141             /* [annotation] */
1142             _In_reads_opt_(NumEntries)  const D3D10_SO_DECLARATION_ENTRY *pSODeclaration,
1143             /* [annotation] */
1144             _In_range_( 0, D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT )  UINT NumEntries,
1145             /* [annotation] */
1146             _In_  UINT OutputStreamStride,
1147             /* [annotation] */
1148             _Out_opt_  ID3D10GeometryShader **ppGeometryShader);
1149 
1150         HRESULT ( STDMETHODCALLTYPE *CreatePixelShader )(
1151             ID3D10Device1 * This,
1152             /* [annotation] */
1153             _In_reads_(BytecodeLength)  const void *pShaderBytecode,
1154             /* [annotation] */
1155             _In_  SIZE_T BytecodeLength,
1156             /* [annotation] */
1157             _Out_opt_  ID3D10PixelShader **ppPixelShader);
1158 
1159         HRESULT ( STDMETHODCALLTYPE *CreateBlendState )(
1160             ID3D10Device1 * This,
1161             /* [annotation] */
1162             _In_  const D3D10_BLEND_DESC *pBlendStateDesc,
1163             /* [annotation] */
1164             _Out_opt_  ID3D10BlendState **ppBlendState);
1165 
1166         HRESULT ( STDMETHODCALLTYPE *CreateDepthStencilState )(
1167             ID3D10Device1 * This,
1168             /* [annotation] */
1169             _In_  const D3D10_DEPTH_STENCIL_DESC *pDepthStencilDesc,
1170             /* [annotation] */
1171             _Out_opt_  ID3D10DepthStencilState **ppDepthStencilState);
1172 
1173         HRESULT ( STDMETHODCALLTYPE *CreateRasterizerState )(
1174             ID3D10Device1 * This,
1175             /* [annotation] */
1176             _In_  const D3D10_RASTERIZER_DESC *pRasterizerDesc,
1177             /* [annotation] */
1178             _Out_opt_  ID3D10RasterizerState **ppRasterizerState);
1179 
1180         HRESULT ( STDMETHODCALLTYPE *CreateSamplerState )(
1181             ID3D10Device1 * This,
1182             /* [annotation] */
1183             _In_  const D3D10_SAMPLER_DESC *pSamplerDesc,
1184             /* [annotation] */
1185             _Out_opt_  ID3D10SamplerState **ppSamplerState);
1186 
1187         HRESULT ( STDMETHODCALLTYPE *CreateQuery )(
1188             ID3D10Device1 * This,
1189             /* [annotation] */
1190             _In_  const D3D10_QUERY_DESC *pQueryDesc,
1191             /* [annotation] */
1192             _Out_opt_  ID3D10Query **ppQuery);
1193 
1194         HRESULT ( STDMETHODCALLTYPE *CreatePredicate )(
1195             ID3D10Device1 * This,
1196             /* [annotation] */
1197             _In_  const D3D10_QUERY_DESC *pPredicateDesc,
1198             /* [annotation] */
1199             _Out_opt_  ID3D10Predicate **ppPredicate);
1200 
1201         HRESULT ( STDMETHODCALLTYPE *CreateCounter )(
1202             ID3D10Device1 * This,
1203             /* [annotation] */
1204             _In_  const D3D10_COUNTER_DESC *pCounterDesc,
1205             /* [annotation] */
1206             _Out_opt_  ID3D10Counter **ppCounter);
1207 
1208         HRESULT ( STDMETHODCALLTYPE *CheckFormatSupport )(
1209             ID3D10Device1 * This,
1210             /* [annotation] */
1211             _In_  DXGI_FORMAT Format,
1212             /* [annotation] */
1213             _Out_  UINT *pFormatSupport);
1214 
1215         HRESULT ( STDMETHODCALLTYPE *CheckMultisampleQualityLevels )(
1216             ID3D10Device1 * This,
1217             /* [annotation] */
1218             _In_  DXGI_FORMAT Format,
1219             /* [annotation] */
1220             _In_  UINT SampleCount,
1221             /* [annotation] */
1222             _Out_  UINT *pNumQualityLevels);
1223 
1224         void ( STDMETHODCALLTYPE *CheckCounterInfo )(
1225             ID3D10Device1 * This,
1226             /* [annotation] */
1227             _Out_  D3D10_COUNTER_INFO *pCounterInfo);
1228 
1229         HRESULT ( STDMETHODCALLTYPE *CheckCounter )(
1230             ID3D10Device1 * This,
1231             /* [annotation] */
1232             _In_  const D3D10_COUNTER_DESC *pDesc,
1233             /* [annotation] */
1234             _Out_  D3D10_COUNTER_TYPE *pType,
1235             /* [annotation] */
1236             _Out_  UINT *pActiveCounters,
1237             /* [annotation] */
1238             _Out_writes_opt_(*pNameLength)  LPSTR szName,
1239             /* [annotation] */
1240             _Inout_opt_  UINT *pNameLength,
1241             /* [annotation] */
1242             _Out_writes_opt_(*pUnitsLength)  LPSTR szUnits,
1243             /* [annotation] */
1244             _Inout_opt_  UINT *pUnitsLength,
1245             /* [annotation] */
1246             _Out_writes_opt_(*pDescriptionLength)  LPSTR szDescription,
1247             /* [annotation] */
1248             _Inout_opt_  UINT *pDescriptionLength);
1249 
1250         UINT ( STDMETHODCALLTYPE *GetCreationFlags )(
1251             ID3D10Device1 * This);
1252 
1253         HRESULT ( STDMETHODCALLTYPE *OpenSharedResource )(
1254             ID3D10Device1 * This,
1255             /* [annotation] */
1256             _In_  HANDLE hResource,
1257             /* [annotation] */
1258             _In_  REFIID ReturnedInterface,
1259             /* [annotation] */
1260             _Out_opt_  void **ppResource);
1261 
1262         void ( STDMETHODCALLTYPE *SetTextFilterSize )(
1263             ID3D10Device1 * This,
1264             /* [annotation] */
1265             _In_  UINT Width,
1266             /* [annotation] */
1267             _In_  UINT Height);
1268 
1269         void ( STDMETHODCALLTYPE *GetTextFilterSize )(
1270             ID3D10Device1 * This,
1271             /* [annotation] */
1272             _Out_opt_  UINT *pWidth,
1273             /* [annotation] */
1274             _Out_opt_  UINT *pHeight);
1275 
1276         HRESULT ( STDMETHODCALLTYPE *CreateShaderResourceView1 )(
1277             ID3D10Device1 * This,
1278             /* [annotation] */
1279             _In_  ID3D10Resource *pResource,
1280             /* [annotation] */
1281             _In_opt_  const D3D10_SHADER_RESOURCE_VIEW_DESC1 *pDesc,
1282             /* [annotation] */
1283             _Out_opt_  ID3D10ShaderResourceView1 **ppSRView);
1284 
1285         HRESULT ( STDMETHODCALLTYPE *CreateBlendState1 )(
1286             ID3D10Device1 * This,
1287             /* [annotation] */
1288             _In_  const D3D10_BLEND_DESC1 *pBlendStateDesc,
1289             /* [annotation] */
1290             _Out_opt_  ID3D10BlendState1 **ppBlendState);
1291 
1292         D3D10_FEATURE_LEVEL1 ( STDMETHODCALLTYPE *GetFeatureLevel )(
1293             ID3D10Device1 * This);
1294 
1295         END_INTERFACE
1296     } ID3D10Device1Vtbl;
1297 
1298     interface ID3D10Device1
1299     {
1300         CONST_VTBL struct ID3D10Device1Vtbl *lpVtbl;
1301     };
1302 
1303 #ifdef COBJMACROS
1304 
1305 #define ID3D10Device1_QueryInterface(This,riid,ppvObject)	\
1306     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
1307 
1308 #define ID3D10Device1_AddRef(This)	\
1309     ( (This)->lpVtbl -> AddRef(This) )
1310 
1311 #define ID3D10Device1_Release(This)	\
1312     ( (This)->lpVtbl -> Release(This) )
1313 
1314 #define ID3D10Device1_VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1315     ( (This)->lpVtbl -> VSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1316 
1317 #define ID3D10Device1_PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1318     ( (This)->lpVtbl -> PSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1319 
1320 #define ID3D10Device1_PSSetShader(This,pPixelShader)	\
1321     ( (This)->lpVtbl -> PSSetShader(This,pPixelShader) )
1322 
1323 #define ID3D10Device1_PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1324     ( (This)->lpVtbl -> PSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1325 
1326 #define ID3D10Device1_VSSetShader(This,pVertexShader)	\
1327     ( (This)->lpVtbl -> VSSetShader(This,pVertexShader) )
1328 
1329 #define ID3D10Device1_DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation)	\
1330     ( (This)->lpVtbl -> DrawIndexed(This,IndexCount,StartIndexLocation,BaseVertexLocation) )
1331 
1332 #define ID3D10Device1_Draw(This,VertexCount,StartVertexLocation)	\
1333     ( (This)->lpVtbl -> Draw(This,VertexCount,StartVertexLocation) )
1334 
1335 #define ID3D10Device1_PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1336     ( (This)->lpVtbl -> PSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1337 
1338 #define ID3D10Device1_IASetInputLayout(This,pInputLayout)	\
1339     ( (This)->lpVtbl -> IASetInputLayout(This,pInputLayout) )
1340 
1341 #define ID3D10Device1_IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)	\
1342     ( (This)->lpVtbl -> IASetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) )
1343 
1344 #define ID3D10Device1_IASetIndexBuffer(This,pIndexBuffer,Format,Offset)	\
1345     ( (This)->lpVtbl -> IASetIndexBuffer(This,pIndexBuffer,Format,Offset) )
1346 
1347 #define ID3D10Device1_DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation)	\
1348     ( (This)->lpVtbl -> DrawIndexedInstanced(This,IndexCountPerInstance,InstanceCount,StartIndexLocation,BaseVertexLocation,StartInstanceLocation) )
1349 
1350 #define ID3D10Device1_DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation)	\
1351     ( (This)->lpVtbl -> DrawInstanced(This,VertexCountPerInstance,InstanceCount,StartVertexLocation,StartInstanceLocation) )
1352 
1353 #define ID3D10Device1_GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1354     ( (This)->lpVtbl -> GSSetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1355 
1356 #define ID3D10Device1_GSSetShader(This,pShader)	\
1357     ( (This)->lpVtbl -> GSSetShader(This,pShader) )
1358 
1359 #define ID3D10Device1_IASetPrimitiveTopology(This,Topology)	\
1360     ( (This)->lpVtbl -> IASetPrimitiveTopology(This,Topology) )
1361 
1362 #define ID3D10Device1_VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1363     ( (This)->lpVtbl -> VSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1364 
1365 #define ID3D10Device1_VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1366     ( (This)->lpVtbl -> VSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1367 
1368 #define ID3D10Device1_SetPredication(This,pPredicate,PredicateValue)	\
1369     ( (This)->lpVtbl -> SetPredication(This,pPredicate,PredicateValue) )
1370 
1371 #define ID3D10Device1_GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1372     ( (This)->lpVtbl -> GSSetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1373 
1374 #define ID3D10Device1_GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1375     ( (This)->lpVtbl -> GSSetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1376 
1377 #define ID3D10Device1_OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView)	\
1378     ( (This)->lpVtbl -> OMSetRenderTargets(This,NumViews,ppRenderTargetViews,pDepthStencilView) )
1379 
1380 #define ID3D10Device1_OMSetBlendState(This,pBlendState,BlendFactor,SampleMask)	\
1381     ( (This)->lpVtbl -> OMSetBlendState(This,pBlendState,BlendFactor,SampleMask) )
1382 
1383 #define ID3D10Device1_OMSetDepthStencilState(This,pDepthStencilState,StencilRef)	\
1384     ( (This)->lpVtbl -> OMSetDepthStencilState(This,pDepthStencilState,StencilRef) )
1385 
1386 #define ID3D10Device1_SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets)	\
1387     ( (This)->lpVtbl -> SOSetTargets(This,NumBuffers,ppSOTargets,pOffsets) )
1388 
1389 #define ID3D10Device1_DrawAuto(This)	\
1390     ( (This)->lpVtbl -> DrawAuto(This) )
1391 
1392 #define ID3D10Device1_RSSetState(This,pRasterizerState)	\
1393     ( (This)->lpVtbl -> RSSetState(This,pRasterizerState) )
1394 
1395 #define ID3D10Device1_RSSetViewports(This,NumViewports,pViewports)	\
1396     ( (This)->lpVtbl -> RSSetViewports(This,NumViewports,pViewports) )
1397 
1398 #define ID3D10Device1_RSSetScissorRects(This,NumRects,pRects)	\
1399     ( (This)->lpVtbl -> RSSetScissorRects(This,NumRects,pRects) )
1400 
1401 #define ID3D10Device1_CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox)	\
1402     ( (This)->lpVtbl -> CopySubresourceRegion(This,pDstResource,DstSubresource,DstX,DstY,DstZ,pSrcResource,SrcSubresource,pSrcBox) )
1403 
1404 #define ID3D10Device1_CopyResource(This,pDstResource,pSrcResource)	\
1405     ( (This)->lpVtbl -> CopyResource(This,pDstResource,pSrcResource) )
1406 
1407 #define ID3D10Device1_UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch)	\
1408     ( (This)->lpVtbl -> UpdateSubresource(This,pDstResource,DstSubresource,pDstBox,pSrcData,SrcRowPitch,SrcDepthPitch) )
1409 
1410 #define ID3D10Device1_ClearRenderTargetView(This,pRenderTargetView,ColorRGBA)	\
1411     ( (This)->lpVtbl -> ClearRenderTargetView(This,pRenderTargetView,ColorRGBA) )
1412 
1413 #define ID3D10Device1_ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil)	\
1414     ( (This)->lpVtbl -> ClearDepthStencilView(This,pDepthStencilView,ClearFlags,Depth,Stencil) )
1415 
1416 #define ID3D10Device1_GenerateMips(This,pShaderResourceView)	\
1417     ( (This)->lpVtbl -> GenerateMips(This,pShaderResourceView) )
1418 
1419 #define ID3D10Device1_ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format)	\
1420     ( (This)->lpVtbl -> ResolveSubresource(This,pDstResource,DstSubresource,pSrcResource,SrcSubresource,Format) )
1421 
1422 #define ID3D10Device1_VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1423     ( (This)->lpVtbl -> VSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1424 
1425 #define ID3D10Device1_PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1426     ( (This)->lpVtbl -> PSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1427 
1428 #define ID3D10Device1_PSGetShader(This,ppPixelShader)	\
1429     ( (This)->lpVtbl -> PSGetShader(This,ppPixelShader) )
1430 
1431 #define ID3D10Device1_PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1432     ( (This)->lpVtbl -> PSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1433 
1434 #define ID3D10Device1_VSGetShader(This,ppVertexShader)	\
1435     ( (This)->lpVtbl -> VSGetShader(This,ppVertexShader) )
1436 
1437 #define ID3D10Device1_PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1438     ( (This)->lpVtbl -> PSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1439 
1440 #define ID3D10Device1_IAGetInputLayout(This,ppInputLayout)	\
1441     ( (This)->lpVtbl -> IAGetInputLayout(This,ppInputLayout) )
1442 
1443 #define ID3D10Device1_IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets)	\
1444     ( (This)->lpVtbl -> IAGetVertexBuffers(This,StartSlot,NumBuffers,ppVertexBuffers,pStrides,pOffsets) )
1445 
1446 #define ID3D10Device1_IAGetIndexBuffer(This,pIndexBuffer,Format,Offset)	\
1447     ( (This)->lpVtbl -> IAGetIndexBuffer(This,pIndexBuffer,Format,Offset) )
1448 
1449 #define ID3D10Device1_GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers)	\
1450     ( (This)->lpVtbl -> GSGetConstantBuffers(This,StartSlot,NumBuffers,ppConstantBuffers) )
1451 
1452 #define ID3D10Device1_GSGetShader(This,ppGeometryShader)	\
1453     ( (This)->lpVtbl -> GSGetShader(This,ppGeometryShader) )
1454 
1455 #define ID3D10Device1_IAGetPrimitiveTopology(This,pTopology)	\
1456     ( (This)->lpVtbl -> IAGetPrimitiveTopology(This,pTopology) )
1457 
1458 #define ID3D10Device1_VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1459     ( (This)->lpVtbl -> VSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1460 
1461 #define ID3D10Device1_VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1462     ( (This)->lpVtbl -> VSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1463 
1464 #define ID3D10Device1_GetPredication(This,ppPredicate,pPredicateValue)	\
1465     ( (This)->lpVtbl -> GetPredication(This,ppPredicate,pPredicateValue) )
1466 
1467 #define ID3D10Device1_GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews)	\
1468     ( (This)->lpVtbl -> GSGetShaderResources(This,StartSlot,NumViews,ppShaderResourceViews) )
1469 
1470 #define ID3D10Device1_GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers)	\
1471     ( (This)->lpVtbl -> GSGetSamplers(This,StartSlot,NumSamplers,ppSamplers) )
1472 
1473 #define ID3D10Device1_OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView)	\
1474     ( (This)->lpVtbl -> OMGetRenderTargets(This,NumViews,ppRenderTargetViews,ppDepthStencilView) )
1475 
1476 #define ID3D10Device1_OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask)	\
1477     ( (This)->lpVtbl -> OMGetBlendState(This,ppBlendState,BlendFactor,pSampleMask) )
1478 
1479 #define ID3D10Device1_OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef)	\
1480     ( (This)->lpVtbl -> OMGetDepthStencilState(This,ppDepthStencilState,pStencilRef) )
1481 
1482 #define ID3D10Device1_SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets)	\
1483     ( (This)->lpVtbl -> SOGetTargets(This,NumBuffers,ppSOTargets,pOffsets) )
1484 
1485 #define ID3D10Device1_RSGetState(This,ppRasterizerState)	\
1486     ( (This)->lpVtbl -> RSGetState(This,ppRasterizerState) )
1487 
1488 #define ID3D10Device1_RSGetViewports(This,NumViewports,pViewports)	\
1489     ( (This)->lpVtbl -> RSGetViewports(This,NumViewports,pViewports) )
1490 
1491 #define ID3D10Device1_RSGetScissorRects(This,NumRects,pRects)	\
1492     ( (This)->lpVtbl -> RSGetScissorRects(This,NumRects,pRects) )
1493 
1494 #define ID3D10Device1_GetDeviceRemovedReason(This)	\
1495     ( (This)->lpVtbl -> GetDeviceRemovedReason(This) )
1496 
1497 #define ID3D10Device1_SetExceptionMode(This,RaiseFlags)	\
1498     ( (This)->lpVtbl -> SetExceptionMode(This,RaiseFlags) )
1499 
1500 #define ID3D10Device1_GetExceptionMode(This)	\
1501     ( (This)->lpVtbl -> GetExceptionMode(This) )
1502 
1503 #define ID3D10Device1_GetPrivateData(This,guid,pDataSize,pData)	\
1504     ( (This)->lpVtbl -> GetPrivateData(This,guid,pDataSize,pData) )
1505 
1506 #define ID3D10Device1_SetPrivateData(This,guid,DataSize,pData)	\
1507     ( (This)->lpVtbl -> SetPrivateData(This,guid,DataSize,pData) )
1508 
1509 #define ID3D10Device1_SetPrivateDataInterface(This,guid,pData)	\
1510     ( (This)->lpVtbl -> SetPrivateDataInterface(This,guid,pData) )
1511 
1512 #define ID3D10Device1_ClearState(This)	\
1513     ( (This)->lpVtbl -> ClearState(This) )
1514 
1515 #define ID3D10Device1_Flush(This)	\
1516     ( (This)->lpVtbl -> Flush(This) )
1517 
1518 #define ID3D10Device1_CreateBuffer(This,pDesc,pInitialData,ppBuffer)	\
1519     ( (This)->lpVtbl -> CreateBuffer(This,pDesc,pInitialData,ppBuffer) )
1520 
1521 #define ID3D10Device1_CreateTexture1D(This,pDesc,pInitialData,ppTexture1D)	\
1522     ( (This)->lpVtbl -> CreateTexture1D(This,pDesc,pInitialData,ppTexture1D) )
1523 
1524 #define ID3D10Device1_CreateTexture2D(This,pDesc,pInitialData,ppTexture2D)	\
1525     ( (This)->lpVtbl -> CreateTexture2D(This,pDesc,pInitialData,ppTexture2D) )
1526 
1527 #define ID3D10Device1_CreateTexture3D(This,pDesc,pInitialData,ppTexture3D)	\
1528     ( (This)->lpVtbl -> CreateTexture3D(This,pDesc,pInitialData,ppTexture3D) )
1529 
1530 #define ID3D10Device1_CreateShaderResourceView(This,pResource,pDesc,ppSRView)	\
1531     ( (This)->lpVtbl -> CreateShaderResourceView(This,pResource,pDesc,ppSRView) )
1532 
1533 #define ID3D10Device1_CreateRenderTargetView(This,pResource,pDesc,ppRTView)	\
1534     ( (This)->lpVtbl -> CreateRenderTargetView(This,pResource,pDesc,ppRTView) )
1535 
1536 #define ID3D10Device1_CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView)	\
1537     ( (This)->lpVtbl -> CreateDepthStencilView(This,pResource,pDesc,ppDepthStencilView) )
1538 
1539 #define ID3D10Device1_CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout)	\
1540     ( (This)->lpVtbl -> CreateInputLayout(This,pInputElementDescs,NumElements,pShaderBytecodeWithInputSignature,BytecodeLength,ppInputLayout) )
1541 
1542 #define ID3D10Device1_CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader)	\
1543     ( (This)->lpVtbl -> CreateVertexShader(This,pShaderBytecode,BytecodeLength,ppVertexShader) )
1544 
1545 #define ID3D10Device1_CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader)	\
1546     ( (This)->lpVtbl -> CreateGeometryShader(This,pShaderBytecode,BytecodeLength,ppGeometryShader) )
1547 
1548 #define ID3D10Device1_CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader)	\
1549     ( (This)->lpVtbl -> CreateGeometryShaderWithStreamOutput(This,pShaderBytecode,BytecodeLength,pSODeclaration,NumEntries,OutputStreamStride,ppGeometryShader) )
1550 
1551 #define ID3D10Device1_CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader)	\
1552     ( (This)->lpVtbl -> CreatePixelShader(This,pShaderBytecode,BytecodeLength,ppPixelShader) )
1553 
1554 #define ID3D10Device1_CreateBlendState(This,pBlendStateDesc,ppBlendState)	\
1555     ( (This)->lpVtbl -> CreateBlendState(This,pBlendStateDesc,ppBlendState) )
1556 
1557 #define ID3D10Device1_CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState)	\
1558     ( (This)->lpVtbl -> CreateDepthStencilState(This,pDepthStencilDesc,ppDepthStencilState) )
1559 
1560 #define ID3D10Device1_CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState)	\
1561     ( (This)->lpVtbl -> CreateRasterizerState(This,pRasterizerDesc,ppRasterizerState) )
1562 
1563 #define ID3D10Device1_CreateSamplerState(This,pSamplerDesc,ppSamplerState)	\
1564     ( (This)->lpVtbl -> CreateSamplerState(This,pSamplerDesc,ppSamplerState) )
1565 
1566 #define ID3D10Device1_CreateQuery(This,pQueryDesc,ppQuery)	\
1567     ( (This)->lpVtbl -> CreateQuery(This,pQueryDesc,ppQuery) )
1568 
1569 #define ID3D10Device1_CreatePredicate(This,pPredicateDesc,ppPredicate)	\
1570     ( (This)->lpVtbl -> CreatePredicate(This,pPredicateDesc,ppPredicate) )
1571 
1572 #define ID3D10Device1_CreateCounter(This,pCounterDesc,ppCounter)	\
1573     ( (This)->lpVtbl -> CreateCounter(This,pCounterDesc,ppCounter) )
1574 
1575 #define ID3D10Device1_CheckFormatSupport(This,Format,pFormatSupport)	\
1576     ( (This)->lpVtbl -> CheckFormatSupport(This,Format,pFormatSupport) )
1577 
1578 #define ID3D10Device1_CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels)	\
1579     ( (This)->lpVtbl -> CheckMultisampleQualityLevels(This,Format,SampleCount,pNumQualityLevels) )
1580 
1581 #define ID3D10Device1_CheckCounterInfo(This,pCounterInfo)	\
1582     ( (This)->lpVtbl -> CheckCounterInfo(This,pCounterInfo) )
1583 
1584 #define ID3D10Device1_CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength)	\
1585     ( (This)->lpVtbl -> CheckCounter(This,pDesc,pType,pActiveCounters,szName,pNameLength,szUnits,pUnitsLength,szDescription,pDescriptionLength) )
1586 
1587 #define ID3D10Device1_GetCreationFlags(This)	\
1588     ( (This)->lpVtbl -> GetCreationFlags(This) )
1589 
1590 #define ID3D10Device1_OpenSharedResource(This,hResource,ReturnedInterface,ppResource)	\
1591     ( (This)->lpVtbl -> OpenSharedResource(This,hResource,ReturnedInterface,ppResource) )
1592 
1593 #define ID3D10Device1_SetTextFilterSize(This,Width,Height)	\
1594     ( (This)->lpVtbl -> SetTextFilterSize(This,Width,Height) )
1595 
1596 #define ID3D10Device1_GetTextFilterSize(This,pWidth,pHeight)	\
1597     ( (This)->lpVtbl -> GetTextFilterSize(This,pWidth,pHeight) )
1598 
1599 #define ID3D10Device1_CreateShaderResourceView1(This,pResource,pDesc,ppSRView)	\
1600     ( (This)->lpVtbl -> CreateShaderResourceView1(This,pResource,pDesc,ppSRView) )
1601 
1602 #define ID3D10Device1_CreateBlendState1(This,pBlendStateDesc,ppBlendState)	\
1603     ( (This)->lpVtbl -> CreateBlendState1(This,pBlendStateDesc,ppBlendState) )
1604 
1605 #define ID3D10Device1_GetFeatureLevel(This)	\
1606     ( (This)->lpVtbl -> GetFeatureLevel(This) )
1607 
1608 #endif /* COBJMACROS */
1609 
1610 #endif 	/* C style interface */
1611 
1612 #endif 	/* __ID3D10Device1_INTERFACE_DEFINED__ */
1613 
1614 /* interface __MIDL_itf_d3d10_1_0000_0003 */
1615 /* [local] */
1616 
1617 #define	D3D10_1_SDK_VERSION	( ( 0 + 0x20 )  )
1618 
1619 #include "d3d10_1shader.h"
1620 
1621 ///////////////////////////////////////////////////////////////////////////
1622 // D3D10CreateDevice1
1623 // ------------------
1624 //
1625 // pAdapter
1626 //      If NULL, D3D10CreateDevice1 will choose the primary adapter and
1627 //      create a new instance from a temporarily created IDXGIFactory.
1628 //      If non-NULL, D3D10CreateDevice1 will register the appropriate
1629 //      device, if necessary (via IDXGIAdapter::RegisterDrver), before
1630 //      creating the device.
1631 // DriverType
1632 //      Specifies the driver type to be created: hardware, reference or
1633 //      null.
1634 // Software
1635 //      HMODULE of a DLL implementing a software rasterizer. Must be NULL for
1636 //      non-Software driver types.
1637 // Flags
1638 //      Any of those documented for D3D10CreateDeviceAndSwapChain1.
1639 // HardwareLevel
1640 //      Any of those documented for D3D10CreateDeviceAndSwapChain1.
1641 // SDKVersion
1642 //      SDK version. Use the D3D10_1_SDK_VERSION macro.
1643 // ppDevice
1644 //      Pointer to returned interface.
1645 //
1646 // Return Values
1647 //  Any of those documented for
1648 //          CreateDXGIFactory
1649 //          IDXGIFactory::EnumAdapters
1650 //          IDXGIAdapter::RegisterDriver
1651 //          D3D10CreateDevice1
1652 //
1653 ///////////////////////////////////////////////////////////////////////////
1654 typedef HRESULT (WINAPI* PFN_D3D10_CREATE_DEVICE1)(IDXGIAdapter *,
1655     D3D10_DRIVER_TYPE, HMODULE, UINT, D3D10_FEATURE_LEVEL1, UINT, ID3D10Device1**);
1656 
1657 HRESULT WINAPI D3D10CreateDevice1(
1658     _In_opt_ IDXGIAdapter *pAdapter,
1659     D3D10_DRIVER_TYPE DriverType,
1660     HMODULE Software,
1661     UINT Flags,
1662     D3D10_FEATURE_LEVEL1 HardwareLevel,
1663     UINT SDKVersion,
1664     _Out_opt_ ID3D10Device1 **ppDevice);
1665 
1666 ///////////////////////////////////////////////////////////////////////////
1667 // D3D10CreateDeviceAndSwapChain1
1668 // ------------------------------
1669 //
1670 // ppAdapter
1671 //      If NULL, D3D10CreateDevice1 will choose the primary adapter and
1672 //      create a new instance from a temporarily created IDXGIFactory.
1673 //      If non-NULL, D3D10CreateDevice1 will register the appropriate
1674 //      device, if necessary (via IDXGIAdapter::RegisterDrver), before
1675 //      creating the device.
1676 // DriverType
1677 //      Specifies the driver type to be created: hardware, reference or
1678 //      null.
1679 // Software
1680 //      HMODULE of a DLL implementing a software rasterizer. Must be NULL for
1681 //      non-Software driver types.
1682 // Flags
1683 //      Any of those documented for D3D10CreateDevice1.
1684 // HardwareLevel
1685 //      Any of:
1686 //          D3D10_CREATE_LEVEL_10_0
1687 //          D3D10_CREATE_LEVEL_10_1
1688 // SDKVersion
1689 //      SDK version. Use the D3D10_1_SDK_VERSION macro.
1690 // pSwapChainDesc
1691 //      Swap chain description, may be NULL.
1692 // ppSwapChain
1693 //      Pointer to returned interface. May be NULL.
1694 // ppDevice
1695 //      Pointer to returned interface.
1696 //
1697 // Return Values
1698 //  Any of those documented for
1699 //          CreateDXGIFactory
1700 //          IDXGIFactory::EnumAdapters
1701 //          IDXGIAdapter::RegisterDriver
1702 //          D3D10CreateDevice1
1703 //          IDXGIFactory::CreateSwapChain
1704 //
1705 ///////////////////////////////////////////////////////////////////////////
1706 typedef HRESULT (WINAPI* PFN_D3D10_CREATE_DEVICE_AND_SWAP_CHAIN1)(IDXGIAdapter *,
1707     D3D10_DRIVER_TYPE, HMODULE, UINT, D3D10_FEATURE_LEVEL1, UINT, DXGI_SWAP_CHAIN_DESC *, IDXGISwapChain **, ID3D10Device1 **);
1708 
1709 HRESULT WINAPI D3D10CreateDeviceAndSwapChain1(
1710     _In_opt_ IDXGIAdapter *pAdapter,
1711     D3D10_DRIVER_TYPE DriverType,
1712     HMODULE Software,
1713     UINT Flags,
1714     D3D10_FEATURE_LEVEL1 HardwareLevel,
1715     UINT SDKVersion,
1716     _In_opt_ DXGI_SWAP_CHAIN_DESC *pSwapChainDesc,
1717     _Out_opt_ IDXGISwapChain **ppSwapChain,
1718     _Out_opt_ ID3D10Device1 **ppDevice);
1719 
1720 /*#endif*/ /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
1721 /*#pragma endregion*/
1722 DEFINE_GUID(IID_ID3D10BlendState1,0xEDAD8D99,0x8A35,0x4d6d,0x85,0x66,0x2E,0xA2,0x76,0xCD,0xE1,0x61);
1723 DEFINE_GUID(IID_ID3D10ShaderResourceView1,0x9B7E4C87,0x342C,0x4106,0xA1,0x9F,0x4F,0x27,0x04,0xF6,0x89,0xF0);
1724 DEFINE_GUID(IID_ID3D10Device1,0x9B7E4C8F,0x342C,0x4106,0xA1,0x9F,0x4F,0x27,0x04,0xF6,0x89,0xF0);
1725 
1726 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0003_v0_0_c_ifspec;
1727 extern RPC_IF_HANDLE __MIDL_itf_d3d10_1_0000_0003_v0_0_s_ifspec;
1728 
1729 /* Additional Prototypes for ALL interfaces */
1730 
1731 /* end of Additional Prototypes */
1732 
1733 #ifdef __cplusplus
1734 }
1735 #endif
1736 
1737 #endif
1738