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
28#define GLFW_NULL_WINDOW_STATE _GLFWwindowNull null;
29#define GLFW_NULL_LIBRARY_WINDOW_STATE _GLFWlibraryNull null;
30#define GLFW_NULL_MONITOR_STATE _GLFWmonitorNull null;
31
32#define GLFW_NULL_CONTEXT_STATE
33#define GLFW_NULL_CURSOR_STATE
34#define GLFW_NULL_LIBRARY_CONTEXT_STATE
35
36
37// Null-specific per-window data
38//
39typedef struct _GLFWwindowNull
40{
41 int xpos;
42 int ypos;
43 int width;
44 int height;
45 char* title;
46 GLFWbool visible;
47 GLFWbool iconified;
48 GLFWbool maximized;
49 GLFWbool resizable;
50 GLFWbool decorated;
51 GLFWbool floating;
52 GLFWbool transparent;
53 float opacity;
54} _GLFWwindowNull;
55
56// Null-specific per-monitor data
57//
58typedef struct _GLFWmonitorNull
59{
60 GLFWgammaramp ramp;
61} _GLFWmonitorNull;
62
63// Null-specific global data
64//
65typedef struct _GLFWlibraryNull
66{
67 int xcursor;
68 int ycursor;
69 char* clipboardString;
70 _GLFWwindow* focusedWindow;
71} _GLFWlibraryNull;
72
73void _glfwPollMonitorsNull(void);
74
75GLFWbool _glfwConnectNull(int platformID, _GLFWplatform* platform);
76int _glfwInitNull(void);
77void _glfwTerminateNull(void);
78
79void _glfwFreeMonitorNull(_GLFWmonitor* monitor);
80void _glfwGetMonitorPosNull(_GLFWmonitor* monitor, int* xpos, int* ypos);
81void _glfwGetMonitorContentScaleNull(_GLFWmonitor* monitor, float* xscale, float* yscale);
82void _glfwGetMonitorWorkareaNull(_GLFWmonitor* monitor, int* xpos, int* ypos, int* width, int* height);
83GLFWvidmode* _glfwGetVideoModesNull(_GLFWmonitor* monitor, int* found);
84void _glfwGetVideoModeNull(_GLFWmonitor* monitor, GLFWvidmode* mode);
85GLFWbool _glfwGetGammaRampNull(_GLFWmonitor* monitor, GLFWgammaramp* ramp);
86void _glfwSetGammaRampNull(_GLFWmonitor* monitor, const GLFWgammaramp* ramp);
87
88int _glfwCreateWindowNull(_GLFWwindow* window, const _GLFWwndconfig* wndconfig, const _GLFWctxconfig* ctxconfig, const _GLFWfbconfig* fbconfig);
89void _glfwDestroyWindowNull(_GLFWwindow* window);
90void _glfwSetWindowTitleNull(_GLFWwindow* window, const char* title);
91void _glfwSetWindowIconNull(_GLFWwindow* window, int count, const GLFWimage* images);
92void _glfwSetWindowMonitorNull(_GLFWwindow* window, _GLFWmonitor* monitor, int xpos, int ypos, int width, int height, int refreshRate);
93void _glfwGetWindowPosNull(_GLFWwindow* window, int* xpos, int* ypos);
94void _glfwSetWindowPosNull(_GLFWwindow* window, int xpos, int ypos);
95void _glfwGetWindowSizeNull(_GLFWwindow* window, int* width, int* height);
96void _glfwSetWindowSizeNull(_GLFWwindow* window, int width, int height);
97void _glfwSetWindowSizeLimitsNull(_GLFWwindow* window, int minwidth, int minheight, int maxwidth, int maxheight);
98void _glfwSetWindowAspectRatioNull(_GLFWwindow* window, int n, int d);
99void _glfwGetFramebufferSizeNull(_GLFWwindow* window, int* width, int* height);
100void _glfwGetWindowFrameSizeNull(_GLFWwindow* window, int* left, int* top, int* right, int* bottom);
101void _glfwGetWindowContentScaleNull(_GLFWwindow* window, float* xscale, float* yscale);
102void _glfwIconifyWindowNull(_GLFWwindow* window);
103void _glfwRestoreWindowNull(_GLFWwindow* window);
104void _glfwMaximizeWindowNull(_GLFWwindow* window);
105int _glfwWindowMaximizedNull(_GLFWwindow* window);
106int _glfwWindowHoveredNull(_GLFWwindow* window);
107int _glfwFramebufferTransparentNull(_GLFWwindow* window);
108void _glfwSetWindowResizableNull(_GLFWwindow* window, GLFWbool enabled);
109void _glfwSetWindowDecoratedNull(_GLFWwindow* window, GLFWbool enabled);
110void _glfwSetWindowFloatingNull(_GLFWwindow* window, GLFWbool enabled);
111void _glfwSetWindowMousePassthroughNull(_GLFWwindow* window, GLFWbool enabled);
112float _glfwGetWindowOpacityNull(_GLFWwindow* window);
113void _glfwSetWindowOpacityNull(_GLFWwindow* window, float opacity);
114void _glfwSetRawMouseMotionNull(_GLFWwindow *window, GLFWbool enabled);
115GLFWbool _glfwRawMouseMotionSupportedNull(void);
116void _glfwShowWindowNull(_GLFWwindow* window);
117void _glfwRequestWindowAttentionNull(_GLFWwindow* window);
118void _glfwRequestWindowAttentionNull(_GLFWwindow* window);
119void _glfwHideWindowNull(_GLFWwindow* window);
120void _glfwFocusWindowNull(_GLFWwindow* window);
121int _glfwWindowFocusedNull(_GLFWwindow* window);
122int _glfwWindowIconifiedNull(_GLFWwindow* window);
123int _glfwWindowVisibleNull(_GLFWwindow* window);
124void _glfwPollEventsNull(void);
125void _glfwWaitEventsNull(void);
126void _glfwWaitEventsTimeoutNull(double timeout);
127void _glfwPostEmptyEventNull(void);
128void _glfwGetCursorPosNull(_GLFWwindow* window, double* xpos, double* ypos);
129void _glfwSetCursorPosNull(_GLFWwindow* window, double x, double y);
130void _glfwSetCursorModeNull(_GLFWwindow* window, int mode);
131int _glfwCreateCursorNull(_GLFWcursor* cursor, const GLFWimage* image, int xhot, int yhot);
132int _glfwCreateStandardCursorNull(_GLFWcursor* cursor, int shape);
133void _glfwDestroyCursorNull(_GLFWcursor* cursor);
134void _glfwSetCursorNull(_GLFWwindow* window, _GLFWcursor* cursor);
135void _glfwSetClipboardStringNull(const char* string);
136const char* _glfwGetClipboardStringNull(void);
137const char* _glfwGetScancodeNameNull(int scancode);
138int _glfwGetKeyScancodeNull(int key);
139
140EGLenum _glfwGetEGLPlatformNull(EGLint** attribs);
141EGLNativeDisplayType _glfwGetEGLNativeDisplayNull(void);
142EGLNativeWindowType _glfwGetEGLNativeWindowNull(_GLFWwindow* window);
143
144void _glfwGetRequiredInstanceExtensionsNull(char** extensions);
145int _glfwGetPhysicalDevicePresentationSupportNull(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily);
146VkResult _glfwCreateWindowSurfaceNull(VkInstance instance, _GLFWwindow* window, const VkAllocationCallbacks* allocator, VkSurfaceKHR* surface);
147
148void _glfwPollMonitorsNull(void);
149
150