Blender V4.3
GHOST_ContextEGL Class Reference

#include <GHOST_ContextEGL.hh>

Inherits GHOST_Context.

Public Member Functions

 GHOST_ContextEGL (const GHOST_System *const system, bool stereoVisual, EGLNativeWindowType nativeWindow, EGLNativeDisplayType nativeDisplay, EGLint contextProfileMask, EGLint contextMajorVersion, EGLint contextMinorVersion, EGLint contextFlags, EGLint contextResetNotificationStrategy, EGLenum api)
 
 ~GHOST_ContextEGL () override
 
GHOST_TSuccess swapBuffers () override
 
GHOST_TSuccess activateDrawingContext () override
 
GHOST_TSuccess releaseDrawingContext () override
 
GHOST_TSuccess initializeDrawingContext () override
 
GHOST_TSuccess releaseNativeHandles () override
 
GHOST_TSuccess setSwapInterval (int interval) override
 
GHOST_TSuccess getSwapInterval (int &intervalOut) override
 
EGLDisplay getDisplay () const
 
EGLConfig getConfig () const
 
EGLContext getContext () const
 
- Public Member Functions inherited from GHOST_Context
 GHOST_Context (bool stereoVisual)
 
virtual ~GHOST_Context ()
 
virtual GHOST_TSuccess updateDrawingContext ()
 
void * getUserData ()
 
void setUserData (void *user_data)
 
bool isStereoVisual () const
 
virtual bool isUpsideDown () const
 
virtual unsigned int getDefaultFramebuffer () override
 
- Public Member Functions inherited from GHOST_IContext
virtual ~GHOST_IContext ()
 

Friends

class GHOST_XrGraphicsBindingOpenGL
 

Additional Inherited Members

- Protected Attributes inherited from GHOST_Context
bool m_stereoVisual
 
void * m_user_data = nullptr
 

Detailed Description

Definition at line 29 of file GHOST_ContextEGL.hh.

Constructor & Destructor Documentation

◆ GHOST_ContextEGL()

GHOST_ContextEGL::GHOST_ContextEGL ( const GHOST_System *const system,
bool stereoVisual,
EGLNativeWindowType nativeWindow,
EGLNativeDisplayType nativeDisplay,
EGLint contextProfileMask,
EGLint contextMajorVersion,
EGLint contextMinorVersion,
EGLint contextFlags,
EGLint contextResetNotificationStrategy,
EGLenum api )

Constructor.

Definition at line 189 of file GHOST_ContextEGL.cc.

◆ ~GHOST_ContextEGL()

GHOST_ContextEGL::~GHOST_ContextEGL ( )
override

Destructor.

Definition at line 221 of file GHOST_ContextEGL.cc.

References EGL_CHK.

Member Function Documentation

◆ activateDrawingContext()

GHOST_TSuccess GHOST_ContextEGL::activateDrawingContext ( )
overridevirtual

Activates the drawing context of this window.

Returns
A boolean success indicator.

Implements GHOST_Context.

Definition at line 291 of file GHOST_ContextEGL.cc.

References EGL_CHK, GHOST_kFailure, and GHOST_kSuccess.

◆ getConfig()

EGLConfig GHOST_ContextEGL::getConfig ( ) const

◆ getContext()

EGLContext GHOST_ContextEGL::getContext ( ) const

◆ getDisplay()

EGLDisplay GHOST_ContextEGL::getDisplay ( ) const

◆ getSwapInterval()

GHOST_TSuccess GHOST_ContextEGL::getSwapInterval ( int & intervalOut)
overridevirtual

Gets the current swap interval for swapBuffers.

Parameters
intervalOutVariable to store the swap interval if it can be read.
Returns
Whether the swap interval can be read.

Reimplemented from GHOST_Context.

Definition at line 267 of file GHOST_ContextEGL.cc.

References GHOST_kSuccess.

◆ initializeDrawingContext()

GHOST_TSuccess GHOST_ContextEGL::initializeDrawingContext ( )
overridevirtual

Call immediately after new to initialize. If this fails then immediately delete the object.

Returns
Indication as to whether initialization has succeeded.

Implements GHOST_Context.

Definition at line 331 of file GHOST_ContextEGL.cc.

References api_string(), EGL_CHK, egl_print_error(), error(), GHOST_kFailure, GHOST_kSuccess, and GHOST_Context::m_stereoVisual.

◆ releaseDrawingContext()

GHOST_TSuccess GHOST_ContextEGL::releaseDrawingContext ( )
overridevirtual

Release the drawing context of the calling thread.

Returns
A boolean success indicator.

Implements GHOST_Context.

Definition at line 301 of file GHOST_ContextEGL.cc.

References EGL_CHK, GHOST_kFailure, and GHOST_kSuccess.

◆ releaseNativeHandles()

GHOST_TSuccess GHOST_ContextEGL::releaseNativeHandles ( )
overridevirtual

Removes references to native handles from this context and then returns

Returns
GHOST_kSuccess if it is OK for the parent to release the handles and GHOST_kFailure if releasing the handles will interfere with sharing

Implements GHOST_Context.

Definition at line 640 of file GHOST_ContextEGL.cc.

References GHOST_kSuccess.

◆ setSwapInterval()

GHOST_TSuccess GHOST_ContextEGL::setSwapInterval ( int interval)
overridevirtual

Sets the swap interval for swapBuffers.

Parameters
intervalThe swap interval to use.
Returns
A boolean success indicator.

Reimplemented from GHOST_Context.

Definition at line 254 of file GHOST_ContextEGL.cc.

References EGL_CHK, GHOST_kFailure, and GHOST_kSuccess.

◆ swapBuffers()

GHOST_TSuccess GHOST_ContextEGL::swapBuffers ( )
overridevirtual

Swaps front and back buffers of a window.

Returns
A boolean success indicator.

Implements GHOST_Context.

Definition at line 249 of file GHOST_ContextEGL.cc.

References EGL_CHK, GHOST_kFailure, and GHOST_kSuccess.

Friends And Related Symbol Documentation

◆ GHOST_XrGraphicsBindingOpenGL

friend class GHOST_XrGraphicsBindingOpenGL
friend

Definition at line 31 of file GHOST_ContextEGL.hh.


The documentation for this class was generated from the following files: