Struct gpu_allocator::d3d12::winapi_d3d12::ID3D12Device
source · #[repr(C)]pub struct ID3D12Device {
pub lpVtbl: *const ID3D12DeviceVtbl,
}
Fields§
§lpVtbl: *const ID3D12DeviceVtbl
Implementations§
source§impl ID3D12Device
impl ID3D12Device
pub unsafe fn GetNodeCount(&self) -> u32
pub unsafe fn CreateCommandQueue( &self, pDesc: *const D3D12_COMMAND_QUEUE_DESC, riid: *const GUID, ppCommandQueue: *mut *mut c_void, ) -> i32
pub unsafe fn CreateCommandAllocator( &self, type_: u32, riid: *const GUID, ppCommandAllocator: *mut *mut c_void, ) -> i32
pub unsafe fn CreateGraphicsPipelineState( &self, pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC, riid: *const GUID, ppPipelineState: *mut *mut c_void, ) -> i32
pub unsafe fn CreateComputePipelineState( &self, pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC, riid: *const GUID, ppPipelineState: *mut *mut c_void, ) -> i32
pub unsafe fn CreateCommandList( &self, nodeMask: u32, type_: u32, pCommandAllocator: *mut ID3D12CommandAllocator, pInitialState: *mut ID3D12PipelineState, riid: *const GUID, ppCommandList: *mut *mut c_void, ) -> i32
pub unsafe fn CheckFeatureSupport( &self, Feature: u32, pFeatureSupportData: *mut c_void, FeatureSupportDataSize: u32, ) -> i32
pub unsafe fn CreateDescriptorHeap( &self, pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC, riid: *const GUID, ppvHeap: *mut *mut c_void, ) -> i32
pub unsafe fn GetDescriptorHandleIncrementSize( &self, DescriptorHeapType: u32, ) -> u32
pub unsafe fn CreateRootSignature( &self, nodeMask: u32, pBlobWithRootSignature: *const c_void, blobLengthInBytes: usize, riid: *const GUID, ppvRootSignature: *mut *mut c_void, ) -> i32
pub unsafe fn CreateConstantBufferView( &self, pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CreateShaderResourceView( &self, pResource: *mut ID3D12Resource, pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CreateUnorderedAccessView( &self, pResource: *mut ID3D12Resource, pCounterResource: *mut ID3D12Resource, pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CreateRenderTargetView( &self, pResource: *mut ID3D12Resource, pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CreateDepthStencilView( &self, pResource: *mut ID3D12Resource, pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CreateSampler( &self, pDesc: *const D3D12_SAMPLER_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE, )
pub unsafe fn CopyDescriptors( &self, NumDestDescriptorRanges: u32, pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pDestDescriptorRangeSizes: *const u32, NumSrcDescriptorRanges: u32, pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pSrcDescriptorRangeSizes: *const u32, DescriptorHeapsType: u32, )
pub unsafe fn CopyDescriptorsSimple( &self, NumDescriptors: u32, DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE, SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE, DescriptorHeapsType: u32, )
pub unsafe fn GetResourceAllocationInfo( &self, visibleMask: u32, numResourceDescs: u32, pResourceDescs: *const D3D12_RESOURCE_DESC, ) -> D3D12_RESOURCE_ALLOCATION_INFO
pub unsafe fn GetCustomHeapProperties( &self, nodeMask: u32, heapType: u32, ) -> D3D12_HEAP_PROPERTIES
pub unsafe fn CreateCommittedResource( &self, pHeapProperties: *const D3D12_HEAP_PROPERTIES, HeapFlags: u32, pResourceDesc: *const D3D12_RESOURCE_DESC, InitialResourceState: u32, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riidResource: *const GUID, ppvResource: *mut *mut c_void, ) -> i32
pub unsafe fn CreateHeap( &self, pDesc: *const D3D12_HEAP_DESC, riid: *const GUID, ppvHeap: *mut *mut c_void, ) -> i32
pub unsafe fn CreatePlacedResource( &self, pHeap: *mut ID3D12Heap, HeapOffset: u64, pDesc: *const D3D12_RESOURCE_DESC, InitialState: u32, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: *const GUID, ppvResource: *mut *mut c_void, ) -> i32
pub unsafe fn CreateReservedResource( &self, pDesc: *const D3D12_RESOURCE_DESC, InitialState: u32, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: *const GUID, ppvResource: *mut *mut c_void, ) -> i32
pub unsafe fn MakeResident( &self, NumObjects: u32, ppObjects: *mut *mut ID3D12Pageable, ) -> i32
pub unsafe fn Evict( &self, NumObjects: u32, ppObjects: *mut *mut ID3D12Pageable, ) -> i32
pub unsafe fn CreateFence( &self, InitialValue: u64, Flags: u32, riid: *const GUID, ppFence: *mut *mut c_void, ) -> i32
pub unsafe fn GetDeviceRemovedReason(&self) -> i32
pub unsafe fn GetCopyableFootprints( &self, pResourceDesc: *const D3D12_RESOURCE_DESC, FirstSubresource: u32, NumSubresources: u32, BaseOffset: u64, pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT, pNumRows: *mut u32, pRowSizeInBytes: *mut u64, pTotalBytes: *mut u64, )
pub unsafe fn CreateQueryHeap( &self, pDesc: *const D3D12_QUERY_HEAP_DESC, riid: *const GUID, ppvHeap: *mut *mut c_void, ) -> i32
pub unsafe fn SetStablePowerState(&self, Enable: i32) -> i32
pub unsafe fn CreateCommandSignature( &self, pDesc: *const D3D12_COMMAND_SIGNATURE_DESC, pRootSignature: *mut ID3D12RootSignature, riid: *const GUID, ppvCommandSignature: *mut *mut c_void, ) -> i32
pub unsafe fn GetResourceTiling( &self, pTiledResource: *mut ID3D12Resource, pNumTilesForEntireResource: *mut u32, pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO, pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE, pNumSubresourceTilings: *mut u32, FirstSubresourceTilingToGet: u32, pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING, )
pub unsafe fn GetAdapterLuid(&self) -> LUID
Methods from Deref<Target = ID3D12Object>§
pub unsafe fn GetPrivateData( &self, guid: *const GUID, pDataSize: *mut u32, pData: *mut c_void, ) -> i32
pub unsafe fn SetPrivateData( &self, guid: *const GUID, DataSize: u32, pData: *const c_void, ) -> i32
pub unsafe fn SetPrivateDataInterface( &self, guid: *const GUID, pData: *const IUnknown, ) -> i32
pub unsafe fn SetName(&self, Name: *const u16) -> i32
Methods from Deref<Target = IUnknown>§
pub unsafe fn QueryInterface( &self, riid: *const GUID, ppvObject: *mut *mut c_void, ) -> i32
pub unsafe fn AddRef(&self) -> u32
pub unsafe fn Release(&self) -> u32
Trait Implementations§
source§impl Deref for ID3D12Device
impl Deref for ID3D12Device
§type Target = ID3D12Object
type Target = ID3D12Object
The resulting type after dereferencing.
source§fn deref(&self) -> &ID3D12Object
fn deref(&self) -> &ID3D12Object
Dereferences the value.
source§impl ToWinapi<ID3D12Device> for ID3D12Device
impl ToWinapi<ID3D12Device> for ID3D12Device
fn as_winapi(&self) -> *const ID3D12Device
fn as_winapi_mut(&mut self) -> *mut ID3D12Device
source§impl ToWindows<ID3D12Device> for &mut ID3D12Device
impl ToWindows<ID3D12Device> for &mut ID3D12Device
fn as_windows(&self) -> &ID3D12Device
Auto Trait Implementations§
impl Freeze for ID3D12Device
impl RefUnwindSafe for ID3D12Device
impl !Send for ID3D12Device
impl !Sync for ID3D12Device
impl Unpin for ID3D12Device
impl UnwindSafe for ID3D12Device
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more