AUI Framework  develop
Cross-platform base for C++ UI apps
Loading...
Searching...
No Matches
OpenGLRenderingContext Class Reference

Classes#

struct  Failed
 
struct  NotTried
 

Public Member Functions#

 OpenGLRenderingContext (const ARenderingContextOptions::OpenGL &config)
 
AImage makeScreenshot () override
 
void beginPaint (AWindowBase &window) override
 
void endPaint (AWindowBase &window) override
 
void beginResize (AWindowBase &window) override
 
void endResize (AWindowBase &window) override
 
uint32_t getDefaultFb () const noexcept
 
void bindViewport ()
 
glm::uvec2 viewportSize () const noexcept
 
uint32_t getSupersamplingRatio () const noexcept
 
AOptional< gl::Framebuffer * > framebuffer () noexcept
 
IRendererrenderer () override
 
- Public Member Functions inherited from CommonRenderingContext
void requestFrame ()
 
- Public Member Functions inherited from IRenderingContext
virtual void init (const Init &init)
 
virtual void destroyNativeWindow (AWindowBase &window)=0
 

Static Public Member Functions#

static gl::Framebuffer newOffscreenRenderingFramebuffer (glm::uvec2 initialSize)
 

Protected Member Functions#

virtual void endFramebuffer ()
 

Static Protected Member Functions#

static _< OpenGLRendererourRenderer ()
 

Protected Attributes#

_< OpenGLRenderermRenderer
 
glm::uvec2 mViewportSize
 
std::variant< NotTried, Failed, gl::FramebuffermFramebuffer
 
- Protected Attributes inherited from CommonRenderingContext
AString mWindowClass
 
HDC mWindowDC
 
HDC mPainterDC = nullptr
 
PAINTSTRUCT mPaintstruct
 
AWindowmWindow
 
void * mDisplayLink
 
bool mFrameScheduled = false
 
bool mSmoothResize = !(ARenderingContextOptions::get().flags & ARenderContextFlags::NO_SMOOTH)
 

Member Function Documentation#

◆ beginPaint()#

void OpenGLRenderingContext::beginPaint ( AWindowBase & window)
overridevirtual

Reimplemented from CommonRenderingContext.

◆ beginResize()#

void OpenGLRenderingContext::beginResize ( AWindowBase & window)
overridevirtual

Implements IRenderingContext.

◆ endPaint()#

void OpenGLRenderingContext::endPaint ( AWindowBase & window)
overridevirtual

Reimplemented from CommonRenderingContext.

◆ endResize()#

void OpenGLRenderingContext::endResize ( AWindowBase & window)
overridevirtual

Implements IRenderingContext.

◆ makeScreenshot()#

AImage OpenGLRenderingContext::makeScreenshot ( )
overridevirtual

Implements IRenderingContext.

◆ renderer()#

IRenderer & OpenGLRenderingContext::renderer ( )
inlineoverridevirtual

Implements IRenderingContext.