Struct smithay::backend::egl::surface::EGLSurface [−][src]
pub struct EGLSurface { /* fields omitted */ }
Expand description
EGL surface of a given EGL context for rendering
Implementations
pub fn new<N, L>(
display: &EGLDisplay,
pixel_format: PixelFormat,
config: EGLConfig,
native: N,
log: L
) -> Result<EGLSurface, EGLError> where
N: EGLNativeSurface + Send + 'static,
L: Into<Option<Logger>>,
pub fn new<N, L>(
display: &EGLDisplay,
pixel_format: PixelFormat,
config: EGLConfig,
native: N,
log: L
) -> Result<EGLSurface, EGLError> where
N: EGLNativeSurface + Send + 'static,
L: Into<Option<Logger>>,
Create a new EGLSurface
.
Requires:
- A EGLDisplay supported by the corresponding platform matching the surface type
- A pixel format
- A valid
EGLConfig
(seeEGLContext::config_id()
) - A native type backing the surface matching the used platform
- An (optional) Logger
Swaps buffers at the end of a frame.
Returns true if the OpenGL surface is the current one in the thread.
Returns the pixel format of the main framebuffer of the context.
Tries to resize the underlying native surface.
The two first arguments (width, height) are the new size of the surface, the two others (dx, dy) represent the displacement of the top-left corner of the surface. It allows you to control the direction of the resizing if necessary.
Implementations may ignore the dx and dy arguments.
Returns true if the resize was successful.
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for EGLSurface
impl !Sync for EGLSurface
impl Unpin for EGLSurface
impl !UnwindSafe for EGLSurface
Blanket Implementations
Mutably borrows from an owned value. Read more
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
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
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
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
pub fn vzip(self) -> V