#[repr(transparent)]pub struct WeakPtr<T>(_);
Implementations
sourceimpl WeakPtr<ID3D12GraphicsCommandList>
impl WeakPtr<ID3D12GraphicsCommandList>
pub fn as_list(&self) -> CommandList
pub fn close(&self) -> HRESULT
pub fn reset(
&self,
allocator: CommandAllocator,
initial_pso: PipelineState
) -> HRESULT
pub fn discard_resource(&self, resource: Resource, region: DiscardRegion<'_>)
pub fn clear_depth_stencil_view(
&self,
dsv: CpuDescriptor,
flags: ClearFlags,
depth: f32,
stencil: u8,
rects: &[Rect]
)
pub fn clear_render_target_view(
&self,
rtv: CpuDescriptor,
color: [f32; 4],
rects: &[Rect]
)
pub fn dispatch(&self, count: WorkGroupCount)
pub fn draw(
&self,
num_vertices: VertexCount,
num_instances: InstanceCount,
start_vertex: VertexCount,
start_instance: InstanceCount
)
pub fn draw_indexed(
&self,
num_indices: IndexCount,
num_instances: InstanceCount,
start_index: IndexCount,
base_vertex: VertexOffset,
start_instance: InstanceCount
)
pub fn set_index_buffer(
&self,
gpu_address: GpuAddress,
size: u32,
format: Format
)
pub fn set_blend_factor(&self, factor: [f32; 4])
pub fn set_stencil_reference(&self, reference: u32)
pub fn set_pipeline_state(&self, pso: PipelineState)
pub fn execute_bundle(&self, bundle: GraphicsCommandList)
pub fn set_descriptor_heaps(&self, heaps: &[DescriptorHeap])
pub fn set_compute_root_signature(&self, signature: RootSignature)
pub fn set_graphics_root_signature(&self, signature: RootSignature)
pub fn set_compute_root_descriptor_table(
&self,
root_index: RootIndex,
base_descriptor: GpuDescriptor
)
pub fn set_compute_root_constant_buffer_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_compute_root_shader_resource_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_compute_root_unordered_access_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_compute_root_constant(
&self,
root_index: RootIndex,
value: u32,
dest_offset_words: u32
)
pub fn set_graphics_root_descriptor_table(
&self,
root_index: RootIndex,
base_descriptor: GpuDescriptor
)
pub fn set_graphics_root_constant_buffer_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_graphics_root_shader_resource_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_graphics_root_unordered_access_view(
&self,
root_index: RootIndex,
buffer_location: GpuAddress
)
pub fn set_graphics_root_constant(
&self,
root_index: RootIndex,
value: u32,
dest_offset_words: u32
)
pub fn resource_barrier(&self, barriers: &[ResourceBarrier])
sourceimpl WeakPtr<ID3D12Debug>
impl WeakPtr<ID3D12Debug>
pub fn enable_layer(&self)
sourceimpl WeakPtr<ID3D12DescriptorHeap>
impl WeakPtr<ID3D12DescriptorHeap>
pub fn start_cpu_descriptor(&self) -> CpuDescriptor
pub fn start_gpu_descriptor(&self) -> GpuDescriptor
sourceimpl WeakPtr<ID3D12Device>
impl WeakPtr<ID3D12Device>
pub fn create_heap(
&self,
size_in_bytes: u64,
properties: HeapProperties,
alignment: u64,
flags: HeapFlags
) -> D3DResult<Heap>
pub fn create_command_allocator(
&self,
list_type: CmdListType
) -> D3DResult<CommandAllocator>
pub fn create_command_queue(
&self,
list_type: CmdListType,
priority: Priority,
flags: CommandQueueFlags,
node_mask: NodeMask
) -> D3DResult<CommandQueue>
pub fn create_descriptor_heap(
&self,
num_descriptors: u32,
heap_type: DescriptorHeapType,
flags: DescriptorHeapFlags,
node_mask: NodeMask
) -> D3DResult<DescriptorHeap>
pub fn get_descriptor_increment_size(
&self,
heap_type: DescriptorHeapType
) -> u32
pub fn create_graphics_command_list(
&self,
list_type: CmdListType,
allocator: CommandAllocator,
initial: PipelineState,
node_mask: NodeMask
) -> D3DResult<GraphicsCommandList>
pub fn create_query_heap(
&self,
heap_ty: QueryHeapType,
count: u32,
node_mask: NodeMask
) -> D3DResult<QueryHeap>
pub fn create_graphics_pipeline_state(
&self,
_root_signature: RootSignature,
_vs: Shader,
_ps: Shader,
_gs: Shader,
_hs: Shader,
_ds: Shader,
_node_mask: NodeMask,
_cached_pso: CachedPSO,
_flags: PipelineStateFlags
) -> D3DResult<PipelineState>
pub fn create_compute_pipeline_state(
&self,
root_signature: RootSignature,
cs: Shader,
node_mask: NodeMask,
cached_pso: CachedPSO,
flags: PipelineStateFlags
) -> D3DResult<PipelineState>
pub fn create_sampler(
&self,
sampler: CpuDescriptor,
filter: D3D12_FILTER,
address_mode: TextureAddressMode,
mip_lod_bias: f32,
max_anisotropy: u32,
comparison_op: D3D12_COMPARISON_FUNC,
border_color: [f32; 4],
lod: Range<f32>
)
pub fn create_root_signature(
&self,
blob: Blob,
node_mask: NodeMask
) -> D3DResult<RootSignature>
pub fn create_command_signature(
&self,
root_signature: RootSignature,
arguments: &[IndirectArgument],
stride: u32,
node_mask: NodeMask
) -> D3DResult<CommandSignature>
pub fn create_render_target_view(
&self,
resource: Resource,
desc: &RenderTargetViewDesc,
descriptor: CpuDescriptor
)
pub fn create_fence(&self, initial: u64) -> D3DResult<Fence>
sourceimpl WeakPtr<IDXGIFactory1>
impl WeakPtr<IDXGIFactory1>
pub fn create_swapchain(
&self,
queue: *mut IUnknown,
hwnd: HWND,
desc: &SwapchainDesc
) -> D3DResult<SwapChain>
sourceimpl WeakPtr<IDXGIFactory2>
impl WeakPtr<IDXGIFactory2>
pub fn create_swapchain_for_hwnd(
&self,
queue: *mut IUnknown,
hwnd: HWND,
desc: &SwapchainDesc
) -> D3DResult<SwapChain1>
pub fn create_swapchain_for_composition(
&self,
queue: *mut IUnknown,
desc: &SwapchainDesc
) -> D3DResult<SwapChain1>
sourceimpl WeakPtr<IDXGIFactory4>
impl WeakPtr<IDXGIFactory4>
pub fn enumerate_adapters(&self, id: u32) -> D3DResult<Adapter1>
sourceimpl WeakPtr<IDXGISwapChain>
impl WeakPtr<IDXGISwapChain>
pub fn get_buffer(&self, id: u32) -> D3DResult<Resource>
pub fn present(&self, interval: u32, flags: u32) -> HRESULT
pub fn present_flags(
&self,
interval: u32,
flags: SwapChainPresentFlags
) -> HRESULT
sourceimpl WeakPtr<IDXGISwapChain3>
impl WeakPtr<IDXGISwapChain3>
pub fn get_current_back_buffer_index(&self) -> u32
sourceimpl WeakPtr<ID3D12CommandQueue>
impl WeakPtr<ID3D12CommandQueue>
pub fn execute_command_lists(&self, command_lists: &[CommandList])
pub fn signal(&self, fence: Fence, value: u64) -> HRESULT
sourceimpl WeakPtr<ID3D12Resource>
impl WeakPtr<ID3D12Resource>
sourceimpl WeakPtr<ID3D12Fence>
impl WeakPtr<ID3D12Fence>
Trait Implementations
impl<T> Copy for WeakPtr<T>
Auto Trait Implementations
impl<T> RefUnwindSafe for WeakPtr<T> where
T: RefUnwindSafe,
impl<T> !Send for WeakPtr<T>
impl<T> !Sync for WeakPtr<T>
impl<T> Unpin for WeakPtr<T>
impl<T> UnwindSafe for WeakPtr<T> where
T: RefUnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more