Skip to main content

DeviceInterface

Trait DeviceInterface 

pub trait DeviceInterface: CommonTraits {
Show 31 methods // Required methods fn features(&self) -> Features; fn limits(&self) -> Limits; fn adapter_info(&self) -> AdapterInfo; fn create_shader_module( &self, desc: ShaderModuleDescriptor<'_>, shader_bound_checks: ShaderRuntimeChecks, ) -> DispatchShaderModule; unsafe fn create_shader_module_passthrough( &self, desc: &CreateShaderModuleDescriptorPassthrough<'_, Option<&str>>, ) -> DispatchShaderModule; fn create_bind_group_layout( &self, desc: &BindGroupLayoutDescriptor<'_>, ) -> DispatchBindGroupLayout; fn create_bind_group( &self, desc: &BindGroupDescriptor<'_>, ) -> DispatchBindGroup; fn create_pipeline_layout( &self, desc: &PipelineLayoutDescriptor<'_>, ) -> DispatchPipelineLayout; fn create_render_pipeline( &self, desc: &RenderPipelineDescriptor<'_>, ) -> DispatchRenderPipeline; fn create_mesh_pipeline( &self, desc: &MeshPipelineDescriptor<'_>, ) -> DispatchRenderPipeline; fn create_compute_pipeline( &self, desc: &ComputePipelineDescriptor<'_>, ) -> DispatchComputePipeline; unsafe fn create_pipeline_cache( &self, desc: &PipelineCacheDescriptor<'_>, ) -> DispatchPipelineCache; fn create_buffer( &self, desc: &BufferDescriptor<Option<&str>>, ) -> DispatchBuffer; fn create_texture( &self, desc: &TextureDescriptor<Option<&str>, &[TextureFormat]>, ) -> DispatchTexture; fn create_external_texture( &self, desc: &ExternalTextureDescriptor<Option<&str>>, planes: &[&TextureView], ) -> DispatchExternalTexture; fn create_blas( &self, desc: &CreateBlasDescriptor<Option<&str>>, sizes: BlasGeometrySizeDescriptors, ) -> (Option<u64>, DispatchBlas); fn create_tlas( &self, desc: &CreateTlasDescriptor<Option<&str>>, ) -> DispatchTlas; fn create_sampler( &self, desc: &SamplerDescriptor<Option<&str>>, ) -> DispatchSampler; fn create_query_set( &self, desc: &QuerySetDescriptor<Option<&str>>, ) -> DispatchQuerySet; fn create_command_encoder( &self, desc: &CommandEncoderDescriptor<Option<&str>>, ) -> DispatchCommandEncoder; fn create_render_bundle_encoder( &self, desc: &RenderBundleEncoderDescriptor<'_>, ) -> DispatchRenderBundleEncoder; fn set_device_lost_callback( &self, device_lost_callback: Box<dyn FnOnce(DeviceLostReason, String) + Send>, ); fn on_uncaptured_error( &self, handler: Arc<dyn UncapturedErrorHandler<Output = ()>>, ); fn push_error_scope(&self, filter: ErrorFilter) -> u32; fn pop_error_scope( &self, index: u32, ) -> Pin<Box<dyn PopErrorScopeFuture<Output = Option<Error>>>>; unsafe fn start_graphics_debugger_capture(&self); unsafe fn stop_graphics_debugger_capture(&self); fn poll(&self, poll_type: PollType<u64>) -> Result<PollStatus, PollError>; fn get_internal_counters(&self) -> InternalCounters; fn generate_allocator_report(&self) -> Option<AllocatorReport>; fn destroy(&self);
}

Required Methods§

fn features(&self) -> Features

fn limits(&self) -> Limits

fn adapter_info(&self) -> AdapterInfo

fn create_shader_module( &self, desc: ShaderModuleDescriptor<'_>, shader_bound_checks: ShaderRuntimeChecks, ) -> DispatchShaderModule

unsafe fn create_shader_module_passthrough( &self, desc: &CreateShaderModuleDescriptorPassthrough<'_, Option<&str>>, ) -> DispatchShaderModule

fn create_bind_group_layout( &self, desc: &BindGroupLayoutDescriptor<'_>, ) -> DispatchBindGroupLayout

fn create_bind_group(&self, desc: &BindGroupDescriptor<'_>) -> DispatchBindGroup

fn create_pipeline_layout( &self, desc: &PipelineLayoutDescriptor<'_>, ) -> DispatchPipelineLayout

fn create_render_pipeline( &self, desc: &RenderPipelineDescriptor<'_>, ) -> DispatchRenderPipeline

fn create_mesh_pipeline( &self, desc: &MeshPipelineDescriptor<'_>, ) -> DispatchRenderPipeline

fn create_compute_pipeline( &self, desc: &ComputePipelineDescriptor<'_>, ) -> DispatchComputePipeline

unsafe fn create_pipeline_cache( &self, desc: &PipelineCacheDescriptor<'_>, ) -> DispatchPipelineCache

fn create_buffer(&self, desc: &BufferDescriptor<Option<&str>>) -> DispatchBuffer

fn create_texture( &self, desc: &TextureDescriptor<Option<&str>, &[TextureFormat]>, ) -> DispatchTexture

fn create_external_texture( &self, desc: &ExternalTextureDescriptor<Option<&str>>, planes: &[&TextureView], ) -> DispatchExternalTexture

fn create_blas( &self, desc: &CreateBlasDescriptor<Option<&str>>, sizes: BlasGeometrySizeDescriptors, ) -> (Option<u64>, DispatchBlas)

fn create_tlas(&self, desc: &CreateTlasDescriptor<Option<&str>>) -> DispatchTlas

fn create_sampler( &self, desc: &SamplerDescriptor<Option<&str>>, ) -> DispatchSampler

fn create_query_set( &self, desc: &QuerySetDescriptor<Option<&str>>, ) -> DispatchQuerySet

fn create_command_encoder( &self, desc: &CommandEncoderDescriptor<Option<&str>>, ) -> DispatchCommandEncoder

fn create_render_bundle_encoder( &self, desc: &RenderBundleEncoderDescriptor<'_>, ) -> DispatchRenderBundleEncoder

fn set_device_lost_callback( &self, device_lost_callback: Box<dyn FnOnce(DeviceLostReason, String) + Send>, )

fn on_uncaptured_error( &self, handler: Arc<dyn UncapturedErrorHandler<Output = ()>>, )

fn push_error_scope(&self, filter: ErrorFilter) -> u32

fn pop_error_scope( &self, index: u32, ) -> Pin<Box<dyn PopErrorScopeFuture<Output = Option<Error>>>>

unsafe fn start_graphics_debugger_capture(&self)

unsafe fn stop_graphics_debugger_capture(&self)

fn poll(&self, poll_type: PollType<u64>) -> Result<PollStatus, PollError>

fn get_internal_counters(&self) -> InternalCounters

fn generate_allocator_report(&self) -> Option<AllocatorReport>

fn destroy(&self)

Implementors§