1 #![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
2 #[link(name = "windows")]
3 extern "system" {
4     #[cfg(feature = "Win32_Foundation")]
D3DCompile(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, psourcename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT5     pub fn D3DCompile(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, psourcename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
6     #[cfg(feature = "Win32_Foundation")]
D3DCompile2( psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, psourcename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, secondarydataflags: u32, psecondarydata: *const ::core::ffi::c_void, secondarydatasize: usize, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob, ) -> ::windows_sys::core::HRESULT7     pub fn D3DCompile2(
8         psrcdata: *const ::core::ffi::c_void,
9         srcdatasize: usize,
10         psourcename: super::super::super::Foundation::PSTR,
11         pdefines: *const super::D3D_SHADER_MACRO,
12         pinclude: super::ID3DInclude,
13         pentrypoint: super::super::super::Foundation::PSTR,
14         ptarget: super::super::super::Foundation::PSTR,
15         flags1: u32,
16         flags2: u32,
17         secondarydataflags: u32,
18         psecondarydata: *const ::core::ffi::c_void,
19         secondarydatasize: usize,
20         ppcode: *mut super::ID3DBlob,
21         pperrormsgs: *mut super::ID3DBlob,
22     ) -> ::windows_sys::core::HRESULT;
23     #[cfg(feature = "Win32_Foundation")]
D3DCompileFromFile(pfilename: super::super::super::Foundation::PWSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT24     pub fn D3DCompileFromFile(pfilename: super::super::super::Foundation::PWSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DCompressShaders(unumshaders: u32, pshaderdata: *const D3D_SHADER_DATA, uflags: u32, ppcompresseddata: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT25     pub fn D3DCompressShaders(unumshaders: u32, pshaderdata: *const D3D_SHADER_DATA, uflags: u32, ppcompresseddata: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DCreateBlob(size: usize, ppblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT26     pub fn D3DCreateBlob(size: usize, ppblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
27     #[cfg(feature = "Win32_Graphics_Direct3D11")]
D3DCreateFunctionLinkingGraph(uflags: u32, ppfunctionlinkinggraph: *mut super::super::Direct3D11::ID3D11FunctionLinkingGraph) -> ::windows_sys::core::HRESULT28     pub fn D3DCreateFunctionLinkingGraph(uflags: u32, ppfunctionlinkinggraph: *mut super::super::Direct3D11::ID3D11FunctionLinkingGraph) -> ::windows_sys::core::HRESULT;
29     #[cfg(feature = "Win32_Graphics_Direct3D11")]
D3DCreateLinker(pplinker: *mut super::super::Direct3D11::ID3D11Linker) -> ::windows_sys::core::HRESULT30     pub fn D3DCreateLinker(pplinker: *mut super::super::Direct3D11::ID3D11Linker) -> ::windows_sys::core::HRESULT;
D3DDecompressShaders(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, unumshaders: u32, ustartindex: u32, pindices: *const u32, uflags: u32, ppshaders: *mut super::ID3DBlob, ptotalshaders: *mut u32) -> ::windows_sys::core::HRESULT31     pub fn D3DDecompressShaders(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, unumshaders: u32, ustartindex: u32, pindices: *const u32, uflags: u32, ppshaders: *mut super::ID3DBlob, ptotalshaders: *mut u32) -> ::windows_sys::core::HRESULT;
32     #[cfg(feature = "Win32_Foundation")]
D3DDisassemble(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, szcomments: super::super::super::Foundation::PSTR, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT33     pub fn D3DDisassemble(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, szcomments: super::super::super::Foundation::PSTR, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
34     #[cfg(feature = "Win32_Graphics_Direct3D10")]
D3DDisassemble10Effect(peffect: super::super::Direct3D10::ID3D10Effect, flags: u32, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT35     pub fn D3DDisassemble10Effect(peffect: super::super::Direct3D10::ID3D10Effect, flags: u32, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
36     #[cfg(feature = "Win32_Foundation")]
D3DDisassembleRegion(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, szcomments: super::super::super::Foundation::PSTR, startbyteoffset: usize, numinsts: usize, pfinishbyteoffset: *mut usize, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT37     pub fn D3DDisassembleRegion(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, szcomments: super::super::super::Foundation::PSTR, startbyteoffset: usize, numinsts: usize, pfinishbyteoffset: *mut usize, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetBlobPart(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, part: D3D_BLOB_PART, flags: u32, pppart: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT38     pub fn D3DGetBlobPart(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, part: D3D_BLOB_PART, flags: u32, pppart: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetDebugInfo(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppdebuginfo: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT39     pub fn D3DGetDebugInfo(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppdebuginfo: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetInputAndOutputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT40     pub fn D3DGetInputAndOutputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetInputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT41     pub fn D3DGetInputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetOutputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT42     pub fn D3DGetOutputSignatureBlob(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, ppsignatureblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DGetTraceInstructionOffsets(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, startinstindex: usize, numinsts: usize, poffsets: *mut usize, ptotalinsts: *mut usize) -> ::windows_sys::core::HRESULT43     pub fn D3DGetTraceInstructionOffsets(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, startinstindex: usize, numinsts: usize, poffsets: *mut usize, ptotalinsts: *mut usize) -> ::windows_sys::core::HRESULT;
44     #[cfg(feature = "Win32_Graphics_Direct3D11")]
D3DLoadModule(psrcdata: *const ::core::ffi::c_void, cbsrcdatasize: usize, ppmodule: *mut super::super::Direct3D11::ID3D11Module) -> ::windows_sys::core::HRESULT45     pub fn D3DLoadModule(psrcdata: *const ::core::ffi::c_void, cbsrcdatasize: usize, ppmodule: *mut super::super::Direct3D11::ID3D11Module) -> ::windows_sys::core::HRESULT;
46     #[cfg(feature = "Win32_Foundation")]
D3DPreprocess(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, psourcename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, ppcodetext: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT47     pub fn D3DPreprocess(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, psourcename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, ppcodetext: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
48     #[cfg(feature = "Win32_Foundation")]
D3DReadFileToBlob(pfilename: super::super::super::Foundation::PWSTR, ppcontents: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT49     pub fn D3DReadFileToBlob(pfilename: super::super::super::Foundation::PWSTR, ppcontents: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DReflect(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, pinterface: *const ::windows_sys::core::GUID, ppreflector: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT50     pub fn D3DReflect(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, pinterface: *const ::windows_sys::core::GUID, ppreflector: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
D3DReflectLibrary(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, riid: *const ::windows_sys::core::GUID, ppreflector: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT51     pub fn D3DReflectLibrary(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, riid: *const ::windows_sys::core::GUID, ppreflector: *mut *mut ::core::ffi::c_void) -> ::windows_sys::core::HRESULT;
D3DSetBlobPart(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, part: D3D_BLOB_PART, flags: u32, ppart: *const ::core::ffi::c_void, partsize: usize, ppnewshader: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT52     pub fn D3DSetBlobPart(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, part: D3D_BLOB_PART, flags: u32, ppart: *const ::core::ffi::c_void, partsize: usize, ppnewshader: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
D3DStripShader(pshaderbytecode: *const ::core::ffi::c_void, bytecodelength: usize, ustripflags: u32, ppstrippedblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT53     pub fn D3DStripShader(pshaderbytecode: *const ::core::ffi::c_void, bytecodelength: usize, ustripflags: u32, ppstrippedblob: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
54     #[cfg(feature = "Win32_Foundation")]
D3DWriteBlobToFile(pblob: super::ID3DBlob, pfilename: super::super::super::Foundation::PWSTR, boverwrite: super::super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT55     pub fn D3DWriteBlobToFile(pblob: super::ID3DBlob, pfilename: super::super::super::Foundation::PWSTR, boverwrite: super::super::super::Foundation::BOOL) -> ::windows_sys::core::HRESULT;
56 }
57 pub type D3DCOMPILER_STRIP_FLAGS = i32;
58 pub const D3DCOMPILER_STRIP_REFLECTION_DATA: D3DCOMPILER_STRIP_FLAGS = 1i32;
59 pub const D3DCOMPILER_STRIP_DEBUG_INFO: D3DCOMPILER_STRIP_FLAGS = 2i32;
60 pub const D3DCOMPILER_STRIP_TEST_BLOBS: D3DCOMPILER_STRIP_FLAGS = 4i32;
61 pub const D3DCOMPILER_STRIP_PRIVATE_DATA: D3DCOMPILER_STRIP_FLAGS = 8i32;
62 pub const D3DCOMPILER_STRIP_ROOT_SIGNATURE: D3DCOMPILER_STRIP_FLAGS = 16i32;
63 pub const D3DCOMPILER_STRIP_FORCE_DWORD: D3DCOMPILER_STRIP_FLAGS = 2147483647i32;
64 pub const D3DCOMPILE_ALL_RESOURCES_BOUND: u32 = 2097152u32;
65 pub const D3DCOMPILE_AVOID_FLOW_CONTROL: u32 = 512u32;
66 pub const D3DCOMPILE_DEBUG: u32 = 1u32;
67 pub const D3DCOMPILE_DEBUG_NAME_FOR_BINARY: u32 = 8388608u32;
68 pub const D3DCOMPILE_DEBUG_NAME_FOR_SOURCE: u32 = 4194304u32;
69 pub const D3DCOMPILE_EFFECT_ALLOW_SLOW_OPS: u32 = 2u32;
70 pub const D3DCOMPILE_EFFECT_CHILD_EFFECT: u32 = 1u32;
71 pub const D3DCOMPILE_ENABLE_BACKWARDS_COMPATIBILITY: u32 = 4096u32;
72 pub const D3DCOMPILE_ENABLE_STRICTNESS: u32 = 2048u32;
73 pub const D3DCOMPILE_ENABLE_UNBOUNDED_DESCRIPTOR_TABLES: u32 = 1048576u32;
74 pub const D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_0: u32 = 16u32;
75 pub const D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_1_1: u32 = 32u32;
76 pub const D3DCOMPILE_FLAGS2_FORCE_ROOT_SIGNATURE_LATEST: u32 = 0u32;
77 pub const D3DCOMPILE_FORCE_PS_SOFTWARE_NO_OPT: u32 = 128u32;
78 pub const D3DCOMPILE_FORCE_VS_SOFTWARE_NO_OPT: u32 = 64u32;
79 pub const D3DCOMPILE_IEEE_STRICTNESS: u32 = 8192u32;
80 pub const D3DCOMPILE_NO_PRESHADER: u32 = 256u32;
81 pub const D3DCOMPILE_OPTIMIZATION_LEVEL0: u32 = 16384u32;
82 pub const D3DCOMPILE_OPTIMIZATION_LEVEL1: u32 = 0u32;
83 pub const D3DCOMPILE_OPTIMIZATION_LEVEL3: u32 = 32768u32;
84 pub const D3DCOMPILE_PACK_MATRIX_COLUMN_MAJOR: u32 = 16u32;
85 pub const D3DCOMPILE_PACK_MATRIX_ROW_MAJOR: u32 = 8u32;
86 pub const D3DCOMPILE_PARTIAL_PRECISION: u32 = 32u32;
87 pub const D3DCOMPILE_PREFER_FLOW_CONTROL: u32 = 1024u32;
88 pub const D3DCOMPILE_RESERVED16: u32 = 65536u32;
89 pub const D3DCOMPILE_RESERVED17: u32 = 131072u32;
90 pub const D3DCOMPILE_RESOURCES_MAY_ALIAS: u32 = 524288u32;
91 pub const D3DCOMPILE_SECDATA_MERGE_UAV_SLOTS: u32 = 1u32;
92 pub const D3DCOMPILE_SECDATA_PRESERVE_TEMPLATE_SLOTS: u32 = 2u32;
93 pub const D3DCOMPILE_SECDATA_REQUIRE_TEMPLATE_MATCH: u32 = 4u32;
94 pub const D3DCOMPILE_SKIP_OPTIMIZATION: u32 = 4u32;
95 pub const D3DCOMPILE_SKIP_VALIDATION: u32 = 2u32;
96 pub const D3DCOMPILE_WARNINGS_ARE_ERRORS: u32 = 262144u32;
97 pub type D3D_BLOB_PART = i32;
98 pub const D3D_BLOB_INPUT_SIGNATURE_BLOB: D3D_BLOB_PART = 0i32;
99 pub const D3D_BLOB_OUTPUT_SIGNATURE_BLOB: D3D_BLOB_PART = 1i32;
100 pub const D3D_BLOB_INPUT_AND_OUTPUT_SIGNATURE_BLOB: D3D_BLOB_PART = 2i32;
101 pub const D3D_BLOB_PATCH_CONSTANT_SIGNATURE_BLOB: D3D_BLOB_PART = 3i32;
102 pub const D3D_BLOB_ALL_SIGNATURE_BLOB: D3D_BLOB_PART = 4i32;
103 pub const D3D_BLOB_DEBUG_INFO: D3D_BLOB_PART = 5i32;
104 pub const D3D_BLOB_LEGACY_SHADER: D3D_BLOB_PART = 6i32;
105 pub const D3D_BLOB_XNA_PREPASS_SHADER: D3D_BLOB_PART = 7i32;
106 pub const D3D_BLOB_XNA_SHADER: D3D_BLOB_PART = 8i32;
107 pub const D3D_BLOB_PDB: D3D_BLOB_PART = 9i32;
108 pub const D3D_BLOB_PRIVATE_DATA: D3D_BLOB_PART = 10i32;
109 pub const D3D_BLOB_ROOT_SIGNATURE: D3D_BLOB_PART = 11i32;
110 pub const D3D_BLOB_DEBUG_NAME: D3D_BLOB_PART = 12i32;
111 pub const D3D_BLOB_TEST_ALTERNATE_SHADER: D3D_BLOB_PART = 32768i32;
112 pub const D3D_BLOB_TEST_COMPILE_DETAILS: D3D_BLOB_PART = 32769i32;
113 pub const D3D_BLOB_TEST_COMPILE_PERF: D3D_BLOB_PART = 32770i32;
114 pub const D3D_BLOB_TEST_COMPILE_REPORT: D3D_BLOB_PART = 32771i32;
115 pub const D3D_COMPILER_VERSION: u32 = 47u32;
116 pub const D3D_COMPRESS_SHADER_KEEP_ALL_PARTS: u32 = 1u32;
117 pub const D3D_DISASM_DISABLE_DEBUG_INFO: u32 = 16u32;
118 pub const D3D_DISASM_ENABLE_COLOR_CODE: u32 = 1u32;
119 pub const D3D_DISASM_ENABLE_DEFAULT_VALUE_PRINTS: u32 = 2u32;
120 pub const D3D_DISASM_ENABLE_INSTRUCTION_CYCLE: u32 = 8u32;
121 pub const D3D_DISASM_ENABLE_INSTRUCTION_NUMBERING: u32 = 4u32;
122 pub const D3D_DISASM_ENABLE_INSTRUCTION_OFFSET: u32 = 32u32;
123 pub const D3D_DISASM_INSTRUCTION_ONLY: u32 = 64u32;
124 pub const D3D_DISASM_PRINT_HEX_LITERALS: u32 = 128u32;
125 pub const D3D_GET_INST_OFFSETS_INCLUDE_NON_EXECUTABLE: u32 = 1u32;
126 #[repr(C)]
127 pub struct D3D_SHADER_DATA {
128     pub pBytecode: *mut ::core::ffi::c_void,
129     pub BytecodeLength: usize,
130 }
131 impl ::core::marker::Copy for D3D_SHADER_DATA {}
132 impl ::core::clone::Clone for D3D_SHADER_DATA {
clone(&self) -> Self133     fn clone(&self) -> Self {
134         *self
135     }
136 }
137 #[cfg(feature = "Win32_Foundation")]
138 pub type pD3DCompile = unsafe extern "system" fn(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, pfilename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, pentrypoint: super::super::super::Foundation::PSTR, ptarget: super::super::super::Foundation::PSTR, flags1: u32, flags2: u32, ppcode: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
139 #[cfg(feature = "Win32_Foundation")]
140 pub type pD3DDisassemble = unsafe extern "system" fn(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, flags: u32, szcomments: super::super::super::Foundation::PSTR, ppdisassembly: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
141 #[cfg(feature = "Win32_Foundation")]
142 pub type pD3DPreprocess = unsafe extern "system" fn(psrcdata: *const ::core::ffi::c_void, srcdatasize: usize, pfilename: super::super::super::Foundation::PSTR, pdefines: *const super::D3D_SHADER_MACRO, pinclude: super::ID3DInclude, ppcodetext: *mut super::ID3DBlob, pperrormsgs: *mut super::ID3DBlob) -> ::windows_sys::core::HRESULT;
143