GLFW: glfw3.h Source File

GLFW

- Documentation
- Download
- Media
- Community

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

glfw3.h
Go to the documentation of this file.
1 /*************************************************************************
2 * GLFW 3.2 - www.glfw.org
3 * A library for OpenGL, window and input
4 *------------------------------------------------------------------------
5 * Copyright (c) 2002-2006 Marcus Geelnard
6 * Copyright (c) 2006-2016 Camilla Berglund <elmindreda@glfw.org>
7 *
8 * This software is provided 'as-is', without any express or implied
9 * warranty. In no event will the authors be held liable for any damages
10 * arising from the use of this software.
11 *
12 * Permission is granted to anyone to use this software for any purpose,
13 * including commercial applications, and to alter it and redistribute it
14 * freely, subject to the following restrictions:
15 *
16 * 1. The origin of this software must not be misrepresented; you must not
17 * claim that you wrote the original software. If you use this software
18 * in a product, an acknowledgment in the product documentation would
19 * be appreciated but is not required.
20 *
21 * 2. Altered source versions must be plainly marked as such, and must not
22 * be misrepresented as being the original software.
23 *
24 * 3. This notice may not be removed or altered from any source
25 * distribution.
26 *
27 *************************************************************************/
28
29 #ifndef _glfw3_h_
30 #define _glfw3_h_
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35
36
37 /*************************************************************************
38 * Doxygen documentation
39 *************************************************************************/
40
83 /*************************************************************************
84 * Compiler- and platform-specific preprocessor work
85 *************************************************************************/
86
87 /* If we are we on Windows, we want a single define for it.
88 */
89 #if !defined(_WIN32) && (defined(__WIN32__) || defined(WIN32) || defined(__MINGW32__))
90 #define _WIN32
91 #endif /* _WIN32 */
92
93 /* It is customary to use APIENTRY for OpenGL function pointer declarations on
94 * all platforms. Additionally, the Windows OpenGL header needs APIENTRY.
95 */
96 #ifndef APIENTRY
97 #ifdef _WIN32
98 #define APIENTRY __stdcall
99 #else
100 #define APIENTRY
101 #endif
102 #endif /* APIENTRY */
103
104 /* Some Windows OpenGL headers need this.
105 */
106 #if !defined(WINGDIAPI) && defined(_WIN32)
107 #define WINGDIAPI __declspec(dllimport)
108 #define GLFW_WINGDIAPI_DEFINED
109 #endif /* WINGDIAPI */
110
111 /* Some Windows GLU headers need this.
112 */
113 #if !defined(CALLBACK) && defined(_WIN32)
114 #define CALLBACK __stdcall
115 #define GLFW_CALLBACK_DEFINED
116 #endif /* CALLBACK */
117
118 /* Most Windows GLU headers need wchar_t.
119 * The OS X OpenGL header blocks the definition of ptrdiff_t by glext.h.
120 * Include it unconditionally to avoid surprising side-effects.
121 */
122 #include <stddef.h>
123 #include <stdint.h>
124
125 /* Include the chosen client API headers.
126 */
127 #if defined(__APPLE__)
128 #if defined(GLFW_INCLUDE_GLCOREARB)
129 #include <OpenGL/gl3.h>
130 #if defined(GLFW_INCLUDE_GLEXT)
131 #include <OpenGL/gl3ext.h>
132 #endif
133 #elif !defined(GLFW_INCLUDE_NONE)
134 #if !defined(GLFW_INCLUDE_GLEXT)
135 #define GL_GLEXT_LEGACY
136 #endif
137 #include <OpenGL/gl.h>
138 #endif
139 #if defined(GLFW_INCLUDE_GLU)
140 #include <OpenGL/glu.h>
141 #endif
142 #else
143 #if defined(GLFW_INCLUDE_GLCOREARB)
144 #include <GL/glcorearb.h>
145 #elif defined(GLFW_INCLUDE_ES1)
146 #include <GLES/gl.h>
147 #if defined(GLFW_INCLUDE_GLEXT)
148 #include <GLES/glext.h>
149 #endif
150 #elif defined(GLFW_INCLUDE_ES2)
151 #include <GLES2/gl2.h>
152 #if defined(GLFW_INCLUDE_GLEXT)
153 #include <GLES2/gl2ext.h>
154 #endif
155 #elif defined(GLFW_INCLUDE_ES3)
156 #include <GLES3/gl3.h>
157 #if defined(GLFW_INCLUDE_GLEXT)
158 #include <GLES2/gl2ext.h>
159 #endif
160 #elif defined(GLFW_INCLUDE_ES31)
161 #include <GLES3/gl31.h>
162 #if defined(GLFW_INCLUDE_GLEXT)
163 #include <GLES2/gl2ext.h>
164 #endif
165 #elif defined(GLFW_INCLUDE_VULKAN)
166 #include <vulkan/vulkan.h>
167 #elif !defined(GLFW_INCLUDE_NONE)
168 #include <GL/gl.h>
169 #if defined(GLFW_INCLUDE_GLEXT)
170 #include <GL/glext.h>
171 #endif
172 #endif
173 #if defined(GLFW_INCLUDE_GLU)
174 #include <GL/glu.h>
175 #endif
176 #endif
177
178 #if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL)
179 /* GLFW_DLL must be defined by applications that are linking against the DLL
180 * version of the GLFW library. _GLFW_BUILD_DLL is defined by the GLFW
181 * configuration header when compiling the DLL version of the library.
182 */
183 #error "You must not have both GLFW_DLL and _GLFW_BUILD_DLL defined"
184 #endif
185
186 /* GLFWAPI is used to declare public API functions for export
187 * from the DLL / shared library / dynamic library.
188 */
189 #if defined(_WIN32) && defined(_GLFW_BUILD_DLL)
190 /* We are building GLFW as a Win32 DLL */
191 #define GLFWAPI __declspec(dllexport)
192 #elif defined(_WIN32) && defined(GLFW_DLL)
193 /* We are calling GLFW as a Win32 DLL */
194 #define GLFWAPI __declspec(dllimport)
195 #elif defined(__GNUC__) && defined(_GLFW_BUILD_DLL)
196 /* We are building GLFW as a shared / dynamic library */
197 #define GLFWAPI __attribute__((visibility("default")))
198 #else
199 /* We are building or calling GLFW as a static library */
200 #define GLFWAPI
201 #endif
202
203
204 /*************************************************************************
205 * GLFW API tokens
206 *************************************************************************/
207
215 #define GLFW_VERSION_MAJOR 3
216
222 #define GLFW_VERSION_MINOR 2
223
229 #define GLFW_VERSION_REVISION 0
230
240 #define GLFW_TRUE 1
241
247 #define GLFW_FALSE 0
248
258 #define GLFW_RELEASE 0
259
265 #define GLFW_PRESS 1
266
272 #define GLFW_REPEAT 2
273
298 /* The unknown key */
299 #define GLFW_KEY_UNKNOWN -1
300
301 /* Printable keys */
302 #define GLFW_KEY_SPACE 32
303 #define GLFW_KEY_APOSTROPHE 39 /* ' */
304 #define GLFW_KEY_COMMA 44 /* , */
305 #define GLFW_KEY_MINUS 45 /* - */
306 #define GLFW_KEY_PERIOD 46 /* . */
307 #define GLFW_KEY_SLASH 47 /* / */
308 #define GLFW_KEY_0 48
309 #define GLFW_KEY_1 49
310 #define GLFW_KEY_2 50
311 #define GLFW_KEY_3 51
312 #define GLFW_KEY_4 52
313 #define GLFW_KEY_5 53
314 #define GLFW_KEY_6 54
315 #define GLFW_KEY_7 55
316 #define GLFW_KEY_8 56
317 #define GLFW_KEY_9 57
318 #define GLFW_KEY_SEMICOLON 59 /* ; */
319 #define GLFW_KEY_EQUAL 61 /* = */
320 #define GLFW_KEY_A 65
321 #define GLFW_KEY_B 66
322 #define GLFW_KEY_C 67
323 #define GLFW_KEY_D 68
324 #define GLFW_KEY_E 69
325 #define GLFW_KEY_F 70
326 #define GLFW_KEY_G 71
327 #define GLFW_KEY_H 72
328 #define GLFW_KEY_I 73
329 #define GLFW_KEY_J 74
330 #define GLFW_KEY_K 75
331 #define GLFW_KEY_L 76
332 #define GLFW_KEY_M 77
333 #define GLFW_KEY_N 78
334 #define GLFW_KEY_O 79
335 #define GLFW_KEY_P 80
336 #define GLFW_KEY_Q 81
337 #define GLFW_KEY_R 82
338 #define GLFW_KEY_S 83
339 #define GLFW_KEY_T 84
340 #define GLFW_KEY_U 85
341 #define GLFW_KEY_V 86
342 #define GLFW_KEY_W 87
343 #define GLFW_KEY_X 88
344 #define GLFW_KEY_Y 89
345 #define GLFW_KEY_Z 90
346 #define GLFW_KEY_LEFT_BRACKET 91 /* [ */
347 #define GLFW_KEY_BACKSLASH 92 /* \ */
348 #define GLFW_KEY_RIGHT_BRACKET 93 /* ] */
349 #define GLFW_KEY_GRAVE_ACCENT 96 /* ` */
350 #define GLFW_KEY_WORLD_1 161 /* non-US #1 */
351 #define GLFW_KEY_WORLD_2 162 /* non-US #2 */
352
353 /* Function keys */
354 #define GLFW_KEY_ESCAPE 256
355 #define GLFW_KEY_ENTER 257
356 #define GLFW_KEY_TAB 258
357 #define GLFW_KEY_BACKSPACE 259
358 #define GLFW_KEY_INSERT 260
359 #define GLFW_KEY_DELETE 261
360 #define GLFW_KEY_RIGHT 262
361 #define GLFW_KEY_LEFT 263
362 #define GLFW_KEY_DOWN 264
363 #define GLFW_KEY_UP 265
364 #define GLFW_KEY_PAGE_UP 266
365 #define GLFW_KEY_PAGE_DOWN 267
366 #define GLFW_KEY_HOME 268
367 #define GLFW_KEY_END 269
368 #define GLFW_KEY_CAPS_LOCK 280
369 #define GLFW_KEY_SCROLL_LOCK 281
370 #define GLFW_KEY_NUM_LOCK 282
371 #define GLFW_KEY_PRINT_SCREEN 283
372 #define GLFW_KEY_PAUSE 284
373 #define GLFW_KEY_F1 290
374 #define GLFW_KEY_F2 291
375 #define GLFW_KEY_F3 292
376 #define GLFW_KEY_F4 293
377 #define GLFW_KEY_F5 294
378 #define GLFW_KEY_F6 295
379 #define GLFW_KEY_F7 296
380 #define GLFW_KEY_F8 297
381 #define GLFW_KEY_F9 298
382 #define GLFW_KEY_F10 299
383 #define GLFW_KEY_F11 300
384 #define GLFW_KEY_F12 301
385 #define GLFW_KEY_F13 302
386 #define GLFW_KEY_F14 303
387 #define GLFW_KEY_F15 304
388 #define GLFW_KEY_F16 305
389 #define GLFW_KEY_F17 306
390 #define GLFW_KEY_F18 307
391 #define GLFW_KEY_F19 308
392 #define GLFW_KEY_F20 309
393 #define GLFW_KEY_F21 310
394 #define GLFW_KEY_F22 311
395 #define GLFW_KEY_F23 312
396 #define GLFW_KEY_F24 313
397 #define GLFW_KEY_F25 314
398 #define GLFW_KEY_KP_0 320
399 #define GLFW_KEY_KP_1 321
400 #define GLFW_KEY_KP_2 322
401 #define GLFW_KEY_KP_3 323
402 #define GLFW_KEY_KP_4 324
403 #define GLFW_KEY_KP_5 325
404 #define GLFW_KEY_KP_6 326
405 #define GLFW_KEY_KP_7 327
406 #define GLFW_KEY_KP_8 328
407 #define GLFW_KEY_KP_9 329
408 #define GLFW_KEY_KP_DECIMAL 330
409 #define GLFW_KEY_KP_DIVIDE 331
410 #define GLFW_KEY_KP_MULTIPLY 332
411 #define GLFW_KEY_KP_SUBTRACT 333
412 #define GLFW_KEY_KP_ADD 334
413 #define GLFW_KEY_KP_ENTER 335
414 #define GLFW_KEY_KP_EQUAL 336
415 #define GLFW_KEY_LEFT_SHIFT 340
416 #define GLFW_KEY_LEFT_CONTROL 341
417 #define GLFW_KEY_LEFT_ALT 342
418 #define GLFW_KEY_LEFT_SUPER 343
419 #define GLFW_KEY_RIGHT_SHIFT 344
420 #define GLFW_KEY_RIGHT_CONTROL 345
421 #define GLFW_KEY_RIGHT_ALT 346
422 #define GLFW_KEY_RIGHT_SUPER 347
423 #define GLFW_KEY_MENU 348
424
425 #define GLFW_KEY_LAST GLFW_KEY_MENU
426
438 #define GLFW_MOD_SHIFT 0x0001
439
441 #define GLFW_MOD_CONTROL 0x0002
442
444 #define GLFW_MOD_ALT 0x0004
445
447 #define GLFW_MOD_SUPER 0x0008
448
457 #define GLFW_MOUSE_BUTTON_1 0
458 #define GLFW_MOUSE_BUTTON_2 1
459 #define GLFW_MOUSE_BUTTON_3 2
460 #define GLFW_MOUSE_BUTTON_4 3
461 #define GLFW_MOUSE_BUTTON_5 4
462 #define GLFW_MOUSE_BUTTON_6 5
463 #define GLFW_MOUSE_BUTTON_7 6
464 #define GLFW_MOUSE_BUTTON_8 7
465 #define GLFW_MOUSE_BUTTON_LAST GLFW_MOUSE_BUTTON_8
466 #define GLFW_MOUSE_BUTTON_LEFT GLFW_MOUSE_BUTTON_1
467 #define GLFW_MOUSE_BUTTON_RIGHT GLFW_MOUSE_BUTTON_2
468 #define GLFW_MOUSE_BUTTON_MIDDLE GLFW_MOUSE_BUTTON_3
469
477 #define GLFW_JOYSTICK_1 0
478 #define GLFW_JOYSTICK_2 1
479 #define GLFW_JOYSTICK_3 2
480 #define GLFW_JOYSTICK_4 3
481 #define GLFW_JOYSTICK_5 4
482 #define GLFW_JOYSTICK_6 5
483 #define GLFW_JOYSTICK_7 6
484 #define GLFW_JOYSTICK_8 7
485 #define GLFW_JOYSTICK_9 8
486 #define GLFW_JOYSTICK_10 9
487 #define GLFW_JOYSTICK_11 10
488 #define GLFW_JOYSTICK_12 11
489 #define GLFW_JOYSTICK_13 12
490 #define GLFW_JOYSTICK_14 13
491 #define GLFW_JOYSTICK_15 14
492 #define GLFW_JOYSTICK_16 15
493 #define GLFW_JOYSTICK_LAST GLFW_JOYSTICK_16
494
510 #define GLFW_NOT_INITIALIZED 0x00010001
511
520 #define GLFW_NO_CURRENT_CONTEXT 0x00010002
521
529 #define GLFW_INVALID_ENUM 0x00010003
530
540 #define GLFW_INVALID_VALUE 0x00010004
541
548 #define GLFW_OUT_OF_MEMORY 0x00010005
549
564 #define GLFW_API_UNAVAILABLE 0x00010006
565
581 #define GLFW_VERSION_UNAVAILABLE 0x00010007
582
592 #define GLFW_PLATFORM_ERROR 0x00010008
593
611 #define GLFW_FORMAT_UNAVAILABLE 0x00010009
612
619 #define GLFW_NO_WINDOW_CONTEXT 0x0001000A
620
622 #define GLFW_FOCUSED 0x00020001
623 #define GLFW_ICONIFIED 0x00020002
624 #define GLFW_RESIZABLE 0x00020003
625 #define GLFW_VISIBLE 0x00020004
626 #define GLFW_DECORATED 0x00020005
627 #define GLFW_AUTO_ICONIFY 0x00020006
628 #define GLFW_FLOATING 0x00020007
629 #define GLFW_MAXIMIZED 0x00020008
630
631 #define GLFW_RED_BITS 0x00021001
632 #define GLFW_GREEN_BITS 0x00021002
633 #define GLFW_BLUE_BITS 0x00021003
634 #define GLFW_ALPHA_BITS 0x00021004
635 #define GLFW_DEPTH_BITS 0x00021005
636 #define GLFW_STENCIL_BITS 0x00021006
637 #define GLFW_ACCUM_RED_BITS 0x00021007
638 #define GLFW_ACCUM_GREEN_BITS 0x00021008
639 #define GLFW_ACCUM_BLUE_BITS 0x00021009
640 #define GLFW_ACCUM_ALPHA_BITS 0x0002100A
641 #define GLFW_AUX_BUFFERS 0x0002100B
642 #define GLFW_STEREO 0x0002100C
643 #define GLFW_SAMPLES 0x0002100D
644 #define GLFW_SRGB_CAPABLE 0x0002100E
645 #define GLFW_REFRESH_RATE 0x0002100F
646 #define GLFW_DOUBLEBUFFER 0x00021010
647
648 #define GLFW_CLIENT_API 0x00022001
649 #define GLFW_CONTEXT_VERSION_MAJOR 0x00022002
650 #define GLFW_CONTEXT_VERSION_MINOR 0x00022003
651 #define GLFW_CONTEXT_REVISION 0x00022004
652 #define GLFW_CONTEXT_ROBUSTNESS 0x00022005
653 #define GLFW_OPENGL_FORWARD_COMPAT 0x00022006
654 #define GLFW_OPENGL_DEBUG_CONTEXT 0x00022007
655 #define GLFW_OPENGL_PROFILE 0x00022008
656 #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009
657 #define GLFW_CONTEXT_NO_ERROR 0x0002200A
658 #define GLFW_CONTEXT_CREATION_API 0x0002200B
659
660 #define GLFW_NO_API 0
661 #define GLFW_OPENGL_API 0x00030001
662 #define GLFW_OPENGL_ES_API 0x00030002
663
664 #define GLFW_NO_ROBUSTNESS 0
665 #define GLFW_NO_RESET_NOTIFICATION 0x00031001
666 #define GLFW_LOSE_CONTEXT_ON_RESET 0x00031002
667
668 #define GLFW_OPENGL_ANY_PROFILE 0
669 #define GLFW_OPENGL_CORE_PROFILE 0x00032001
670 #define GLFW_OPENGL_COMPAT_PROFILE 0x00032002
671
672 #define GLFW_CURSOR 0x00033001
673 #define GLFW_STICKY_KEYS 0x00033002
674 #define GLFW_STICKY_MOUSE_BUTTONS 0x00033003
675
676 #define GLFW_CURSOR_NORMAL 0x00034001
677 #define GLFW_CURSOR_HIDDEN 0x00034002
678 #define GLFW_CURSOR_DISABLED 0x00034003
679
680 #define GLFW_ANY_RELEASE_BEHAVIOR 0
681 #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001
682 #define GLFW_RELEASE_BEHAVIOR_NONE 0x00035002
683
684 #define GLFW_NATIVE_CONTEXT_API 0x00036001
685 #define GLFW_EGL_CONTEXT_API 0x00036002
686
698 #define GLFW_ARROW_CURSOR 0x00036001
699
703 #define GLFW_IBEAM_CURSOR 0x00036002
704
708 #define GLFW_CROSSHAIR_CURSOR 0x00036003
709
713 #define GLFW_HAND_CURSOR 0x00036004
714
718 #define GLFW_HRESIZE_CURSOR 0x00036005
719
723 #define GLFW_VRESIZE_CURSOR 0x00036006
724
726 #define GLFW_CONNECTED 0x00040001
727 #define GLFW_DISCONNECTED 0x00040002
728
729 #define GLFW_DONT_CARE -1
730
731
732 /*************************************************************************
733 * GLFW API types
734 *************************************************************************/
735
748 typedef void (*GLFWglproc)(void);
749
762 typedef void (*GLFWvkproc)(void);
763
774 typedef struct GLFWmonitor GLFWmonitor;
775
786 typedef struct GLFWwindow GLFWwindow;
787
798 typedef struct GLFWcursor GLFWcursor;
799
814 typedef void (* GLFWerrorfun)(int,const char*);
815
833 typedef void (* GLFWwindowposfun)(GLFWwindow*,int,int);
834
851 typedef void (* GLFWwindowsizefun)(GLFWwindow*,int,int);
852
867 typedef void (* GLFWwindowclosefun)(GLFWwindow*);
868
883 typedef void (* GLFWwindowrefreshfun)(GLFWwindow*);
884
900 typedef void (* GLFWwindowfocusfun)(GLFWwindow*,int);
901
918 typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int);
919
936 typedef void (* GLFWframebuffersizefun)(GLFWwindow*,int,int);
937
957 typedef void (* GLFWmousebuttonfun)(GLFWwindow*,int,int,int);
958
976 typedef void (* GLFWcursorposfun)(GLFWwindow*,double,double);
977
993 typedef void (* GLFWcursorenterfun)(GLFWwindow*,int);
994
1010 typedef void (* GLFWscrollfun)(GLFWwindow*,double,double);
1011
1031 typedef void (* GLFWkeyfun)(GLFWwindow*,int,int,int,int);
1032
1048 typedef void (* GLFWcharfun)(GLFWwindow*,unsigned int);
1049
1069 typedef void (* GLFWcharmodsfun)(GLFWwindow*,unsigned int,int);
1070
1086 typedef void (* GLFWdropfun)(GLFWwindow*,int,const char**);
1087
1102 typedef void (* GLFWmonitorfun)(GLFWmonitor*,int);
1103
1119 typedef void (* GLFWjoystickfun)(int,int);
1120
1133 typedef struct GLFWvidmode
1134 {
1137 int width;
1140 int height;
1143 int redBits;
1146 int greenBits;
1149 int blueBits;
1152 int refreshRate;
1153 } GLFWvidmode;
1154
1166 typedef struct GLFWgammaramp
1167 {
1170 unsigned short* red;
1173 unsigned short* green;
1176 unsigned short* blue;
1179 unsigned int size;
1180 } GLFWgammaramp;
1181
1189 typedef struct GLFWimage
1190 {
1193 int width;
1196 int height;
1199 unsigned char* pixels;
1200 } GLFWimage;
1201
1202
1203 /*************************************************************************
1204 * GLFW API functions
1205 *************************************************************************/
1206
1239 GLFWAPI int glfwInit(void);
1240
1271 GLFWAPI void glfwTerminate(void);
1272
1298 GLFWAPI void glfwGetVersion(int* major, int* minor, int* rev);
1299
1329 GLFWAPI const char* glfwGetVersionString(void);
1330
1363 GLFWAPI GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun);
1364
1392 GLFWAPI GLFWmonitor** glfwGetMonitors(int* count);
1393
1416 GLFWAPI GLFWmonitor* glfwGetPrimaryMonitor(void);
1417
1441 GLFWAPI void glfwGetMonitorPos(GLFWmonitor* monitor, int* xpos, int* ypos);
1442
1475 GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor* monitor, int* widthMM, int* heightMM);
1476
1501 GLFWAPI const char* glfwGetMonitorName(GLFWmonitor* monitor);
1502
1524 GLFWAPI GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun);
1525
1557 GLFWAPI const GLFWvidmode* glfwGetVideoModes(GLFWmonitor* monitor, int* count);
1558
1585 GLFWAPI const GLFWvidmode* glfwGetVideoMode(GLFWmonitor* monitor);
1586
1607 GLFWAPI void glfwSetGamma(GLFWmonitor* monitor, float gamma);
1608
1633 GLFWAPI const GLFWgammaramp* glfwGetGammaRamp(GLFWmonitor* monitor);
1634
1663 GLFWAPI void glfwSetGammaRamp(GLFWmonitor* monitor, const GLFWgammaramp* ramp);
1664
1681 GLFWAPI void glfwDefaultWindowHints(void);
1682
1709 GLFWAPI void glfwWindowHint(int hint, int value);
1710
1826 GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title, GLFWmonitor* monitor, GLFWwindow* share);
1827
1855 GLFWAPI void glfwDestroyWindow(GLFWwindow* window);
1856
1875 GLFWAPI int glfwWindowShouldClose(GLFWwindow* window);
1876
1897 GLFWAPI void glfwSetWindowShouldClose(GLFWwindow* window, int value);
1898
1922 GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title);
1923
1961 GLFWAPI void glfwSetWindowIcon(GLFWwindow* window, int count, const GLFWimage* images);
1962
1989 GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos);
1990
2020 GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos);
2021
2050 GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height);
2051
2090 GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow* window, int minwidth, int minheight, int maxwidth, int maxheight);
2091
2130 GLFWAPI void glfwSetWindowAspectRatio(GLFWwindow* window, int numer, int denom);
2131
2168 GLFWAPI void glfwSetWindowSize(GLFWwindow* window, int width, int height);
2169
2197 GLFWAPI void glfwGetFramebufferSize(GLFWwindow* window, int* width, int* height);
2198
2234 GLFWAPI void glfwGetWindowFrameSize(GLFWwindow* window, int* left, int* top, int* right, int* bottom);
2235
2261 GLFWAPI void glfwIconifyWindow(GLFWwindow* window);
2262
2288 GLFWAPI void glfwRestoreWindow(GLFWwindow* window);
2289
2313 GLFWAPI void glfwMaximizeWindow(GLFWwindow* window);
2314
2335 GLFWAPI void glfwShowWindow(GLFWwindow* window);
2336
2357 GLFWAPI void glfwHideWindow(GLFWwindow* window);
2358
2385 GLFWAPI void glfwFocusWindow(GLFWwindow* window);
2386
2407 GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window);
2408
2456 GLFWAPI void glfwSetWindowMonitor(GLFWwindow* window, GLFWmonitor* monitor, int xpos, int ypos, int width, int height, int refreshRate);
2457
2489 GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib);
2490
2512 GLFWAPI void glfwSetWindowUserPointer(GLFWwindow* window, void* pointer);
2513
2533 GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow* window);
2534
2557 GLFWAPI GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow* window, GLFWwindowposfun cbfun);
2558
2582 GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow* window, GLFWwindowsizefun cbfun);
2583
2615 GLFWAPI GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow* window, GLFWwindowclosefun cbfun);
2616
2644 GLFWAPI GLFWwindowrefreshfun glfwSetWindowRefreshCallback(GLFWwindow* window, GLFWwindowrefreshfun cbfun);
2645
2672 GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow* window, GLFWwindowfocusfun cbfun);
2673
2695 GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow* window, GLFWwindowiconifyfun cbfun);
2696
2718 GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window, GLFWframebuffersizefun cbfun);
2719
2753 GLFWAPI void glfwPollEvents(void);
2754
2798 GLFWAPI void glfwWaitEvents(void);
2799
2844 GLFWAPI void glfwWaitEventsTimeout(double timeout);
2845
2867 GLFWAPI void glfwPostEmptyEvent(void);
2868
2890 GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode);
2891
2938 GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value);
2939
2995 GLFWAPI const char* glfwGetKeyName(int key, int scancode);
2996
3035 GLFWAPI int glfwGetKey(GLFWwindow* window, int key);
3036
3064 GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button);
3065
3102 GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
3103
3139 GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos);
3140
3179 GLFWAPI GLFWcursor* glfwCreateCursor(const GLFWimage* image, int xhot, int yhot);
3180
3204 GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape);
3205
3228 GLFWAPI void glfwDestroyCursor(GLFWcursor* cursor);
3229
3255 GLFWAPI void glfwSetCursor(GLFWwindow* window, GLFWcursor* cursor);
3256
3298 GLFWAPI GLFWkeyfun glfwSetKeyCallback(GLFWwindow* window, GLFWkeyfun cbfun);
3299
3336 GLFWAPI GLFWcharfun glfwSetCharCallback(GLFWwindow* window, GLFWcharfun cbfun);
3337
3369 GLFWAPI GLFWcharmodsfun glfwSetCharModsCallback(GLFWwindow* window, GLFWcharmodsfun cbfun);
3370
3399 GLFWAPI GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow* window, GLFWmousebuttonfun cbfun);
3400
3424 GLFWAPI GLFWcursorposfun glfwSetCursorPosCallback(GLFWwindow* window, GLFWcursorposfun cbfun);
3425
3448 GLFWAPI GLFWcursorenterfun glfwSetCursorEnterCallback(GLFWwindow* window, GLFWcursorenterfun cbfun);
3449
3475 GLFWAPI GLFWscrollfun glfwSetScrollCallback(GLFWwindow* window, GLFWscrollfun cbfun);
3476
3503 GLFWAPI GLFWdropfun glfwSetDropCallback(GLFWwindow* window, GLFWdropfun cbfun);
3504
3523 GLFWAPI int glfwJoystickPresent(int joy);
3524
3555 GLFWAPI const float* glfwGetJoystickAxes(int joy, int* count);
3556
3588 GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count);
3589
3620 GLFWAPI const char* glfwGetJoystickName(int joy);
3621
3643 GLFWAPI GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun cbfun);
3644
3668 GLFWAPI void glfwSetClipboardString(GLFWwindow* window, const char* string);
3669
3698 GLFWAPI const char* glfwGetClipboardString(GLFWwindow* window);
3699
3725 GLFWAPI double glfwGetTime(void);
3726
3752 GLFWAPI void glfwSetTime(double time);
3753
3774 GLFWAPI uint64_t glfwGetTimerValue(void);
3775
3794 GLFWAPI uint64_t glfwGetTimerFrequency(void);
3795
3828 GLFWAPI void glfwMakeContextCurrent(GLFWwindow* window);
3829
3849 GLFWAPI GLFWwindow* glfwGetCurrentContext(void);
3850
3883 GLFWAPI void glfwSwapBuffers(GLFWwindow* window);
3884
3930 GLFWAPI void glfwSwapInterval(int interval);
3931
3968 GLFWAPI int glfwExtensionSupported(const char* extension);
3969
4010 GLFWAPI GLFWglproc glfwGetProcAddress(const char* procname);
4011
4036 GLFWAPI int glfwVulkanSupported(void);
4037
4080 GLFWAPI const char** glfwGetRequiredInstanceExtensions(uint32_t* count);
4081
4082 #if defined(VK_VERSION_1_0)
4083
4123 GLFWAPI GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char* procname);
4124
4156 GLFWAPI int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily);
4157
4206 GLFWAPI VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow* window, const VkAllocationCallbacks* allocator, VkSurfaceKHR* surface);
4207
4208 #endif /*VK_VERSION_1_0*/
4209
4210
4211 /*************************************************************************
4212 * Global definition cleanup
4213 *************************************************************************/
4214
4215 /* ------------------- BEGIN SYSTEM/COMPILER SPECIFIC -------------------- */
4216
4217 #ifdef GLFW_WINGDIAPI_DEFINED
4218 #undef WINGDIAPI
4219 #undef GLFW_WINGDIAPI_DEFINED
4220 #endif
4221
4222 #ifdef GLFW_CALLBACK_DEFINED
4223 #undef CALLBACK
4224 #undef GLFW_CALLBACK_DEFINED
4225 #endif
4226
4227 /* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */
4228
4229
4230 #ifdef __cplusplus
4231 }
4232 #endif
4233
4234 #endif /* _glfw3_h_ */
4235
glfwGetVersion
void glfwGetVersion(int *major, int *minor, int *rev)
Retrieves the version of the GLFW library.
GLFWvidmode::redBits
int redBits
Definition: glfw3.h:1143
glfwGetWindowSize
void glfwGetWindowSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the client area of the specified window.
glfwSetWindowSizeLimits
void glfwSetWindowSizeLimits(GLFWwindow *window, int minwidth, int minheight, int maxwidth, int maxheight)
Sets the size limits of the specified window.
GLFWwindowiconifyfun
void(* GLFWwindowiconifyfun)(GLFWwindow *, int)
The function signature for window iconify/restore callbacks.
Definition: glfw3.h:918
glfwGetInputMode
int glfwGetInputMode(GLFWwindow *window, int mode)
Returns the value of an input option for the specified window.
GLFWvidmode::height
int height
Definition: glfw3.h:1140
glfwSetWindowRefreshCallback
GLFWwindowrefreshfun glfwSetWindowRefreshCallback(GLFWwindow *window, GLFWwindowrefreshfun cbfun)
Sets the refresh callback for the specified window.
glfwSetWindowPosCallback
GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow *window, GLFWwindowposfun cbfun)
Sets the position callback for the specified window.
glfwGetWindowPos
void glfwGetWindowPos(GLFWwindow *window, int *xpos, int *ypos)
Retrieves the position of the client area of the specified window.
GLFWcharmodsfun
void(* GLFWcharmodsfun)(GLFWwindow *, unsigned int, int)
The function signature for Unicode character with modifiers callbacks.
Definition: glfw3.h:1069
GLFWvidmode::blueBits
int blueBits
Definition: glfw3.h:1149
GLFWimage::pixels
unsigned char * pixels
Definition: glfw3.h:1199
GLFWmonitorfun
void(* GLFWmonitorfun)(GLFWmonitor *, int)
The function signature for monitor configuration callbacks.
Definition: glfw3.h:1102
glfwGetWindowUserPointer
void * glfwGetWindowUserPointer(GLFWwindow *window)
Returns the user pointer of the specified window.
glfwGetVideoModes
const GLFWvidmode * glfwGetVideoModes(GLFWmonitor *monitor, int *count)
Returns the available video modes for the specified monitor.
glfwGetGammaRamp
const GLFWgammaramp * glfwGetGammaRamp(GLFWmonitor *monitor)
Returns the current gamma ramp for the specified monitor.
GLFWcursor
struct GLFWcursor GLFWcursor
Opaque cursor object.
Definition: glfw3.h:798
glfwIconifyWindow
void glfwIconifyWindow(GLFWwindow *window)
Iconifies the specified window.
glfwSetErrorCallback
GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun)
Sets the error callback.
glfwGetTime
double glfwGetTime(void)
Returns the value of the GLFW timer.
glfwSetWindowIconifyCallback
GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow *window, GLFWwindowiconifyfun cbfun)
Sets the iconify callback for the specified window.
glfwSetCursorPos
void glfwSetCursorPos(GLFWwindow *window, double xpos, double ypos)
Sets the position of the cursor, relative to the client area of the window.
GLFWvidmode::width
int width
Definition: glfw3.h:1137
glfwGetVersionString
const char * glfwGetVersionString(void)
Returns a string describing the compile-time configuration.
glfwSetWindowSizeCallback
GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow *window, GLFWwindowsizefun cbfun)
Sets the size callback for the specified window.
glfwGetJoystickName
const char * glfwGetJoystickName(int joy)
Returns the name of the specified joystick.
glfwWaitEvents
void glfwWaitEvents(void)
Waits until events are queued and processes them.
GLFWimage::height
int height
Definition: glfw3.h:1196
glfwSetKeyCallback
GLFWkeyfun glfwSetKeyCallback(GLFWwindow *window, GLFWkeyfun cbfun)
Sets the key callback.
glfwGetClipboardString
const char * glfwGetClipboardString(GLFWwindow *window)
Returns the contents of the clipboard as a string.
GLFWdropfun
void(* GLFWdropfun)(GLFWwindow *, int, const char **)
The function signature for file drop callbacks.
Definition: glfw3.h:1086
glfwGetProcAddress
GLFWglproc glfwGetProcAddress(const char *procname)
Returns the address of the specified function for the current context.
glfwGetKeyName
const char * glfwGetKeyName(int key, int scancode)
Returns the localized name of the specified printable key.
glfwGetCursorPos
void glfwGetCursorPos(GLFWwindow *window, double *xpos, double *ypos)
Retrieves the position of the cursor relative to the client area of the window.
glfwMaximizeWindow
void glfwMaximizeWindow(GLFWwindow *window)
Maximizes the specified window.
GLFWkeyfun
void(* GLFWkeyfun)(GLFWwindow *, int, int, int, int)
The function signature for keyboard key callbacks.
Definition: glfw3.h:1031
GLFWvidmode::refreshRate
int refreshRate
Definition: glfw3.h:1152
GLFWgammaramp::red
unsigned short * red
Definition: glfw3.h:1170
GLFWmousebuttonfun
void(* GLFWmousebuttonfun)(GLFWwindow *, int, int, int)
The function signature for mouse button callbacks.
Definition: glfw3.h:957
glfwCreateWindowSurface
VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow *window, const VkAllocationCallbacks *allocator, VkSurfaceKHR *surface)
Creates a Vulkan surface for the specified window.
glfwSetDropCallback
GLFWdropfun glfwSetDropCallback(GLFWwindow *window, GLFWdropfun cbfun)
Sets the file drop callback.
GLFWcharfun
void(* GLFWcharfun)(GLFWwindow *, unsigned int)
The function signature for Unicode character callbacks.
Definition: glfw3.h:1048
glfwSetCursor
void glfwSetCursor(GLFWwindow *window, GLFWcursor *cursor)
Sets the cursor for the window.
glfwGetJoystickButtons
const unsigned char * glfwGetJoystickButtons(int joy, int *count)
Returns the state of all buttons of the specified joystick.
glfwGetMonitors
GLFWmonitor ** glfwGetMonitors(int *count)
Returns the currently connected monitors.
glfwDestroyWindow
void glfwDestroyWindow(GLFWwindow *window)
Destroys the specified window and its context.
glfwSetCursorPosCallback
GLFWcursorposfun glfwSetCursorPosCallback(GLFWwindow *window, GLFWcursorposfun cbfun)
Sets the cursor position callback.
GLFWgammaramp::green
unsigned short * green
Definition: glfw3.h:1173
glfwSetCharCallback
GLFWcharfun glfwSetCharCallback(GLFWwindow *window, GLFWcharfun cbfun)
Sets the Unicode character callback.
GLFWvkproc
void(* GLFWvkproc)(void)
Vulkan API function pointer type.
Definition: glfw3.h:762
glfwSetWindowTitle
void glfwSetWindowTitle(GLFWwindow *window, const char *title)
Sets the title of the specified window.
GLFWmonitor
struct GLFWmonitor GLFWmonitor
Opaque monitor object.
Definition: glfw3.h:774
GLFWwindow
struct GLFWwindow GLFWwindow
Opaque window object.
Definition: glfw3.h:786
glfwGetMonitorPhysicalSize
void glfwGetMonitorPhysicalSize(GLFWmonitor *monitor, int *widthMM, int *heightMM)
Returns the physical size of the monitor.
glfwShowWindow
void glfwShowWindow(GLFWwindow *window)
Makes the specified window visible.
glfwSetWindowSize
void glfwSetWindowSize(GLFWwindow *window, int width, int height)
Sets the size of the client area of the specified window.
GLFWvidmode::greenBits
int greenBits
Definition: glfw3.h:1146
glfwGetJoystickAxes
const float * glfwGetJoystickAxes(int joy, int *count)
Returns the values of all axes of the specified joystick.
glfwCreateCursor
GLFWcursor * glfwCreateCursor(const GLFWimage *image, int xhot, int yhot)
Creates a custom cursor.
glfwDestroyCursor
void glfwDestroyCursor(GLFWcursor *cursor)
Destroys a cursor.
glfwSwapBuffers
void glfwSwapBuffers(GLFWwindow *window)
Swaps the front and back buffers of the specified window.
glfwSetGamma
void glfwSetGamma(GLFWmonitor *monitor, float gamma)
Generates a gamma ramp and sets it for the specified monitor.
glfwSetInputMode
void glfwSetInputMode(GLFWwindow *window, int mode, int value)
Sets an input option for the specified window.
glfwGetVideoMode
const GLFWvidmode * glfwGetVideoMode(GLFWmonitor *monitor)
Returns the current mode of the specified monitor.
glfwSetClipboardString
void glfwSetClipboardString(GLFWwindow *window, const char *string)
Sets the clipboard to the specified string.
glfwGetWindowFrameSize
void glfwGetWindowFrameSize(GLFWwindow *window, int *left, int *top, int *right, int *bottom)
Retrieves the size of the frame of the window.
GLFWcursorposfun
void(* GLFWcursorposfun)(GLFWwindow *, double, double)
The function signature for cursor position callbacks.
Definition: glfw3.h:976
glfwRestoreWindow
void glfwRestoreWindow(GLFWwindow *window)
Restores the specified window.
glfwGetMouseButton
int glfwGetMouseButton(GLFWwindow *window, int button)
Returns the last reported state of a mouse button for the specified window.
GLFWwindowsizefun
void(* GLFWwindowsizefun)(GLFWwindow *, int, int)
The function signature for window resize callbacks.
Definition: glfw3.h:851
glfwSetWindowMonitor
void glfwSetWindowMonitor(GLFWwindow *window, GLFWmonitor *monitor, int xpos, int ypos, int width, int height, int refreshRate)
Sets the mode, monitor, video mode and placement of a window.
glfwSetTime
void glfwSetTime(double time)
Sets the GLFW timer.
glfwFocusWindow
void glfwFocusWindow(GLFWwindow *window)
Brings the specified window to front and sets input focus.
GLFWgammaramp
struct GLFWgammaramp GLFWgammaramp
Gamma ramp.
glfwCreateWindow
GLFWwindow * glfwCreateWindow(int width, int height, const char *title, GLFWmonitor *monitor, GLFWwindow *share)
Creates a window and its associated context.
GLFWgammaramp::size
unsigned int size
Definition: glfw3.h:1179
glfwSetWindowUserPointer
void glfwSetWindowUserPointer(GLFWwindow *window, void *pointer)
Sets the user pointer of the specified window.
glfwSetWindowShouldClose
void glfwSetWindowShouldClose(GLFWwindow *window, int value)
Sets the close flag of the specified window.
glfwGetInstanceProcAddress
GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char *procname)
Returns the address of the specified Vulkan instance function.
glfwPostEmptyEvent
void glfwPostEmptyEvent(void)
Posts an empty event to the event queue.
glfwWaitEventsTimeout
void glfwWaitEventsTimeout(double timeout)
Waits with timeout until events are queued and processes them.
glfwSetFramebufferSizeCallback
GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow *window, GLFWframebuffersizefun cbfun)
Sets the framebuffer resize callback for the specified window.
GLFWframebuffersizefun
void(* GLFWframebuffersizefun)(GLFWwindow *, int, int)
The function signature for framebuffer resize callbacks.
Definition: glfw3.h:936
glfwJoystickPresent
int glfwJoystickPresent(int joy)
Returns whether the specified joystick is present.
glfwSetJoystickCallback
GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun cbfun)
Sets the joystick configuration callback.
glfwGetPhysicalDevicePresentationSupport
int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily)
Returns whether the specified queue family can present images.
GLFWwindowposfun
void(* GLFWwindowposfun)(GLFWwindow *, int, int)
The function signature for window position callbacks.
Definition: glfw3.h:833
glfwPollEvents
void glfwPollEvents(void)
Processes all pending events.
glfwGetTimerValue
uint64_t glfwGetTimerValue(void)
Returns the current value of the raw timer.
glfwHideWindow
void glfwHideWindow(GLFWwindow *window)
Hides the specified window.
glfwGetCurrentContext
GLFWwindow * glfwGetCurrentContext(void)
Returns the window whose context is current on the calling thread.
glfwSetGammaRamp
void glfwSetGammaRamp(GLFWmonitor *monitor, const GLFWgammaramp *ramp)
Sets the current gamma ramp for the specified monitor.
glfwGetTimerFrequency
uint64_t glfwGetTimerFrequency(void)
Returns the frequency, in Hz, of the raw timer.
glfwSetCursorEnterCallback
GLFWcursorenterfun glfwSetCursorEnterCallback(GLFWwindow *window, GLFWcursorenterfun cbfun)
Sets the cursor enter/exit callback.
GLFWimage::width
int width
Definition: glfw3.h:1193
glfwGetWindowMonitor
GLFWmonitor * glfwGetWindowMonitor(GLFWwindow *window)
Returns the monitor that the window uses for full screen mode.
glfwSetMouseButtonCallback
GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow *window, GLFWmousebuttonfun cbfun)
Sets the mouse button callback.
glfwGetPrimaryMonitor
GLFWmonitor * glfwGetPrimaryMonitor(void)
Returns the primary monitor.
glfwGetKey
int glfwGetKey(GLFWwindow *window, int key)
Returns the last reported state of a keyboard key for the specified window.
glfwMakeContextCurrent
void glfwMakeContextCurrent(GLFWwindow *window)
Makes the context of the specified window current for the calling thread.
GLFWgammaramp
Gamma ramp.
Definition: glfw3.h:1166
glfwSetWindowCloseCallback
GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow *window, GLFWwindowclosefun cbfun)
Sets the close callback for the specified window.
GLFWjoystickfun
void(* GLFWjoystickfun)(int, int)
The function signature for joystick configuration callbacks.
Definition: glfw3.h:1119
glfwSetScrollCallback
GLFWscrollfun glfwSetScrollCallback(GLFWwindow *window, GLFWscrollfun cbfun)
Sets the scroll callback.
GLFWgammaramp::blue
unsigned short * blue
Definition: glfw3.h:1176
GLFWvidmode
Video mode type.
Definition: glfw3.h:1133
glfwVulkanSupported
int glfwVulkanSupported(void)
Returns whether the Vulkan loader has been found.
glfwSetWindowPos
void glfwSetWindowPos(GLFWwindow *window, int xpos, int ypos)
Sets the position of the client area of the specified window.
glfwExtensionSupported
int glfwExtensionSupported(const char *extension)
Returns whether the specified extension is available.
glfwGetFramebufferSize
void glfwGetFramebufferSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the framebuffer of the specified window.
GLFWwindowclosefun
void(* GLFWwindowclosefun)(GLFWwindow *)
The function signature for window close callbacks.
Definition: glfw3.h:867
glfwWindowHint
void glfwWindowHint(int hint, int value)
Sets the specified window hint to the desired value.
glfwCreateStandardCursor
GLFWcursor * glfwCreateStandardCursor(int shape)
Creates a cursor with a standard shape.
glfwSwapInterval
void glfwSwapInterval(int interval)
Sets the swap interval for the current context.
glfwSetCharModsCallback
GLFWcharmodsfun glfwSetCharModsCallback(GLFWwindow *window, GLFWcharmodsfun cbfun)
Sets the Unicode character with modifiers callback.
glfwGetRequiredInstanceExtensions
const char ** glfwGetRequiredInstanceExtensions(uint32_t *count)
Returns the Vulkan instance extensions required by GLFW.
GLFWcursorenterfun
void(* GLFWcursorenterfun)(GLFWwindow *, int)
The function signature for cursor enter/leave callbacks.
Definition: glfw3.h:993
glfwInit
int glfwInit(void)
Initializes the GLFW library.
GLFWimage
Image data.
Definition: glfw3.h:1189
GLFWscrollfun
void(* GLFWscrollfun)(GLFWwindow *, double, double)
The function signature for scroll callbacks.
Definition: glfw3.h:1010
glfwGetMonitorPos
void glfwGetMonitorPos(GLFWmonitor *monitor, int *xpos, int *ypos)
Returns the position of the monitor&#39;s viewport on the virtual screen.
GLFWvidmode
struct GLFWvidmode GLFWvidmode
Video mode type.
glfwDefaultWindowHints
void glfwDefaultWindowHints(void)
Resets all window hints to their default values.
glfwSetWindowFocusCallback
GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow *window, GLFWwindowfocusfun cbfun)
Sets the focus callback for the specified window.
glfwTerminate
void glfwTerminate(void)
Terminates the GLFW library.
glfwSetWindowIcon
void glfwSetWindowIcon(GLFWwindow *window, int count, const GLFWimage *images)
Sets the icon for the specified window.
GLFWimage
struct GLFWimage GLFWimage
Image data.
glfwSetMonitorCallback
GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun)
Sets the monitor configuration callback.
GLFWwindowrefreshfun
void(* GLFWwindowrefreshfun)(GLFWwindow *)
The function signature for window content refresh callbacks.
Definition: glfw3.h:883
GLFWglproc
void(* GLFWglproc)(void)
Client API function pointer type.
Definition: glfw3.h:748
glfwGetMonitorName
const char * glfwGetMonitorName(GLFWmonitor *monitor)
Returns the name of the specified monitor.
GLFWerrorfun
void(* GLFWerrorfun)(int, const char *)
The function signature for error callbacks.
Definition: glfw3.h:814
glfwSetWindowAspectRatio
void glfwSetWindowAspectRatio(GLFWwindow *window, int numer, int denom)
Sets the aspect ratio of the specified window.
glfwWindowShouldClose
int glfwWindowShouldClose(GLFWwindow *window)
Checks the close flag of the specified window.
glfwGetWindowAttrib
int glfwGetWindowAttrib(GLFWwindow *window, int attrib)
Returns an attribute of the specified window.
GLFWwindowfocusfun
void(* GLFWwindowfocusfun)(GLFWwindow *, int)
The function signature for window focus/defocus callbacks.
Definition: glfw3.h:900