[][src]Struct surfman::platform::unix::wayland::context::Context

pub struct Context(_);

Represents an OpenGL rendering context.

A context allows you to issue rendering commands to a surface. When initially created, a context has no attached surface, so rendering commands will fail or be ignored. Typically, you attach a surface to the context before rendering.

Contexts take ownership of the surfaces attached to them. In order to mutate a surface in any way other than rendering to it (e.g. presenting it to a window, which causes a buffer swap), it must first be detached from its context. Each surface is associated with a single context upon creation and may not be rendered to from any other context. However, you can wrap a surface in a surface texture, which allows the surface to be read from another context.

OpenGL objects may not be shared across contexts directly, but surface textures effectively allow for sharing of texture data. Contexts are local to a single thread and device.

A context must be explicitly destroyed with destroy_context(), or a panic will occur.

Auto Trait Implementations

impl RefUnwindSafe for Context

impl !Send for Context

impl !Sync for Context

impl Unpin for Context

impl UnwindSafe for Context

Blanket Implementations

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

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

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

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

impl<T, U> Into<U> for T where
    U: From<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.