null_platform.h (2465B)
1 //======================================================================== 2 // GLFW 3.4 - www.glfw.org 3 //------------------------------------------------------------------------ 4 // Copyright (c) 2016 Google Inc. 5 // Copyright (c) 2016-2017 Camilla Löwy <elmindreda@glfw.org> 6 // 7 // This software is provided 'as-is', without any express or implied 8 // warranty. In no event will the authors be held liable for any damages 9 // arising from the use of this software. 10 // 11 // Permission is granted to anyone to use this software for any purpose, 12 // including commercial applications, and to alter it and redistribute it 13 // freely, subject to the following restrictions: 14 // 15 // 1. The origin of this software must not be misrepresented; you must not 16 // claim that you wrote the original software. If you use this software 17 // in a product, an acknowledgment in the product documentation would 18 // be appreciated but is not required. 19 // 20 // 2. Altered source versions must be plainly marked as such, and must not 21 // be misrepresented as being the original software. 22 // 23 // 3. This notice may not be removed or altered from any source 24 // distribution. 25 // 26 //======================================================================== 27 28 #include <dlfcn.h> 29 30 #define _GLFW_PLATFORM_WINDOW_STATE _GLFWwindowNull null 31 32 #define _GLFW_PLATFORM_CONTEXT_STATE struct { int dummyContext; } 33 #define _GLFW_PLATFORM_MONITOR_STATE struct { int dummyMonitor; } 34 #define _GLFW_PLATFORM_CURSOR_STATE struct { int dummyCursor; } 35 #define _GLFW_PLATFORM_LIBRARY_WINDOW_STATE struct { int dummyLibraryWindow; } 36 #define _GLFW_PLATFORM_LIBRARY_CONTEXT_STATE struct { int dummyLibraryContext; } 37 #define _GLFW_EGL_CONTEXT_STATE struct { int dummyEGLContext; } 38 #define _GLFW_EGL_LIBRARY_CONTEXT_STATE struct { int dummyEGLLibraryContext; } 39 40 #include "osmesa_context.h" 41 #include "posix_time.h" 42 #include "posix_thread.h" 43 #include "null_joystick.h" 44 45 #if defined(_GLFW_WIN32) 46 #define _glfw_dlopen(name) LoadLibraryA(name) 47 #define _glfw_dlclose(handle) FreeLibrary((HMODULE) handle) 48 #define _glfw_dlsym(handle, name) GetProcAddress((HMODULE) handle, name) 49 #else 50 #define _glfw_dlopen(name) dlopen(name, RTLD_LAZY | RTLD_LOCAL) 51 #define _glfw_dlclose(handle) dlclose(handle) 52 #define _glfw_dlsym(handle, name) dlsym(handle, name) 53 #endif 54 55 // Null-specific per-window data 56 // 57 typedef struct _GLFWwindowNull 58 { 59 int width; 60 int height; 61 } _GLFWwindowNull; 62