Struct wayland_client::egl::EGLSurface [] [src]

pub struct EGLSurface {
    // some fields omitted
}

Methods

impl EGLSurface

fn new(surface: WSurface, width: i32, height: i32) -> EGLSurface

Creates a new EGL surface on a wayland surface.

fn destroy(self) -> WSurface

Destroys the EGL association to this WSurface and returns it.

unsafe fn as_native_ptr(&self) -> *mut wl_egl_window

Provides a ptr to the native window to be used for EGL initialization.

Keep in mind that the surface will be destroyed when the EGLSurface goes out of scope.

fn resize(&self, width: i32, height: i32, dx: i32, dy: i32)

Resizes the egl surface.

(dx, dy) are the new coordinates of the top-left corner, relative to the current position. It allow you to control the direction of the growth or the shrinking of the surface.

fn get_attached_size(&self) -> (i32, i32)

The size of the EGL buffer attached to this surface.

Trait Implementations

impl Send for EGLSurface

EGLSurface is self owned

impl Sync for EGLSurface

The wayland library guaranties this.

impl Surface for EGLSurface

fn get_wsurface(&self) -> &WSurface

impl Drop for EGLSurface

fn drop(&mut self)

impl FFI for EGLSurface

type Ptr = wl_egl_window

fn ptr(&self) -> *const wl_egl_window

unsafe fn ptr_mut(&self) -> *mut wl_egl_window