pub trait ID3D12GraphicsCommandList4_Impl: Sized + ID3D12GraphicsCommandList3_Impl {
    // Required methods
    fn BeginRenderPass(
        &self,
        numrendertargets: u32,
        prendertargets: *const D3D12_RENDER_PASS_RENDER_TARGET_DESC,
        pdepthstencil: *const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC,
        flags: D3D12_RENDER_PASS_FLAGS,
    );
    fn EndRenderPass(&self);
    fn InitializeMetaCommand(
        &self,
        pmetacommand: Option<&ID3D12MetaCommand>,
        pinitializationparametersdata: *const c_void,
        initializationparametersdatasizeinbytes: usize,
    );
    fn ExecuteMetaCommand(
        &self,
        pmetacommand: Option<&ID3D12MetaCommand>,
        pexecutionparametersdata: *const c_void,
        executionparametersdatasizeinbytes: usize,
    );
    fn BuildRaytracingAccelerationStructure(
        &self,
        pdesc: *const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC,
        numpostbuildinfodescs: u32,
        ppostbuildinfodescs: *const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
    );
    fn EmitRaytracingAccelerationStructurePostbuildInfo(
        &self,
        pdesc: *const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC,
        numsourceaccelerationstructures: u32,
        psourceaccelerationstructuredata: *const u64,
    );
    fn CopyRaytracingAccelerationStructure(
        &self,
        destaccelerationstructuredata: u64,
        sourceaccelerationstructuredata: u64,
        mode: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE,
    );
    fn SetPipelineState1(&self, pstateobject: Option<&ID3D12StateObject>);
    fn DispatchRays(&self, pdesc: *const D3D12_DISPATCH_RAYS_DESC);
}

Required Methods§

fn BeginRenderPass( &self, numrendertargets: u32, prendertargets: *const D3D12_RENDER_PASS_RENDER_TARGET_DESC, pdepthstencil: *const D3D12_RENDER_PASS_DEPTH_STENCIL_DESC, flags: D3D12_RENDER_PASS_FLAGS, )

fn EndRenderPass(&self)

fn InitializeMetaCommand( &self, pmetacommand: Option<&ID3D12MetaCommand>, pinitializationparametersdata: *const c_void, initializationparametersdatasizeinbytes: usize, )

fn ExecuteMetaCommand( &self, pmetacommand: Option<&ID3D12MetaCommand>, pexecutionparametersdata: *const c_void, executionparametersdatasizeinbytes: usize, )

fn BuildRaytracingAccelerationStructure( &self, pdesc: *const D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC, numpostbuildinfodescs: u32, ppostbuildinfodescs: *const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC, )

fn EmitRaytracingAccelerationStructurePostbuildInfo( &self, pdesc: *const D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC, numsourceaccelerationstructures: u32, psourceaccelerationstructuredata: *const u64, )

fn CopyRaytracingAccelerationStructure( &self, destaccelerationstructuredata: u64, sourceaccelerationstructuredata: u64, mode: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE, )

fn SetPipelineState1(&self, pstateobject: Option<&ID3D12StateObject>)

fn DispatchRays(&self, pdesc: *const D3D12_DISPATCH_RAYS_DESC)

Object Safety§

This trait is not object safe.

Implementors§