diff options
Diffstat (limited to 'intern/ghost/intern/GHOST_ContextCGL.h')
-rw-r--r-- | intern/ghost/intern/GHOST_ContextCGL.h | 182 |
1 files changed, 89 insertions, 93 deletions
diff --git a/intern/ghost/intern/GHOST_ContextCGL.h b/intern/ghost/intern/GHOST_ContextCGL.h index 13125e39f30..648af1cc9c7 100644 --- a/intern/ghost/intern/GHOST_ContextCGL.h +++ b/intern/ghost/intern/GHOST_ContextCGL.h @@ -27,107 +27,103 @@ #include "GHOST_Context.h" #ifndef GHOST_OPENGL_CGL_CONTEXT_FLAGS -#define GHOST_OPENGL_CGL_CONTEXT_FLAGS 0 +# define GHOST_OPENGL_CGL_CONTEXT_FLAGS 0 #endif #ifndef GHOST_OPENGL_CGL_RESET_NOTIFICATION_STRATEGY -#define GHOST_OPENGL_CGL_RESET_NOTIFICATION_STRATEGY 0 +# define GHOST_OPENGL_CGL_RESET_NOTIFICATION_STRATEGY 0 #endif - @class NSWindow; @class NSOpenGLView; @class NSOpenGLContext; - -class GHOST_ContextCGL : public GHOST_Context -{ -public: - /** - * Constructor. - */ - GHOST_ContextCGL( - bool stereoVisual, - GHOST_TUns16 numOfAASamples, - NSWindow *window, - NSOpenGLView *openGLView, - int contextProfileMask, - int contextMajorVersion, - int contextMinorVersion, - int contextFlags, - int contextResetNotificationStrategy); - - /** - * Destructor. - */ - ~GHOST_ContextCGL(); - - /** - * Swaps front and back buffers of a window. - * \return A boolean success indicator. - */ - GHOST_TSuccess swapBuffers(); - - /** - * Activates the drawing context of this window. - * \return A boolean success indicator. - */ - GHOST_TSuccess activateDrawingContext(); - - /** - * Release the drawing context of the calling thread. - * \return A boolean success indicator. - */ - GHOST_TSuccess releaseDrawingContext(); - - /** - * Call immediately after new to initialize. If this fails then immediately delete the object. - * \return Indication as to whether initialization has succeeded. - */ - GHOST_TSuccess initializeDrawingContext(); - - /** - * Removes references to native handles from this context and then returns - * \return GHOST_kSuccess if it is OK for the parent to release the handles and - * GHOST_kFailure if releasing the handles will interfere with sharing - */ - GHOST_TSuccess releaseNativeHandles(); - - /** - * Sets the swap interval for swapBuffers. - * \param interval The swap interval to use. - * \return A boolean success indicator. - */ - GHOST_TSuccess setSwapInterval(int interval); - - /** - * Gets the current swap interval for swapBuffers. - * \param intervalOut Variable to store the swap interval if it can be read. - * \return Whether the swap interval can be read. - */ - GHOST_TSuccess getSwapInterval(int&); - - /** - * Updates the drawing context of this window. - * Needed whenever the window is changed. - * \return Indication of success. - */ - GHOST_TSuccess updateDrawingContext(); - -private: - /** The openGL view */ - NSOpenGLView *m_openGLView; - - /** The OpenGL drawing context */ - NSOpenGLContext *m_openGLContext; - - bool m_coreProfile; - - const bool m_debug; - - /** The first created OpenGL context (for sharing display lists) */ - static NSOpenGLContext *s_sharedOpenGLContext; - static int s_sharedCount; +class GHOST_ContextCGL : public GHOST_Context { + public: + /** + * Constructor. + */ + GHOST_ContextCGL(bool stereoVisual, + GHOST_TUns16 numOfAASamples, + NSWindow *window, + NSOpenGLView *openGLView, + int contextProfileMask, + int contextMajorVersion, + int contextMinorVersion, + int contextFlags, + int contextResetNotificationStrategy); + + /** + * Destructor. + */ + ~GHOST_ContextCGL(); + + /** + * Swaps front and back buffers of a window. + * \return A boolean success indicator. + */ + GHOST_TSuccess swapBuffers(); + + /** + * Activates the drawing context of this window. + * \return A boolean success indicator. + */ + GHOST_TSuccess activateDrawingContext(); + + /** + * Release the drawing context of the calling thread. + * \return A boolean success indicator. + */ + GHOST_TSuccess releaseDrawingContext(); + + /** + * Call immediately after new to initialize. If this fails then immediately delete the object. + * \return Indication as to whether initialization has succeeded. + */ + GHOST_TSuccess initializeDrawingContext(); + + /** + * Removes references to native handles from this context and then returns + * \return GHOST_kSuccess if it is OK for the parent to release the handles and + * GHOST_kFailure if releasing the handles will interfere with sharing + */ + GHOST_TSuccess releaseNativeHandles(); + + /** + * Sets the swap interval for swapBuffers. + * \param interval The swap interval to use. + * \return A boolean success indicator. + */ + GHOST_TSuccess setSwapInterval(int interval); + + /** + * Gets the current swap interval for swapBuffers. + * \param intervalOut Variable to store the swap interval if it can be read. + * \return Whether the swap interval can be read. + */ + GHOST_TSuccess getSwapInterval(int &); + + /** + * Updates the drawing context of this window. + * Needed whenever the window is changed. + * \return Indication of success. + */ + GHOST_TSuccess updateDrawingContext(); + + private: + /** The openGL view */ + NSOpenGLView *m_openGLView; + + /** The OpenGL drawing context */ + NSOpenGLContext *m_openGLContext; + + bool m_coreProfile; + + const bool m_debug; + + /** The first created OpenGL context (for sharing display lists) */ + static NSOpenGLContext *s_sharedOpenGLContext; + static int s_sharedCount; }; -#endif // __GHOST_CONTEXTCGL_H__ +#endif // __GHOST_CONTEXTCGL_H__ |