pub struct Device { /* private fields */ }
Expand description
Implementations
sourceimpl Device
impl Device
Vulkan core 1.3
pub fn fp_v1_3(&self) -> &DeviceFnV1_3
sourcepub unsafe fn create_private_data_slot(
&self,
create_info: &PrivateDataSlotCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<PrivateDataSlot, Result>
pub unsafe fn create_private_data_slot(
&self,
create_info: &PrivateDataSlotCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<PrivateDataSlot, Result>
sourcepub unsafe fn destroy_private_data_slot(
&self,
private_data_slot: PrivateDataSlot,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn destroy_private_data_slot(
&self,
private_data_slot: PrivateDataSlot,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn set_private_data<T>(
&self,
object: T,
private_data_slot: PrivateDataSlot,
data: u64
) -> Result<(), Result>where
T: Handle,
pub unsafe fn set_private_data<T>(
&self,
object: T,
private_data_slot: PrivateDataSlot,
data: u64
) -> Result<(), Result>where
T: Handle,
sourcepub unsafe fn get_private_data<T>(
&self,
object: T,
private_data_slot: PrivateDataSlot
) -> u64where
T: Handle,
pub unsafe fn get_private_data<T>(
&self,
object: T,
private_data_slot: PrivateDataSlot
) -> u64where
T: Handle,
sourcepub unsafe fn cmd_pipeline_barrier2(
&self,
command_buffer: CommandBuffer,
dependency_info: &DependencyInfo
)
pub unsafe fn cmd_pipeline_barrier2(
&self,
command_buffer: CommandBuffer,
dependency_info: &DependencyInfo
)
sourcepub unsafe fn cmd_reset_event2(
&self,
command_buffer: CommandBuffer,
event: Event,
stage_mask: PipelineStageFlags2
)
pub unsafe fn cmd_reset_event2(
&self,
command_buffer: CommandBuffer,
event: Event,
stage_mask: PipelineStageFlags2
)
sourcepub unsafe fn cmd_set_event2(
&self,
command_buffer: CommandBuffer,
event: Event,
dependency_info: &DependencyInfo
)
pub unsafe fn cmd_set_event2(
&self,
command_buffer: CommandBuffer,
event: Event,
dependency_info: &DependencyInfo
)
sourcepub unsafe fn cmd_wait_events2(
&self,
command_buffer: CommandBuffer,
events: &[Event],
dependency_infos: &[DependencyInfo]
)
pub unsafe fn cmd_wait_events2(
&self,
command_buffer: CommandBuffer,
events: &[Event],
dependency_infos: &[DependencyInfo]
)
sourcepub unsafe fn cmd_write_timestamp2(
&self,
command_buffer: CommandBuffer,
stage: PipelineStageFlags2,
query_pool: QueryPool,
query: u32
)
pub unsafe fn cmd_write_timestamp2(
&self,
command_buffer: CommandBuffer,
stage: PipelineStageFlags2,
query_pool: QueryPool,
query: u32
)
sourcepub unsafe fn queue_submit2(
&self,
queue: Queue,
submits: &[SubmitInfo2],
fence: Fence
) -> Result<(), Result>
pub unsafe fn queue_submit2(
&self,
queue: Queue,
submits: &[SubmitInfo2],
fence: Fence
) -> Result<(), Result>
sourcepub unsafe fn cmd_copy_buffer2(
&self,
command_buffer: CommandBuffer,
copy_buffer_info: &CopyBufferInfo2
)
pub unsafe fn cmd_copy_buffer2(
&self,
command_buffer: CommandBuffer,
copy_buffer_info: &CopyBufferInfo2
)
sourcepub unsafe fn cmd_copy_image2(
&self,
command_buffer: CommandBuffer,
copy_image_info: &CopyImageInfo2
)
pub unsafe fn cmd_copy_image2(
&self,
command_buffer: CommandBuffer,
copy_image_info: &CopyImageInfo2
)
sourcepub unsafe fn cmd_copy_buffer_to_image2(
&self,
command_buffer: CommandBuffer,
copy_buffer_to_image_info: &CopyBufferToImageInfo2
)
pub unsafe fn cmd_copy_buffer_to_image2(
&self,
command_buffer: CommandBuffer,
copy_buffer_to_image_info: &CopyBufferToImageInfo2
)
sourcepub unsafe fn cmd_copy_image_to_buffer2(
&self,
command_buffer: CommandBuffer,
copy_image_to_buffer_info: &CopyImageToBufferInfo2
)
pub unsafe fn cmd_copy_image_to_buffer2(
&self,
command_buffer: CommandBuffer,
copy_image_to_buffer_info: &CopyImageToBufferInfo2
)
sourcepub unsafe fn cmd_blit_image2(
&self,
command_buffer: CommandBuffer,
blit_image_info: &BlitImageInfo2
)
pub unsafe fn cmd_blit_image2(
&self,
command_buffer: CommandBuffer,
blit_image_info: &BlitImageInfo2
)
sourcepub unsafe fn cmd_resolve_image2(
&self,
command_buffer: CommandBuffer,
resolve_image_info: &ResolveImageInfo2
)
pub unsafe fn cmd_resolve_image2(
&self,
command_buffer: CommandBuffer,
resolve_image_info: &ResolveImageInfo2
)
sourcepub unsafe fn cmd_begin_rendering(
&self,
command_buffer: CommandBuffer,
rendering_info: &RenderingInfo
)
pub unsafe fn cmd_begin_rendering(
&self,
command_buffer: CommandBuffer,
rendering_info: &RenderingInfo
)
sourcepub unsafe fn cmd_end_rendering(&self, command_buffer: CommandBuffer)
pub unsafe fn cmd_end_rendering(&self, command_buffer: CommandBuffer)
sourcepub unsafe fn cmd_set_cull_mode(
&self,
command_buffer: CommandBuffer,
cull_mode: CullModeFlags
)
pub unsafe fn cmd_set_cull_mode(
&self,
command_buffer: CommandBuffer,
cull_mode: CullModeFlags
)
sourcepub unsafe fn cmd_set_front_face(
&self,
command_buffer: CommandBuffer,
front_face: FrontFace
)
pub unsafe fn cmd_set_front_face(
&self,
command_buffer: CommandBuffer,
front_face: FrontFace
)
sourcepub unsafe fn cmd_set_primitive_topology(
&self,
command_buffer: CommandBuffer,
primitive_topology: PrimitiveTopology
)
pub unsafe fn cmd_set_primitive_topology(
&self,
command_buffer: CommandBuffer,
primitive_topology: PrimitiveTopology
)
sourcepub unsafe fn cmd_set_viewport_with_count(
&self,
command_buffer: CommandBuffer,
viewports: &[Viewport]
)
pub unsafe fn cmd_set_viewport_with_count(
&self,
command_buffer: CommandBuffer,
viewports: &[Viewport]
)
sourcepub unsafe fn cmd_set_scissor_with_count(
&self,
command_buffer: CommandBuffer,
scissors: &[Rect2D]
)
pub unsafe fn cmd_set_scissor_with_count(
&self,
command_buffer: CommandBuffer,
scissors: &[Rect2D]
)
sourcepub unsafe fn cmd_bind_vertex_buffers2(
&self,
command_buffer: CommandBuffer,
first_binding: u32,
buffers: &[Buffer],
offsets: &[u64],
sizes: Option<&[u64]>,
strides: Option<&[u64]>
)
pub unsafe fn cmd_bind_vertex_buffers2(
&self,
command_buffer: CommandBuffer,
first_binding: u32,
buffers: &[Buffer],
offsets: &[u64],
sizes: Option<&[u64]>,
strides: Option<&[u64]>
)
sourcepub unsafe fn cmd_set_depth_test_enable(
&self,
command_buffer: CommandBuffer,
depth_test_enable: bool
)
pub unsafe fn cmd_set_depth_test_enable(
&self,
command_buffer: CommandBuffer,
depth_test_enable: bool
)
sourcepub unsafe fn cmd_set_depth_write_enable(
&self,
command_buffer: CommandBuffer,
depth_write_enable: bool
)
pub unsafe fn cmd_set_depth_write_enable(
&self,
command_buffer: CommandBuffer,
depth_write_enable: bool
)
sourcepub unsafe fn cmd_set_depth_compare_op(
&self,
command_buffer: CommandBuffer,
depth_compare_op: CompareOp
)
pub unsafe fn cmd_set_depth_compare_op(
&self,
command_buffer: CommandBuffer,
depth_compare_op: CompareOp
)
sourcepub unsafe fn cmd_set_depth_bounds_test_enable(
&self,
command_buffer: CommandBuffer,
depth_bounds_test_enable: bool
)
pub unsafe fn cmd_set_depth_bounds_test_enable(
&self,
command_buffer: CommandBuffer,
depth_bounds_test_enable: bool
)
sourcepub unsafe fn cmd_set_stencil_test_enable(
&self,
command_buffer: CommandBuffer,
stencil_test_enable: bool
)
pub unsafe fn cmd_set_stencil_test_enable(
&self,
command_buffer: CommandBuffer,
stencil_test_enable: bool
)
sourcepub unsafe fn cmd_set_stencil_op(
&self,
command_buffer: CommandBuffer,
face_mask: StencilFaceFlags,
fail_op: StencilOp,
pass_op: StencilOp,
depth_fail_op: StencilOp,
compare_op: CompareOp
)
pub unsafe fn cmd_set_stencil_op(
&self,
command_buffer: CommandBuffer,
face_mask: StencilFaceFlags,
fail_op: StencilOp,
pass_op: StencilOp,
depth_fail_op: StencilOp,
compare_op: CompareOp
)
sourcepub unsafe fn cmd_set_rasterizer_discard_enable(
&self,
command_buffer: CommandBuffer,
rasterizer_discard_enable: bool
)
pub unsafe fn cmd_set_rasterizer_discard_enable(
&self,
command_buffer: CommandBuffer,
rasterizer_discard_enable: bool
)
sourcepub unsafe fn cmd_set_depth_bias_enable(
&self,
command_buffer: CommandBuffer,
depth_bias_enable: bool
)
pub unsafe fn cmd_set_depth_bias_enable(
&self,
command_buffer: CommandBuffer,
depth_bias_enable: bool
)
sourcepub unsafe fn cmd_set_primitive_restart_enable(
&self,
command_buffer: CommandBuffer,
primitive_restart_enable: bool
)
pub unsafe fn cmd_set_primitive_restart_enable(
&self,
command_buffer: CommandBuffer,
primitive_restart_enable: bool
)
sourcepub unsafe fn get_device_buffer_memory_requirements(
&self,
create_info: &DeviceBufferMemoryRequirements,
out: &mut MemoryRequirements2
)
pub unsafe fn get_device_buffer_memory_requirements(
&self,
create_info: &DeviceBufferMemoryRequirements,
out: &mut MemoryRequirements2
)
sourcepub unsafe fn get_device_image_memory_requirements(
&self,
create_info: &DeviceImageMemoryRequirements,
out: &mut MemoryRequirements2
)
pub unsafe fn get_device_image_memory_requirements(
&self,
create_info: &DeviceImageMemoryRequirements,
out: &mut MemoryRequirements2
)
sourcepub unsafe fn get_device_image_sparse_memory_requirements_len(
&self,
create_info: &DeviceImageMemoryRequirements
) -> usize
pub unsafe fn get_device_image_sparse_memory_requirements_len(
&self,
create_info: &DeviceImageMemoryRequirements
) -> usize
Retrieve the number of elements to pass to get_device_image_sparse_memory_requirements()
sourcepub unsafe fn get_device_image_sparse_memory_requirements(
&self,
create_info: &DeviceImageMemoryRequirements,
out: &mut [SparseImageMemoryRequirements2]
)
pub unsafe fn get_device_image_sparse_memory_requirements(
&self,
create_info: &DeviceImageMemoryRequirements,
out: &mut [SparseImageMemoryRequirements2]
)
Call get_device_image_sparse_memory_requirements_len()
to query the number of elements to pass to out
.
Be sure to Default::default()
-initialize these elements and optionally set their p_next
pointer.
sourceimpl Device
impl Device
Vulkan core 1.2
pub fn fp_v1_2(&self) -> &DeviceFnV1_2
sourcepub unsafe fn cmd_draw_indirect_count(
&self,
command_buffer: CommandBuffer,
buffer: Buffer,
offset: u64,
count_buffer: Buffer,
count_buffer_offset: u64,
max_draw_count: u32,
stride: u32
)
pub unsafe fn cmd_draw_indirect_count(
&self,
command_buffer: CommandBuffer,
buffer: Buffer,
offset: u64,
count_buffer: Buffer,
count_buffer_offset: u64,
max_draw_count: u32,
stride: u32
)
sourcepub unsafe fn cmd_draw_indexed_indirect_count(
&self,
command_buffer: CommandBuffer,
buffer: Buffer,
offset: u64,
count_buffer: Buffer,
count_buffer_offset: u64,
max_draw_count: u32,
stride: u32
)
pub unsafe fn cmd_draw_indexed_indirect_count(
&self,
command_buffer: CommandBuffer,
buffer: Buffer,
offset: u64,
count_buffer: Buffer,
count_buffer_offset: u64,
max_draw_count: u32,
stride: u32
)
sourcepub unsafe fn create_render_pass2(
&self,
create_info: &RenderPassCreateInfo2,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<RenderPass, Result>
pub unsafe fn create_render_pass2(
&self,
create_info: &RenderPassCreateInfo2,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<RenderPass, Result>
sourcepub unsafe fn cmd_begin_render_pass2(
&self,
command_buffer: CommandBuffer,
render_pass_begin_info: &RenderPassBeginInfo,
subpass_begin_info: &SubpassBeginInfo
)
pub unsafe fn cmd_begin_render_pass2(
&self,
command_buffer: CommandBuffer,
render_pass_begin_info: &RenderPassBeginInfo,
subpass_begin_info: &SubpassBeginInfo
)
sourcepub unsafe fn cmd_next_subpass2(
&self,
command_buffer: CommandBuffer,
subpass_begin_info: &SubpassBeginInfo,
subpass_end_info: &SubpassEndInfo
)
pub unsafe fn cmd_next_subpass2(
&self,
command_buffer: CommandBuffer,
subpass_begin_info: &SubpassBeginInfo,
subpass_end_info: &SubpassEndInfo
)
sourcepub unsafe fn cmd_end_render_pass2(
&self,
command_buffer: CommandBuffer,
subpass_end_info: &SubpassEndInfo
)
pub unsafe fn cmd_end_render_pass2(
&self,
command_buffer: CommandBuffer,
subpass_end_info: &SubpassEndInfo
)
sourcepub unsafe fn reset_query_pool(
&self,
query_pool: QueryPool,
first_query: u32,
query_count: u32
)
pub unsafe fn reset_query_pool(
&self,
query_pool: QueryPool,
first_query: u32,
query_count: u32
)
sourcepub unsafe fn get_semaphore_counter_value(
&self,
semaphore: Semaphore
) -> Result<u64, Result>
pub unsafe fn get_semaphore_counter_value(
&self,
semaphore: Semaphore
) -> Result<u64, Result>
sourcepub unsafe fn wait_semaphores(
&self,
wait_info: &SemaphoreWaitInfo,
timeout: u64
) -> Result<(), Result>
pub unsafe fn wait_semaphores(
&self,
wait_info: &SemaphoreWaitInfo,
timeout: u64
) -> Result<(), Result>
sourcepub unsafe fn signal_semaphore(
&self,
signal_info: &SemaphoreSignalInfo
) -> Result<(), Result>
pub unsafe fn signal_semaphore(
&self,
signal_info: &SemaphoreSignalInfo
) -> Result<(), Result>
sourcepub unsafe fn get_buffer_device_address(
&self,
info: &BufferDeviceAddressInfo
) -> u64
pub unsafe fn get_buffer_device_address(
&self,
info: &BufferDeviceAddressInfo
) -> u64
sourcepub unsafe fn get_buffer_opaque_capture_address(
&self,
info: &BufferDeviceAddressInfo
) -> u64
pub unsafe fn get_buffer_opaque_capture_address(
&self,
info: &BufferDeviceAddressInfo
) -> u64
sourceimpl Device
impl Device
Vulkan core 1.1
pub fn fp_v1_1(&self) -> &DeviceFnV1_1
sourcepub unsafe fn bind_buffer_memory2(
&self,
bind_infos: &[BindBufferMemoryInfo]
) -> Result<(), Result>
pub unsafe fn bind_buffer_memory2(
&self,
bind_infos: &[BindBufferMemoryInfo]
) -> Result<(), Result>
sourcepub unsafe fn bind_image_memory2(
&self,
bind_infos: &[BindImageMemoryInfo]
) -> Result<(), Result>
pub unsafe fn bind_image_memory2(
&self,
bind_infos: &[BindImageMemoryInfo]
) -> Result<(), Result>
sourcepub unsafe fn get_device_group_peer_memory_features(
&self,
heap_index: u32,
local_device_index: u32,
remote_device_index: u32
) -> PeerMemoryFeatureFlags
pub unsafe fn get_device_group_peer_memory_features(
&self,
heap_index: u32,
local_device_index: u32,
remote_device_index: u32
) -> PeerMemoryFeatureFlags
sourcepub unsafe fn cmd_set_device_mask(
&self,
command_buffer: CommandBuffer,
device_mask: u32
)
pub unsafe fn cmd_set_device_mask(
&self,
command_buffer: CommandBuffer,
device_mask: u32
)
sourcepub unsafe fn cmd_dispatch_base(
&self,
command_buffer: CommandBuffer,
base_group_x: u32,
base_group_y: u32,
base_group_z: u32,
group_count_x: u32,
group_count_y: u32,
group_count_z: u32
)
pub unsafe fn cmd_dispatch_base(
&self,
command_buffer: CommandBuffer,
base_group_x: u32,
base_group_y: u32,
base_group_z: u32,
group_count_x: u32,
group_count_y: u32,
group_count_z: u32
)
sourcepub unsafe fn get_image_memory_requirements2(
&self,
info: &ImageMemoryRequirementsInfo2,
out: &mut MemoryRequirements2
)
pub unsafe fn get_image_memory_requirements2(
&self,
info: &ImageMemoryRequirementsInfo2,
out: &mut MemoryRequirements2
)
sourcepub unsafe fn get_buffer_memory_requirements2(
&self,
info: &BufferMemoryRequirementsInfo2,
out: &mut MemoryRequirements2
)
pub unsafe fn get_buffer_memory_requirements2(
&self,
info: &BufferMemoryRequirementsInfo2,
out: &mut MemoryRequirements2
)
sourcepub unsafe fn get_image_sparse_memory_requirements2_len(
&self,
info: &ImageSparseMemoryRequirementsInfo2
) -> usize
pub unsafe fn get_image_sparse_memory_requirements2_len(
&self,
info: &ImageSparseMemoryRequirementsInfo2
) -> usize
Retrieve the number of elements to pass to get_image_sparse_memory_requirements2()
sourcepub unsafe fn get_image_sparse_memory_requirements2(
&self,
info: &ImageSparseMemoryRequirementsInfo2,
out: &mut [SparseImageMemoryRequirements2]
)
pub unsafe fn get_image_sparse_memory_requirements2(
&self,
info: &ImageSparseMemoryRequirementsInfo2,
out: &mut [SparseImageMemoryRequirements2]
)
Call get_image_sparse_memory_requirements2_len()
to query the number of elements to pass to out
.
Be sure to Default::default()
-initialize these elements and optionally set their p_next
pointer.
sourcepub unsafe fn trim_command_pool(
&self,
command_pool: CommandPool,
flags: CommandPoolTrimFlags
)
pub unsafe fn trim_command_pool(
&self,
command_pool: CommandPool,
flags: CommandPoolTrimFlags
)
sourcepub unsafe fn create_sampler_ycbcr_conversion(
&self,
create_info: &SamplerYcbcrConversionCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<SamplerYcbcrConversion, Result>
pub unsafe fn create_sampler_ycbcr_conversion(
&self,
create_info: &SamplerYcbcrConversionCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<SamplerYcbcrConversion, Result>
sourcepub unsafe fn destroy_sampler_ycbcr_conversion(
&self,
ycbcr_conversion: SamplerYcbcrConversion,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn destroy_sampler_ycbcr_conversion(
&self,
ycbcr_conversion: SamplerYcbcrConversion,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn create_descriptor_update_template(
&self,
create_info: &DescriptorUpdateTemplateCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<DescriptorUpdateTemplate, Result>
pub unsafe fn create_descriptor_update_template(
&self,
create_info: &DescriptorUpdateTemplateCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<DescriptorUpdateTemplate, Result>
sourcepub unsafe fn destroy_descriptor_update_template(
&self,
descriptor_update_template: DescriptorUpdateTemplate,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn destroy_descriptor_update_template(
&self,
descriptor_update_template: DescriptorUpdateTemplate,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn update_descriptor_set_with_template(
&self,
descriptor_set: DescriptorSet,
descriptor_update_template: DescriptorUpdateTemplate,
data: *const c_void
)
pub unsafe fn update_descriptor_set_with_template(
&self,
descriptor_set: DescriptorSet,
descriptor_update_template: DescriptorUpdateTemplate,
data: *const c_void
)
sourcepub unsafe fn get_descriptor_set_layout_support(
&self,
create_info: &DescriptorSetLayoutCreateInfo,
out: &mut DescriptorSetLayoutSupport
)
pub unsafe fn get_descriptor_set_layout_support(
&self,
create_info: &DescriptorSetLayoutCreateInfo,
out: &mut DescriptorSetLayoutSupport
)
sourceimpl Device
impl Device
Vulkan core 1.0
pub fn fp_v1_0(&self) -> &DeviceFnV1_0
sourcepub unsafe fn destroy_device(
&self,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn destroy_device(
&self,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn destroy_sampler(
&self,
sampler: Sampler,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn destroy_sampler(
&self,
sampler: Sampler,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn free_memory(
&self,
memory: DeviceMemory,
allocation_callbacks: Option<&AllocationCallbacks>
)
pub unsafe fn free_memory(
&self,
memory: DeviceMemory,
allocation_callbacks: Option<&AllocationCallbacks>
)
sourcepub unsafe fn free_command_buffers(
&self,
command_pool: CommandPool,
command_buffers: &[CommandBuffer]
)
pub unsafe fn free_command_buffers(
&self,
command_pool: CommandPool,
command_buffers: &[CommandBuffer]
)
sourcepub unsafe fn create_event(
&self,
create_info: &EventCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<Event, Result>
pub unsafe fn create_event(
&self,
create_info: &EventCreateInfo,
allocation_callbacks: Option<&AllocationCallbacks>
) -> Result<Event, Result>
sourcepub unsafe fn get_event_status(&self, event: Event) -> Result<bool, Result>
pub unsafe fn get_event_status(&self, event: Event) -> Result<bool, Result>
Returns true
if the event was set, and false
if the event was reset, otherwise it will
return the error code.
https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetEventStatus.html