pub struct Context;
Trait Implementations§
source§impl Adapter<Api> for Context
impl Adapter<Api> for Context
unsafe fn open( &self, features: Features, _limits: &Limits ) -> Result<OpenDevice<Api>, DeviceError>
source§unsafe fn texture_format_capabilities(
&self,
format: TextureFormat
) -> TextureFormatCapabilities
unsafe fn texture_format_capabilities( &self, format: TextureFormat ) -> TextureFormatCapabilities
Return the set of supported capabilities for a texture format.
source§unsafe fn surface_capabilities(
&self,
surface: &Context
) -> Option<SurfaceCapabilities>
unsafe fn surface_capabilities( &self, surface: &Context ) -> Option<SurfaceCapabilities>
Returns the capabilities of working with a specified surface. Read more
source§unsafe fn get_presentation_timestamp(&self) -> PresentationTimestamp
unsafe fn get_presentation_timestamp(&self) -> PresentationTimestamp
Creates a
PresentationTimestamp
using the adapter’s WSI.source§impl Device<Api> for Context
impl Device<Api> for Context
source§unsafe fn create_buffer(
&self,
desc: &BufferDescriptor<'_>
) -> Result<Resource, DeviceError>
unsafe fn create_buffer( &self, desc: &BufferDescriptor<'_> ) -> Result<Resource, DeviceError>
Creates a new buffer. Read more
unsafe fn destroy_buffer(&self, buffer: Resource)
unsafe fn map_buffer( &self, buffer: &Resource, range: MemoryRange ) -> Result<BufferMapping, DeviceError>
unsafe fn unmap_buffer(&self, buffer: &Resource) -> Result<(), DeviceError>
unsafe fn flush_mapped_ranges<I>(&self, buffer: &Resource, ranges: I)
unsafe fn invalidate_mapped_ranges<I>(&self, buffer: &Resource, ranges: I)
source§unsafe fn create_texture(
&self,
desc: &TextureDescriptor<'_>
) -> Result<Resource, DeviceError>
unsafe fn create_texture( &self, desc: &TextureDescriptor<'_> ) -> Result<Resource, DeviceError>
Creates a new texture. Read more
unsafe fn destroy_texture(&self, texture: Resource)
unsafe fn create_texture_view( &self, texture: &Resource, desc: &TextureViewDescriptor<'_> ) -> Result<Resource, DeviceError>
unsafe fn destroy_texture_view(&self, view: Resource)
unsafe fn create_sampler( &self, desc: &SamplerDescriptor<'_> ) -> Result<Resource, DeviceError>
unsafe fn destroy_sampler(&self, sampler: Resource)
unsafe fn create_command_encoder( &self, desc: &CommandEncoderDescriptor<'_, Api> ) -> Result<Encoder, DeviceError>
unsafe fn destroy_command_encoder(&self, encoder: Encoder)
source§unsafe fn create_bind_group_layout(
&self,
desc: &BindGroupLayoutDescriptor<'_>
) -> Result<Resource, DeviceError>
unsafe fn create_bind_group_layout( &self, desc: &BindGroupLayoutDescriptor<'_> ) -> Result<Resource, DeviceError>
Creates a bind group layout.
unsafe fn destroy_bind_group_layout(&self, bg_layout: Resource)
unsafe fn create_pipeline_layout( &self, desc: &PipelineLayoutDescriptor<'_, Api> ) -> Result<Resource, DeviceError>
unsafe fn destroy_pipeline_layout(&self, pipeline_layout: Resource)
unsafe fn create_bind_group( &self, desc: &BindGroupDescriptor<'_, Api> ) -> Result<Resource, DeviceError>
unsafe fn destroy_bind_group(&self, group: Resource)
unsafe fn create_shader_module( &self, desc: &ShaderModuleDescriptor<'_>, shader: ShaderInput<'_> ) -> Result<Resource, ShaderError>
unsafe fn destroy_shader_module(&self, module: Resource)
unsafe fn create_render_pipeline( &self, desc: &RenderPipelineDescriptor<'_, Api> ) -> Result<Resource, PipelineError>
unsafe fn destroy_render_pipeline(&self, pipeline: Resource)
unsafe fn create_compute_pipeline( &self, desc: &ComputePipelineDescriptor<'_, Api> ) -> Result<Resource, PipelineError>
unsafe fn destroy_compute_pipeline(&self, pipeline: Resource)
unsafe fn create_query_set( &self, desc: &QuerySetDescriptor<Label<'_>> ) -> Result<Resource, DeviceError>
unsafe fn destroy_query_set(&self, set: Resource)
unsafe fn create_fence(&self) -> Result<Resource, DeviceError>
unsafe fn destroy_fence(&self, fence: Resource)
unsafe fn get_fence_value( &self, fence: &Resource ) -> Result<FenceValue, DeviceError>
source§unsafe fn wait(
&self,
fence: &Resource,
value: FenceValue,
timeout_ms: u32
) -> Result<bool, DeviceError>
unsafe fn wait( &self, fence: &Resource, value: FenceValue, timeout_ms: u32 ) -> Result<bool, DeviceError>
Calling wait with a lower value than the current fence value will immediately return.
unsafe fn start_capture(&self) -> bool
unsafe fn stop_capture(&self)
unsafe fn create_acceleration_structure( &self, desc: &AccelerationStructureDescriptor<'_> ) -> Result<Resource, DeviceError>
unsafe fn get_acceleration_structure_build_sizes<'a>( &self, _desc: &GetAccelerationStructureBuildSizesDescriptor<'a, Api> ) -> AccelerationStructureBuildSizes
unsafe fn get_acceleration_structure_device_address( &self, _acceleration_structure: &Resource ) -> BufferAddress
unsafe fn destroy_acceleration_structure( &self, _acceleration_structure: Resource )
source§impl Instance<Api> for Context
impl Instance<Api> for Context
unsafe fn init(desc: &InstanceDescriptor<'_>) -> Result<Self, InstanceError>
unsafe fn create_surface( &self, _display_handle: RawDisplayHandle, _window_handle: RawWindowHandle ) -> Result<Context, InstanceError>
unsafe fn destroy_surface(&self, surface: Context)
unsafe fn enumerate_adapters(&self) -> Vec<ExposedAdapter<Api>>
source§impl Queue<Api> for Context
impl Queue<Api> for Context
source§unsafe fn submit(
&self,
command_buffers: &[&Resource],
signal_fence: Option<(&mut Resource, FenceValue)>
) -> Result<(), DeviceError>
unsafe fn submit( &self, command_buffers: &[&Resource], signal_fence: Option<(&mut Resource, FenceValue)> ) -> Result<(), DeviceError>
Submits the command buffers for execution on GPU. Read more
unsafe fn present( &self, surface: &Context, texture: Resource ) -> Result<(), SurfaceError>
unsafe fn get_timestamp_period(&self) -> f32
source§impl Surface<Api> for Context
impl Surface<Api> for Context
source§unsafe fn configure(
&self,
device: &Context,
config: &SurfaceConfiguration
) -> Result<(), SurfaceError>
unsafe fn configure( &self, device: &Context, config: &SurfaceConfiguration ) -> Result<(), SurfaceError>
Configures the surface to use the given device. Read more
source§unsafe fn unconfigure(&self, device: &Context)
unsafe fn unconfigure(&self, device: &Context)
Unconfigures the surface on the given device. Read more
source§unsafe fn acquire_texture(
&self,
timeout: Option<Duration>
) -> Result<Option<AcquiredSurfaceTexture<Api>>, SurfaceError>
unsafe fn acquire_texture( &self, timeout: Option<Duration> ) -> Result<Option<AcquiredSurfaceTexture<Api>>, SurfaceError>
Returns the next texture to be presented by the swapchain for drawing Read more
unsafe fn discard_texture(&self, texture: Resource)
Auto Trait Implementations§
impl RefUnwindSafe for Context
impl Send for Context
impl Sync for Context
impl Unpin for Context
impl UnwindSafe for Context
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