Enum d3d12::DxgiFactory

source ·
pub enum DxgiFactory {
    Factory1(ComPtr<IDXGIFactory1>),
    Factory2(ComPtr<IDXGIFactory2>),
    Factory3(ComPtr<IDXGIFactory3>),
    Factory4(ComPtr<IDXGIFactory4>),
    Factory5(ComPtr<IDXGIFactory5>),
    Factory6(ComPtr<IDXGIFactory6>),
}

Variants§

Implementations§

Methods from Deref<Target = ComPtr<IDXGIFactory1>>§

source

pub fn is_null(&self) -> bool

source

pub fn as_ptr(&self) -> *const T

source

pub fn as_mut_ptr(&self) -> *mut T

source

pub unsafe fn as_unknown(&self) -> &IUnknown

source

pub unsafe fn cast<U>(&self) -> D3DResult<ComPtr<U>>
where U: Interface,

source

pub fn reset(&self)

source

pub fn as_list(&self) -> CommandList

source

pub fn close(&self) -> HRESULT

source

pub fn reset( &self, allocator: &CommandAllocator, initial_pso: PipelineState ) -> HRESULT

source

pub fn discard_resource(&self, resource: Resource, region: DiscardRegion<'_>)

source

pub fn clear_depth_stencil_view( &self, dsv: CpuDescriptor, flags: ClearFlags, depth: f32, stencil: u8, rects: &[Rect] )

source

pub fn clear_render_target_view( &self, rtv: CpuDescriptor, color: [f32; 4], rects: &[Rect] )

source

pub fn dispatch(&self, count: WorkGroupCount)

source

pub fn draw( &self, num_vertices: VertexCount, num_instances: InstanceCount, first_vertex: VertexCount, first_instance: InstanceCount )

source

pub fn draw_indexed( &self, num_indices: IndexCount, num_instances: InstanceCount, first_index: IndexCount, base_vertex: VertexOffset, first_instance: InstanceCount )

source

pub fn set_index_buffer( &self, gpu_address: GpuAddress, size: u32, format: Format )

source

pub fn set_blend_factor(&self, factor: [f32; 4])

source

pub fn set_stencil_reference(&self, reference: u32)

source

pub fn set_pipeline_state(&self, pso: &PipelineState)

source

pub fn execute_bundle(&self, bundle: GraphicsCommandList)

source

pub fn set_descriptor_heaps(&self, heaps: &[DescriptorHeap])

source

pub fn set_compute_root_signature(&self, signature: &RootSignature)

source

pub fn set_graphics_root_signature(&self, signature: &RootSignature)

source

pub fn set_compute_root_descriptor_table( &self, root_index: RootIndex, base_descriptor: GpuDescriptor )

source

pub fn set_compute_root_constant_buffer_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_compute_root_shader_resource_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_compute_root_unordered_access_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_compute_root_constant( &self, root_index: RootIndex, value: u32, dest_offset_words: u32 )

source

pub fn set_graphics_root_descriptor_table( &self, root_index: RootIndex, base_descriptor: GpuDescriptor )

source

pub fn set_graphics_root_constant_buffer_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_graphics_root_shader_resource_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_graphics_root_unordered_access_view( &self, root_index: RootIndex, buffer_location: GpuAddress )

source

pub fn set_graphics_root_constant( &self, root_index: RootIndex, value: u32, dest_offset_words: u32 )

source

pub fn resource_barrier(&self, barriers: &[ResourceBarrier])

source

pub fn enable_layer(&self)

source

pub fn start_cpu_descriptor(&self) -> CpuDescriptor

source

pub fn start_gpu_descriptor(&self) -> GpuDescriptor

source

pub fn create_heap( &self, size_in_bytes: u64, properties: HeapProperties, alignment: u64, flags: HeapFlags ) -> D3DResult<Heap>

source

pub fn create_command_allocator( &self, list_type: CmdListType ) -> D3DResult<CommandAllocator>

source

pub fn create_command_queue( &self, list_type: CmdListType, priority: Priority, flags: CommandQueueFlags, node_mask: NodeMask ) -> D3DResult<CommandQueue>

source

pub fn create_descriptor_heap( &self, num_descriptors: u32, heap_type: DescriptorHeapType, flags: DescriptorHeapFlags, node_mask: NodeMask ) -> D3DResult<DescriptorHeap>

source

pub fn get_descriptor_increment_size( &self, heap_type: DescriptorHeapType ) -> u32

source

pub fn create_graphics_command_list( &self, list_type: CmdListType, allocator: &CommandAllocator, initial: PipelineState, node_mask: NodeMask ) -> D3DResult<GraphicsCommandList>

source

pub fn create_query_heap( &self, heap_ty: QueryHeapType, count: u32, node_mask: NodeMask ) -> D3DResult<QueryHeap>

source

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>

source

pub fn create_compute_pipeline_state( &self, root_signature: &RootSignature, cs: Shader<'_>, node_mask: NodeMask, cached_pso: CachedPSO<'_>, flags: PipelineStateFlags ) -> D3DResult<PipelineState>

source

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> )

source

pub fn create_root_signature( &self, blob: Blob, node_mask: NodeMask ) -> D3DResult<RootSignature>

source

pub fn create_command_signature( &self, root_signature: RootSignature, arguments: &[IndirectArgument], stride: u32, node_mask: NodeMask ) -> D3DResult<CommandSignature>

source

pub fn create_render_target_view( &self, resource: Resource, desc: &RenderTargetViewDesc, descriptor: CpuDescriptor )

source

pub fn create_fence(&self, initial: u64) -> D3DResult<Fence>

source

pub fn create_swapchain( &self, queue: *mut IUnknown, hwnd: HWND, desc: &SwapchainDesc ) -> D3DResult<SwapChain>

source

pub fn create_swapchain_for_hwnd( &self, queue: *mut IUnknown, hwnd: HWND, desc: &SwapchainDesc ) -> D3DResult<SwapChain1>

source

pub fn create_swapchain_for_composition( &self, queue: *mut IUnknown, desc: &SwapchainDesc ) -> D3DResult<SwapChain1>

source

pub fn enumerate_adapters(&self, id: u32) -> D3DResult<Adapter1>

source

pub fn create_swapchain_for_composition_surface_handle( &self, queue: *mut IUnknown, surface_handle: HANDLE, desc: &SwapchainDesc ) -> D3DResult<SwapChain1>

source

pub fn get_buffer(&self, id: u32) -> D3DResult<Resource>

source

pub fn present(&self, interval: u32, flags: u32) -> HRESULT

source

pub fn present_flags( &self, interval: u32, flags: SwapChainPresentFlags ) -> HRESULT

source

pub fn get_current_back_buffer_index(&self) -> u32

source

pub fn execute_command_lists(&self, command_lists: &[CommandList])

source

pub fn signal(&self, fence: &Fence, value: u64) -> HRESULT

source

pub fn map( &self, subresource: Subresource, read_range: Option<Range<usize>> ) -> D3DResult<*mut ()>

source

pub fn unmap(&self, subresource: Subresource, write_range: Option<Range<usize>>)

source

pub fn gpu_virtual_address(&self) -> u64

source

pub fn set_event_on_completion(&self, event: Event, value: u64) -> HRESULT

source

pub fn get_value(&self) -> u64

source

pub fn signal(&self, value: u64) -> HRESULT

source

pub unsafe fn as_c_str(&self) -> &CStr

Trait Implementations§

source§

impl Clone for DxgiFactory

source§

fn clone(&self) -> DxgiFactory

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for DxgiFactory

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Deref for DxgiFactory

§

type Target = ComPtr<IDXGIFactory1>

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Hash for DxgiFactory

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for DxgiFactory

source§

fn eq(&self, other: &DxgiFactory) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for DxgiFactory

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.