pub enum Surface<T: SurfaceTypeTrait> {
Cgl(Surface<T>),
}
Expand description
The GL surface that is used for rendering.
The GL surface is not thread safe, it can neither be Send
nor Sync
,
so it should be created on the thread it’ll be used to render.
ⓘ
fn test_send<T: Send>() {}
test_send::<glutin::surface::Surface<glutin::surface::WindowSurface>>();
ⓘ
fn test_sync<T: Sync>() {}
test_sync::<glutin::surface::Surface<glutin::surface::WindowSurface>>();
Variants§
Trait Implementations§
source§impl<T: SurfaceTypeTrait> AsRawSurface for Surface<T>
impl<T: SurfaceTypeTrait> AsRawSurface for Surface<T>
source§fn raw_surface(&self) -> RawSurface
fn raw_surface(&self) -> RawSurface
Get the raw handle to the surface.
source§impl<T: SurfaceTypeTrait> GetGlDisplay for Surface<T>
impl<T: SurfaceTypeTrait> GetGlDisplay for Surface<T>
source§impl<T: SurfaceTypeTrait> GlSurface<T> for Surface<T>
impl<T: SurfaceTypeTrait> GlSurface<T> for Surface<T>
§type Context = PossiblyCurrentContext
type Context = PossiblyCurrentContext
The context to access surface data.
§type SurfaceType = T
type SurfaceType = T
The type of the surface.
source§fn buffer_age(&self) -> u32
fn buffer_age(&self) -> u32
The age of the back buffer of that surface. The
0
indicates that the
buffer is either a new one or we failed to get the information about
its age. In both cases you must redraw the entire buffer. Read moresource§fn is_single_buffered(&self) -> bool
fn is_single_buffered(&self) -> bool
Check whether the surface is single buffered. Read more
source§fn swap_buffers(&self, context: &Self::Context) -> Result<()>
fn swap_buffers(&self, context: &Self::Context) -> Result<()>
Swaps the underlying back buffers when the surface is not single
buffered.
source§fn set_swap_interval(
&self,
context: &Self::Context,
interval: SwapInterval
) -> Result<()>
fn set_swap_interval( &self, context: &Self::Context, interval: SwapInterval ) -> Result<()>
Set swap interval for the surface. Read more
source§fn is_current(&self, context: &Self::Context) -> bool
fn is_current(&self, context: &Self::Context) -> bool
Check whether the surface is current on to the current thread.
source§fn is_current_draw(&self, context: &Self::Context) -> bool
fn is_current_draw(&self, context: &Self::Context) -> bool
Check whether the surface is the current draw surface to the current
thread.
source§fn is_current_read(&self, context: &Self::Context) -> bool
fn is_current_read(&self, context: &Self::Context) -> bool
Check whether the surface is the current read surface to the current
thread.
source§fn resize(&self, context: &Self::Context, width: NonZeroU32, height: NonZeroU32)where
Self::SurfaceType: ResizeableSurface,
fn resize(&self, context: &Self::Context, width: NonZeroU32, height: NonZeroU32)where
Self::SurfaceType: ResizeableSurface,
Resize the surface to a new size. Read more
Auto Trait Implementations§
impl<T> !RefUnwindSafe for Surface<T>
impl<T> !Send for Surface<T>
impl<T> !Sync for Surface<T>
impl<T> Unpin for Surface<T>where
T: Unpin,
impl<T> !UnwindSafe for Surface<T>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more