[][src]Struct vulkano::swapchain::Swapchain

pub struct Swapchain<W> { /* fields omitted */ }

Contains the swapping system and the images that can be shown on a surface.

Methods

impl<W> Swapchain<W>[src]

pub fn new<F, S>(
    device: Arc<Device>,
    surface: Arc<Surface<W>>,
    num_images: u32,
    format: F,
    dimensions: [u32; 2],
    layers: u32,
    usage: ImageUsage,
    sharing: S,
    transform: SurfaceTransform,
    alpha: CompositeAlpha,
    mode: PresentMode,
    clipped: bool,
    old_swapchain: Option<&Arc<Swapchain<W>>>
) -> Result<(Arc<Swapchain<W>>, Vec<Arc<SwapchainImage<W>>>), SwapchainCreationError> where
    F: FormatDesc,
    S: Into<SharingMode>, 
[src]

Builds a new swapchain. Allocates images who content can be made visible on a surface.

See also the Surface::get_capabilities function which returns the values that are supported by the implementation. All the parameters that you pass to Swapchain::new must be supported.

The clipped parameter indicates whether the implementation is allowed to discard rendering operations that affect regions of the surface which aren't visible. This is important to take into account if your fragment shader has side-effects or if you want to read back the content of the image afterwards.

This function returns the swapchain plus a list of the images that belong to the swapchain. The order in which the images are returned is important for the acquire_next_image and present functions.

Panic

  • Panics if the device and the surface don't belong to the same instance.
  • Panics if usage is empty.

pub fn recreate(
    &self
) -> Result<(Arc<Swapchain<W>>, Vec<Arc<SwapchainImage<W>>>), SwapchainCreationError>
[src]

Recreates the swapchain with current dimensions of corresponding surface.

pub fn recreate_with_dimension(
    &self,
    dimensions: [u32; 2]
) -> Result<(Arc<Swapchain<W>>, Vec<Arc<SwapchainImage<W>>>), SwapchainCreationError>
[src]

Recreates the swapchain with new dimensions.

pub fn raw_image(&self, offset: usize) -> Option<ImageInner>[src]

Returns of the images that belong to this swapchain.

pub fn num_images(&self) -> u32[src]

Returns the number of images of the swapchain.

See the documentation of Swapchain::new.

pub fn format(&self) -> Format[src]

Returns the format of the images of the swapchain.

See the documentation of Swapchain::new.

pub fn dimensions(&self) -> [u32; 2][src]

Returns the dimensions of the images of the swapchain.

See the documentation of Swapchain::new.

pub fn layers(&self) -> u32[src]

Returns the number of layers of the images of the swapchain.

See the documentation of Swapchain::new.

pub fn transform(&self) -> SurfaceTransform[src]

Returns the transform that was passed when creating the swapchain.

See the documentation of Swapchain::new.

pub fn composite_alpha(&self) -> CompositeAlpha[src]

Returns the alpha mode that was passed when creating the swapchain.

See the documentation of Swapchain::new.

pub fn present_mode(&self) -> PresentMode[src]

Returns the present mode that was passed when creating the swapchain.

See the documentation of Swapchain::new.

pub fn clipped(&self) -> bool[src]

Returns the value of clipped that was passed when creating the swapchain.

See the documentation of Swapchain::new.

Trait Implementations

impl<W> DeviceOwned for Swapchain<W>[src]

impl<W> VulkanObject for Swapchain<W>[src]

type Object = SwapchainKHR

The type of the object.

impl<W> Drop for Swapchain<W>[src]

impl<W> Debug for Swapchain<W>[src]

Auto Trait Implementations

impl<W> Send for Swapchain<W> where
    W: Send + Sync

impl<W> Sync for Swapchain<W> where
    W: Send + Sync

impl<W> Unpin for Swapchain<W>

impl<W> UnwindSafe for Swapchain<W> where
    W: RefUnwindSafe

impl<W> RefUnwindSafe for Swapchain<W> where
    W: RefUnwindSafe

Blanket Implementations

impl<T> DeviceOwned for T where
    T: Deref,
    <T as Deref>::Target: DeviceOwned
[src]

impl<T> Content for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]