JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::OpenGLContext::NativeContext Class Reference

#include <juce_OpenGL_win32.h>

Inheritance diagram for juce::OpenGLContext::NativeContext:
Collaboration diagram for juce::OpenGLContext::NativeContext:

Classes

struct  DummyComponent
 
struct  Locker
 
struct  MouseForwardingNSOpenGLViewClass
 

Public Member Functions

 NativeContext (Component &c, const OpenGLPixelFormat &pixFormat, void *contextToShare, bool multisampling, OpenGLVersion version)
 
 NativeContext (Component &comp, const OpenGLPixelFormat &cPixelFormat, void *shareContext, bool useMultisamplingIn, OpenGLVersion)
 
 NativeContext (Component &comp, const OpenGLPixelFormat &pixelFormat, void *, bool useMultisamplingIn, OpenGLVersion)
 
 NativeContext (Component &component, const OpenGLPixelFormat &pixelFormat, void *contextToShareWithIn, bool, OpenGLVersion version)
 
 NativeContext (Component &component, const OpenGLPixelFormat &pixFormat, void *contextToShare, bool shouldUseMultisampling, OpenGLVersion version)
 
 ~NativeContext ()
 
 ~NativeContext ()
 
 ~NativeContext ()
 
 ~NativeContext () override
 
 ~NativeContext () override
 
bool createdOk () const noexcept
 
bool createdOk () const noexcept
 
bool createdOk () const noexcept
 
bool createdOk () const noexcept
 
bool createdOk () const noexcept
 
GLuint getFrameBufferID () const noexcept
 
GLuint getFrameBufferID () const noexcept
 
unsigned int getFrameBufferID () const noexcept
 
GLuint getFrameBufferID () const noexcept
 
GLuint getFrameBufferID () const noexcept
 
HWND getNativeHandle ()
 
void * getRawContext () const noexcept
 
void * getRawContext () const noexcept
 
void * getRawContext () const noexcept
 
void * getRawContext () const noexcept
 
void * getRawContext () const noexcept
 
int getSwapInterval () const
 
int getSwapInterval () const
 
int getSwapInterval () const
 
int getSwapInterval () const
 
int getSwapInterval () const noexcept
 
bool initialiseOnRenderThread (OpenGLContext &)
 
bool initialiseOnRenderThread (OpenGLContext &)
 
bool initialiseOnRenderThread (OpenGLContext &aContext)
 
bool initialiseOnRenderThread (OpenGLContext &c)
 
bool initialiseOnRenderThread (OpenGLContext &c)
 
bool isActive () const noexcept
 
bool isActive () const noexcept
 
bool isActive () const noexcept
 
bool isActive () const noexcept
 
bool isActive () const noexcept
 
bool makeActive () const noexcept
 
bool makeActive () const noexcept
 
bool makeActive () const noexcept
 
bool makeActive () const noexcept
 
bool makeActive () const noexcept
 
void setNominalVideoRefreshPeriodS (double periodS)
 
bool setSwapInterval (const int)
 
bool setSwapInterval (int numFramesPerSwap)
 
bool setSwapInterval (int numFramesPerSwap)
 
bool setSwapInterval (int numFramesPerSwap) noexcept
 
bool setSwapInterval (int numFramesPerSwapIn)
 
void shutdownOnRenderThread ()
 
void shutdownOnRenderThread ()
 
void shutdownOnRenderThread ()
 
void shutdownOnRenderThread ()
 
void shutdownOnRenderThread ()
 
void surfaceChanged (LocalRef< jobject > holder, int format, int width, int height) override
 
void surfaceCreated (LocalRef< jobject > holder) override
 
void surfaceDestroyed (LocalRef< jobject > holder) override
 
void swapBuffers ()
 
void swapBuffers ()
 
void swapBuffers ()
 
void swapBuffers () const noexcept
 
void swapBuffers () const noexcept
 
void triggerRepaint ()
 
void triggerRepaint ()
 
void updateMinSwapTime ()
 
void updateWindowPosition (Rectangle< int > bounds)
 
void updateWindowPosition (Rectangle< int > bounds)
 
void updateWindowPosition (Rectangle< int > bounds)
 
void updateWindowPosition (Rectangle< int > newBounds)
 
void updateWindowPosition (Rectangle< int >)
 

Static Public Member Functions

static void createAttribs (NSOpenGLPixelFormatAttribute *attribs, OpenGLVersion version, const OpenGLPixelFormat &pixFormat, bool shouldUseMultisampling)
 
static void deactivateCurrentContext ()
 
static void deactivateCurrentContext ()
 
static void deactivateCurrentContext ()
 
static void deactivateCurrentContext ()
 
static void deactivateCurrentContext ()
 
static NSOpenGLContextParameter getSwapIntervalParameter ()
 

Public Attributes

Componentcomponent
 
double lastSwapTime = 0
 
std::atomic< intminSwapTimeMs { 0 }
 
int numFramesPerSwap = 0
 
NSOpenGLContext * renderContext = nil
 
int underrunCounter = 0
 
double videoRefreshPeriodS = 1.0 / 60.0
 
NSOpenGLView * view = nil
 
ReferenceCountedObjectPtr< ReferenceCountedObjectviewAttachment
 

Private Member Functions

void attachedToWindow ()
 
void clear ()
 
bool createContext (EAGLRenderingAPI type, void *contextToShare)
 
void createGLBuffers ()
 
void createNativeWindow (Component &component)
 
void deleteRenderContext ()
 
void detachedFromWindow ()
 
void dispatchDraw (jobject)
 
void freeGLBuffers ()
 
bool initEGLDisplay (const OpenGLPixelFormat &pixelFormat, bool multisample)
 
jobject invoke (jobject proxy, jobject method, jobjectArray args) override
 
void nativeScaleFactorChanged (double newScaleFactor) override
 
void releaseContext ()
 
void releaseDC ()
 
bool tryChooseConfig (const std::vector< EGLint > &optionalAttribs)
 
bool tryChooseVisual (const OpenGLPixelFormat &format, const std::vector< GLint > &optionalAttribs)
 
int wglChoosePixelFormatExtension (const OpenGLPixelFormat &pixelFormat) const
 

Static Private Member Functions

static HGLRC createRenderContext (OpenGLVersion version, HDC dcIn)
 
static void deleteFrameBuffer (GLuint &i)
 
static void deleteRenderBuffer (GLuint &i)
 
static void initialisePixelFormatDescriptor (PIXELFORMATDESCRIPTOR &pfd, const OpenGLPixelFormat &pixelFormat)
 
static void initialiseWGLExtensions (HDC dcIn)
 

Private Attributes

XVisualInfo * bestVisual = nullptr
 
Rectangle< intbounds
 
GLuint colorBufferHandle = 0
 
EAGLContext * context = nil
 
OpenGLContextcontext = nullptr
 
EGLContext context = nullptr
 
void * contextToShareWith
 
HDC dc
 
GLuint depthBufferHandle = 0
 
::Display * display = nullptr
 
DummyComponent dummy
 
std::unique_ptr< DummyComponentdummyComponent
 
Window embeddedWindow = {}
 
GLuint frameBufferHandle = 0
 
CAEAGLLayer * glLayer = nil
 
bool hasInitialised = false
 
GlobalRef invocationHandler
 
GlobalRef javaSubClass
 
OpenGLContextjuceContext = nullptr
 
Rectangle< intlastBounds
 
GLuint msaaBufferHandle = 0
 
GLuint msaaColorHandle = 0
 
double nativeScaleFactor = 1.0
 
std::unique_ptr< ComponentPeernativeWindow
 
bool needToRebuildBuffers = false
 
const OpenGLVersion openGLversion
 
GLXContext renderContext = {}
 
HGLRC renderContext
 
Component::SafePointer< ComponentsafeComponent
 
EGLSurface surface
 
GlobalRef surfaceHolderCallback
 
GlobalRef surfaceView
 
int swapFrames = 0
 
std::unique_ptr< ScopedThreadDPIAwarenessSetterthreadAwarenessSetter
 
const bool useDepthBuffer
 
const bool useMSAA
 
JuceGLViewview = nil
 

Static Private Attributes

static EGLConfig config
 
static EGLDisplay display
 
static constexpr int embeddedWindowEventMask = ExposureMask | StructureNotifyMask
 

Friends

struct AndroidGLCallbacks
 

Constructor & Destructor Documentation

◆ NativeContext() [1/5]

◆ ~NativeContext() [1/5]

juce::OpenGLContext::NativeContext::~NativeContext ( )
inlineoverride

◆ NativeContext() [2/5]

juce::OpenGLContext::NativeContext::NativeContext ( Component c,
const OpenGLPixelFormat pixFormat,
void *  contextToShare,
bool  multisampling,
OpenGLVersion  version 
)
inline

◆ ~NativeContext() [2/5]

juce::OpenGLContext::NativeContext::~NativeContext ( )
inline

References view.

◆ NativeContext() [3/5]

◆ ~NativeContext() [3/5]

◆ NativeContext() [4/5]

juce::OpenGLContext::NativeContext::NativeContext ( Component component,
const OpenGLPixelFormat pixFormat,
void *  contextToShare,
bool  shouldUseMultisampling,
OpenGLVersion  version 
)
inline

◆ ~NativeContext() [4/5]

juce::OpenGLContext::NativeContext::~NativeContext ( )
inline

◆ NativeContext() [5/5]

◆ ~NativeContext() [5/5]

juce::OpenGLContext::NativeContext::~NativeContext ( )
inlineoverride

Member Function Documentation

◆ attachedToWindow()

void juce::OpenGLContext::NativeContext::attachedToWindow ( )
inlineprivate

◆ clear()

void juce::AndroidInterfaceImplementer::clear ( )
protectedinherited

◆ createAttribs()

◆ createContext()

bool juce::OpenGLContext::NativeContext::createContext ( EAGLRenderingAPI  type,
void *  contextToShare 
)
inlineprivate

References jassert.

◆ createdOk() [1/5]

bool juce::OpenGLContext::NativeContext::createdOk ( ) const
inlinenoexcept

◆ createdOk() [2/5]

bool juce::OpenGLContext::NativeContext::createdOk ( ) const
inlinenoexcept

◆ createdOk() [3/5]

bool juce::OpenGLContext::NativeContext::createdOk ( ) const
inlinenoexcept

References getRawContext().

◆ createdOk() [4/5]

bool juce::OpenGLContext::NativeContext::createdOk ( ) const
inlinenoexcept

◆ createdOk() [5/5]

bool juce::OpenGLContext::NativeContext::createdOk ( ) const
inlinenoexcept

References hasInitialised.

◆ createGLBuffers()

◆ createNativeWindow()

◆ createRenderContext()

static HGLRC juce::OpenGLContext::NativeContext::createRenderContext ( OpenGLVersion  version,
HDC  dcIn 
)
inlinestaticprivate

◆ deactivateCurrentContext() [1/5]

static void juce::OpenGLContext::NativeContext::deactivateCurrentContext ( )
inlinestatic

◆ deactivateCurrentContext() [2/5]

static void juce::OpenGLContext::NativeContext::deactivateCurrentContext ( )
inlinestatic

◆ deactivateCurrentContext() [3/5]

static void juce::OpenGLContext::NativeContext::deactivateCurrentContext ( )
inlinestatic

◆ deactivateCurrentContext() [4/5]

static void juce::OpenGLContext::NativeContext::deactivateCurrentContext ( )
inlinestatic

References display.

◆ deactivateCurrentContext() [5/5]

static void juce::OpenGLContext::NativeContext::deactivateCurrentContext ( )
inlinestatic

References display.

Referenced by NativeContext(), and shutdownOnRenderThread().

◆ deleteFrameBuffer()

static void juce::OpenGLContext::NativeContext::deleteFrameBuffer ( GLuint i)
inlinestaticprivate

◆ deleteRenderBuffer()

static void juce::OpenGLContext::NativeContext::deleteRenderBuffer ( GLuint i)
inlinestaticprivate

◆ deleteRenderContext()

void juce::OpenGLContext::NativeContext::deleteRenderContext ( )
inlineprivate

References renderContext.

Referenced by NativeContext(), and ~NativeContext().

◆ detachedFromWindow()

void juce::OpenGLContext::NativeContext::detachedFromWindow ( )
inlineprivate

◆ dispatchDraw()

void juce::OpenGLContext::NativeContext::dispatchDraw ( jobject  )
inlineprivate

◆ freeGLBuffers()

void juce::OpenGLContext::NativeContext::freeGLBuffers ( )
inlineprivate

◆ getFrameBufferID() [1/5]

GLuint juce::OpenGLContext::NativeContext::getFrameBufferID ( ) const
inlinenoexcept

◆ getFrameBufferID() [2/5]

GLuint juce::OpenGLContext::NativeContext::getFrameBufferID ( ) const
inlinenoexcept

◆ getFrameBufferID() [3/5]

unsigned int juce::OpenGLContext::NativeContext::getFrameBufferID ( ) const
inlinenoexcept

◆ getFrameBufferID() [4/5]

GLuint juce::OpenGLContext::NativeContext::getFrameBufferID ( ) const
inlinenoexcept

◆ getFrameBufferID() [5/5]

GLuint juce::OpenGLContext::NativeContext::getFrameBufferID ( ) const
inlinenoexcept

◆ getNativeHandle()

HWND juce::OpenGLContext::NativeContext::getNativeHandle ( )
inline

References nativeWindow.

◆ getRawContext() [1/5]

void* juce::OpenGLContext::NativeContext::getRawContext ( ) const
inlinenoexcept

◆ getRawContext() [2/5]

void* juce::OpenGLContext::NativeContext::getRawContext ( ) const
inlinenoexcept

◆ getRawContext() [3/5]

void* juce::OpenGLContext::NativeContext::getRawContext ( ) const
inlinenoexcept

References renderContext.

◆ getRawContext() [4/5]

void* juce::OpenGLContext::NativeContext::getRawContext ( ) const
inlinenoexcept

References renderContext.

◆ getRawContext() [5/5]

void* juce::OpenGLContext::NativeContext::getRawContext ( ) const
inlinenoexcept

References juce::GlobalRef::get(), and surfaceView.

Referenced by createdOk().

◆ getSwapInterval() [1/5]

int juce::OpenGLContext::NativeContext::getSwapInterval ( ) const
inline

References isActive(), and jassert.

◆ getSwapInterval() [2/5]

int juce::OpenGLContext::NativeContext::getSwapInterval ( ) const
inline

◆ getSwapInterval() [3/5]

int juce::OpenGLContext::NativeContext::getSwapInterval ( ) const
inline

◆ getSwapInterval() [4/5]

int juce::OpenGLContext::NativeContext::getSwapInterval ( ) const
inline

References swapFrames.

◆ getSwapInterval() [5/5]

int juce::OpenGLContext::NativeContext::getSwapInterval ( ) const
inlinenoexcept

◆ getSwapIntervalParameter()

static NSOpenGLContextParameter juce::OpenGLContext::NativeContext::getSwapIntervalParameter ( )
inlinestatic

◆ initEGLDisplay()

bool juce::OpenGLContext::NativeContext::initEGLDisplay ( const OpenGLPixelFormat pixelFormat,
bool  multisample 
)
inlineprivate

◆ initialiseOnRenderThread() [1/5]

bool juce::OpenGLContext::NativeContext::initialiseOnRenderThread ( OpenGLContext )
inline

◆ initialiseOnRenderThread() [2/5]

bool juce::OpenGLContext::NativeContext::initialiseOnRenderThread ( OpenGLContext )
inline

◆ initialiseOnRenderThread() [3/5]

◆ initialiseOnRenderThread() [4/5]

bool juce::OpenGLContext::NativeContext::initialiseOnRenderThread ( OpenGLContext c)
inline

◆ initialiseOnRenderThread() [5/5]

bool juce::OpenGLContext::NativeContext::initialiseOnRenderThread ( OpenGLContext c)
inline

◆ initialisePixelFormatDescriptor()

◆ initialiseWGLExtensions()

static void juce::OpenGLContext::NativeContext::initialiseWGLExtensions ( HDC  dcIn)
inlinestaticprivate

References JUCE_INIT_WGL_FUNCTION.

Referenced by NativeContext().

◆ invoke()

◆ isActive() [1/5]

bool juce::OpenGLContext::NativeContext::isActive ( ) const
inlinenoexcept

References renderContext.

◆ isActive() [2/5]

bool juce::OpenGLContext::NativeContext::isActive ( ) const
inlinenoexcept

◆ isActive() [3/5]

bool juce::OpenGLContext::NativeContext::isActive ( ) const
inlinenoexcept

◆ isActive() [4/5]

bool juce::OpenGLContext::NativeContext::isActive ( ) const
inlinenoexcept

References renderContext.

◆ isActive() [5/5]

bool juce::OpenGLContext::NativeContext::isActive ( ) const
inlinenoexcept

References context.

Referenced by getSwapInterval(), makeActive(), and setSwapInterval().

◆ makeActive() [1/5]

bool juce::OpenGLContext::NativeContext::makeActive ( ) const
inlinenoexcept

References dc, isActive(), and renderContext.

◆ makeActive() [2/5]

bool juce::OpenGLContext::NativeContext::makeActive ( ) const
inlinenoexcept

References jassert.

◆ makeActive() [3/5]

bool juce::OpenGLContext::NativeContext::makeActive ( ) const
inlinenoexcept

◆ makeActive() [4/5]

bool juce::OpenGLContext::NativeContext::makeActive ( ) const
inlinenoexcept

◆ makeActive() [5/5]

bool juce::OpenGLContext::NativeContext::makeActive ( ) const
inlinenoexcept

References context, display, hasInitialised, and surface.

Referenced by NativeContext().

◆ nativeScaleFactorChanged()

void juce::OpenGLContext::NativeContext::nativeScaleFactorChanged ( double  newScaleFactor)
inlineoverrideprivate

◆ releaseContext()

void juce::OpenGLContext::NativeContext::releaseContext ( )
inlineprivate

◆ releaseDC()

void juce::OpenGLContext::NativeContext::releaseDC ( )
inlineprivate

References dc, and nativeWindow.

Referenced by NativeContext(), and ~NativeContext().

◆ setNominalVideoRefreshPeriodS()

void juce::OpenGLContext::NativeContext::setNominalVideoRefreshPeriodS ( double  periodS)
inline

References jassert.

◆ setSwapInterval() [1/5]

bool juce::OpenGLContext::NativeContext::setSwapInterval ( const int  )
inline

◆ setSwapInterval() [2/5]

bool juce::OpenGLContext::NativeContext::setSwapInterval ( int  numFramesPerSwap)
inline

References isActive(), jassert, and numFramesPerSwap.

◆ setSwapInterval() [3/5]

bool juce::OpenGLContext::NativeContext::setSwapInterval ( int  numFramesPerSwap)
inline

◆ setSwapInterval() [4/5]

bool juce::OpenGLContext::NativeContext::setSwapInterval ( int  numFramesPerSwap)
inlinenoexcept

◆ setSwapInterval() [5/5]

bool juce::OpenGLContext::NativeContext::setSwapInterval ( int  numFramesPerSwapIn)
inline

◆ shutdownOnRenderThread() [1/5]

void juce::OpenGLContext::NativeContext::shutdownOnRenderThread ( )
inline

◆ shutdownOnRenderThread() [2/5]

void juce::OpenGLContext::NativeContext::shutdownOnRenderThread ( )
inline

◆ shutdownOnRenderThread() [3/5]

void juce::OpenGLContext::NativeContext::shutdownOnRenderThread ( )
inline

◆ shutdownOnRenderThread() [4/5]

void juce::OpenGLContext::NativeContext::shutdownOnRenderThread ( )
inline

◆ shutdownOnRenderThread() [5/5]

void juce::OpenGLContext::NativeContext::shutdownOnRenderThread ( )
inline

◆ surfaceChanged()

void juce::OpenGLContext::NativeContext::surfaceChanged ( LocalRef< jobject >  holder,
int  format,
int  width,
int  height 
)
inlineoverridevirtual

◆ surfaceCreated()

void juce::OpenGLContext::NativeContext::surfaceCreated ( LocalRef< jobject >  holder)
overridevirtual

◆ surfaceDestroyed()

void juce::OpenGLContext::NativeContext::surfaceDestroyed ( LocalRef< jobject >  holder)
overridevirtual

◆ swapBuffers() [1/5]

◆ swapBuffers() [2/5]

void juce::OpenGLContext::NativeContext::swapBuffers ( )
inline

◆ swapBuffers() [3/5]

void juce::OpenGLContext::NativeContext::swapBuffers ( )
inline

References display, and embeddedWindow.

◆ swapBuffers() [4/5]

void juce::OpenGLContext::NativeContext::swapBuffers ( ) const
inlinenoexcept

References dc.

◆ swapBuffers() [5/5]

void juce::OpenGLContext::NativeContext::swapBuffers ( ) const
inlinenoexcept

References display, and surface.

◆ triggerRepaint() [1/2]

void juce::OpenGLContext::NativeContext::triggerRepaint ( )
inline

References context.

◆ triggerRepaint() [2/2]

void juce::OpenGLContext::NativeContext::triggerRepaint ( )
inline

◆ tryChooseConfig()

bool juce::OpenGLContext::NativeContext::tryChooseConfig ( const std::vector< EGLint > &  optionalAttribs)
inlineprivate

References config, and display.

Referenced by initEGLDisplay().

◆ tryChooseVisual()

bool juce::OpenGLContext::NativeContext::tryChooseVisual ( const OpenGLPixelFormat format,
const std::vector< GLint > &  optionalAttribs 
)
inlineprivate

References bestVisual, display, and juce::gl::format.

Referenced by NativeContext().

◆ updateMinSwapTime()

void juce::OpenGLContext::NativeContext::updateMinSwapTime ( )
inline

◆ updateWindowPosition() [1/5]

◆ updateWindowPosition() [2/5]

void juce::OpenGLContext::NativeContext::updateWindowPosition ( Rectangle< int bounds)
inline

◆ updateWindowPosition() [3/5]

◆ updateWindowPosition() [4/5]

void juce::OpenGLContext::NativeContext::updateWindowPosition ( Rectangle< int newBounds)
inline

◆ updateWindowPosition() [5/5]

void juce::OpenGLContext::NativeContext::updateWindowPosition ( Rectangle< int )
inline

◆ wglChoosePixelFormatExtension()

Friends And Related Function Documentation

◆ AndroidGLCallbacks

friend struct AndroidGLCallbacks
friend

Member Data Documentation

◆ bestVisual

XVisualInfo* juce::OpenGLContext::NativeContext::bestVisual = nullptr
private

◆ bounds

Rectangle<int> juce::OpenGLContext::NativeContext::bounds
private

◆ colorBufferHandle

GLuint juce::OpenGLContext::NativeContext::colorBufferHandle = 0
private

◆ component

Component & juce::OpenGLContext::NativeContext::component

◆ config

EGLConfig juce::OpenGLContext::NativeContext::config
staticprivate

◆ context [1/3]

EAGLContext* juce::OpenGLContext::NativeContext::context = nil
private

◆ context [2/3]

OpenGLContext* juce::OpenGLContext::NativeContext::context = nullptr
private

◆ context [3/3]

OpenGLContext * juce::OpenGLContext::NativeContext::context = nullptr
private

◆ contextToShareWith

void* juce::OpenGLContext::NativeContext::contextToShareWith
private

◆ dc

HDC juce::OpenGLContext::NativeContext::dc
private

◆ depthBufferHandle

GLuint juce::OpenGLContext::NativeContext::depthBufferHandle = 0
private

◆ display [1/2]

::Display* juce::OpenGLContext::NativeContext::display = nullptr
private

◆ display [2/2]

◆ dummy

DummyComponent juce::OpenGLContext::NativeContext::dummy
private

Referenced by NativeContext(), and ~NativeContext().

◆ dummyComponent

std::unique_ptr<DummyComponent> juce::OpenGLContext::NativeContext::dummyComponent
private

◆ embeddedWindow

Window juce::OpenGLContext::NativeContext::embeddedWindow = {}
private

◆ embeddedWindowEventMask

constexpr int juce::OpenGLContext::NativeContext::embeddedWindowEventMask = ExposureMask | StructureNotifyMask
staticconstexprprivate

Referenced by NativeContext(), and ~NativeContext().

◆ frameBufferHandle

GLuint juce::OpenGLContext::NativeContext::frameBufferHandle = 0
private

◆ glLayer

CAEAGLLayer* juce::OpenGLContext::NativeContext::glLayer = nil
private

◆ hasInitialised

bool juce::OpenGLContext::NativeContext::hasInitialised = false
private

◆ invocationHandler

GlobalRef juce::AndroidInterfaceImplementer::invocationHandler
privateinherited

◆ javaSubClass

GlobalRef juce::AndroidInterfaceImplementer::javaSubClass
privateinherited

◆ juceContext

OpenGLContext* juce::OpenGLContext::NativeContext::juceContext = nullptr
private

◆ lastBounds

Rectangle< int > juce::OpenGLContext::NativeContext::lastBounds
private

Referenced by updateWindowPosition().

◆ lastSwapTime

double juce::OpenGLContext::NativeContext::lastSwapTime = 0

◆ minSwapTimeMs

std::atomic<int> juce::OpenGLContext::NativeContext::minSwapTimeMs { 0 }

◆ msaaBufferHandle

GLuint juce::OpenGLContext::NativeContext::msaaBufferHandle = 0
private

◆ msaaColorHandle

GLuint juce::OpenGLContext::NativeContext::msaaColorHandle = 0
private

◆ nativeScaleFactor

double juce::OpenGLContext::NativeContext::nativeScaleFactor = 1.0
private

◆ nativeWindow

std::unique_ptr<ComponentPeer> juce::OpenGLContext::NativeContext::nativeWindow
private

◆ needToRebuildBuffers

bool juce::OpenGLContext::NativeContext::needToRebuildBuffers = false
private

◆ numFramesPerSwap

int juce::OpenGLContext::NativeContext::numFramesPerSwap = 0

Referenced by setSwapInterval().

◆ openGLversion

const OpenGLVersion juce::OpenGLContext::NativeContext::openGLversion
private

◆ renderContext [1/3]

NSOpenGLContext* juce::OpenGLContext::NativeContext::renderContext = nil

◆ renderContext [2/3]

GLXContext juce::OpenGLContext::NativeContext::renderContext = {}
private

◆ renderContext [3/3]

HGLRC juce::OpenGLContext::NativeContext::renderContext
private

◆ safeComponent

Component::SafePointer<Component> juce::OpenGLContext::NativeContext::safeComponent
private

◆ surface

EGLSurface juce::OpenGLContext::NativeContext::surface
private

◆ surfaceHolderCallback

GlobalRef juce::OpenGLContext::NativeContext::surfaceHolderCallback
private

◆ surfaceView

◆ swapFrames

int juce::OpenGLContext::NativeContext::swapFrames = 0
private

Referenced by getSwapInterval(), and setSwapInterval().

◆ threadAwarenessSetter

std::unique_ptr<ScopedThreadDPIAwarenessSetter> juce::OpenGLContext::NativeContext::threadAwarenessSetter
private

◆ underrunCounter

int juce::OpenGLContext::NativeContext::underrunCounter = 0

◆ useDepthBuffer

const bool juce::OpenGLContext::NativeContext::useDepthBuffer
private

◆ useMSAA

const bool juce::OpenGLContext::NativeContext::useMSAA
private

◆ videoRefreshPeriodS

double juce::OpenGLContext::NativeContext::videoRefreshPeriodS = 1.0 / 60.0

◆ view [1/2]

JuceGLView* juce::OpenGLContext::NativeContext::view = nil
private

Referenced by ~NativeContext().

◆ view [2/2]

NSOpenGLView* juce::OpenGLContext::NativeContext::view = nil

◆ viewAttachment

ReferenceCountedObjectPtr<ReferenceCountedObject> juce::OpenGLContext::NativeContext::viewAttachment

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