null_platform.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //========================================================================
  2. // GLFW 3.4 - www.glfw.org
  3. //------------------------------------------------------------------------
  4. // Copyright (c) 2016 Google Inc.
  5. // Copyright (c) 2016-2017 Camilla Löwy <[email protected]>
  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. #include <dlfcn.h>
  28. #define _GLFW_PLATFORM_WINDOW_STATE _GLFWwindowNull null
  29. #define _GLFW_PLATFORM_CONTEXT_STATE struct { int dummyContext; }
  30. #define _GLFW_PLATFORM_MONITOR_STATE struct { int dummyMonitor; }
  31. #define _GLFW_PLATFORM_CURSOR_STATE struct { int dummyCursor; }
  32. #define _GLFW_PLATFORM_LIBRARY_WINDOW_STATE struct { int dummyLibraryWindow; }
  33. #define _GLFW_PLATFORM_LIBRARY_CONTEXT_STATE struct { int dummyLibraryContext; }
  34. #define _GLFW_EGL_CONTEXT_STATE struct { int dummyEGLContext; }
  35. #define _GLFW_EGL_LIBRARY_CONTEXT_STATE struct { int dummyEGLLibraryContext; }
  36. #include "osmesa_context.h"
  37. #include "posix_time.h"
  38. #include "posix_thread.h"
  39. #include "null_joystick.h"
  40. #if defined(_GLFW_WIN32)
  41. #define _glfw_dlopen(name) LoadLibraryA(name)
  42. #define _glfw_dlclose(handle) FreeLibrary((HMODULE) handle)
  43. #define _glfw_dlsym(handle, name) GetProcAddress((HMODULE) handle, name)
  44. #else
  45. #define _glfw_dlopen(name) dlopen(name, RTLD_LAZY | RTLD_LOCAL)
  46. #define _glfw_dlclose(handle) dlclose(handle)
  47. #define _glfw_dlsym(handle, name) dlsym(handle, name)
  48. #endif
  49. // Null-specific per-window data
  50. //
  51. typedef struct _GLFWwindowNull
  52. {
  53. int width;
  54. int height;
  55. } _GLFWwindowNull;