Struct voodoo::SwapchainKhrBuilder
[−]
[src]
pub struct SwapchainKhrBuilder<'b> { /* fields omitted */ }
A Swapchain builder.
Methods
impl<'b> SwapchainKhrBuilder<'b>
[src]
pub fn new() -> SwapchainKhrBuilder<'b>
[src]
Returns a new swapchain builder.
pub fn flags<'s>(
&'s mut self,
flags: SwapchainCreateFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
flags: SwapchainCreateFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the parameters of swapchain creation.
pub fn surface<'s, 'p>(
&'s mut self,
surface: &'p SurfaceKhr
) -> &'s mut SwapchainKhrBuilder<'b> where
'p: 'b,
[src]
&'s mut self,
surface: &'p SurfaceKhr
) -> &'s mut SwapchainKhrBuilder<'b> where
'p: 'b,
Specifies the surface that the swapchain will present images to.
pub fn min_image_count<'s>(
&'s mut self,
min_image_count: u32
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
min_image_count: u32
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the minimum number of presentable images that the application needs. The platform will either create the swapchain with at least that many images, or will fail to create the swapchain.
pub fn image_format<'s>(
&'s mut self,
image_format: Format
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_format: Format
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the format that is valid for swapchains on the specified surface.
pub fn image_color_space<'s>(
&'s mut self,
image_color_space: ColorSpaceKhr
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_color_space: ColorSpaceKhr
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the color space that is valid for swapchains on the specified surface.
pub fn image_extent<'s>(
&'s mut self,
image_extent: Extent2d
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_extent: Extent2d
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the size (in pixels) of the swapchain. Behavior is
platform-dependent when the image extent does not match the surface’s
current extent as returned by vkGetPhysicalDeviceSurfaceCapabilitiesKHR
.
pub fn image_array_layers<'s>(
&'s mut self,
image_array_layers: u32
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_array_layers: u32
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the number of views in a multiview/stereo surface. For non-stereoscopic-3D applications, this value is 1.
pub fn image_usage<'s>(
&'s mut self,
image_usage: ImageUsageFlags
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_usage: ImageUsageFlags
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the bitmask of ImageUsageFlagBits
, indicating how the
application will use the swapchain’s presentable images
pub fn image_sharing_mode<'s>(
&'s mut self,
image_sharing_mode: SharingMode
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
image_sharing_mode: SharingMode
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the sharing mode used for the images of the swapchain.
pub fn queue_family_indices<'s, 'qfi>(
&'s mut self,
queue_family_indices: &'qfi [u32]
) -> &'s mut SwapchainKhrBuilder<'b> where
'qfi: 'b,
[src]
&'s mut self,
queue_family_indices: &'qfi [u32]
) -> &'s mut SwapchainKhrBuilder<'b> where
'qfi: 'b,
Specifies the queue family indices having access to the images of the swapchain in case imageSharingMode is VK_SHARING_MODE_CONCURRENT.
pub fn pre_transform<'s>(
&'s mut self,
pre_transform: SurfaceTransformFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
pre_transform: SurfaceTransformFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the bitmask of VkSurfaceTransformFlagBitsKHR, describing the transform, relative to the presentation engine’s natural orientation, applied to the image content prior to presentation. If it does not match the currentTransform value returned by vkGetPhysicalDeviceSurfaceCapabilitiesKHR, the presentation engine will transform the image content as part of the presentation operation.
pub fn composite_alpha<'s>(
&'s mut self,
composite_alpha: CompositeAlphaFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
composite_alpha: CompositeAlphaFlagsKhr
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the bitmask of VkCompositeAlphaFlagBitsKHR indicating the alpha compositing mode to use when this surface is composited together with other surfaces on certain window systems.
pub fn present_mode<'s>(
&'s mut self,
present_mode: PresentModeKhr
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
present_mode: PresentModeKhr
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the presentation mode the swapchain will use. A swapchain’s present mode determines how incoming present requests will be processed and queued internally.
pub fn clipped<'s>(
&'s mut self,
clipped: bool
) -> &'s mut SwapchainKhrBuilder<'b>
[src]
&'s mut self,
clipped: bool
) -> &'s mut SwapchainKhrBuilder<'b>
Specifies the whether the Vulkan implementation is allowed to discard rendering operations that affect regions of the surface which are not visible.
-
If set to
true
, the presentable images associated with the swapchain may not own all of their pixels. Pixels in the presentable images that correspond to regions of the target surface obscured by another window on the desktop or subject to some other clipping mechanism will have undefined content when read back. Pixel shaders may not execute for these pixels, and thus any side affects they would have had will not occur. -
If set to
false
, presentable images associated with the swapchain will own all the pixels they contain. Setting this value to VK_TRUE does not guarantee any clipping will occur, but allows more optimal presentation methods to be used on some platforms.
Note: Applications should set this value to VK_TRUE if they do not expect to read back the content of presentable images before presenting them or after reacquiring them and if their pixel shaders do not have any side effects that require them to run for all pixels in the presentable image.
pub fn old_swapchain<'s, H>(
&'s mut self,
old_swapchain: H
) -> &'s mut SwapchainKhrBuilder<'b> where
H: Handle<Target = SwapchainKhrHandle>,
[src]
&'s mut self,
old_swapchain: H
) -> &'s mut SwapchainKhrBuilder<'b> where
H: Handle<Target = SwapchainKhrHandle>,
If not VK_NULL_HANDLE, specifies the swapchain that will be replaced by the new swapchain being created. The new swapchain will be a descendant of oldSwapchain. Further, any descendants of the new swapchain will also be descendants of oldSwapchain. Upon calling vkCreateSwapchainKHR with a oldSwapchain that is not VK_NULL_HANDLE, any images not acquired by the application may be freed by the implementation, which may occur even if creation of the new swapchain fails. The application must destroy the old swapchain to free all memory associated with the old swapchain. The application must wait for the completion of any outstanding rendering to images it currently has acquired at the time the swapchain is destroyed. The application can continue to present any images it acquired and has not yet presented using the old swapchain, as long as it has not entered a state that causes it to return VK_ERROR_OUT_OF_DATE_KHR. However, the application cannot acquire any more images from the old swapchain regardless of whether or not creation of the new swapchain succeeds. The application can continue to use a shared presentable image obtained from oldSwapchain until a presentable image is acquired from the new swapchain, as long as it has not entered a state that causes it to return VK_ERROR_OUT_OF_DATE_KHR.
pub fn build(&mut self, device: Device) -> VdResult<SwapchainKhr>
[src]
Builds and returns a new SwapchainKhr
.
Trait Implementations
impl<'b> Debug for SwapchainKhrBuilder<'b>
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl<'b> Clone for SwapchainKhrBuilder<'b>
[src]
fn clone(&self) -> SwapchainKhrBuilder<'b>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more