/*------------------------------------------------------------------------------------- * * Copyright (c) Microsoft Corporation * Licensed under the MIT license * *-------------------------------------------------------------------------------------*/ /* this ALWAYS GENERATED file contains the definitions for the interfaces */ /* File created by MIDL compiler version 8.01.0628 */ /* verify that the version is high enough to compile this file*/ #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 500 #endif /* verify that the version is high enough to compile this file*/ #ifndef __REQUIRED_RPCSAL_H_VERSION__ #define __REQUIRED_RPCSAL_H_VERSION__ 100 #endif #include "rpc.h" #include "rpcndr.h" #ifndef __RPCNDR_H_VERSION__ #error this stub requires an updated version of #endif /* __RPCNDR_H_VERSION__ */ #ifndef COM_NO_WINDOWS_H #include "windows.h" #include "ole2.h" #endif /*COM_NO_WINDOWS_H*/ #ifndef __d3d12compiler_h__ #define __d3d12compiler_h__ #if defined(_MSC_VER) && (_MSC_VER >= 1020) #pragma once #endif #ifndef DECLSPEC_XFGVIRT #if defined(_CONTROL_FLOW_GUARD_XFG) #define DECLSPEC_XFGVIRT(base, func) __declspec(xfg_virtual(base, func)) #else #define DECLSPEC_XFGVIRT(base, func) #endif #endif /* Forward Declarations */ #ifndef __ID3D12CompilerFactoryChild_FWD_DEFINED__ #define __ID3D12CompilerFactoryChild_FWD_DEFINED__ typedef interface ID3D12CompilerFactoryChild ID3D12CompilerFactoryChild; #endif /* __ID3D12CompilerFactoryChild_FWD_DEFINED__ */ #ifndef __ID3D12CompilerCacheSession_FWD_DEFINED__ #define __ID3D12CompilerCacheSession_FWD_DEFINED__ typedef interface ID3D12CompilerCacheSession ID3D12CompilerCacheSession; #endif /* __ID3D12CompilerCacheSession_FWD_DEFINED__ */ #ifndef __ID3D12CompilerStateObject_FWD_DEFINED__ #define __ID3D12CompilerStateObject_FWD_DEFINED__ typedef interface ID3D12CompilerStateObject ID3D12CompilerStateObject; #endif /* __ID3D12CompilerStateObject_FWD_DEFINED__ */ #ifndef __ID3D12Compiler_FWD_DEFINED__ #define __ID3D12Compiler_FWD_DEFINED__ typedef interface ID3D12Compiler ID3D12Compiler; #endif /* __ID3D12Compiler_FWD_DEFINED__ */ #ifndef __ID3D12CompilerFactory_FWD_DEFINED__ #define __ID3D12CompilerFactory_FWD_DEFINED__ typedef interface ID3D12CompilerFactory ID3D12CompilerFactory; #endif /* __ID3D12CompilerFactory_FWD_DEFINED__ */ /* header files for imported files */ #include "oaidl.h" #include "ocidl.h" #include "dxgicommon.h" #include "d3d12.h" #ifdef __cplusplus extern "C"{ #endif /* interface __MIDL_itf_d3d12compiler_0000_0000 */ /* [local] */ #include #pragma region App Family #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) typedef struct D3D12_ADAPTER_FAMILY { WCHAR szAdapterFamily[ 128 ]; } D3D12_ADAPTER_FAMILY; typedef HRESULT (WINAPI* PFN_D3D12_COMPILER_CREATE_FACTORY)( _In_ LPCWSTR pPluginCompilerDllPath, _In_ REFIID riid, _COM_Outptr_opt_ void** ppFactory ); HRESULT WINAPI D3D12CompilerCreateFactory( _In_ LPCWSTR pPluginCompilerDllPath, _In_ REFIID riid, // Expected: ID3D12CompilerFactory _COM_Outptr_opt_ void** ppFactory ); typedef HRESULT (WINAPI* PFN_D3D12_COMPILER_SERIALIZE_VERSIONED_ROOT_SIGNATURE)( _In_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC* pRootSignature, _Out_ ID3DBlob** ppBlob, _Always_(_Outptr_opt_result_maybenull_) ID3DBlob** ppErrorBlob); HRESULT WINAPI D3D12CompilerSerializeVersionedRootSignature( _In_ const D3D12_VERSIONED_ROOT_SIGNATURE_DESC* pRootSignature, _Out_ ID3DBlob** ppBlob, _Always_(_Outptr_opt_result_maybenull_) ID3DBlob** ppErrorBlob); extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0000_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0000_v0_0_s_ifspec; #ifndef __ID3D12CompilerFactoryChild_INTERFACE_DEFINED__ #define __ID3D12CompilerFactoryChild_INTERFACE_DEFINED__ /* interface ID3D12CompilerFactoryChild */ /* [unique][local][object][uuid] */ EXTERN_C const IID IID_ID3D12CompilerFactoryChild; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("e0d06420-9f31-47e8-ae9a-dd2ba25ac0bc") ID3D12CompilerFactoryChild : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetFactory( _In_ REFIID riid, _COM_Outptr_ void **ppCompilerFactory) = 0; }; #else /* C style interface */ typedef struct ID3D12CompilerFactoryChildVtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CompilerFactoryChild * This, REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( ID3D12CompilerFactoryChild * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( ID3D12CompilerFactoryChild * This); DECLSPEC_XFGVIRT(ID3D12CompilerFactoryChild, GetFactory) HRESULT ( STDMETHODCALLTYPE *GetFactory )( ID3D12CompilerFactoryChild * This, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerFactory); END_INTERFACE } ID3D12CompilerFactoryChildVtbl; interface ID3D12CompilerFactoryChild { CONST_VTBL struct ID3D12CompilerFactoryChildVtbl *lpVtbl; }; #ifdef COBJMACROS #define ID3D12CompilerFactoryChild_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define ID3D12CompilerFactoryChild_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define ID3D12CompilerFactoryChild_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define ID3D12CompilerFactoryChild_GetFactory(This,riid,ppCompilerFactory) \ ( (This)->lpVtbl -> GetFactory(This,riid,ppCompilerFactory) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __ID3D12CompilerFactoryChild_INTERFACE_DEFINED__ */ /* interface __MIDL_itf_d3d12compiler_0000_0001 */ /* [local] */ typedef enum D3D12_COMPILER_VALUE_TYPE { D3D12_COMPILER_VALUE_TYPE_OBJECT_CODE = 0, D3D12_COMPILER_VALUE_TYPE_METADATA = 1, D3D12_COMPILER_VALUE_TYPE_DEBUG_PDB = 2, D3D12_COMPILER_VALUE_TYPE_PERFORMANCE_DATA = 3 } D3D12_COMPILER_VALUE_TYPE; typedef enum D3D12_COMPILER_VALUE_TYPE_FLAGS { D3D12_COMPILER_VALUE_TYPE_FLAGS_NONE = 0, D3D12_COMPILER_VALUE_TYPE_FLAGS_OBJECT_CODE = ( 1 << D3D12_COMPILER_VALUE_TYPE_OBJECT_CODE ) , D3D12_COMPILER_VALUE_TYPE_FLAGS_METADATA = ( 1 << D3D12_COMPILER_VALUE_TYPE_METADATA ) , D3D12_COMPILER_VALUE_TYPE_FLAGS_DEBUG_PDB = ( 1 << D3D12_COMPILER_VALUE_TYPE_DEBUG_PDB ) , D3D12_COMPILER_VALUE_TYPE_FLAGS_PERFORMANCE_DATA = ( 1 << D3D12_COMPILER_VALUE_TYPE_PERFORMANCE_DATA ) } D3D12_COMPILER_VALUE_TYPE_FLAGS; DEFINE_ENUM_FLAG_OPERATORS( D3D12_COMPILER_VALUE_TYPE_FLAGS ) typedef struct D3D12_COMPILER_DATABASE_PATH { D3D12_COMPILER_VALUE_TYPE_FLAGS Types; LPCWSTR pPath; } D3D12_COMPILER_DATABASE_PATH; typedef struct D3D12_COMPILER_CACHE_GROUP_KEY { _Field_size_bytes_full_(KeySize) const void *pKey; UINT KeySize; } D3D12_COMPILER_CACHE_GROUP_KEY; typedef struct D3D12_COMPILER_CACHE_VALUE_KEY { _Field_size_bytes_full_(KeySize) const void *pKey; UINT KeySize; } D3D12_COMPILER_CACHE_VALUE_KEY; typedef struct D3D12_COMPILER_CACHE_VALUE { _Field_size_bytes_full_(ValueSize) void *pValue; UINT ValueSize; } D3D12_COMPILER_CACHE_VALUE; typedef struct D3D12_COMPILER_CACHE_TYPED_VALUE { D3D12_COMPILER_VALUE_TYPE Type; D3D12_COMPILER_CACHE_VALUE Value; } D3D12_COMPILER_CACHE_TYPED_VALUE; typedef struct D3D12_COMPILER_CACHE_CONST_VALUE { _Field_size_bytes_full_(ValueSize) const void *pValue; UINT ValueSize; } D3D12_COMPILER_CACHE_CONST_VALUE; typedef struct D3D12_COMPILER_CACHE_TYPED_CONST_VALUE { D3D12_COMPILER_VALUE_TYPE Type; D3D12_COMPILER_CACHE_CONST_VALUE Value; } D3D12_COMPILER_CACHE_TYPED_CONST_VALUE; typedef struct D3D12_COMPILER_TARGET { UINT AdapterFamilyIndex; UINT64 ABIVersion; } D3D12_COMPILER_TARGET; typedef void *( __stdcall *D3D12CompilerCacheSessionAllocationFunc )( SIZE_T SizeInBytes, _Inout_opt_ void *pContext); typedef void ( __stdcall *D3D12CompilerCacheSessionGroupValueKeysFunc )( _In_ const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKey, _Inout_opt_ void *pContext); typedef void ( __stdcall *D3D12CompilerCacheSessionGroupValuesFunc )( UINT ValueKeyIndex, _In_ const D3D12_COMPILER_CACHE_TYPED_CONST_VALUE *pTypedValue, _Inout_opt_ void *pContext); extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0001_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0001_v0_0_s_ifspec; #ifndef __ID3D12CompilerCacheSession_INTERFACE_DEFINED__ #define __ID3D12CompilerCacheSession_INTERFACE_DEFINED__ /* interface ID3D12CompilerCacheSession */ /* [unique][local][object][uuid] */ EXTERN_C const IID IID_ID3D12CompilerCacheSession; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5704e5e6-054b-4738-b661-7b0d68d8dde2") ID3D12CompilerCacheSession : public ID3D12CompilerFactoryChild { public: virtual HRESULT STDMETHODCALLTYPE FindGroup( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _Out_opt_ UINT *pGroupVersion) = 0; virtual HRESULT STDMETHODCALLTYPE FindGroupValueKeys( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _In_opt_ const UINT *pExpectedGroupVersion, _In_ D3D12CompilerCacheSessionGroupValueKeysFunc CallbackFunc, _Inout_opt_ void *pContext) = 0; virtual HRESULT STDMETHODCALLTYPE FindGroupValues( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _In_opt_ const UINT *pExpectedGroupVersion, D3D12_COMPILER_VALUE_TYPE_FLAGS ValueTypeFlags, _In_opt_ D3D12CompilerCacheSessionGroupValuesFunc CallbackFunc, _Inout_opt_ void *pContext) = 0; virtual HRESULT STDMETHODCALLTYPE FindValue( _In_ const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKey, _Inout_count_(NumTypedValues) D3D12_COMPILER_CACHE_TYPED_VALUE *pTypedValues, UINT NumTypedValues, _In_opt_ D3D12CompilerCacheSessionAllocationFunc pCallbackFunc, _Inout_opt_ void *pContext) = 0; virtual const D3D12_APPLICATION_DESC *STDMETHODCALLTYPE GetApplicationDesc( void) = 0; #if defined(_MSC_VER) || !defined(_WIN32) virtual D3D12_COMPILER_TARGET STDMETHODCALLTYPE GetCompilerTarget( void) = 0; #else virtual D3D12_COMPILER_TARGET *STDMETHODCALLTYPE GetCompilerTarget( D3D12_COMPILER_TARGET * RetVal) = 0; #endif virtual D3D12_COMPILER_VALUE_TYPE_FLAGS STDMETHODCALLTYPE GetValueTypes( void) = 0; virtual HRESULT STDMETHODCALLTYPE StoreGroupValueKeys( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_reads_(NumValueKeys) const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKeys, UINT NumValueKeys) = 0; virtual HRESULT STDMETHODCALLTYPE StoreValue( _In_ const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKey, _In_reads_(NumTypedValues) const D3D12_COMPILER_CACHE_TYPED_CONST_VALUE *pTypedValues, UINT NumTypedValues) = 0; }; #else /* C style interface */ typedef struct ID3D12CompilerCacheSessionVtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CompilerCacheSession * This, REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( ID3D12CompilerCacheSession * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( ID3D12CompilerCacheSession * This); DECLSPEC_XFGVIRT(ID3D12CompilerFactoryChild, GetFactory) HRESULT ( STDMETHODCALLTYPE *GetFactory )( ID3D12CompilerCacheSession * This, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerFactory); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, FindGroup) HRESULT ( STDMETHODCALLTYPE *FindGroup )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _Out_opt_ UINT *pGroupVersion); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, FindGroupValueKeys) HRESULT ( STDMETHODCALLTYPE *FindGroupValueKeys )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _In_opt_ const UINT *pExpectedGroupVersion, _In_ D3D12CompilerCacheSessionGroupValueKeysFunc CallbackFunc, _Inout_opt_ void *pContext); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, FindGroupValues) HRESULT ( STDMETHODCALLTYPE *FindGroupValues )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, _In_opt_ const UINT *pExpectedGroupVersion, D3D12_COMPILER_VALUE_TYPE_FLAGS ValueTypeFlags, _In_opt_ D3D12CompilerCacheSessionGroupValuesFunc CallbackFunc, _Inout_opt_ void *pContext); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, FindValue) HRESULT ( STDMETHODCALLTYPE *FindValue )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKey, _Inout_count_(NumTypedValues) D3D12_COMPILER_CACHE_TYPED_VALUE *pTypedValues, UINT NumTypedValues, _In_opt_ D3D12CompilerCacheSessionAllocationFunc pCallbackFunc, _Inout_opt_ void *pContext); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, GetApplicationDesc) const D3D12_APPLICATION_DESC *( STDMETHODCALLTYPE *GetApplicationDesc )( ID3D12CompilerCacheSession * This); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, GetCompilerTarget) #if !defined(_WIN32) D3D12_COMPILER_TARGET ( STDMETHODCALLTYPE *GetCompilerTarget )( ID3D12CompilerCacheSession * This); #else D3D12_COMPILER_TARGET *( STDMETHODCALLTYPE *GetCompilerTarget )( ID3D12CompilerCacheSession * This, D3D12_COMPILER_TARGET * RetVal); #endif DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, GetValueTypes) D3D12_COMPILER_VALUE_TYPE_FLAGS ( STDMETHODCALLTYPE *GetValueTypes )( ID3D12CompilerCacheSession * This); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, StoreGroupValueKeys) HRESULT ( STDMETHODCALLTYPE *StoreGroupValueKeys )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_reads_(NumValueKeys) const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKeys, UINT NumValueKeys); DECLSPEC_XFGVIRT(ID3D12CompilerCacheSession, StoreValue) HRESULT ( STDMETHODCALLTYPE *StoreValue )( ID3D12CompilerCacheSession * This, _In_ const D3D12_COMPILER_CACHE_VALUE_KEY *pValueKey, _In_reads_(NumTypedValues) const D3D12_COMPILER_CACHE_TYPED_CONST_VALUE *pTypedValues, UINT NumTypedValues); END_INTERFACE } ID3D12CompilerCacheSessionVtbl; interface ID3D12CompilerCacheSession { CONST_VTBL struct ID3D12CompilerCacheSessionVtbl *lpVtbl; }; #ifdef COBJMACROS #define ID3D12CompilerCacheSession_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define ID3D12CompilerCacheSession_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define ID3D12CompilerCacheSession_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define ID3D12CompilerCacheSession_GetFactory(This,riid,ppCompilerFactory) \ ( (This)->lpVtbl -> GetFactory(This,riid,ppCompilerFactory) ) #define ID3D12CompilerCacheSession_FindGroup(This,pGroupKey,pGroupVersion) \ ( (This)->lpVtbl -> FindGroup(This,pGroupKey,pGroupVersion) ) #define ID3D12CompilerCacheSession_FindGroupValueKeys(This,pGroupKey,pExpectedGroupVersion,CallbackFunc,pContext) \ ( (This)->lpVtbl -> FindGroupValueKeys(This,pGroupKey,pExpectedGroupVersion,CallbackFunc,pContext) ) #define ID3D12CompilerCacheSession_FindGroupValues(This,pGroupKey,pExpectedGroupVersion,ValueTypeFlags,CallbackFunc,pContext) \ ( (This)->lpVtbl -> FindGroupValues(This,pGroupKey,pExpectedGroupVersion,ValueTypeFlags,CallbackFunc,pContext) ) #define ID3D12CompilerCacheSession_FindValue(This,pValueKey,pTypedValues,NumTypedValues,pCallbackFunc,pContext) \ ( (This)->lpVtbl -> FindValue(This,pValueKey,pTypedValues,NumTypedValues,pCallbackFunc,pContext) ) #define ID3D12CompilerCacheSession_GetApplicationDesc(This) \ ( (This)->lpVtbl -> GetApplicationDesc(This) ) #if !defined(_WIN32) #define ID3D12CompilerCacheSession_GetCompilerTarget(This) \ ( (This)->lpVtbl -> GetCompilerTarget(This) ) #else #define ID3D12CompilerCacheSession_GetCompilerTarget(This,RetVal) \ ( (This)->lpVtbl -> GetCompilerTarget(This,RetVal) ) #endif #define ID3D12CompilerCacheSession_GetValueTypes(This) \ ( (This)->lpVtbl -> GetValueTypes(This) ) #define ID3D12CompilerCacheSession_StoreGroupValueKeys(This,pGroupKey,GroupVersion,pValueKeys,NumValueKeys) \ ( (This)->lpVtbl -> StoreGroupValueKeys(This,pGroupKey,GroupVersion,pValueKeys,NumValueKeys) ) #define ID3D12CompilerCacheSession_StoreValue(This,pValueKey,pTypedValues,NumTypedValues) \ ( (This)->lpVtbl -> StoreValue(This,pValueKey,pTypedValues,NumTypedValues) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __ID3D12CompilerCacheSession_INTERFACE_DEFINED__ */ #ifndef __ID3D12CompilerStateObject_INTERFACE_DEFINED__ #define __ID3D12CompilerStateObject_INTERFACE_DEFINED__ /* interface ID3D12CompilerStateObject */ /* [unique][local][object][uuid] */ EXTERN_C const IID IID_ID3D12CompilerStateObject; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("5981cca4-e8ae-44ca-9b92-4fa86f5a3a3a") ID3D12CompilerStateObject : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetCompiler( _In_ REFIID riid, _COM_Outptr_ void **ppCompiler) = 0; }; #else /* C style interface */ typedef struct ID3D12CompilerStateObjectVtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CompilerStateObject * This, REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( ID3D12CompilerStateObject * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( ID3D12CompilerStateObject * This); DECLSPEC_XFGVIRT(ID3D12CompilerStateObject, GetCompiler) HRESULT ( STDMETHODCALLTYPE *GetCompiler )( ID3D12CompilerStateObject * This, _In_ REFIID riid, _COM_Outptr_ void **ppCompiler); END_INTERFACE } ID3D12CompilerStateObjectVtbl; interface ID3D12CompilerStateObject { CONST_VTBL struct ID3D12CompilerStateObjectVtbl *lpVtbl; }; #ifdef COBJMACROS #define ID3D12CompilerStateObject_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define ID3D12CompilerStateObject_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define ID3D12CompilerStateObject_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define ID3D12CompilerStateObject_GetCompiler(This,riid,ppCompiler) \ ( (This)->lpVtbl -> GetCompiler(This,riid,ppCompiler) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __ID3D12CompilerStateObject_INTERFACE_DEFINED__ */ /* interface __MIDL_itf_d3d12compiler_0000_0003 */ /* [local] */ typedef struct D3D12_COMPILER_EXISTING_COLLECTION_DESC { ID3D12CompilerStateObject *pExistingCollection; UINT NumExports; _In_reads_(NumExports) const D3D12_EXPORT_DESC *pExports; } D3D12_COMPILER_EXISTING_COLLECTION_DESC; extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0003_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0003_v0_0_s_ifspec; #ifndef __ID3D12Compiler_INTERFACE_DEFINED__ #define __ID3D12Compiler_INTERFACE_DEFINED__ /* interface ID3D12Compiler */ /* [unique][local][object][uuid] */ EXTERN_C const IID IID_ID3D12Compiler; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("8c403c12-993b-4583-80f1-6824138fa68e") ID3D12Compiler : public ID3D12CompilerFactoryChild { public: virtual HRESULT STDMETHODCALLTYPE CompilePipelineState( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc) = 0; virtual HRESULT STDMETHODCALLTYPE CompileStateObject( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_STATE_OBJECT_DESC *pDesc, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerStateObject) = 0; virtual HRESULT STDMETHODCALLTYPE CompileAddToStateObject( _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_STATE_OBJECT_DESC *pAddition, _In_ ID3D12CompilerStateObject *pCompilerStateObjectToGrowFrom, _In_ REFIID riid, _COM_Outptr_ void **ppNewCompilerStateObject) = 0; virtual HRESULT STDMETHODCALLTYPE GetCacheSession( _In_ REFIID riid, _COM_Outptr_ void **ppCompilerCacheSession) = 0; }; #else /* C style interface */ typedef struct ID3D12CompilerVtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12Compiler * This, REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( ID3D12Compiler * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( ID3D12Compiler * This); DECLSPEC_XFGVIRT(ID3D12CompilerFactoryChild, GetFactory) HRESULT ( STDMETHODCALLTYPE *GetFactory )( ID3D12Compiler * This, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerFactory); DECLSPEC_XFGVIRT(ID3D12Compiler, CompilePipelineState) HRESULT ( STDMETHODCALLTYPE *CompilePipelineState )( ID3D12Compiler * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_PIPELINE_STATE_STREAM_DESC *pDesc); DECLSPEC_XFGVIRT(ID3D12Compiler, CompileStateObject) HRESULT ( STDMETHODCALLTYPE *CompileStateObject )( ID3D12Compiler * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_STATE_OBJECT_DESC *pDesc, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerStateObject); DECLSPEC_XFGVIRT(ID3D12Compiler, CompileAddToStateObject) HRESULT ( STDMETHODCALLTYPE *CompileAddToStateObject )( ID3D12Compiler * This, _In_ const D3D12_COMPILER_CACHE_GROUP_KEY *pGroupKey, UINT GroupVersion, _In_ const D3D12_STATE_OBJECT_DESC *pAddition, _In_ ID3D12CompilerStateObject *pCompilerStateObjectToGrowFrom, _In_ REFIID riid, _COM_Outptr_ void **ppNewCompilerStateObject); DECLSPEC_XFGVIRT(ID3D12Compiler, GetCacheSession) HRESULT ( STDMETHODCALLTYPE *GetCacheSession )( ID3D12Compiler * This, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerCacheSession); END_INTERFACE } ID3D12CompilerVtbl; interface ID3D12Compiler { CONST_VTBL struct ID3D12CompilerVtbl *lpVtbl; }; #ifdef COBJMACROS #define ID3D12Compiler_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define ID3D12Compiler_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define ID3D12Compiler_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define ID3D12Compiler_GetFactory(This,riid,ppCompilerFactory) \ ( (This)->lpVtbl -> GetFactory(This,riid,ppCompilerFactory) ) #define ID3D12Compiler_CompilePipelineState(This,pGroupKey,GroupVersion,pDesc) \ ( (This)->lpVtbl -> CompilePipelineState(This,pGroupKey,GroupVersion,pDesc) ) #define ID3D12Compiler_CompileStateObject(This,pGroupKey,GroupVersion,pDesc,riid,ppCompilerStateObject) \ ( (This)->lpVtbl -> CompileStateObject(This,pGroupKey,GroupVersion,pDesc,riid,ppCompilerStateObject) ) #define ID3D12Compiler_CompileAddToStateObject(This,pGroupKey,GroupVersion,pAddition,pCompilerStateObjectToGrowFrom,riid,ppNewCompilerStateObject) \ ( (This)->lpVtbl -> CompileAddToStateObject(This,pGroupKey,GroupVersion,pAddition,pCompilerStateObjectToGrowFrom,riid,ppNewCompilerStateObject) ) #define ID3D12Compiler_GetCacheSession(This,riid,ppCompilerCacheSession) \ ( (This)->lpVtbl -> GetCacheSession(This,riid,ppCompilerCacheSession) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __ID3D12Compiler_INTERFACE_DEFINED__ */ #ifndef __ID3D12CompilerFactory_INTERFACE_DEFINED__ #define __ID3D12CompilerFactory_INTERFACE_DEFINED__ /* interface ID3D12CompilerFactory */ /* [unique][local][object][uuid] */ EXTERN_C const IID IID_ID3D12CompilerFactory; #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("c1ee4b59-3f59-47a5-9b4e-a855c858a878") ID3D12CompilerFactory : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE EnumerateAdapterFamilies( UINT AdapterFamilyIndex, _Out_ D3D12_ADAPTER_FAMILY *pAdapterFamily) = 0; virtual HRESULT STDMETHODCALLTYPE EnumerateAdapterFamilyABIVersions( UINT AdapterFamilyIndex, _Inout_ UINT32 *pNumABIVersions, _Out_writes_opt_(*pNumABIVersions) UINT64 *pABIVersions) = 0; virtual HRESULT STDMETHODCALLTYPE EnumerateAdapterFamilyCompilerVersion( UINT AdapterFamilyIndex, _Out_ D3D12_VERSION_NUMBER *pCompilerVersion) = 0; virtual HRESULT STDMETHODCALLTYPE GetApplicationProfileVersion( _In_ const D3D12_COMPILER_TARGET *pTarget, _In_ const D3D12_APPLICATION_DESC *pApplicationDesc, _Out_ D3D12_VERSION_NUMBER *pApplicationProfileVersion) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCompilerCacheSession( _In_reads_(NumPaths) const D3D12_COMPILER_DATABASE_PATH *pPaths, UINT NumPaths, _In_opt_ const D3D12_COMPILER_TARGET *pTarget, _In_opt_ const D3D12_APPLICATION_DESC *pApplicationDesc, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerCacheSession) = 0; virtual HRESULT STDMETHODCALLTYPE CreateCompiler( _In_ ID3D12CompilerCacheSession *pCompilerCacheSession, _In_ REFIID riid, _COM_Outptr_ void **ppCompiler) = 0; }; #else /* C style interface */ typedef struct ID3D12CompilerFactoryVtbl { BEGIN_INTERFACE DECLSPEC_XFGVIRT(IUnknown, QueryInterface) HRESULT ( STDMETHODCALLTYPE *QueryInterface )( ID3D12CompilerFactory * This, REFIID riid, _COM_Outptr_ void **ppvObject); DECLSPEC_XFGVIRT(IUnknown, AddRef) ULONG ( STDMETHODCALLTYPE *AddRef )( ID3D12CompilerFactory * This); DECLSPEC_XFGVIRT(IUnknown, Release) ULONG ( STDMETHODCALLTYPE *Release )( ID3D12CompilerFactory * This); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, EnumerateAdapterFamilies) HRESULT ( STDMETHODCALLTYPE *EnumerateAdapterFamilies )( ID3D12CompilerFactory * This, UINT AdapterFamilyIndex, _Out_ D3D12_ADAPTER_FAMILY *pAdapterFamily); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, EnumerateAdapterFamilyABIVersions) HRESULT ( STDMETHODCALLTYPE *EnumerateAdapterFamilyABIVersions )( ID3D12CompilerFactory * This, UINT AdapterFamilyIndex, _Inout_ UINT32 *pNumABIVersions, _Out_writes_opt_(*pNumABIVersions) UINT64 *pABIVersions); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, EnumerateAdapterFamilyCompilerVersion) HRESULT ( STDMETHODCALLTYPE *EnumerateAdapterFamilyCompilerVersion )( ID3D12CompilerFactory * This, UINT AdapterFamilyIndex, _Out_ D3D12_VERSION_NUMBER *pCompilerVersion); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, GetApplicationProfileVersion) HRESULT ( STDMETHODCALLTYPE *GetApplicationProfileVersion )( ID3D12CompilerFactory * This, _In_ const D3D12_COMPILER_TARGET *pTarget, _In_ const D3D12_APPLICATION_DESC *pApplicationDesc, _Out_ D3D12_VERSION_NUMBER *pApplicationProfileVersion); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, CreateCompilerCacheSession) HRESULT ( STDMETHODCALLTYPE *CreateCompilerCacheSession )( ID3D12CompilerFactory * This, _In_reads_(NumPaths) const D3D12_COMPILER_DATABASE_PATH *pPaths, UINT NumPaths, _In_opt_ const D3D12_COMPILER_TARGET *pTarget, _In_opt_ const D3D12_APPLICATION_DESC *pApplicationDesc, _In_ REFIID riid, _COM_Outptr_ void **ppCompilerCacheSession); DECLSPEC_XFGVIRT(ID3D12CompilerFactory, CreateCompiler) HRESULT ( STDMETHODCALLTYPE *CreateCompiler )( ID3D12CompilerFactory * This, _In_ ID3D12CompilerCacheSession *pCompilerCacheSession, _In_ REFIID riid, _COM_Outptr_ void **ppCompiler); END_INTERFACE } ID3D12CompilerFactoryVtbl; interface ID3D12CompilerFactory { CONST_VTBL struct ID3D12CompilerFactoryVtbl *lpVtbl; }; #ifdef COBJMACROS #define ID3D12CompilerFactory_QueryInterface(This,riid,ppvObject) \ ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) #define ID3D12CompilerFactory_AddRef(This) \ ( (This)->lpVtbl -> AddRef(This) ) #define ID3D12CompilerFactory_Release(This) \ ( (This)->lpVtbl -> Release(This) ) #define ID3D12CompilerFactory_EnumerateAdapterFamilies(This,AdapterFamilyIndex,pAdapterFamily) \ ( (This)->lpVtbl -> EnumerateAdapterFamilies(This,AdapterFamilyIndex,pAdapterFamily) ) #define ID3D12CompilerFactory_EnumerateAdapterFamilyABIVersions(This,AdapterFamilyIndex,pNumABIVersions,pABIVersions) \ ( (This)->lpVtbl -> EnumerateAdapterFamilyABIVersions(This,AdapterFamilyIndex,pNumABIVersions,pABIVersions) ) #define ID3D12CompilerFactory_EnumerateAdapterFamilyCompilerVersion(This,AdapterFamilyIndex,pCompilerVersion) \ ( (This)->lpVtbl -> EnumerateAdapterFamilyCompilerVersion(This,AdapterFamilyIndex,pCompilerVersion) ) #define ID3D12CompilerFactory_GetApplicationProfileVersion(This,pTarget,pApplicationDesc,pApplicationProfileVersion) \ ( (This)->lpVtbl -> GetApplicationProfileVersion(This,pTarget,pApplicationDesc,pApplicationProfileVersion) ) #define ID3D12CompilerFactory_CreateCompilerCacheSession(This,pPaths,NumPaths,pTarget,pApplicationDesc,riid,ppCompilerCacheSession) \ ( (This)->lpVtbl -> CreateCompilerCacheSession(This,pPaths,NumPaths,pTarget,pApplicationDesc,riid,ppCompilerCacheSession) ) #define ID3D12CompilerFactory_CreateCompiler(This,pCompilerCacheSession,riid,ppCompiler) \ ( (This)->lpVtbl -> CreateCompiler(This,pCompilerCacheSession,riid,ppCompiler) ) #endif /* COBJMACROS */ #endif /* C style interface */ #endif /* __ID3D12CompilerFactory_INTERFACE_DEFINED__ */ /* interface __MIDL_itf_d3d12compiler_0000_0005 */ /* [local] */ #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_GAMES) */ #pragma endregion DEFINE_GUID(IID_ID3D12CompilerFactoryChild,0xe0d06420,0x9f31,0x47e8,0xae,0x9a,0xdd,0x2b,0xa2,0x5a,0xc0,0xbc); DEFINE_GUID(IID_ID3D12CompilerCacheSession,0x5704e5e6,0x054b,0x4738,0xb6,0x61,0x7b,0x0d,0x68,0xd8,0xdd,0xe2); DEFINE_GUID(IID_ID3D12CompilerStateObject,0x5981cca4,0xe8ae,0x44ca,0x9b,0x92,0x4f,0xa8,0x6f,0x5a,0x3a,0x3a); DEFINE_GUID(IID_ID3D12Compiler,0x8c403c12,0x993b,0x4583,0x80,0xf1,0x68,0x24,0x13,0x8f,0xa6,0x8e); DEFINE_GUID(IID_ID3D12CompilerFactory,0xc1ee4b59,0x3f59,0x47a5,0x9b,0x4e,0xa8,0x55,0xc8,0x58,0xa8,0x78); extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0005_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_d3d12compiler_0000_0005_v0_0_s_ifspec; /* Additional Prototypes for ALL interfaces */ /* end of Additional Prototypes */ #ifdef __cplusplus } #endif #endif