Trait App

Source
pub trait App: 'static + Sized {
    // Required methods
    fn init(
        config: &SurfaceConfiguration,
        adapter: &Adapter,
        device: &Device,
        queue: &Queue,
    ) -> Self;
    fn resize(
        &mut self,
        config: &SurfaceConfiguration,
        device: &Device,
        queue: &Queue,
    );
    fn update(
        &mut self,
        event: WindowEvent<'_>,
        config: &SurfaceConfiguration,
        device: &Device,
        queue: &Queue,
    );
    fn render(
        &mut self,
        view: &TextureView,
        device: &Device,
        queue: &Queue,
        spawner: &Spawner<'_>,
    );

    // Provided methods
    fn optional_features() -> Features { ... }
    fn required_features() -> Features { ... }
    fn required_downlevel_capabilities() -> DownlevelCapabilities { ... }
    fn required_limits() -> Limits { ... }
}

Required Methods§

Source

fn init( config: &SurfaceConfiguration, adapter: &Adapter, device: &Device, queue: &Queue, ) -> Self

Source

fn resize( &mut self, config: &SurfaceConfiguration, device: &Device, queue: &Queue, )

Source

fn update( &mut self, event: WindowEvent<'_>, config: &SurfaceConfiguration, device: &Device, queue: &Queue, )

Source

fn render( &mut self, view: &TextureView, device: &Device, queue: &Queue, spawner: &Spawner<'_>, )

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§