[][src]Trait gstreamer_gl::GLDisplayExt

pub trait GLDisplayExt: 'static {
    fn add_context<P: IsA<GLContext>>(
        &self,
        context: &P
    ) -> Result<(), BoolError>;
fn create_context<P: IsA<GLContext>>(
        &self,
        other_context: &P
    ) -> Result<GLContext, Error>;
fn create_window(&self) -> Result<GLWindow, BoolError>;
fn filter_gl_api(&self, gl_api: GLAPI);
fn get_gl_api(&self) -> GLAPI;
fn get_gl_api_unlocked(&self) -> GLAPI;
fn get_handle_type(&self) -> GLDisplayType;
fn remove_window<P: IsA<GLWindow>>(
        &self,
        window: &P
    ) -> Result<(), BoolError>;
fn connect_create_context<F: Fn(&Self, &GLContext) -> GLContext + Send + Sync + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }

Trait containing all GLDisplay methods.

Implementors

GLDisplayEGL, GLDisplayWayland, GLDisplayX11, GLDisplay

Required methods

fn add_context<P: IsA<GLContext>>(&self, context: &P) -> Result<(), BoolError>

context

a GLContext

Returns

whether context was successfully added. false may be returned if there already exists another context for context's active thread.

Must be called with the object lock held.

fn create_context<P: IsA<GLContext>>(
    &self,
    other_context: &P
) -> Result<GLContext, Error>

It requires the display's object lock to be held.

other_context

other GLContext to share resources with.

p_context

resulting GLContext

Returns

whether a new context could be created.

fn create_window(&self) -> Result<GLWindow, BoolError>

It requires the display's object lock to be held.

Returns

a new GLWindow for self or None.

fn filter_gl_api(&self, gl_api: GLAPI)

limit the use of OpenGL to the requested gl_api. This is intended to allow application and elements to request a specific set of OpenGL API's based on what they support. See GLContextExt::get_gl_api for the retreiving the API supported by a GLContext.

gl_api

a GLAPI to filter with

fn get_gl_api(&self) -> GLAPI

see GLDisplayExt::filter_gl_api for what the returned value represents

Returns

the GLAPI configured for self

fn get_gl_api_unlocked(&self) -> GLAPI

fn get_handle_type(&self) -> GLDisplayType

Returns

the GLDisplayType of self

fn remove_window<P: IsA<GLWindow>>(&self, window: &P) -> Result<(), BoolError>

window

a GLWindow to remove

Returns

if window could be removed from self

fn connect_create_context<F: Fn(&Self, &GLContext) -> GLContext + Send + Sync + 'static>(
    &self,
    f: F
) -> SignalHandlerId

Overrides the GLContext creation mechanism. It can be called in any thread and it is emitted with display's object lock held.

context

other context to share resources with.

Returns

the new context.

Loading content...

Implementors

impl<O: IsA<GLDisplay>> GLDisplayExt for O[src]

Loading content...