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