twitchapon-anim

Basic Twitchapon Receiver/Visuals
git clone git://bsandro.tech/twitchapon-anim
Log | Files | Refs | README | LICENSE

nsgl_context.h (2429B)


      1 //========================================================================
      2 // GLFW 3.3 macOS - www.glfw.org
      3 //------------------------------------------------------------------------
      4 // Copyright (c) 2009-2019 Camilla Löwy <elmindreda@glfw.org>
      5 //
      6 // This software is provided 'as-is', without any express or implied
      7 // warranty. In no event will the authors be held liable for any damages
      8 // arising from the use of this software.
      9 //
     10 // Permission is granted to anyone to use this software for any purpose,
     11 // including commercial applications, and to alter it and redistribute it
     12 // freely, subject to the following restrictions:
     13 //
     14 // 1. The origin of this software must not be misrepresented; you must not
     15 //    claim that you wrote the original software. If you use this software
     16 //    in a product, an acknowledgment in the product documentation would
     17 //    be appreciated but is not required.
     18 //
     19 // 2. Altered source versions must be plainly marked as such, and must not
     20 //    be misrepresented as being the original software.
     21 //
     22 // 3. This notice may not be removed or altered from any source
     23 //    distribution.
     24 //
     25 //========================================================================
     26 
     27 // NOTE: Many Cocoa enum values have been renamed and we need to build across
     28 //       SDK versions where one is unavailable or the other deprecated
     29 //       We use the newer names in code and these macros to handle compatibility
     30 #if MAC_OS_X_VERSION_MAX_ALLOWED < 101400
     31  #define NSOpenGLContextParameterSwapInterval NSOpenGLCPSwapInterval
     32  #define NSOpenGLContextParameterSurfaceOpacity NSOpenGLCPSurfaceOpacity
     33 #endif
     34 
     35 #define _GLFW_PLATFORM_CONTEXT_STATE            _GLFWcontextNSGL nsgl
     36 #define _GLFW_PLATFORM_LIBRARY_CONTEXT_STATE    _GLFWlibraryNSGL nsgl
     37 
     38 #include <stdatomic.h>
     39 
     40 
     41 // NSGL-specific per-context data
     42 //
     43 typedef struct _GLFWcontextNSGL
     44 {
     45     id                pixelFormat;
     46     id                object;
     47 
     48 } _GLFWcontextNSGL;
     49 
     50 // NSGL-specific global data
     51 //
     52 typedef struct _GLFWlibraryNSGL
     53 {
     54     // dlopen handle for OpenGL.framework (for glfwGetProcAddress)
     55     CFBundleRef     framework;
     56 
     57 } _GLFWlibraryNSGL;
     58 
     59 
     60 GLFWbool _glfwInitNSGL(void);
     61 void _glfwTerminateNSGL(void);
     62 GLFWbool _glfwCreateContextNSGL(_GLFWwindow* window,
     63                                 const _GLFWctxconfig* ctxconfig,
     64                                 const _GLFWfbconfig* fbconfig);
     65 void _glfwDestroyContextNSGL(_GLFWwindow* window);
     66