[go: up one dir, main page]

Struct gbm::Surface[][src]

pub struct Surface<T: 'static> { /* fields omitted */ }

A GBM rendering surface

Implementations

impl<T: 'static> Surface<T>[src]

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

Return whether or not a surface has free (non-locked) buffers

Before starting a new frame, the surface must have a buffer available for rendering. Initially, a GBM surface will have a free buffer, but after one or more buffers have been locked, the application must check for a free buffer before rendering.

pub unsafe fn lock_front_buffer(
    &self
) -> Result<BufferObject<T>, FrontBufferError>
[src]

Lock the surface’s current front buffer

Locks rendering to the surface’s current front buffer and returns a handle to the underlying BufferObject.

If an error occurs a FrontBufferError is returned.

Safety

This function must be called exactly once after calling eglSwapBuffers. Calling it before any eglSwapBuffers has happened on the surface or two or more times after eglSwapBuffers is an error and may cause undefined behavior.

Trait Implementations

impl<T: 'static> AsRaw<gbm_surface> for Surface<T>[src]

fn as_raw(&self) -> *const gbm_surface[src]

Receive a raw pointer representing this type.

Auto Trait Implementations

impl<T> !RefUnwindSafe for Surface<T>

impl<T> Send for Surface<T> where
    T: Send

impl<T> !Sync for Surface<T>

impl<T> Unpin for Surface<T> where
    T: Unpin

impl<T> !UnwindSafe for Surface<T>

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> Downcast for T where
    T: Any

pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read more

pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read more

pub fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s. Read more

pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s. Read more

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

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.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

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.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.