//! Generated by `cargo xtask gen` from the `windows` crate's `ID3D12GraphicsCommandList10_Vtbl`; do not edit.
#![allow(
non_snake_case,
clippy::too_many_arguments,
clippy::missing_safety_doc,
dead_code
)]
use core::ffi::c_void;
/// Every method of `ID3D12GraphicsCommandList10` in vtable order. The defaults forward to the wrapped object [`List12Methods::inner`].
///
/// # Safety
/// The implementing type must be `#[repr(C)]` with a pointer to [`vtable`]'s table as its first field,
/// and `inner` must return a live `ID3D12GraphicsCommandList10`.
pub unsafe trait List12Methods: Sized {
/// The wrapped object, an `ID3D12GraphicsCommandList10`.
fn inner(&self) -> *mut c_void;
unsafe fn QueryInterface(
&self,
iid: *const windows::core::GUID,
out: *mut *mut c_void,
) -> windows::core::HRESULT;
unsafe fn AddRef(&self) -> u32;
unsafe fn Release(&self) -> u32;
unsafe fn GetPrivateData(
&self,
a0: *const windows::core::GUID,
a1: *mut u32,
a2: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { real::GetPrivateData(self.inner(), a0, a1, a2) }
}
unsafe fn SetPrivateData(
&self,
a0: *const windows::core::GUID,
a1: u32,
a2: *const core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { real::SetPrivateData(self.inner(), a0, a1, a2) }
}
unsafe fn SetPrivateDataInterface(
&self,
a0: *const windows::core::GUID,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { real::SetPrivateDataInterface(self.inner(), a0, a1) }
}
unsafe fn SetName(&self, a0: windows::core::PCWSTR) -> windows::core::HRESULT {
unsafe { real::SetName(self.inner(), a0) }
}
unsafe fn GetDevice(
&self,
a0: *const windows::core::GUID,
a1: *mut *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { real::GetDevice(self.inner(), a0, a1) }
}
unsafe fn GetType(&self) -> windows::Win32::Graphics::Direct3D12::D3D12_COMMAND_LIST_TYPE {
unsafe { real::GetType(self.inner()) }
}
unsafe fn Close(&self) -> windows::core::HRESULT {
unsafe { real::Close(self.inner()) }
}
unsafe fn Reset(&self, a0: *mut core::ffi::c_void, a1: *mut core::ffi::c_void) -> windows::core::HRESULT {
unsafe { real::Reset(self.inner(), a0, a1) }
}
unsafe fn ClearState(&self, a0: *mut core::ffi::c_void) {
unsafe { real::ClearState(self.inner(), a0) }
}
unsafe fn DrawInstanced(&self, a0: u32, a1: u32, a2: u32, a3: u32) {
unsafe { real::DrawInstanced(self.inner(), a0, a1, a2, a3) }
}
unsafe fn DrawIndexedInstanced(&self, a0: u32, a1: u32, a2: u32, a3: i32, a4: u32) {
unsafe { real::DrawIndexedInstanced(self.inner(), a0, a1, a2, a3, a4) }
}
unsafe fn Dispatch(&self, a0: u32, a1: u32, a2: u32) {
unsafe { real::Dispatch(self.inner(), a0, a1, a2) }
}
unsafe fn CopyBufferRegion(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u64,
) {
unsafe { real::CopyBufferRegion(self.inner(), a0, a1, a2, a3, a4) }
}
unsafe fn CopyTextureRegion(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a1: u32,
a2: u32,
a3: u32,
a4: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a5: *const windows::Win32::Graphics::Direct3D12::D3D12_BOX,
) {
unsafe { real::CopyTextureRegion(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn CopyResource(&self, a0: *mut core::ffi::c_void, a1: *mut core::ffi::c_void) {
unsafe { real::CopyResource(self.inner(), a0, a1) }
}
unsafe fn CopyTiles(
&self,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_TILED_RESOURCE_COORDINATE,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_TILE_REGION_SIZE,
a3: *mut core::ffi::c_void,
a4: u64,
a5: windows::Win32::Graphics::Direct3D12::D3D12_TILE_COPY_FLAGS,
) {
unsafe { real::CopyTiles(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn ResolveSubresource(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u32,
a4: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
) {
unsafe { real::ResolveSubresource(self.inner(), a0, a1, a2, a3, a4) }
}
unsafe fn IASetPrimitiveTopology(&self, a0: windows::Win32::Graphics::Direct3D::D3D_PRIMITIVE_TOPOLOGY) {
unsafe { real::IASetPrimitiveTopology(self.inner(), a0) }
}
unsafe fn RSSetViewports(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_VIEWPORT,
) {
unsafe { real::RSSetViewports(self.inner(), a0, a1) }
}
unsafe fn RSSetScissorRects(&self, a0: u32, a1: *const windows::Win32::Foundation::RECT) {
unsafe { real::RSSetScissorRects(self.inner(), a0, a1) }
}
unsafe fn OMSetBlendFactor(&self, a0: *const f32) {
unsafe { real::OMSetBlendFactor(self.inner(), a0) }
}
unsafe fn OMSetStencilRef(&self, a0: u32) {
unsafe { real::OMSetStencilRef(self.inner(), a0) }
}
unsafe fn SetPipelineState(&self, a0: *mut core::ffi::c_void) {
unsafe { real::SetPipelineState(self.inner(), a0) }
}
unsafe fn ResourceBarrier(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RESOURCE_BARRIER,
) {
unsafe { real::ResourceBarrier(self.inner(), a0, a1) }
}
unsafe fn ExecuteBundle(&self, a0: *mut core::ffi::c_void) {
unsafe { real::ExecuteBundle(self.inner(), a0) }
}
unsafe fn SetDescriptorHeaps(&self, a0: u32, a1: *const *mut core::ffi::c_void) {
unsafe { real::SetDescriptorHeaps(self.inner(), a0, a1) }
}
unsafe fn SetComputeRootSignature(&self, a0: *mut core::ffi::c_void) {
unsafe { real::SetComputeRootSignature(self.inner(), a0) }
}
unsafe fn SetGraphicsRootSignature(&self, a0: *mut core::ffi::c_void) {
unsafe { real::SetGraphicsRootSignature(self.inner(), a0) }
}
unsafe fn SetComputeRootDescriptorTable(
&self,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe { real::SetComputeRootDescriptorTable(self.inner(), a0, a1) }
}
unsafe fn SetGraphicsRootDescriptorTable(
&self,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe { real::SetGraphicsRootDescriptorTable(self.inner(), a0, a1) }
}
unsafe fn SetComputeRoot32BitConstant(&self, a0: u32, a1: u32, a2: u32) {
unsafe { real::SetComputeRoot32BitConstant(self.inner(), a0, a1, a2) }
}
unsafe fn SetGraphicsRoot32BitConstant(&self, a0: u32, a1: u32, a2: u32) {
unsafe { real::SetGraphicsRoot32BitConstant(self.inner(), a0, a1, a2) }
}
unsafe fn SetComputeRoot32BitConstants(&self, a0: u32, a1: u32, a2: *const core::ffi::c_void, a3: u32) {
unsafe { real::SetComputeRoot32BitConstants(self.inner(), a0, a1, a2, a3) }
}
unsafe fn SetGraphicsRoot32BitConstants(&self, a0: u32, a1: u32, a2: *const core::ffi::c_void, a3: u32) {
unsafe { real::SetGraphicsRoot32BitConstants(self.inner(), a0, a1, a2, a3) }
}
unsafe fn SetComputeRootConstantBufferView(&self, a0: u32, a1: u64) {
unsafe { real::SetComputeRootConstantBufferView(self.inner(), a0, a1) }
}
unsafe fn SetGraphicsRootConstantBufferView(&self, a0: u32, a1: u64) {
unsafe { real::SetGraphicsRootConstantBufferView(self.inner(), a0, a1) }
}
unsafe fn SetComputeRootShaderResourceView(&self, a0: u32, a1: u64) {
unsafe { real::SetComputeRootShaderResourceView(self.inner(), a0, a1) }
}
unsafe fn SetGraphicsRootShaderResourceView(&self, a0: u32, a1: u64) {
unsafe { real::SetGraphicsRootShaderResourceView(self.inner(), a0, a1) }
}
unsafe fn SetComputeRootUnorderedAccessView(&self, a0: u32, a1: u64) {
unsafe { real::SetComputeRootUnorderedAccessView(self.inner(), a0, a1) }
}
unsafe fn SetGraphicsRootUnorderedAccessView(&self, a0: u32, a1: u64) {
unsafe { real::SetGraphicsRootUnorderedAccessView(self.inner(), a0, a1) }
}
unsafe fn IASetIndexBuffer(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_VIEW,
) {
unsafe { real::IASetIndexBuffer(self.inner(), a0) }
}
unsafe fn IASetVertexBuffers(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_VERTEX_BUFFER_VIEW,
) {
unsafe { real::IASetVertexBuffers(self.inner(), a0, a1, a2) }
}
unsafe fn SOSetTargets(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_STREAM_OUTPUT_BUFFER_VIEW,
) {
unsafe { real::SOSetTargets(self.inner(), a0, a1, a2) }
}
unsafe fn OMSetRenderTargets(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: windows::core::BOOL,
a3: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
) {
unsafe { real::OMSetRenderTargets(self.inner(), a0, a1, a2, a3) }
}
unsafe fn ClearDepthStencilView(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CLEAR_FLAGS,
a2: f32,
a3: u8,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { real::ClearDepthStencilView(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn ClearRenderTargetView(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: *const f32,
a2: u32,
a3: *const windows::Win32::Foundation::RECT,
) {
unsafe { real::ClearRenderTargetView(self.inner(), a0, a1, a2, a3) }
}
unsafe fn ClearUnorderedAccessViewUint(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const u32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { real::ClearUnorderedAccessViewUint(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn ClearUnorderedAccessViewFloat(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const f32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { real::ClearUnorderedAccessViewFloat(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn DiscardResource(
&self,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_DISCARD_REGION,
) {
unsafe { real::DiscardResource(self.inner(), a0, a1) }
}
unsafe fn BeginQuery(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe { real::BeginQuery(self.inner(), a0, a1, a2) }
}
unsafe fn EndQuery(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe { real::EndQuery(self.inner(), a0, a1, a2) }
}
unsafe fn ResolveQueryData(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe { real::ResolveQueryData(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn SetPredication(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_PREDICATION_OP,
) {
unsafe { real::SetPredication(self.inner(), a0, a1, a2) }
}
unsafe fn SetMarker(&self, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe { real::SetMarker(self.inner(), a0, a1, a2) }
}
unsafe fn BeginEvent(&self, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe { real::BeginEvent(self.inner(), a0, a1, a2) }
}
unsafe fn EndEvent(&self) {
unsafe { real::EndEvent(self.inner()) }
}
unsafe fn ExecuteIndirect(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u64,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe { real::ExecuteIndirect(self.inner(), a0, a1, a2, a3, a4, a5) }
}
unsafe fn AtomicCopyBufferUINT(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe { real::AtomicCopyBufferUINT(self.inner(), a0, a1, a2, a3, a4, a5, a6) }
}
unsafe fn AtomicCopyBufferUINT64(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe { real::AtomicCopyBufferUINT64(self.inner(), a0, a1, a2, a3, a4, a5, a6) }
}
unsafe fn OMSetDepthBounds(&self, a0: f32, a1: f32) {
unsafe { real::OMSetDepthBounds(self.inner(), a0, a1) }
}
unsafe fn SetSamplePositions(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_SAMPLE_POSITION,
) {
unsafe { real::SetSamplePositions(self.inner(), a0, a1, a2) }
}
unsafe fn ResolveSubresourceRegion(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u32,
a6: *const windows::Win32::Foundation::RECT,
a7: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
a8: windows::Win32::Graphics::Direct3D12::D3D12_RESOLVE_MODE,
) {
unsafe { real::ResolveSubresourceRegion(self.inner(), a0, a1, a2, a3, a4, a5, a6, a7, a8) }
}
unsafe fn SetViewInstanceMask(&self, a0: u32) {
unsafe { real::SetViewInstanceMask(self.inner(), a0) }
}
unsafe fn WriteBufferImmediate(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_MODE,
) {
unsafe { real::WriteBufferImmediate(self.inner(), a0, a1, a2) }
}
unsafe fn SetProtectedResourceSession(&self, a0: *mut core::ffi::c_void) {
unsafe { real::SetProtectedResourceSession(self.inner(), a0) }
}
unsafe fn BeginRenderPass(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_RENDER_TARGET_DESC,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_DEPTH_STENCIL_DESC,
a3: windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_FLAGS,
) {
unsafe { real::BeginRenderPass(self.inner(), a0, a1, a2, a3) }
}
unsafe fn EndRenderPass(&self) {
unsafe { real::EndRenderPass(self.inner()) }
}
unsafe fn InitializeMetaCommand(
&self,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe { real::InitializeMetaCommand(self.inner(), a0, a1, a2) }
}
unsafe fn ExecuteMetaCommand(&self, a0: *mut core::ffi::c_void, a1: *const core::ffi::c_void, a2: usize) {
unsafe { real::ExecuteMetaCommand(self.inner(), a0, a1, a2) }
}
unsafe fn BuildRaytracingAccelerationStructure(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC,
a1: u32,
a2: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
) {
unsafe { real::BuildRaytracingAccelerationStructure(self.inner(), a0, a1, a2) }
}
unsafe fn EmitRaytracingAccelerationStructurePostbuildInfo(
&self,
a0: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
a1: u32,
a2: *const u64,
) {
unsafe { real::EmitRaytracingAccelerationStructurePostbuildInfo(self.inner(), a0, a1, a2) }
}
unsafe fn CopyRaytracingAccelerationStructure(
&self,
a0: u64,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE,
) {
unsafe { real::CopyRaytracingAccelerationStructure(self.inner(), a0, a1, a2) }
}
unsafe fn SetPipelineState1(&self, a0: *mut core::ffi::c_void) {
unsafe { real::SetPipelineState1(self.inner(), a0) }
}
unsafe fn DispatchRays(&self, a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_RAYS_DESC) {
unsafe { real::DispatchRays(self.inner(), a0) }
}
unsafe fn RSSetShadingRate(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE_COMBINER,
) {
unsafe { real::RSSetShadingRate(self.inner(), a0, a1) }
}
unsafe fn RSSetShadingRateImage(&self, a0: *mut core::ffi::c_void) {
unsafe { real::RSSetShadingRateImage(self.inner(), a0) }
}
unsafe fn DispatchMesh(&self, a0: u32, a1: u32, a2: u32) {
unsafe { real::DispatchMesh(self.inner(), a0, a1, a2) }
}
unsafe fn Barrier(&self, a0: u32, a1: *const windows::Win32::Graphics::Direct3D12::D3D12_BARRIER_GROUP) {
unsafe { real::Barrier(self.inner(), a0, a1) }
}
unsafe fn OMSetFrontAndBackStencilRef(&self, a0: u32, a1: u32) {
unsafe { real::OMSetFrontAndBackStencilRef(self.inner(), a0, a1) }
}
unsafe fn RSSetDepthBias(&self, a0: f32, a1: f32, a2: f32) {
unsafe { real::RSSetDepthBias(self.inner(), a0, a1, a2) }
}
unsafe fn IASetIndexBufferStripCutValue(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_STRIP_CUT_VALUE,
) {
unsafe { real::IASetIndexBufferStripCutValue(self.inner(), a0) }
}
unsafe fn SetProgram(&self, a0: *const windows::Win32::Graphics::Direct3D12::D3D12_SET_PROGRAM_DESC) {
unsafe { real::SetProgram(self.inner(), a0) }
}
unsafe fn DispatchGraph(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_GRAPH_DESC,
) {
unsafe { real::DispatchGraph(self.inner(), a0) }
}
}
/// Each method called on the real (wrapped) object: the trait's defaults, and overrides that still want the
/// real behaviour.
pub mod real {
use core::ffi::c_void;
/// `GetPrivateData` on the real object.
pub unsafe fn GetPrivateData(
inner: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut u32,
a2: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.GetPrivateData)(inner, a0, a1, a2)
}
}
/// `SetPrivateData` on the real object.
pub unsafe fn SetPrivateData(
inner: *mut c_void,
a0: *const windows::core::GUID,
a1: u32,
a2: *const core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetPrivateData)(inner, a0, a1, a2)
}
}
/// `SetPrivateDataInterface` on the real object.
pub unsafe fn SetPrivateDataInterface(
inner: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetPrivateDataInterface)(inner, a0, a1)
}
}
/// `SetName` on the real object.
pub unsafe fn SetName(inner: *mut c_void, a0: windows::core::PCWSTR) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetName)(inner, a0)
}
}
/// `GetDevice` on the real object.
pub unsafe fn GetDevice(
inner: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.GetDevice)(inner, a0, a1)
}
}
/// `GetType` on the real object.
pub unsafe fn GetType(
inner: *mut c_void,
) -> windows::Win32::Graphics::Direct3D12::D3D12_COMMAND_LIST_TYPE {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.GetType)(inner)
}
}
/// `Close` on the real object.
pub unsafe fn Close(inner: *mut c_void) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.Close)(inner)
}
}
/// `Reset` on the real object.
pub unsafe fn Reset(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.Reset)(inner, a0, a1)
}
}
/// `ClearState` on the real object.
pub unsafe fn ClearState(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ClearState)(inner, a0)
}
}
/// `DrawInstanced` on the real object.
pub unsafe fn DrawInstanced(inner: *mut c_void, a0: u32, a1: u32, a2: u32, a3: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.DrawInstanced)(inner, a0, a1, a2, a3)
}
}
/// `DrawIndexedInstanced` on the real object.
pub unsafe fn DrawIndexedInstanced(inner: *mut c_void, a0: u32, a1: u32, a2: u32, a3: i32, a4: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.DrawIndexedInstanced)(inner, a0, a1, a2, a3, a4)
}
}
/// `Dispatch` on the real object.
pub unsafe fn Dispatch(inner: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.Dispatch)(inner, a0, a1, a2)
}
}
/// `CopyBufferRegion` on the real object.
pub unsafe fn CopyBufferRegion(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.CopyBufferRegion)(inner, a0, a1, a2, a3, a4)
}
}
/// `CopyTextureRegion` on the real object.
pub unsafe fn CopyTextureRegion(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a1: u32,
a2: u32,
a3: u32,
a4: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a5: *const windows::Win32::Graphics::Direct3D12::D3D12_BOX,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.CopyTextureRegion)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `CopyResource` on the real object.
pub unsafe fn CopyResource(inner: *mut c_void, a0: *mut core::ffi::c_void, a1: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.CopyResource)(inner, a0, a1)
}
}
/// `CopyTiles` on the real object.
pub unsafe fn CopyTiles(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_TILED_RESOURCE_COORDINATE,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_TILE_REGION_SIZE,
a3: *mut core::ffi::c_void,
a4: u64,
a5: windows::Win32::Graphics::Direct3D12::D3D12_TILE_COPY_FLAGS,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.CopyTiles)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `ResolveSubresource` on the real object.
pub unsafe fn ResolveSubresource(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u32,
a4: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ResolveSubresource)(inner, a0, a1, a2, a3, a4)
}
}
/// `IASetPrimitiveTopology` on the real object.
pub unsafe fn IASetPrimitiveTopology(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.IASetPrimitiveTopology)(inner, a0)
}
}
/// `RSSetViewports` on the real object.
pub unsafe fn RSSetViewports(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_VIEWPORT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.RSSetViewports)(inner, a0, a1)
}
}
/// `RSSetScissorRects` on the real object.
pub unsafe fn RSSetScissorRects(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Foundation::RECT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.RSSetScissorRects)(inner, a0, a1)
}
}
/// `OMSetBlendFactor` on the real object.
pub unsafe fn OMSetBlendFactor(inner: *mut c_void, a0: *const f32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.OMSetBlendFactor)(inner, a0)
}
}
/// `OMSetStencilRef` on the real object.
pub unsafe fn OMSetStencilRef(inner: *mut c_void, a0: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.OMSetStencilRef)(inner, a0)
}
}
/// `SetPipelineState` on the real object.
pub unsafe fn SetPipelineState(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetPipelineState)(inner, a0)
}
}
/// `ResourceBarrier` on the real object.
pub unsafe fn ResourceBarrier(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RESOURCE_BARRIER,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ResourceBarrier)(inner, a0, a1)
}
}
/// `ExecuteBundle` on the real object.
pub unsafe fn ExecuteBundle(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ExecuteBundle)(inner, a0)
}
}
/// `SetDescriptorHeaps` on the real object.
pub unsafe fn SetDescriptorHeaps(inner: *mut c_void, a0: u32, a1: *const *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetDescriptorHeaps)(inner, a0, a1)
}
}
/// `SetComputeRootSignature` on the real object.
pub unsafe fn SetComputeRootSignature(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRootSignature)(inner, a0)
}
}
/// `SetGraphicsRootSignature` on the real object.
pub unsafe fn SetGraphicsRootSignature(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRootSignature)(inner, a0)
}
}
/// `SetComputeRootDescriptorTable` on the real object.
pub unsafe fn SetComputeRootDescriptorTable(
inner: *mut c_void,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRootDescriptorTable)(inner, a0, a1)
}
}
/// `SetGraphicsRootDescriptorTable` on the real object.
pub unsafe fn SetGraphicsRootDescriptorTable(
inner: *mut c_void,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRootDescriptorTable)(inner, a0, a1)
}
}
/// `SetComputeRoot32BitConstant` on the real object.
pub unsafe fn SetComputeRoot32BitConstant(inner: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRoot32BitConstant)(inner, a0, a1, a2)
}
}
/// `SetGraphicsRoot32BitConstant` on the real object.
pub unsafe fn SetGraphicsRoot32BitConstant(inner: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRoot32BitConstant)(inner, a0, a1, a2)
}
}
/// `SetComputeRoot32BitConstants` on the real object.
pub unsafe fn SetComputeRoot32BitConstants(
inner: *mut c_void,
a0: u32,
a1: u32,
a2: *const core::ffi::c_void,
a3: u32,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRoot32BitConstants)(inner, a0, a1, a2, a3)
}
}
/// `SetGraphicsRoot32BitConstants` on the real object.
pub unsafe fn SetGraphicsRoot32BitConstants(
inner: *mut c_void,
a0: u32,
a1: u32,
a2: *const core::ffi::c_void,
a3: u32,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRoot32BitConstants)(inner, a0, a1, a2, a3)
}
}
/// `SetComputeRootConstantBufferView` on the real object.
pub unsafe fn SetComputeRootConstantBufferView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRootConstantBufferView)(inner, a0, a1)
}
}
/// `SetGraphicsRootConstantBufferView` on the real object.
pub unsafe fn SetGraphicsRootConstantBufferView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRootConstantBufferView)(inner, a0, a1)
}
}
/// `SetComputeRootShaderResourceView` on the real object.
pub unsafe fn SetComputeRootShaderResourceView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRootShaderResourceView)(inner, a0, a1)
}
}
/// `SetGraphicsRootShaderResourceView` on the real object.
pub unsafe fn SetGraphicsRootShaderResourceView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRootShaderResourceView)(inner, a0, a1)
}
}
/// `SetComputeRootUnorderedAccessView` on the real object.
pub unsafe fn SetComputeRootUnorderedAccessView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetComputeRootUnorderedAccessView)(inner, a0, a1)
}
}
/// `SetGraphicsRootUnorderedAccessView` on the real object.
pub unsafe fn SetGraphicsRootUnorderedAccessView(inner: *mut c_void, a0: u32, a1: u64) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetGraphicsRootUnorderedAccessView)(inner, a0, a1)
}
}
/// `IASetIndexBuffer` on the real object.
pub unsafe fn IASetIndexBuffer(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_VIEW,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.IASetIndexBuffer)(inner, a0)
}
}
/// `IASetVertexBuffers` on the real object.
pub unsafe fn IASetVertexBuffers(
inner: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_VERTEX_BUFFER_VIEW,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.IASetVertexBuffers)(inner, a0, a1, a2)
}
}
/// `SOSetTargets` on the real object.
pub unsafe fn SOSetTargets(
inner: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_STREAM_OUTPUT_BUFFER_VIEW,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SOSetTargets)(inner, a0, a1, a2)
}
}
/// `OMSetRenderTargets` on the real object.
pub unsafe fn OMSetRenderTargets(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: windows::core::BOOL,
a3: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.OMSetRenderTargets)(inner, a0, a1, a2, a3)
}
}
/// `ClearDepthStencilView` on the real object.
pub unsafe fn ClearDepthStencilView(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CLEAR_FLAGS,
a2: f32,
a3: u8,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ClearDepthStencilView)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `ClearRenderTargetView` on the real object.
pub unsafe fn ClearRenderTargetView(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: *const f32,
a2: u32,
a3: *const windows::Win32::Foundation::RECT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ClearRenderTargetView)(inner, a0, a1, a2, a3)
}
}
/// `ClearUnorderedAccessViewUint` on the real object.
pub unsafe fn ClearUnorderedAccessViewUint(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const u32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ClearUnorderedAccessViewUint)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `ClearUnorderedAccessViewFloat` on the real object.
pub unsafe fn ClearUnorderedAccessViewFloat(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const f32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ClearUnorderedAccessViewFloat)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `DiscardResource` on the real object.
pub unsafe fn DiscardResource(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_DISCARD_REGION,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.DiscardResource)(inner, a0, a1)
}
}
/// `BeginQuery` on the real object.
pub unsafe fn BeginQuery(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.BeginQuery)(inner, a0, a1, a2)
}
}
/// `EndQuery` on the real object.
pub unsafe fn EndQuery(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.EndQuery)(inner, a0, a1, a2)
}
}
/// `ResolveQueryData` on the real object.
pub unsafe fn ResolveQueryData(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ResolveQueryData)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `SetPredication` on the real object.
pub unsafe fn SetPredication(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_PREDICATION_OP,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetPredication)(inner, a0, a1, a2)
}
}
/// `SetMarker` on the real object.
pub unsafe fn SetMarker(inner: *mut c_void, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetMarker)(inner, a0, a1, a2)
}
}
/// `BeginEvent` on the real object.
pub unsafe fn BeginEvent(inner: *mut c_void, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.BeginEvent)(inner, a0, a1, a2)
}
}
/// `EndEvent` on the real object.
pub unsafe fn EndEvent(inner: *mut c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.EndEvent)(inner)
}
}
/// `ExecuteIndirect` on the real object.
pub unsafe fn ExecuteIndirect(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u64,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ExecuteIndirect)(inner, a0, a1, a2, a3, a4, a5)
}
}
/// `AtomicCopyBufferUINT` on the real object.
pub unsafe fn AtomicCopyBufferUINT(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.AtomicCopyBufferUINT)(inner, a0, a1, a2, a3, a4, a5, a6)
}
}
/// `AtomicCopyBufferUINT64` on the real object.
pub unsafe fn AtomicCopyBufferUINT64(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.AtomicCopyBufferUINT64)(inner, a0, a1, a2, a3, a4, a5, a6)
}
}
/// `OMSetDepthBounds` on the real object.
pub unsafe fn OMSetDepthBounds(inner: *mut c_void, a0: f32, a1: f32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.OMSetDepthBounds)(inner, a0, a1)
}
}
/// `SetSamplePositions` on the real object.
pub unsafe fn SetSamplePositions(
inner: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_SAMPLE_POSITION,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetSamplePositions)(inner, a0, a1, a2)
}
}
/// `ResolveSubresourceRegion` on the real object.
pub unsafe fn ResolveSubresourceRegion(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u32,
a6: *const windows::Win32::Foundation::RECT,
a7: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
a8: windows::Win32::Graphics::Direct3D12::D3D12_RESOLVE_MODE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.ResolveSubresourceRegion)(inner, a0, a1, a2, a3, a4, a5, a6, a7, a8)
}
}
/// `SetViewInstanceMask` on the real object.
pub unsafe fn SetViewInstanceMask(inner: *mut c_void, a0: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetViewInstanceMask)(inner, a0)
}
}
/// `WriteBufferImmediate` on the real object.
pub unsafe fn WriteBufferImmediate(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_MODE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.WriteBufferImmediate)(inner, a0, a1, a2)
}
}
/// `SetProtectedResourceSession` on the real object.
pub unsafe fn SetProtectedResourceSession(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.base__
.SetProtectedResourceSession)(inner, a0)
}
}
/// `BeginRenderPass` on the real object.
pub unsafe fn BeginRenderPass(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_RENDER_TARGET_DESC,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_DEPTH_STENCIL_DESC,
a3: windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_FLAGS,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.BeginRenderPass)(inner, a0, a1, a2, a3)
}
}
/// `EndRenderPass` on the real object.
pub unsafe fn EndRenderPass(inner: *mut c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.EndRenderPass)(inner)
}
}
/// `InitializeMetaCommand` on the real object.
pub unsafe fn InitializeMetaCommand(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.InitializeMetaCommand)(inner, a0, a1, a2)
}
}
/// `ExecuteMetaCommand` on the real object.
pub unsafe fn ExecuteMetaCommand(
inner: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.ExecuteMetaCommand)(inner, a0, a1, a2)
}
}
/// `BuildRaytracingAccelerationStructure` on the real object.
pub unsafe fn BuildRaytracingAccelerationStructure(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC,
a1: u32,
a2: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.BuildRaytracingAccelerationStructure)(inner, a0, a1, a2)
}
}
/// `EmitRaytracingAccelerationStructurePostbuildInfo` on the real object.
pub unsafe fn EmitRaytracingAccelerationStructurePostbuildInfo(
inner: *mut c_void,
a0: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
a1: u32,
a2: *const u64,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.EmitRaytracingAccelerationStructurePostbuildInfo)(inner, a0, a1, a2)
}
}
/// `CopyRaytracingAccelerationStructure` on the real object.
pub unsafe fn CopyRaytracingAccelerationStructure(
inner: *mut c_void,
a0: u64,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.CopyRaytracingAccelerationStructure)(inner, a0, a1, a2)
}
}
/// `SetPipelineState1` on the real object.
pub unsafe fn SetPipelineState1(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.SetPipelineState1)(inner, a0)
}
}
/// `DispatchRays` on the real object.
pub unsafe fn DispatchRays(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_RAYS_DESC,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.base__
.DispatchRays)(inner, a0)
}
}
/// `RSSetShadingRate` on the real object.
pub unsafe fn RSSetShadingRate(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE_COMBINER,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.RSSetShadingRate)(inner, a0, a1)
}
}
/// `RSSetShadingRateImage` on the real object.
pub unsafe fn RSSetShadingRateImage(inner: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.base__
.RSSetShadingRateImage)(inner, a0)
}
}
/// `DispatchMesh` on the real object.
pub unsafe fn DispatchMesh(inner: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.base__
.DispatchMesh)(inner, a0, a1, a2)
}
}
/// `Barrier` on the real object.
pub unsafe fn Barrier(
inner: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_BARRIER_GROUP,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.base__
.Barrier)(inner, a0, a1)
}
}
/// `OMSetFrontAndBackStencilRef` on the real object.
pub unsafe fn OMSetFrontAndBackStencilRef(inner: *mut c_void, a0: u32, a1: u32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.base__
.OMSetFrontAndBackStencilRef)(inner, a0, a1)
}
}
/// `RSSetDepthBias` on the real object.
pub unsafe fn RSSetDepthBias(inner: *mut c_void, a0: f32, a1: f32, a2: f32) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.RSSetDepthBias)(inner, a0, a1, a2)
}
}
/// `IASetIndexBufferStripCutValue` on the real object.
pub unsafe fn IASetIndexBufferStripCutValue(
inner: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_STRIP_CUT_VALUE,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.base__
.IASetIndexBufferStripCutValue)(inner, a0)
}
}
/// `SetProgram` on the real object.
pub unsafe fn SetProgram(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_SET_PROGRAM_DESC,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.SetProgram)(inner, a0)
}
}
/// `DispatchGraph` on the real object.
pub unsafe fn DispatchGraph(
inner: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_GRAPH_DESC,
) {
unsafe {
((*(*(inner
as *const *const windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl)))
.DispatchGraph)(inner, a0)
}
}
}
unsafe extern "system" fn QueryInterface<T: List12Methods>(
this: *mut c_void,
iid: *const windows::core::GUID,
out: *mut *mut c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).QueryInterface(iid, out) }
}
unsafe extern "system" fn AddRef<T: List12Methods>(this: *mut c_void) -> u32 {
unsafe { (*(this as *const T)).AddRef() }
}
unsafe extern "system" fn Release<T: List12Methods>(this: *mut c_void) -> u32 {
unsafe { (*(this as *const T)).Release() }
}
unsafe extern "system" fn GetPrivateData<T: List12Methods>(
this: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut u32,
a2: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).GetPrivateData(a0, a1, a2) }
}
unsafe extern "system" fn SetPrivateData<T: List12Methods>(
this: *mut c_void,
a0: *const windows::core::GUID,
a1: u32,
a2: *const core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).SetPrivateData(a0, a1, a2) }
}
unsafe extern "system" fn SetPrivateDataInterface<T: List12Methods>(
this: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).SetPrivateDataInterface(a0, a1) }
}
unsafe extern "system" fn SetName<T: List12Methods>(
this: *mut c_void,
a0: windows::core::PCWSTR,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).SetName(a0) }
}
unsafe extern "system" fn GetDevice<T: List12Methods>(
this: *mut c_void,
a0: *const windows::core::GUID,
a1: *mut *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).GetDevice(a0, a1) }
}
unsafe extern "system" fn GetType<T: List12Methods>(
this: *mut c_void,
) -> windows::Win32::Graphics::Direct3D12::D3D12_COMMAND_LIST_TYPE {
unsafe { (*(this as *const T)).GetType() }
}
unsafe extern "system" fn Close<T: List12Methods>(this: *mut c_void) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).Close() }
}
unsafe extern "system" fn Reset<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe { (*(this as *const T)).Reset(a0, a1) }
}
unsafe extern "system" fn ClearState<T: List12Methods>(this: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe { (*(this as *const T)).ClearState(a0) }
}
unsafe extern "system" fn DrawInstanced<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: u32,
a3: u32,
) {
unsafe { (*(this as *const T)).DrawInstanced(a0, a1, a2, a3) }
}
unsafe extern "system" fn DrawIndexedInstanced<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: u32,
a3: i32,
a4: u32,
) {
unsafe { (*(this as *const T)).DrawIndexedInstanced(a0, a1, a2, a3, a4) }
}
unsafe extern "system" fn Dispatch<T: List12Methods>(this: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe { (*(this as *const T)).Dispatch(a0, a1, a2) }
}
unsafe extern "system" fn CopyBufferRegion<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u64,
) {
unsafe { (*(this as *const T)).CopyBufferRegion(a0, a1, a2, a3, a4) }
}
unsafe extern "system" fn CopyTextureRegion<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a1: u32,
a2: u32,
a3: u32,
a4: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a5: *const windows::Win32::Graphics::Direct3D12::D3D12_BOX,
) {
unsafe { (*(this as *const T)).CopyTextureRegion(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn CopyResource<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).CopyResource(a0, a1) }
}
unsafe extern "system" fn CopyTiles<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_TILED_RESOURCE_COORDINATE,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_TILE_REGION_SIZE,
a3: *mut core::ffi::c_void,
a4: u64,
a5: windows::Win32::Graphics::Direct3D12::D3D12_TILE_COPY_FLAGS,
) {
unsafe { (*(this as *const T)).CopyTiles(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn ResolveSubresource<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u32,
a4: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
) {
unsafe { (*(this as *const T)).ResolveSubresource(a0, a1, a2, a3, a4) }
}
unsafe extern "system" fn IASetPrimitiveTopology<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D::D3D_PRIMITIVE_TOPOLOGY,
) {
unsafe { (*(this as *const T)).IASetPrimitiveTopology(a0) }
}
unsafe extern "system" fn RSSetViewports<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_VIEWPORT,
) {
unsafe { (*(this as *const T)).RSSetViewports(a0, a1) }
}
unsafe extern "system" fn RSSetScissorRects<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Foundation::RECT,
) {
unsafe { (*(this as *const T)).RSSetScissorRects(a0, a1) }
}
unsafe extern "system" fn OMSetBlendFactor<T: List12Methods>(this: *mut c_void, a0: *const f32) {
unsafe { (*(this as *const T)).OMSetBlendFactor(a0) }
}
unsafe extern "system" fn OMSetStencilRef<T: List12Methods>(this: *mut c_void, a0: u32) {
unsafe { (*(this as *const T)).OMSetStencilRef(a0) }
}
unsafe extern "system" fn SetPipelineState<T: List12Methods>(this: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe { (*(this as *const T)).SetPipelineState(a0) }
}
unsafe extern "system" fn ResourceBarrier<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RESOURCE_BARRIER,
) {
unsafe { (*(this as *const T)).ResourceBarrier(a0, a1) }
}
unsafe extern "system" fn ExecuteBundle<T: List12Methods>(this: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe { (*(this as *const T)).ExecuteBundle(a0) }
}
unsafe extern "system" fn SetDescriptorHeaps<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).SetDescriptorHeaps(a0, a1) }
}
unsafe extern "system" fn SetComputeRootSignature<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).SetComputeRootSignature(a0) }
}
unsafe extern "system" fn SetGraphicsRootSignature<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).SetGraphicsRootSignature(a0) }
}
unsafe extern "system" fn SetComputeRootDescriptorTable<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe { (*(this as *const T)).SetComputeRootDescriptorTable(a0, a1) }
}
unsafe extern "system" fn SetGraphicsRootDescriptorTable<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe { (*(this as *const T)).SetGraphicsRootDescriptorTable(a0, a1) }
}
unsafe extern "system" fn SetComputeRoot32BitConstant<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: u32,
) {
unsafe { (*(this as *const T)).SetComputeRoot32BitConstant(a0, a1, a2) }
}
unsafe extern "system" fn SetGraphicsRoot32BitConstant<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: u32,
) {
unsafe { (*(this as *const T)).SetGraphicsRoot32BitConstant(a0, a1, a2) }
}
unsafe extern "system" fn SetComputeRoot32BitConstants<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: *const core::ffi::c_void,
a3: u32,
) {
unsafe { (*(this as *const T)).SetComputeRoot32BitConstants(a0, a1, a2, a3) }
}
unsafe extern "system" fn SetGraphicsRoot32BitConstants<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: *const core::ffi::c_void,
a3: u32,
) {
unsafe { (*(this as *const T)).SetGraphicsRoot32BitConstants(a0, a1, a2, a3) }
}
unsafe extern "system" fn SetComputeRootConstantBufferView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetComputeRootConstantBufferView(a0, a1) }
}
unsafe extern "system" fn SetGraphicsRootConstantBufferView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetGraphicsRootConstantBufferView(a0, a1) }
}
unsafe extern "system" fn SetComputeRootShaderResourceView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetComputeRootShaderResourceView(a0, a1) }
}
unsafe extern "system" fn SetGraphicsRootShaderResourceView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetGraphicsRootShaderResourceView(a0, a1) }
}
unsafe extern "system" fn SetComputeRootUnorderedAccessView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetComputeRootUnorderedAccessView(a0, a1) }
}
unsafe extern "system" fn SetGraphicsRootUnorderedAccessView<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u64,
) {
unsafe { (*(this as *const T)).SetGraphicsRootUnorderedAccessView(a0, a1) }
}
unsafe extern "system" fn IASetIndexBuffer<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_VIEW,
) {
unsafe { (*(this as *const T)).IASetIndexBuffer(a0) }
}
unsafe extern "system" fn IASetVertexBuffers<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_VERTEX_BUFFER_VIEW,
) {
unsafe { (*(this as *const T)).IASetVertexBuffers(a0, a1, a2) }
}
unsafe extern "system" fn SOSetTargets<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_STREAM_OUTPUT_BUFFER_VIEW,
) {
unsafe { (*(this as *const T)).SOSetTargets(a0, a1, a2) }
}
unsafe extern "system" fn OMSetRenderTargets<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: windows::core::BOOL,
a3: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
) {
unsafe { (*(this as *const T)).OMSetRenderTargets(a0, a1, a2, a3) }
}
unsafe extern "system" fn ClearDepthStencilView<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CLEAR_FLAGS,
a2: f32,
a3: u8,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { (*(this as *const T)).ClearDepthStencilView(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn ClearRenderTargetView<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: *const f32,
a2: u32,
a3: *const windows::Win32::Foundation::RECT,
) {
unsafe { (*(this as *const T)).ClearRenderTargetView(a0, a1, a2, a3) }
}
unsafe extern "system" fn ClearUnorderedAccessViewUint<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const u32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { (*(this as *const T)).ClearUnorderedAccessViewUint(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn ClearUnorderedAccessViewFloat<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const f32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe { (*(this as *const T)).ClearUnorderedAccessViewFloat(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn DiscardResource<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_DISCARD_REGION,
) {
unsafe { (*(this as *const T)).DiscardResource(a0, a1) }
}
unsafe extern "system" fn BeginQuery<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe { (*(this as *const T)).BeginQuery(a0, a1, a2) }
}
unsafe extern "system" fn EndQuery<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe { (*(this as *const T)).EndQuery(a0, a1, a2) }
}
unsafe extern "system" fn ResolveQueryData<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe { (*(this as *const T)).ResolveQueryData(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn SetPredication<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_PREDICATION_OP,
) {
unsafe { (*(this as *const T)).SetPredication(a0, a1, a2) }
}
unsafe extern "system" fn SetMarker<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const core::ffi::c_void,
a2: u32,
) {
unsafe { (*(this as *const T)).SetMarker(a0, a1, a2) }
}
unsafe extern "system" fn BeginEvent<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const core::ffi::c_void,
a2: u32,
) {
unsafe { (*(this as *const T)).BeginEvent(a0, a1, a2) }
}
unsafe extern "system" fn EndEvent<T: List12Methods>(this: *mut c_void) {
unsafe { (*(this as *const T)).EndEvent() }
}
unsafe extern "system" fn ExecuteIndirect<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u64,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe { (*(this as *const T)).ExecuteIndirect(a0, a1, a2, a3, a4, a5) }
}
unsafe extern "system" fn AtomicCopyBufferUINT<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe { (*(this as *const T)).AtomicCopyBufferUINT(a0, a1, a2, a3, a4, a5, a6) }
}
unsafe extern "system" fn AtomicCopyBufferUINT64<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe { (*(this as *const T)).AtomicCopyBufferUINT64(a0, a1, a2, a3, a4, a5, a6) }
}
unsafe extern "system" fn OMSetDepthBounds<T: List12Methods>(this: *mut c_void, a0: f32, a1: f32) {
unsafe { (*(this as *const T)).OMSetDepthBounds(a0, a1) }
}
unsafe extern "system" fn SetSamplePositions<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_SAMPLE_POSITION,
) {
unsafe { (*(this as *const T)).SetSamplePositions(a0, a1, a2) }
}
unsafe extern "system" fn ResolveSubresourceRegion<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: u32,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u32,
a6: *const windows::Win32::Foundation::RECT,
a7: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
a8: windows::Win32::Graphics::Direct3D12::D3D12_RESOLVE_MODE,
) {
unsafe { (*(this as *const T)).ResolveSubresourceRegion(a0, a1, a2, a3, a4, a5, a6, a7, a8) }
}
unsafe extern "system" fn SetViewInstanceMask<T: List12Methods>(this: *mut c_void, a0: u32) {
unsafe { (*(this as *const T)).SetViewInstanceMask(a0) }
}
unsafe extern "system" fn WriteBufferImmediate<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_MODE,
) {
unsafe { (*(this as *const T)).WriteBufferImmediate(a0, a1, a2) }
}
unsafe extern "system" fn SetProtectedResourceSession<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).SetProtectedResourceSession(a0) }
}
unsafe extern "system" fn BeginRenderPass<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_RENDER_TARGET_DESC,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_DEPTH_STENCIL_DESC,
a3: windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_FLAGS,
) {
unsafe { (*(this as *const T)).BeginRenderPass(a0, a1, a2, a3) }
}
unsafe extern "system" fn EndRenderPass<T: List12Methods>(this: *mut c_void) {
unsafe { (*(this as *const T)).EndRenderPass() }
}
unsafe extern "system" fn InitializeMetaCommand<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe { (*(this as *const T)).InitializeMetaCommand(a0, a1, a2) }
}
unsafe extern "system" fn ExecuteMetaCommand<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe { (*(this as *const T)).ExecuteMetaCommand(a0, a1, a2) }
}
unsafe extern "system" fn BuildRaytracingAccelerationStructure<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC,
a1: u32,
a2: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
) {
unsafe { (*(this as *const T)).BuildRaytracingAccelerationStructure(a0, a1, a2) }
}
unsafe extern "system" fn EmitRaytracingAccelerationStructurePostbuildInfo<T: List12Methods>(
this: *mut c_void,
a0: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
a1: u32,
a2: *const u64,
) {
unsafe { (*(this as *const T)).EmitRaytracingAccelerationStructurePostbuildInfo(a0, a1, a2) }
}
unsafe extern "system" fn CopyRaytracingAccelerationStructure<T: List12Methods>(
this: *mut c_void,
a0: u64,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE,
) {
unsafe { (*(this as *const T)).CopyRaytracingAccelerationStructure(a0, a1, a2) }
}
unsafe extern "system" fn SetPipelineState1<T: List12Methods>(this: *mut c_void, a0: *mut core::ffi::c_void) {
unsafe { (*(this as *const T)).SetPipelineState1(a0) }
}
unsafe extern "system" fn DispatchRays<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_RAYS_DESC,
) {
unsafe { (*(this as *const T)).DispatchRays(a0) }
}
unsafe extern "system" fn RSSetShadingRate<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE_COMBINER,
) {
unsafe { (*(this as *const T)).RSSetShadingRate(a0, a1) }
}
unsafe extern "system" fn RSSetShadingRateImage<T: List12Methods>(
this: *mut c_void,
a0: *mut core::ffi::c_void,
) {
unsafe { (*(this as *const T)).RSSetShadingRateImage(a0) }
}
unsafe extern "system" fn DispatchMesh<T: List12Methods>(this: *mut c_void, a0: u32, a1: u32, a2: u32) {
unsafe { (*(this as *const T)).DispatchMesh(a0, a1, a2) }
}
unsafe extern "system" fn Barrier<T: List12Methods>(
this: *mut c_void,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_BARRIER_GROUP,
) {
unsafe { (*(this as *const T)).Barrier(a0, a1) }
}
unsafe extern "system" fn OMSetFrontAndBackStencilRef<T: List12Methods>(this: *mut c_void, a0: u32, a1: u32) {
unsafe { (*(this as *const T)).OMSetFrontAndBackStencilRef(a0, a1) }
}
unsafe extern "system" fn RSSetDepthBias<T: List12Methods>(this: *mut c_void, a0: f32, a1: f32, a2: f32) {
unsafe { (*(this as *const T)).RSSetDepthBias(a0, a1, a2) }
}
unsafe extern "system" fn IASetIndexBufferStripCutValue<T: List12Methods>(
this: *mut c_void,
a0: windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_STRIP_CUT_VALUE,
) {
unsafe { (*(this as *const T)).IASetIndexBufferStripCutValue(a0) }
}
unsafe extern "system" fn SetProgram<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_SET_PROGRAM_DESC,
) {
unsafe { (*(this as *const T)).SetProgram(a0) }
}
unsafe extern "system" fn DispatchGraph<T: List12Methods>(
this: *mut c_void,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_GRAPH_DESC,
) {
unsafe { (*(this as *const T)).DispatchGraph(a0) }
}
#[allow(clippy::let_and_return)] // Uniform post-call interception in generated methods.
unsafe impl List12Methods for crate::d3d12::Object {
fn inner(&self) -> *mut c_void {
self.real()
}
unsafe fn QueryInterface(
&self,
iid: *const windows::core::GUID,
out: *mut *mut c_void,
) -> windows::core::HRESULT {
unsafe { self.query(iid, out) }
}
unsafe fn AddRef(&self) -> u32 {
self.add_ref()
}
unsafe fn Release(&self) -> u32 {
unsafe { self.release() }
}
unsafe fn GetPrivateData(
&self,
a0: *const windows::core::GUID,
a1: *mut u32,
a2: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
let result = real::GetPrivateData(self.real(), a0, a1, a2);
self.private_output(result, a0, a1, a2);
result
}
}
unsafe fn SetPrivateData(
&self,
a0: *const windows::core::GUID,
a1: u32,
a2: *const core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
let result = real::SetPrivateData(self.real(), a0, a1, a2);
if result.is_ok() {
self.private_interface(a0, false);
}
result
}
}
unsafe fn SetPrivateDataInterface(
&self,
a0: *const windows::core::GUID,
a1: *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
let result = real::SetPrivateDataInterface(self.real(), a0, crate::d3d12::unwrap(a1));
if result.is_ok() {
self.private_interface(a0, !a1.is_null());
}
result
}
}
unsafe fn SetName(&self, a0: windows::core::PCWSTR) -> windows::core::HRESULT {
unsafe {
let result = real::SetName(self.real(), a0);
result
}
}
unsafe fn GetDevice(
&self,
a0: *const windows::core::GUID,
a1: *mut *mut core::ffi::c_void,
) -> windows::core::HRESULT {
unsafe {
let result = real::GetDevice(self.real(), a0, a1);
crate::d3d12::wrap_output(result, a0, a1);
result
}
}
unsafe fn GetType(&self) -> windows::Win32::Graphics::Direct3D12::D3D12_COMMAND_LIST_TYPE {
unsafe {
let result = real::GetType(self.real());
result
}
}
unsafe fn Close(&self) -> windows::core::HRESULT {
unsafe {
self.called("Close");
self.data.closing(self.real());
let result = real::Close(self.real());
self.data.close(result);
result
}
}
unsafe fn Reset(&self, a0: *mut core::ffi::c_void, a1: *mut core::ffi::c_void) -> windows::core::HRESULT {
unsafe {
self.called("Reset");
let result = real::Reset(self.real(), crate::d3d12::unwrap(a0), crate::d3d12::unwrap(a1));
self.data.reset(self.real(), result, a0, a1);
result
}
}
unsafe fn ClearState(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "ClearState", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::ClearState(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn DrawInstanced(&self, a0: u32, a1: u32, a2: u32, a3: u32) {
unsafe {
self.called("DrawInstanced");
self.data.record(self.real(), "DrawInstanced", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2, a3])
});
real::DrawInstanced(self.real(), a0, a1, a2, a3);
}
}
unsafe fn DrawIndexedInstanced(&self, a0: u32, a1: u32, a2: u32, a3: i32, a4: u32) {
unsafe {
self.called("DrawIndexedInstanced");
self.data.record(self.real(), "DrawIndexedInstanced", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2, a3, a4])
});
real::DrawIndexedInstanced(self.real(), a0, a1, a2, a3, a4);
}
}
unsafe fn Dispatch(&self, a0: u32, a1: u32, a2: u32) {
unsafe {
self.called("Dispatch");
self.data.record(self.real(), "Dispatch", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2])
});
real::Dispatch(self.real(), a0, a1, a2);
}
}
unsafe fn CopyBufferRegion(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u64,
) {
unsafe {
self.data.record(self.real(), "CopyBufferRegion", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, id(a2), a3, a4])
});
real::CopyBufferRegion(
self.real(),
crate::d3d12::unwrap(a0),
a1,
crate::d3d12::unwrap(a2),
a3,
a4,
);
}
}
unsafe fn CopyTextureRegion(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a1: u32,
a2: u32,
a3: u32,
a4: *const windows::Win32::Graphics::Direct3D12::D3D12_TEXTURE_COPY_LOCATION,
a5: *const windows::Win32::Graphics::Direct3D12::D3D12_BOX,
) {
unsafe {
let mapped0 = crate::d3d12::inputs::texture_copy(a0);
let mapped4 = crate::d3d12::inputs::texture_copy(a4);
self.data.record(self.real(), "CopyTextureRegion", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([texture_copy(a0), a1, a2, a3, texture_copy(a4), box_value(a5)])
});
real::CopyTextureRegion(self.real(), mapped0.ptr(), a1, a2, a3, mapped4.ptr(), a5);
}
}
unsafe fn CopyResource(&self, a0: *mut core::ffi::c_void, a1: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "CopyResource", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), id(a1)])
});
real::CopyResource(self.real(), crate::d3d12::unwrap(a0), crate::d3d12::unwrap(a1));
}
}
unsafe fn CopyTiles(
&self,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_TILED_RESOURCE_COORDINATE,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_TILE_REGION_SIZE,
a3: *mut core::ffi::c_void,
a4: u64,
a5: windows::Win32::Graphics::Direct3D12::D3D12_TILE_COPY_FLAGS,
) {
unsafe {
self.data.record(self.real(), "CopyTiles", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), tile_coordinate(a1), tile_region(a2), id(a3), a4, a5.0])
});
real::CopyTiles(
self.real(),
crate::d3d12::unwrap(a0),
a1,
a2,
crate::d3d12::unwrap(a3),
a4,
a5,
);
}
}
unsafe fn ResolveSubresource(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u32,
a4: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
) {
unsafe {
self.data.record(self.real(), "ResolveSubresource", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, id(a2), a3, a4.0])
});
real::ResolveSubresource(
self.real(),
crate::d3d12::unwrap(a0),
a1,
crate::d3d12::unwrap(a2),
a3,
a4,
);
}
}
unsafe fn IASetPrimitiveTopology(&self, a0: windows::Win32::Graphics::Direct3D::D3D_PRIMITIVE_TOPOLOGY) {
unsafe {
self.data.record(self.real(), "IASetPrimitiveTopology", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0.0])
});
real::IASetPrimitiveTopology(self.real(), a0);
}
}
unsafe fn RSSetViewports(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_VIEWPORT,
) {
unsafe {
self.data.record(self.real(), "RSSetViewports", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([viewports(a1, a0)])
});
real::RSSetViewports(self.real(), a0, a1);
}
}
unsafe fn RSSetScissorRects(&self, a0: u32, a1: *const windows::Win32::Foundation::RECT) {
unsafe {
self.data.record(self.real(), "RSSetScissorRects", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([rects(a1, a0)])
});
real::RSSetScissorRects(self.real(), a0, a1);
}
}
unsafe fn OMSetBlendFactor(&self, a0: *const f32) {
unsafe {
self.data.record(self.real(), "OMSetBlendFactor", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([slice(a0, 4)])
});
real::OMSetBlendFactor(self.real(), a0);
}
}
unsafe fn OMSetStencilRef(&self, a0: u32) {
unsafe {
self.data.record(self.real(), "OMSetStencilRef", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0])
});
real::OMSetStencilRef(self.real(), a0);
}
}
unsafe fn SetPipelineState(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "SetPipelineState", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::SetPipelineState(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn ResourceBarrier(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RESOURCE_BARRIER,
) {
unsafe {
let mapped1 = crate::d3d12::inputs::barriers(a1, a0);
self.data.record(self.real(), "ResourceBarrier", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([barriers(a1, a0)])
});
real::ResourceBarrier(self.real(), a0, mapped1.ptr());
}
}
unsafe fn ExecuteBundle(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.bundle(self.real(), a0);
real::ExecuteBundle(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn SetDescriptorHeaps(&self, a0: u32, a1: *const *mut core::ffi::c_void) {
unsafe {
let mapped1 = crate::d3d12::inputs::objects(a1, a0);
self.data.record(self.real(), "SetDescriptorHeaps", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([slice(a1, a0 as usize).iter().map(|p| id(*p)).collect::<Vec<_>>()])
});
real::SetDescriptorHeaps(self.real(), a0, mapped1.ptr());
}
}
unsafe fn SetComputeRootSignature(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "SetComputeRootSignature", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::SetComputeRootSignature(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn SetGraphicsRootSignature(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "SetGraphicsRootSignature", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::SetGraphicsRootSignature(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn SetComputeRootDescriptorTable(
&self,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe {
self.data
.record(self.real(), "SetComputeRootDescriptorTable", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, descriptor(a1.ptr, true)])
});
real::SetComputeRootDescriptorTable(self.real(), a0, a1);
}
}
unsafe fn SetGraphicsRootDescriptorTable(
&self,
a0: u32,
a1: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
) {
unsafe {
self.data
.record(self.real(), "SetGraphicsRootDescriptorTable", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, descriptor(a1.ptr, true)])
});
real::SetGraphicsRootDescriptorTable(self.real(), a0, a1);
}
}
unsafe fn SetComputeRoot32BitConstant(&self, a0: u32, a1: u32, a2: u32) {
unsafe {
self.data.record(self.real(), "SetComputeRoot32BitConstant", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2])
});
real::SetComputeRoot32BitConstant(self.real(), a0, a1, a2);
}
}
unsafe fn SetGraphicsRoot32BitConstant(&self, a0: u32, a1: u32, a2: u32) {
unsafe {
self.data.record(self.real(), "SetGraphicsRoot32BitConstant", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2])
});
real::SetGraphicsRoot32BitConstant(self.real(), a0, a1, a2);
}
}
unsafe fn SetComputeRoot32BitConstants(&self, a0: u32, a1: u32, a2: *const core::ffi::c_void, a3: u32) {
unsafe {
self.data.record(self.real(), "SetComputeRoot32BitConstants", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, slice(a2.cast::<u32>(), a1 as usize), a3])
});
real::SetComputeRoot32BitConstants(self.real(), a0, a1, a2, a3);
}
}
unsafe fn SetGraphicsRoot32BitConstants(&self, a0: u32, a1: u32, a2: *const core::ffi::c_void, a3: u32) {
unsafe {
self.data
.record(self.real(), "SetGraphicsRoot32BitConstants", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, slice(a2.cast::<u32>(), a1 as usize), a3])
});
real::SetGraphicsRoot32BitConstants(self.real(), a0, a1, a2, a3);
}
}
unsafe fn SetComputeRootConstantBufferView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetComputeRootConstantBufferView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetComputeRootConstantBufferView(self.real(), a0, a1);
}
}
unsafe fn SetGraphicsRootConstantBufferView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetGraphicsRootConstantBufferView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetGraphicsRootConstantBufferView(self.real(), a0, a1);
}
}
unsafe fn SetComputeRootShaderResourceView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetComputeRootShaderResourceView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetComputeRootShaderResourceView(self.real(), a0, a1);
}
}
unsafe fn SetGraphicsRootShaderResourceView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetGraphicsRootShaderResourceView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetGraphicsRootShaderResourceView(self.real(), a0, a1);
}
}
unsafe fn SetComputeRootUnorderedAccessView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetComputeRootUnorderedAccessView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetComputeRootUnorderedAccessView(self.real(), a0, a1);
}
}
unsafe fn SetGraphicsRootUnorderedAccessView(&self, a0: u32, a1: u64) {
unsafe {
self.data
.record(self.real(), "SetGraphicsRootUnorderedAccessView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, address(a1)])
});
real::SetGraphicsRootUnorderedAccessView(self.real(), a0, a1);
}
}
unsafe fn IASetIndexBuffer(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_VIEW,
) {
unsafe {
self.data.record(self.real(), "IASetIndexBuffer", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([index_buffer(a0)])
});
real::IASetIndexBuffer(self.real(), a0);
}
}
unsafe fn IASetVertexBuffers(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_VERTEX_BUFFER_VIEW,
) {
unsafe {
self.data.record(self.real(), "IASetVertexBuffers", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, vertex_buffers(a2, a1)])
});
real::IASetVertexBuffers(self.real(), a0, a1, a2);
}
}
unsafe fn SOSetTargets(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_STREAM_OUTPUT_BUFFER_VIEW,
) {
unsafe {
self.data.record(self.real(), "SOSetTargets", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, stream_outputs(a2, a1)])
});
real::SOSetTargets(self.real(), a0, a1, a2);
}
}
unsafe fn OMSetRenderTargets(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: windows::core::BOOL,
a3: *const windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
) {
unsafe {
self.data.record(self.real(), "OMSetRenderTargets", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([
render_targets(a1, a0, a2.as_bool()),
a3.as_ref().map(|d| descriptor(d.ptr as u64, false))
])
});
real::OMSetRenderTargets(self.real(), a0, a1, a2, a3);
}
}
unsafe fn ClearDepthStencilView(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CLEAR_FLAGS,
a2: f32,
a3: u8,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
self.data.record(self.real(), "ClearDepthStencilView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([descriptor(a0.ptr as u64, false), a1.0, a2, a3, rects(a5, a4)])
});
real::ClearDepthStencilView(self.real(), a0, a1, a2, a3, a4, a5);
}
}
unsafe fn ClearRenderTargetView(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a1: *const f32,
a2: u32,
a3: *const windows::Win32::Foundation::RECT,
) {
unsafe {
self.data.record(self.real(), "ClearRenderTargetView", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([descriptor(a0.ptr as u64, false), slice(a1, 4), rects(a3, a2)])
});
real::ClearRenderTargetView(self.real(), a0, a1, a2, a3);
}
}
unsafe fn ClearUnorderedAccessViewUint(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const u32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
self.data.record(self.real(), "ClearUnorderedAccessViewUint", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([
descriptor(a0.ptr, true),
descriptor(a1.ptr as u64, false),
id(a2),
slice(a3, 4),
rects(a5, a4)
])
});
real::ClearUnorderedAccessViewUint(self.real(), a0, a1, crate::d3d12::unwrap(a2), a3, a4, a5);
}
}
unsafe fn ClearUnorderedAccessViewFloat(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_GPU_DESCRIPTOR_HANDLE,
a1: windows::Win32::Graphics::Direct3D12::D3D12_CPU_DESCRIPTOR_HANDLE,
a2: *mut core::ffi::c_void,
a3: *const f32,
a4: u32,
a5: *const windows::Win32::Foundation::RECT,
) {
unsafe {
self.data
.record(self.real(), "ClearUnorderedAccessViewFloat", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([
descriptor(a0.ptr, true),
descriptor(a1.ptr as u64, false),
id(a2),
slice(a3, 4),
rects(a5, a4)
])
});
real::ClearUnorderedAccessViewFloat(self.real(), a0, a1, crate::d3d12::unwrap(a2), a3, a4, a5);
}
}
unsafe fn DiscardResource(
&self,
a0: *mut core::ffi::c_void,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_DISCARD_REGION,
) {
unsafe {
self.data.record(self.real(), "DiscardResource", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), discard_region(a1)])
});
real::DiscardResource(self.real(), crate::d3d12::unwrap(a0), a1);
}
}
unsafe fn BeginQuery(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe {
self.data.record(self.real(), "BeginQuery", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1.0, a2])
});
real::BeginQuery(self.real(), crate::d3d12::unwrap(a0), a1, a2);
}
}
unsafe fn EndQuery(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
) {
unsafe {
self.data.record(self.real(), "EndQuery", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1.0, a2])
});
real::EndQuery(self.real(), crate::d3d12::unwrap(a0), a1, a2);
}
}
unsafe fn ResolveQueryData(
&self,
a0: *mut core::ffi::c_void,
a1: windows::Win32::Graphics::Direct3D12::D3D12_QUERY_TYPE,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe {
self.data.record(self.real(), "ResolveQueryData", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1.0, a2, a3, id(a4), a5])
});
real::ResolveQueryData(
self.real(),
crate::d3d12::unwrap(a0),
a1,
a2,
a3,
crate::d3d12::unwrap(a4),
a5,
);
}
}
unsafe fn SetPredication(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_PREDICATION_OP,
) {
unsafe {
self.data.record(self.real(), "SetPredication", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, a2.0])
});
real::SetPredication(self.real(), crate::d3d12::unwrap(a0), a1, a2);
}
}
unsafe fn SetMarker(&self, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe {
self.data.record(self.real(), "SetMarker", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, slice(a1.cast::<u8>(), a2 as usize)])
});
real::SetMarker(self.real(), a0, a1, a2);
}
}
unsafe fn BeginEvent(&self, a0: u32, a1: *const core::ffi::c_void, a2: u32) {
unsafe {
self.data.record(self.real(), "BeginEvent", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, slice(a1.cast::<u8>(), a2 as usize)])
});
real::BeginEvent(self.real(), a0, a1, a2);
}
}
unsafe fn EndEvent(&self) {
unsafe {
self.data.record(self.real(), "EndEvent", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([])
});
real::EndEvent(self.real());
}
}
unsafe fn ExecuteIndirect(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: *mut core::ffi::c_void,
a3: u64,
a4: *mut core::ffi::c_void,
a5: u64,
) {
unsafe {
self.called("ExecuteIndirect");
self.data.record(self.real(), "ExecuteIndirect", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, id(a2), a3, id(a4), a5])
});
real::ExecuteIndirect(
self.real(),
crate::d3d12::unwrap(a0),
a1,
crate::d3d12::unwrap(a2),
a3,
crate::d3d12::unwrap(a4),
a5,
);
}
}
unsafe fn AtomicCopyBufferUINT(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe {
let mapped5 = crate::d3d12::inputs::objects(a5, a4);
self.data.record(self.real(), "AtomicCopyBufferUINT", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, id(a2), a3, dependent_resources(a5, a6, a4)])
});
real::AtomicCopyBufferUINT(
self.real(),
crate::d3d12::unwrap(a0),
a1,
crate::d3d12::unwrap(a2),
a3,
a4,
mapped5.ptr(),
a6,
);
}
}
unsafe fn AtomicCopyBufferUINT64(
&self,
a0: *mut core::ffi::c_void,
a1: u64,
a2: *mut core::ffi::c_void,
a3: u64,
a4: u32,
a5: *const *mut core::ffi::c_void,
a6: *const windows::Win32::Graphics::Direct3D12::D3D12_SUBRESOURCE_RANGE_UINT64,
) {
unsafe {
let mapped5 = crate::d3d12::inputs::objects(a5, a4);
self.data.record(self.real(), "AtomicCopyBufferUINT64", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), a1, id(a2), a3, dependent_resources(a5, a6, a4)])
});
real::AtomicCopyBufferUINT64(
self.real(),
crate::d3d12::unwrap(a0),
a1,
crate::d3d12::unwrap(a2),
a3,
a4,
mapped5.ptr(),
a6,
);
}
}
unsafe fn OMSetDepthBounds(&self, a0: f32, a1: f32) {
unsafe {
self.data.record(self.real(), "OMSetDepthBounds", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1])
});
real::OMSetDepthBounds(self.real(), a0, a1);
}
}
unsafe fn SetSamplePositions(
&self,
a0: u32,
a1: u32,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_SAMPLE_POSITION,
) {
unsafe {
self.data.record(self.real(), "SetSamplePositions", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, sample_positions(a2, a0, a1)])
});
real::SetSamplePositions(self.real(), a0, a1, a2);
}
}
unsafe fn ResolveSubresourceRegion(
&self,
a0: *mut core::ffi::c_void,
a1: u32,
a2: u32,
a3: u32,
a4: *mut core::ffi::c_void,
a5: u32,
a6: *const windows::Win32::Foundation::RECT,
a7: windows::Win32::Graphics::Dxgi::Common::DXGI_FORMAT,
a8: windows::Win32::Graphics::Direct3D12::D3D12_RESOLVE_MODE,
) {
unsafe {
self.data.record(self.real(), "ResolveSubresourceRegion", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([
id(a0),
a1,
a2,
a3,
id(a4),
a5,
rects(a6, u32::from(!a6.is_null())),
a7.0,
a8.0
])
});
real::ResolveSubresourceRegion(
self.real(),
crate::d3d12::unwrap(a0),
a1,
a2,
a3,
crate::d3d12::unwrap(a4),
a5,
a6,
a7,
a8,
);
}
}
unsafe fn SetViewInstanceMask(&self, a0: u32) {
unsafe {
self.data.record(self.real(), "SetViewInstanceMask", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0])
});
real::SetViewInstanceMask(self.real(), a0);
}
}
unsafe fn WriteBufferImmediate(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_PARAMETER,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_WRITEBUFFERIMMEDIATE_MODE,
) {
unsafe {
self.data.record(self.real(), "WriteBufferImmediate", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([write_immediate(a1, a2, a0)])
});
real::WriteBufferImmediate(self.real(), a0, a1, a2);
}
}
unsafe fn SetProtectedResourceSession(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "SetProtectedResourceSession", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::SetProtectedResourceSession(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn BeginRenderPass(
&self,
a0: u32,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_RENDER_TARGET_DESC,
a2: *const windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_DEPTH_STENCIL_DESC,
a3: windows::Win32::Graphics::Direct3D12::D3D12_RENDER_PASS_FLAGS,
) {
unsafe {
let mapped1 = crate::d3d12::inputs::render_targets(a1, a0);
let mapped2 = crate::d3d12::inputs::depth_stencil(a2);
self.data.record(self.real(), "BeginRenderPass", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([render_pass_targets(a1, a0), render_pass_depth(a2), a3.0])
});
real::BeginRenderPass(self.real(), a0, mapped1.ptr(), mapped2.ptr(), a3);
}
}
unsafe fn EndRenderPass(&self) {
unsafe {
self.data.record(self.real(), "EndRenderPass", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([])
});
real::EndRenderPass(self.real());
}
}
unsafe fn InitializeMetaCommand(
&self,
a0: *mut core::ffi::c_void,
a1: *const core::ffi::c_void,
a2: usize,
) {
unsafe {
self.data.record(self.real(), "InitializeMetaCommand", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), slice(a1.cast::<u8>(), a2)])
});
real::InitializeMetaCommand(self.real(), crate::d3d12::unwrap(a0), a1, a2);
}
}
unsafe fn ExecuteMetaCommand(&self, a0: *mut core::ffi::c_void, a1: *const core::ffi::c_void, a2: usize) {
unsafe {
self.data.record(self.real(), "ExecuteMetaCommand", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0), slice(a1.cast::<u8>(), a2)])
});
real::ExecuteMetaCommand(self.real(), crate::d3d12::unwrap(a0), a1, a2);
}
}
unsafe fn BuildRaytracingAccelerationStructure(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC,
a1: u32,
a2: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
) {
unsafe {
self.data
.record(self.real(), "BuildRaytracingAccelerationStructure", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([acceleration_structure_build(a0), postbuild_info(a2, a1)])
});
real::BuildRaytracingAccelerationStructure(self.real(), a0, a1, a2);
}
}
unsafe fn EmitRaytracingAccelerationStructurePostbuildInfo(
&self,
a0: * const windows :: Win32 :: Graphics :: Direct3D12 :: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
a1: u32,
a2: *const u64,
) {
unsafe {
self.data.record(
self.real(),
"EmitRaytracingAccelerationStructurePostbuildInfo",
|| {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([postbuild_info(a0, 1), addresses(a2, a1)])
},
);
real::EmitRaytracingAccelerationStructurePostbuildInfo(self.real(), a0, a1, a2);
}
}
unsafe fn CopyRaytracingAccelerationStructure(
&self,
a0: u64,
a1: u64,
a2: windows::Win32::Graphics::Direct3D12::D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE,
) {
unsafe {
self.data
.record(self.real(), "CopyRaytracingAccelerationStructure", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([address(a0), address(a1), a2.0])
});
real::CopyRaytracingAccelerationStructure(self.real(), a0, a1, a2);
}
}
unsafe fn SetPipelineState1(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "SetPipelineState1", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::SetPipelineState1(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn DispatchRays(&self, a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_RAYS_DESC) {
unsafe {
self.called("DispatchRays");
self.data.record(self.real(), "DispatchRays", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([dispatch_rays(a0)])
});
real::DispatchRays(self.real(), a0);
}
}
unsafe fn RSSetShadingRate(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE,
a1: *const windows::Win32::Graphics::Direct3D12::D3D12_SHADING_RATE_COMBINER,
) {
unsafe {
self.data.record(self.real(), "RSSetShadingRate", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0.0, slice(a1, 2).iter().map(|c| c.0).collect::<Vec<_>>()])
});
real::RSSetShadingRate(self.real(), a0, a1);
}
}
unsafe fn RSSetShadingRateImage(&self, a0: *mut core::ffi::c_void) {
unsafe {
self.data.record(self.real(), "RSSetShadingRateImage", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([id(a0)])
});
real::RSSetShadingRateImage(self.real(), crate::d3d12::unwrap(a0));
}
}
unsafe fn DispatchMesh(&self, a0: u32, a1: u32, a2: u32) {
unsafe {
self.data.record(self.real(), "DispatchMesh", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2])
});
real::DispatchMesh(self.real(), a0, a1, a2);
}
}
unsafe fn Barrier(&self, a0: u32, a1: *const windows::Win32::Graphics::Direct3D12::D3D12_BARRIER_GROUP) {
unsafe {
let mapped1 = crate::d3d12::inputs::barrier_groups(a1, a0);
self.data.record(self.real(), "Barrier", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([barrier_groups(a1, a0)])
});
real::Barrier(self.real(), a0, mapped1.ptr());
}
}
unsafe fn OMSetFrontAndBackStencilRef(&self, a0: u32, a1: u32) {
unsafe {
self.data.record(self.real(), "OMSetFrontAndBackStencilRef", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1])
});
real::OMSetFrontAndBackStencilRef(self.real(), a0, a1);
}
}
unsafe fn RSSetDepthBias(&self, a0: f32, a1: f32, a2: f32) {
unsafe {
self.data.record(self.real(), "RSSetDepthBias", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0, a1, a2])
});
real::RSSetDepthBias(self.real(), a0, a1, a2);
}
}
unsafe fn IASetIndexBufferStripCutValue(
&self,
a0: windows::Win32::Graphics::Direct3D12::D3D12_INDEX_BUFFER_STRIP_CUT_VALUE,
) {
unsafe {
self.data
.record(self.real(), "IASetIndexBufferStripCutValue", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([a0.0])
});
real::IASetIndexBufferStripCutValue(self.real(), a0);
}
}
unsafe fn SetProgram(&self, a0: *const windows::Win32::Graphics::Direct3D12::D3D12_SET_PROGRAM_DESC) {
unsafe {
self.data.record(self.real(), "SetProgram", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([set_program(a0)])
});
real::SetProgram(self.real(), a0);
}
}
unsafe fn DispatchGraph(
&self,
a0: *const windows::Win32::Graphics::Direct3D12::D3D12_DISPATCH_GRAPH_DESC,
) {
unsafe {
self.data.record(self.real(), "DispatchGraph", || {
#[allow(unused_imports)]
use crate::d3d12::values::*;
serde_json::json!([dispatch_graph(a0)])
});
real::DispatchGraph(self.real(), a0);
}
}
}
/// The `ID3D12GraphicsCommandList10` vtable whose entries call `T`'s methods.
pub const fn vtable<T: List12Methods>()
-> windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl {
windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList10_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList9_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList8_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList7_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList6_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList5_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList4_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList3_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList2_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList1_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12GraphicsCommandList_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12CommandList_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12DeviceChild_Vtbl { base__: windows::Win32::Graphics::Direct3D12::ID3D12Object_Vtbl { base__: windows::core::IUnknown_Vtbl { QueryInterface: QueryInterface::<T>, AddRef: AddRef::<T>, Release: Release::<T> }, GetPrivateData: GetPrivateData::<T>, SetPrivateData: SetPrivateData::<T>, SetPrivateDataInterface: SetPrivateDataInterface::<T>, SetName: SetName::<T> }, GetDevice: GetDevice::<T> }, GetType: GetType::<T> }, Close: Close::<T>, Reset: Reset::<T>, ClearState: ClearState::<T>, DrawInstanced: DrawInstanced::<T>, DrawIndexedInstanced: DrawIndexedInstanced::<T>, Dispatch: Dispatch::<T>, CopyBufferRegion: CopyBufferRegion::<T>, CopyTextureRegion: CopyTextureRegion::<T>, CopyResource: CopyResource::<T>, CopyTiles: CopyTiles::<T>, ResolveSubresource: ResolveSubresource::<T>, IASetPrimitiveTopology: IASetPrimitiveTopology::<T>, RSSetViewports: RSSetViewports::<T>, RSSetScissorRects: RSSetScissorRects::<T>, OMSetBlendFactor: OMSetBlendFactor::<T>, OMSetStencilRef: OMSetStencilRef::<T>, SetPipelineState: SetPipelineState::<T>, ResourceBarrier: ResourceBarrier::<T>, ExecuteBundle: ExecuteBundle::<T>, SetDescriptorHeaps: SetDescriptorHeaps::<T>, SetComputeRootSignature: SetComputeRootSignature::<T>, SetGraphicsRootSignature: SetGraphicsRootSignature::<T>, SetComputeRootDescriptorTable: SetComputeRootDescriptorTable::<T>, SetGraphicsRootDescriptorTable: SetGraphicsRootDescriptorTable::<T>, SetComputeRoot32BitConstant: SetComputeRoot32BitConstant::<T>, SetGraphicsRoot32BitConstant: SetGraphicsRoot32BitConstant::<T>, SetComputeRoot32BitConstants: SetComputeRoot32BitConstants::<T>, SetGraphicsRoot32BitConstants: SetGraphicsRoot32BitConstants::<T>, SetComputeRootConstantBufferView: SetComputeRootConstantBufferView::<T>, SetGraphicsRootConstantBufferView: SetGraphicsRootConstantBufferView::<T>, SetComputeRootShaderResourceView: SetComputeRootShaderResourceView::<T>, SetGraphicsRootShaderResourceView: SetGraphicsRootShaderResourceView::<T>, SetComputeRootUnorderedAccessView: SetComputeRootUnorderedAccessView::<T>, SetGraphicsRootUnorderedAccessView: SetGraphicsRootUnorderedAccessView::<T>, IASetIndexBuffer: IASetIndexBuffer::<T>, IASetVertexBuffers: IASetVertexBuffers::<T>, SOSetTargets: SOSetTargets::<T>, OMSetRenderTargets: OMSetRenderTargets::<T>, ClearDepthStencilView: ClearDepthStencilView::<T>, ClearRenderTargetView: ClearRenderTargetView::<T>, ClearUnorderedAccessViewUint: ClearUnorderedAccessViewUint::<T>, ClearUnorderedAccessViewFloat: ClearUnorderedAccessViewFloat::<T>, DiscardResource: DiscardResource::<T>, BeginQuery: BeginQuery::<T>, EndQuery: EndQuery::<T>, ResolveQueryData: ResolveQueryData::<T>, SetPredication: SetPredication::<T>, SetMarker: SetMarker::<T>, BeginEvent: BeginEvent::<T>, EndEvent: EndEvent::<T>, ExecuteIndirect: ExecuteIndirect::<T> }, AtomicCopyBufferUINT: AtomicCopyBufferUINT::<T>, AtomicCopyBufferUINT64: AtomicCopyBufferUINT64::<T>, OMSetDepthBounds: OMSetDepthBounds::<T>, SetSamplePositions: SetSamplePositions::<T>, ResolveSubresourceRegion: ResolveSubresourceRegion::<T>, SetViewInstanceMask: SetViewInstanceMask::<T> }, WriteBufferImmediate: WriteBufferImmediate::<T> }, SetProtectedResourceSession: SetProtectedResourceSession::<T> }, BeginRenderPass: BeginRenderPass::<T>, EndRenderPass: EndRenderPass::<T>, InitializeMetaCommand: InitializeMetaCommand::<T>, ExecuteMetaCommand: ExecuteMetaCommand::<T>, BuildRaytracingAccelerationStructure: BuildRaytracingAccelerationStructure::<T>, EmitRaytracingAccelerationStructurePostbuildInfo: EmitRaytracingAccelerationStructurePostbuildInfo::<T>, CopyRaytracingAccelerationStructure: CopyRaytracingAccelerationStructure::<T>, SetPipelineState1: SetPipelineState1::<T>, DispatchRays: DispatchRays::<T> }, RSSetShadingRate: RSSetShadingRate::<T>, RSSetShadingRateImage: RSSetShadingRateImage::<T> }, DispatchMesh: DispatchMesh::<T> }, Barrier: Barrier::<T> }, OMSetFrontAndBackStencilRef: OMSetFrontAndBackStencilRef::<T> }, RSSetDepthBias: RSSetDepthBias::<T>, IASetIndexBufferStripCutValue: IASetIndexBufferStripCutValue::<T> }, SetProgram: SetProgram::<T>, DispatchGraph: DispatchGraph::<T> }
}