glfw3.h
Go to the documentation of this file.
1 /*************************************************************************
2  * GLFW 3.3 - 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 Löwy <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 
89 /*************************************************************************
90  * Compiler- and platform-specific preprocessor work
91  *************************************************************************/
92 
93 /* If we are we on Windows, we want a single define for it.
94  */
95 #if !defined(_WIN32) && (defined(__WIN32__) || defined(WIN32) || defined(__MINGW32__))
96  #define _WIN32
97 #endif /* _WIN32 */
98 
99 /* It is customary to use APIENTRY for OpenGL function pointer declarations on
100  * all platforms. Additionally, the Windows OpenGL header needs APIENTRY.
101  */
102 #ifndef APIENTRY
103  #ifdef _WIN32
104  #define APIENTRY __stdcall
105  #else
106  #define APIENTRY
107  #endif
108  #define GLFW_APIENTRY_DEFINED
109 #endif /* APIENTRY */
110 
111 /* Some Windows OpenGL headers need this.
112  */
113 #if !defined(WINGDIAPI) && defined(_WIN32)
114  #define WINGDIAPI __declspec(dllimport)
115  #define GLFW_WINGDIAPI_DEFINED
116 #endif /* WINGDIAPI */
117 
118 /* Some Windows GLU headers need this.
119  */
120 #if !defined(CALLBACK) && defined(_WIN32)
121  #define CALLBACK __stdcall
122  #define GLFW_CALLBACK_DEFINED
123 #endif /* CALLBACK */
124 
125 /* Include because most Windows GLU headers need wchar_t and
126  * the macOS OpenGL header blocks the definition of ptrdiff_t by glext.h.
127  * Include it unconditionally to avoid surprising side-effects.
128  */
129 #include <stddef.h>
130 
131 /* Include because it is needed by Vulkan and related functions.
132  * Include it unconditionally to avoid surprising side-effects.
133  */
134 #include <stdint.h>
135 
136 /* Include the chosen OpenGL or OpenGL ES headers.
137  */
138 #if defined(GLFW_INCLUDE_ES1)
139 
140  #include <GLES/gl.h>
141  #if defined(GLFW_INCLUDE_GLEXT)
142  #include <GLES/glext.h>
143  #endif
144 
145 #elif defined(GLFW_INCLUDE_ES2)
146 
147  #include <GLES2/gl2.h>
148  #if defined(GLFW_INCLUDE_GLEXT)
149  #include <GLES2/gl2ext.h>
150  #endif
151 
152 #elif defined(GLFW_INCLUDE_ES3)
153 
154  #include <GLES3/gl3.h>
155  #if defined(GLFW_INCLUDE_GLEXT)
156  #include <GLES2/gl2ext.h>
157  #endif
158 
159 #elif defined(GLFW_INCLUDE_ES31)
160 
161  #include <GLES3/gl31.h>
162  #if defined(GLFW_INCLUDE_GLEXT)
163  #include <GLES2/gl2ext.h>
164  #endif
165 
166 #elif defined(GLFW_INCLUDE_ES32)
167 
168  #include <GLES3/gl32.h>
169  #if defined(GLFW_INCLUDE_GLEXT)
170  #include <GLES2/gl2ext.h>
171  #endif
172 
173 #elif defined(GLFW_INCLUDE_GLCOREARB)
174 
175  #if defined(__APPLE__)
176 
177  #include <OpenGL/gl3.h>
178  #if defined(GLFW_INCLUDE_GLEXT)
179  #include <OpenGL/gl3ext.h>
180  #endif /*GLFW_INCLUDE_GLEXT*/
181 
182  #else /*__APPLE__*/
183 
184  #include <GL/glcorearb.h>
185 
186  #endif /*__APPLE__*/
187 
188 #elif !defined(GLFW_INCLUDE_NONE)
189 
190  #if defined(__APPLE__)
191 
192  #if !defined(GLFW_INCLUDE_GLEXT)
193  #define GL_GLEXT_LEGACY
194  #endif
195  #include <OpenGL/gl.h>
196  #if defined(GLFW_INCLUDE_GLU)
197  #include <OpenGL/glu.h>
198  #endif
199 
200  #else /*__APPLE__*/
201 
202  #include <GL/gl.h>
203  #if defined(GLFW_INCLUDE_GLEXT)
204  #include <GL/glext.h>
205  #endif
206  #if defined(GLFW_INCLUDE_GLU)
207  #include <GL/glu.h>
208  #endif
209 
210  #endif /*__APPLE__*/
211 
212 #endif /* OpenGL and OpenGL ES headers */
213 
214 #if defined(GLFW_INCLUDE_VULKAN)
215  #include <vulkan/vulkan.h>
216 #endif /* Vulkan header */
217 
218 #if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL)
219  /* GLFW_DLL must be defined by applications that are linking against the DLL
220  * version of the GLFW library. _GLFW_BUILD_DLL is defined by the GLFW
221  * configuration header when compiling the DLL version of the library.
222  */
223  #error "You must not have both GLFW_DLL and _GLFW_BUILD_DLL defined"
224 #endif
225 
226 /* GLFWAPI is used to declare public API functions for export
227  * from the DLL / shared library / dynamic library.
228  */
229 #if defined(_WIN32) && defined(_GLFW_BUILD_DLL)
230  /* We are building GLFW as a Win32 DLL */
231  #define GLFWAPI __declspec(dllexport)
232 #elif defined(_WIN32) && defined(GLFW_DLL)
233  /* We are calling GLFW as a Win32 DLL */
234  #define GLFWAPI __declspec(dllimport)
235 #elif defined(__GNUC__) && defined(_GLFW_BUILD_DLL)
236  /* We are building GLFW as a shared / dynamic library */
237  #define GLFWAPI __attribute__((visibility("default")))
238 #else
239  /* We are building or calling GLFW as a static library */
240  #define GLFWAPI
241 #endif
242 
243 
244 /*************************************************************************
245  * GLFW API tokens
246  *************************************************************************/
247 
255 #define GLFW_VERSION_MAJOR 3
256 
262 #define GLFW_VERSION_MINOR 3
263 
269 #define GLFW_VERSION_REVISION 0
270 
279 #define GLFW_TRUE 1
280 
287 #define GLFW_FALSE 0
288 
297 #define GLFW_RELEASE 0
298 
304 #define GLFW_PRESS 1
305 
311 #define GLFW_REPEAT 2
312 
321 #define GLFW_HAT_CENTERED 0
322 #define GLFW_HAT_UP 1
323 #define GLFW_HAT_RIGHT 2
324 #define GLFW_HAT_DOWN 4
325 #define GLFW_HAT_LEFT 8
326 #define GLFW_HAT_RIGHT_UP (GLFW_HAT_RIGHT | GLFW_HAT_UP)
327 #define GLFW_HAT_RIGHT_DOWN (GLFW_HAT_RIGHT | GLFW_HAT_DOWN)
328 #define GLFW_HAT_LEFT_UP (GLFW_HAT_LEFT | GLFW_HAT_UP)
329 #define GLFW_HAT_LEFT_DOWN (GLFW_HAT_LEFT | GLFW_HAT_DOWN)
330 
356 /* The unknown key */
357 #define GLFW_KEY_UNKNOWN -1
358 
359 /* Printable keys */
360 #define GLFW_KEY_SPACE 32
361 #define GLFW_KEY_APOSTROPHE 39 /* ' */
362 #define GLFW_KEY_COMMA 44 /* , */
363 #define GLFW_KEY_MINUS 45 /* - */
364 #define GLFW_KEY_PERIOD 46 /* . */
365 #define GLFW_KEY_SLASH 47 /* / */
366 #define GLFW_KEY_0 48
367 #define GLFW_KEY_1 49
368 #define GLFW_KEY_2 50
369 #define GLFW_KEY_3 51
370 #define GLFW_KEY_4 52
371 #define GLFW_KEY_5 53
372 #define GLFW_KEY_6 54
373 #define GLFW_KEY_7 55
374 #define GLFW_KEY_8 56
375 #define GLFW_KEY_9 57
376 #define GLFW_KEY_SEMICOLON 59 /* ; */
377 #define GLFW_KEY_EQUAL 61 /* = */
378 #define GLFW_KEY_A 65
379 #define GLFW_KEY_B 66
380 #define GLFW_KEY_C 67
381 #define GLFW_KEY_D 68
382 #define GLFW_KEY_E 69
383 #define GLFW_KEY_F 70
384 #define GLFW_KEY_G 71
385 #define GLFW_KEY_H 72
386 #define GLFW_KEY_I 73
387 #define GLFW_KEY_J 74
388 #define GLFW_KEY_K 75
389 #define GLFW_KEY_L 76
390 #define GLFW_KEY_M 77
391 #define GLFW_KEY_N 78
392 #define GLFW_KEY_O 79
393 #define GLFW_KEY_P 80
394 #define GLFW_KEY_Q 81
395 #define GLFW_KEY_R 82
396 #define GLFW_KEY_S 83
397 #define GLFW_KEY_T 84
398 #define GLFW_KEY_U 85
399 #define GLFW_KEY_V 86
400 #define GLFW_KEY_W 87
401 #define GLFW_KEY_X 88
402 #define GLFW_KEY_Y 89
403 #define GLFW_KEY_Z 90
404 #define GLFW_KEY_LEFT_BRACKET 91 /* [ */
405 #define GLFW_KEY_BACKSLASH 92 /* \ */
406 #define GLFW_KEY_RIGHT_BRACKET 93 /* ] */
407 #define GLFW_KEY_GRAVE_ACCENT 96 /* ` */
408 #define GLFW_KEY_WORLD_1 161 /* non-US #1 */
409 #define GLFW_KEY_WORLD_2 162 /* non-US #2 */
410 
411 /* Function keys */
412 #define GLFW_KEY_ESCAPE 256
413 #define GLFW_KEY_ENTER 257
414 #define GLFW_KEY_TAB 258
415 #define GLFW_KEY_BACKSPACE 259
416 #define GLFW_KEY_INSERT 260
417 #define GLFW_KEY_DELETE 261
418 #define GLFW_KEY_RIGHT 262
419 #define GLFW_KEY_LEFT 263
420 #define GLFW_KEY_DOWN 264
421 #define GLFW_KEY_UP 265
422 #define GLFW_KEY_PAGE_UP 266
423 #define GLFW_KEY_PAGE_DOWN 267
424 #define GLFW_KEY_HOME 268
425 #define GLFW_KEY_END 269
426 #define GLFW_KEY_CAPS_LOCK 280
427 #define GLFW_KEY_SCROLL_LOCK 281
428 #define GLFW_KEY_NUM_LOCK 282
429 #define GLFW_KEY_PRINT_SCREEN 283
430 #define GLFW_KEY_PAUSE 284
431 #define GLFW_KEY_F1 290
432 #define GLFW_KEY_F2 291
433 #define GLFW_KEY_F3 292
434 #define GLFW_KEY_F4 293
435 #define GLFW_KEY_F5 294
436 #define GLFW_KEY_F6 295
437 #define GLFW_KEY_F7 296
438 #define GLFW_KEY_F8 297
439 #define GLFW_KEY_F9 298
440 #define GLFW_KEY_F10 299
441 #define GLFW_KEY_F11 300
442 #define GLFW_KEY_F12 301
443 #define GLFW_KEY_F13 302
444 #define GLFW_KEY_F14 303
445 #define GLFW_KEY_F15 304
446 #define GLFW_KEY_F16 305
447 #define GLFW_KEY_F17 306
448 #define GLFW_KEY_F18 307
449 #define GLFW_KEY_F19 308
450 #define GLFW_KEY_F20 309
451 #define GLFW_KEY_F21 310
452 #define GLFW_KEY_F22 311
453 #define GLFW_KEY_F23 312
454 #define GLFW_KEY_F24 313
455 #define GLFW_KEY_F25 314
456 #define GLFW_KEY_KP_0 320
457 #define GLFW_KEY_KP_1 321
458 #define GLFW_KEY_KP_2 322
459 #define GLFW_KEY_KP_3 323
460 #define GLFW_KEY_KP_4 324
461 #define GLFW_KEY_KP_5 325
462 #define GLFW_KEY_KP_6 326
463 #define GLFW_KEY_KP_7 327
464 #define GLFW_KEY_KP_8 328
465 #define GLFW_KEY_KP_9 329
466 #define GLFW_KEY_KP_DECIMAL 330
467 #define GLFW_KEY_KP_DIVIDE 331
468 #define GLFW_KEY_KP_MULTIPLY 332
469 #define GLFW_KEY_KP_SUBTRACT 333
470 #define GLFW_KEY_KP_ADD 334
471 #define GLFW_KEY_KP_ENTER 335
472 #define GLFW_KEY_KP_EQUAL 336
473 #define GLFW_KEY_LEFT_SHIFT 340
474 #define GLFW_KEY_LEFT_CONTROL 341
475 #define GLFW_KEY_LEFT_ALT 342
476 #define GLFW_KEY_LEFT_SUPER 343
477 #define GLFW_KEY_RIGHT_SHIFT 344
478 #define GLFW_KEY_RIGHT_CONTROL 345
479 #define GLFW_KEY_RIGHT_ALT 346
480 #define GLFW_KEY_RIGHT_SUPER 347
481 #define GLFW_KEY_MENU 348
482 
483 #define GLFW_KEY_LAST GLFW_KEY_MENU
484 
499 #define GLFW_MOD_SHIFT 0x0001
500 
504 #define GLFW_MOD_CONTROL 0x0002
505 
509 #define GLFW_MOD_ALT 0x0004
510 
514 #define GLFW_MOD_SUPER 0x0008
515 
520 #define GLFW_MOD_CAPS_LOCK 0x0010
521 
526 #define GLFW_MOD_NUM_LOCK 0x0020
527 
537 #define GLFW_MOUSE_BUTTON_1 0
538 #define GLFW_MOUSE_BUTTON_2 1
539 #define GLFW_MOUSE_BUTTON_3 2
540 #define GLFW_MOUSE_BUTTON_4 3
541 #define GLFW_MOUSE_BUTTON_5 4
542 #define GLFW_MOUSE_BUTTON_6 5
543 #define GLFW_MOUSE_BUTTON_7 6
544 #define GLFW_MOUSE_BUTTON_8 7
545 #define GLFW_MOUSE_BUTTON_LAST GLFW_MOUSE_BUTTON_8
546 #define GLFW_MOUSE_BUTTON_LEFT GLFW_MOUSE_BUTTON_1
547 #define GLFW_MOUSE_BUTTON_RIGHT GLFW_MOUSE_BUTTON_2
548 #define GLFW_MOUSE_BUTTON_MIDDLE GLFW_MOUSE_BUTTON_3
549 
558 #define GLFW_JOYSTICK_1 0
559 #define GLFW_JOYSTICK_2 1
560 #define GLFW_JOYSTICK_3 2
561 #define GLFW_JOYSTICK_4 3
562 #define GLFW_JOYSTICK_5 4
563 #define GLFW_JOYSTICK_6 5
564 #define GLFW_JOYSTICK_7 6
565 #define GLFW_JOYSTICK_8 7
566 #define GLFW_JOYSTICK_9 8
567 #define GLFW_JOYSTICK_10 9
568 #define GLFW_JOYSTICK_11 10
569 #define GLFW_JOYSTICK_12 11
570 #define GLFW_JOYSTICK_13 12
571 #define GLFW_JOYSTICK_14 13
572 #define GLFW_JOYSTICK_15 14
573 #define GLFW_JOYSTICK_16 15
574 #define GLFW_JOYSTICK_LAST GLFW_JOYSTICK_16
575 
584 #define GLFW_GAMEPAD_BUTTON_A 0
585 #define GLFW_GAMEPAD_BUTTON_B 1
586 #define GLFW_GAMEPAD_BUTTON_X 2
587 #define GLFW_GAMEPAD_BUTTON_Y 3
588 #define GLFW_GAMEPAD_BUTTON_LEFT_BUMPER 4
589 #define GLFW_GAMEPAD_BUTTON_RIGHT_BUMPER 5
590 #define GLFW_GAMEPAD_BUTTON_BACK 6
591 #define GLFW_GAMEPAD_BUTTON_START 7
592 #define GLFW_GAMEPAD_BUTTON_GUIDE 8
593 #define GLFW_GAMEPAD_BUTTON_LEFT_THUMB 9
594 #define GLFW_GAMEPAD_BUTTON_RIGHT_THUMB 10
595 #define GLFW_GAMEPAD_BUTTON_DPAD_UP 11
596 #define GLFW_GAMEPAD_BUTTON_DPAD_RIGHT 12
597 #define GLFW_GAMEPAD_BUTTON_DPAD_DOWN 13
598 #define GLFW_GAMEPAD_BUTTON_DPAD_LEFT 14
599 #define GLFW_GAMEPAD_BUTTON_LAST GLFW_GAMEPAD_BUTTON_DPAD_LEFT
600 
601 #define GLFW_GAMEPAD_BUTTON_CROSS GLFW_GAMEPAD_BUTTON_A
602 #define GLFW_GAMEPAD_BUTTON_CIRCLE GLFW_GAMEPAD_BUTTON_B
603 #define GLFW_GAMEPAD_BUTTON_SQUARE GLFW_GAMEPAD_BUTTON_X
604 #define GLFW_GAMEPAD_BUTTON_TRIANGLE GLFW_GAMEPAD_BUTTON_Y
605 
614 #define GLFW_GAMEPAD_AXIS_LEFT_X 0
615 #define GLFW_GAMEPAD_AXIS_LEFT_Y 1
616 #define GLFW_GAMEPAD_AXIS_RIGHT_X 2
617 #define GLFW_GAMEPAD_AXIS_RIGHT_Y 3
618 #define GLFW_GAMEPAD_AXIS_LEFT_TRIGGER 4
619 #define GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER 5
620 #define GLFW_GAMEPAD_AXIS_LAST GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER
621 
636 #define GLFW_NO_ERROR 0
637 
645 #define GLFW_NOT_INITIALIZED 0x00010001
646 
655 #define GLFW_NO_CURRENT_CONTEXT 0x00010002
656 
663 #define GLFW_INVALID_ENUM 0x00010003
664 
674 #define GLFW_INVALID_VALUE 0x00010004
675 
682 #define GLFW_OUT_OF_MEMORY 0x00010005
683 
698 #define GLFW_API_UNAVAILABLE 0x00010006
699 
715 #define GLFW_VERSION_UNAVAILABLE 0x00010007
716 
726 #define GLFW_PLATFORM_ERROR 0x00010008
727 
745 #define GLFW_FORMAT_UNAVAILABLE 0x00010009
746 
753 #define GLFW_NO_WINDOW_CONTEXT 0x0001000A
754 
763 #define GLFW_FOCUSED 0x00020001
764 
768 #define GLFW_ICONIFIED 0x00020002
769 
774 #define GLFW_RESIZABLE 0x00020003
775 
780 #define GLFW_VISIBLE 0x00020004
781 
786 #define GLFW_DECORATED 0x00020005
787 
792 #define GLFW_AUTO_ICONIFY 0x00020006
793 
798 #define GLFW_FLOATING 0x00020007
799 
804 #define GLFW_MAXIMIZED 0x00020008
805 
809 #define GLFW_CENTER_CURSOR 0x00020009
810 
816 #define GLFW_TRANSPARENT_FRAMEBUFFER 0x0002000A
817 
821 #define GLFW_HOVERED 0x0002000B
822 
827 #define GLFW_FOCUS_ON_SHOW 0x0002000C
828 
833 #define GLFW_RED_BITS 0x00021001
834 
838 #define GLFW_GREEN_BITS 0x00021002
839 
843 #define GLFW_BLUE_BITS 0x00021003
844 
848 #define GLFW_ALPHA_BITS 0x00021004
849 
853 #define GLFW_DEPTH_BITS 0x00021005
854 
858 #define GLFW_STENCIL_BITS 0x00021006
859 
863 #define GLFW_ACCUM_RED_BITS 0x00021007
864 
868 #define GLFW_ACCUM_GREEN_BITS 0x00021008
869 
873 #define GLFW_ACCUM_BLUE_BITS 0x00021009
874 
878 #define GLFW_ACCUM_ALPHA_BITS 0x0002100A
879 
883 #define GLFW_AUX_BUFFERS 0x0002100B
884 
888 #define GLFW_STEREO 0x0002100C
889 
893 #define GLFW_SAMPLES 0x0002100D
894 
898 #define GLFW_SRGB_CAPABLE 0x0002100E
899 
903 #define GLFW_REFRESH_RATE 0x0002100F
904 
908 #define GLFW_DOUBLEBUFFER 0x00021010
909 
915 #define GLFW_CLIENT_API 0x00022001
916 
921 #define GLFW_CONTEXT_VERSION_MAJOR 0x00022002
922 
927 #define GLFW_CONTEXT_VERSION_MINOR 0x00022003
928 
933 #define GLFW_CONTEXT_REVISION 0x00022004
934 
939 #define GLFW_CONTEXT_ROBUSTNESS 0x00022005
940 
945 #define GLFW_OPENGL_FORWARD_COMPAT 0x00022006
946 
951 #define GLFW_OPENGL_DEBUG_CONTEXT 0x00022007
952 
957 #define GLFW_OPENGL_PROFILE 0x00022008
958 
963 #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009
964 
969 #define GLFW_CONTEXT_NO_ERROR 0x0002200A
970 
975 #define GLFW_CONTEXT_CREATION_API 0x0002200B
976 
979 #define GLFW_SCALE_TO_MONITOR 0x0002200C
980 
981 #define GLFW_COCOA_RETINA_FRAMEBUFFER 0x00023001
982 #define GLFW_COCOA_FRAME_NAME 0x00023002
983 #define GLFW_COCOA_GRAPHICS_SWITCHING 0x00023003
984 
985 #define GLFW_X11_CLASS_NAME 0x00024001
986 #define GLFW_X11_INSTANCE_NAME 0x00024002
987 
989 #define GLFW_NO_API 0
990 #define GLFW_OPENGL_API 0x00030001
991 #define GLFW_OPENGL_ES_API 0x00030002
992 
993 #define GLFW_NO_ROBUSTNESS 0
994 #define GLFW_NO_RESET_NOTIFICATION 0x00031001
995 #define GLFW_LOSE_CONTEXT_ON_RESET 0x00031002
996 
997 #define GLFW_OPENGL_ANY_PROFILE 0
998 #define GLFW_OPENGL_CORE_PROFILE 0x00032001
999 #define GLFW_OPENGL_COMPAT_PROFILE 0x00032002
1000 
1001 #define GLFW_CURSOR 0x00033001
1002 #define GLFW_STICKY_KEYS 0x00033002
1003 #define GLFW_STICKY_MOUSE_BUTTONS 0x00033003
1004 #define GLFW_LOCK_KEY_MODS 0x00033004
1005 
1006 #define GLFW_CURSOR_NORMAL 0x00034001
1007 #define GLFW_CURSOR_HIDDEN 0x00034002
1008 #define GLFW_CURSOR_DISABLED 0x00034003
1009 
1010 #define GLFW_ANY_RELEASE_BEHAVIOR 0
1011 #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001
1012 #define GLFW_RELEASE_BEHAVIOR_NONE 0x00035002
1013 
1014 #define GLFW_NATIVE_CONTEXT_API 0x00036001
1015 #define GLFW_EGL_CONTEXT_API 0x00036002
1016 #define GLFW_OSMESA_CONTEXT_API 0x00036003
1017 
1030 #define GLFW_ARROW_CURSOR 0x00036001
1031 
1035 #define GLFW_IBEAM_CURSOR 0x00036002
1036 
1040 #define GLFW_CROSSHAIR_CURSOR 0x00036003
1041 
1045 #define GLFW_HAND_CURSOR 0x00036004
1046 
1050 #define GLFW_HRESIZE_CURSOR 0x00036005
1051 
1055 #define GLFW_VRESIZE_CURSOR 0x00036006
1056 
1058 #define GLFW_CONNECTED 0x00040001
1059 #define GLFW_DISCONNECTED 0x00040002
1060 
1067 #define GLFW_JOYSTICK_HAT_BUTTONS 0x00050001
1068 
1072 #define GLFW_COCOA_CHDIR_RESOURCES 0x00051001
1073 
1077 #define GLFW_COCOA_MENUBAR 0x00051002
1078 
1080 #define GLFW_DONT_CARE -1
1081 
1082 
1083 /*************************************************************************
1084  * GLFW API types
1085  *************************************************************************/
1086 
1099 typedef void (*GLFWglproc)(void);
1100 
1113 typedef void (*GLFWvkproc)(void);
1114 
1125 typedef struct GLFWmonitor GLFWmonitor;
1126 
1137 typedef struct GLFWwindow GLFWwindow;
1138 
1149 typedef struct GLFWcursor GLFWcursor;
1150 
1165 typedef void (* GLFWerrorfun)(int,const char*);
1166 
1184 typedef void (* GLFWwindowposfun)(GLFWwindow*,int,int);
1185 
1202 typedef void (* GLFWwindowsizefun)(GLFWwindow*,int,int);
1203 
1218 typedef void (* GLFWwindowclosefun)(GLFWwindow*);
1219 
1234 typedef void (* GLFWwindowrefreshfun)(GLFWwindow*);
1235 
1251 typedef void (* GLFWwindowfocusfun)(GLFWwindow*,int);
1252 
1269 typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int);
1270 
1287 typedef void (* GLFWwindowmaximizefun)(GLFWwindow*,int);
1288 
1305 typedef void (* GLFWframebuffersizefun)(GLFWwindow*,int,int);
1306 
1323 typedef void (* GLFWwindowcontentscalefun)(GLFWwindow*,float,float);
1324 
1344 typedef void (* GLFWmousebuttonfun)(GLFWwindow*,int,int,int);
1345 
1363 typedef void (* GLFWcursorposfun)(GLFWwindow*,double,double);
1364 
1380 typedef void (* GLFWcursorenterfun)(GLFWwindow*,int);
1381 
1397 typedef void (* GLFWscrollfun)(GLFWwindow*,double,double);
1398 
1418 typedef void (* GLFWkeyfun)(GLFWwindow*,int,int,int,int);
1419 
1435 typedef void (* GLFWcharfun)(GLFWwindow*,unsigned int);
1436 
1458 typedef void (* GLFWcharmodsfun)(GLFWwindow*,unsigned int,int);
1459 
1475 typedef void (* GLFWdropfun)(GLFWwindow*,int,const char**);
1476 
1492 typedef void (* GLFWmonitorfun)(GLFWmonitor*,int);
1493 
1510 typedef void (* GLFWjoystickfun)(int,int);
1511 
1525 typedef struct GLFWvidmode
1526 {
1529  int width;
1532  int height;
1535  int redBits;
1545 } GLFWvidmode;
1546 
1559 typedef struct GLFWgammaramp
1560 {
1563  unsigned short* red;
1566  unsigned short* green;
1569  unsigned short* blue;
1572  unsigned int size;
1573 } GLFWgammaramp;
1574 
1588 typedef struct GLFWimage
1589 {
1592  int width;
1595  int height;
1598  unsigned char* pixels;
1599 } GLFWimage;
1600 
1612 typedef struct GLFWgamepadstate
1613 {
1617  unsigned char buttons[15];
1621  float axes[6];
1623 
1624 
1625 /*************************************************************************
1626  * GLFW API functions
1627  *************************************************************************/
1628 
1661 GLFWAPI int glfwInit(void);
1662 
1693 GLFWAPI void glfwTerminate(void);
1694 
1725 GLFWAPI void glfwInitHint(int hint, int value);
1726 
1752 GLFWAPI void glfwGetVersion(int* major, int* minor, int* rev);
1753 
1783 GLFWAPI const char* glfwGetVersionString(void);
1784 
1814 GLFWAPI int glfwGetError(const char** description);
1815 
1854 
1882 GLFWAPI GLFWmonitor** glfwGetMonitors(int* count);
1883 
1906 GLFWAPI GLFWmonitor* glfwGetPrimaryMonitor(void);
1907 
1931 GLFWAPI void glfwGetMonitorPos(GLFWmonitor* monitor, int* xpos, int* ypos);
1932 
1965 GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor* monitor, int* widthMM, int* heightMM);
1966 
1995 GLFWAPI void glfwGetMonitorContentScale(GLFWmonitor* monitor, float* xscale, float* yscale);
1996 
2021 GLFWAPI const char* glfwGetMonitorName(GLFWmonitor* monitor);
2022 
2047 GLFWAPI void glfwSetMonitorUserPointer(GLFWmonitor* monitor, void* pointer);
2048 
2071 GLFWAPI void* glfwGetMonitorUserPointer(GLFWmonitor* monitor);
2072 
2095 
2127 GLFWAPI const GLFWvidmode* glfwGetVideoModes(GLFWmonitor* monitor, int* count);
2128 
2155 GLFWAPI const GLFWvidmode* glfwGetVideoMode(GLFWmonitor* monitor);
2156 
2188 GLFWAPI void glfwSetGamma(GLFWmonitor* monitor, float gamma);
2189 
2218 GLFWAPI const GLFWgammaramp* glfwGetGammaRamp(GLFWmonitor* monitor);
2219 
2259 GLFWAPI void glfwSetGammaRamp(GLFWmonitor* monitor, const GLFWgammaramp* ramp);
2260 
2278 GLFWAPI void glfwDefaultWindowHints(void);
2279 
2313 GLFWAPI void glfwWindowHint(int hint, int value);
2314 
2351 GLFWAPI void glfwWindowHintString(int hint, const char* value);
2352 
2502 GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title, GLFWmonitor* monitor, GLFWwindow* share);
2503 
2531 GLFWAPI void glfwDestroyWindow(GLFWwindow* window);
2532 
2551 GLFWAPI int glfwWindowShouldClose(GLFWwindow* window);
2552 
2573 GLFWAPI void glfwSetWindowShouldClose(GLFWwindow* window, int value);
2574 
2598 GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title);
2599 
2645 GLFWAPI void glfwSetWindowIcon(GLFWwindow* window, int count, const GLFWimage* images);
2646 
2677 GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos);
2678 
2712 GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos);
2713 
2742 GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height);
2743 
2785 GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow* window, int minwidth, int minheight, int maxwidth, int maxheight);
2786 
2828 GLFWAPI void glfwSetWindowAspectRatio(GLFWwindow* window, int numer, int denom);
2829 
2869 GLFWAPI void glfwSetWindowSize(GLFWwindow* window, int width, int height);
2870 
2898 GLFWAPI void glfwGetFramebufferSize(GLFWwindow* window, int* width, int* height);
2899 
2935 GLFWAPI void glfwGetWindowFrameSize(GLFWwindow* window, int* left, int* top, int* right, int* bottom);
2936 
2966 GLFWAPI void glfwGetWindowContentScale(GLFWwindow* window, float* xscale, float* yscale);
2967 
2993 GLFWAPI float glfwGetWindowOpacity(GLFWwindow* window);
2994 
3022 GLFWAPI void glfwSetWindowOpacity(GLFWwindow* window, float opacity);
3023 
3053 GLFWAPI void glfwIconifyWindow(GLFWwindow* window);
3054 
3080 GLFWAPI void glfwRestoreWindow(GLFWwindow* window);
3081 
3105 GLFWAPI void glfwMaximizeWindow(GLFWwindow* window);
3106 
3132 GLFWAPI void glfwShowWindow(GLFWwindow* window);
3133 
3154 GLFWAPI void glfwHideWindow(GLFWwindow* window);
3155 
3193 GLFWAPI void glfwFocusWindow(GLFWwindow* window);
3194 
3220 GLFWAPI void glfwRequestWindowAttention(GLFWwindow* window);
3221 
3242 GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window);
3243 
3301 GLFWAPI void glfwSetWindowMonitor(GLFWwindow* window, GLFWmonitor* monitor, int xpos, int ypos, int width, int height, int refreshRate);
3302 
3335 GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib);
3336 
3372 GLFWAPI void glfwSetWindowAttrib(GLFWwindow* window, int attrib, int value);
3373 
3395 GLFWAPI void glfwSetWindowUserPointer(GLFWwindow* window, void* pointer);
3396 
3416 GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow* window);
3417 
3445 
3470 
3503 
3532 
3560 
3586 
3609 
3632 
3656 
3693 GLFWAPI void glfwPollEvents(void);
3694 
3742 GLFWAPI void glfwWaitEvents(void);
3743 
3793 
3816 GLFWAPI void glfwPostEmptyEvent(void);
3817 
3839 GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode);
3840 
3893 GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value);
3894 
3959 GLFWAPI const char* glfwGetKeyName(int key, int scancode);
3960 
3983 GLFWAPI int glfwGetKeyScancode(int key);
3984 
4023 GLFWAPI int glfwGetKey(GLFWwindow* window, int key);
4024 
4052 GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button);
4053 
4090 GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
4091 
4130 GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos);
4131 
4168 GLFWAPI GLFWcursor* glfwCreateCursor(const GLFWimage* image, int xhot, int yhot);
4169 
4192 
4218 GLFWAPI void glfwDestroyCursor(GLFWcursor* cursor);
4219 
4245 GLFWAPI void glfwSetCursor(GLFWwindow* window, GLFWcursor* cursor);
4246 
4289 
4327 
4362 
4392 
4417 
4441 
4468 
4498 
4521 GLFWAPI int glfwJoystickPresent(int jid);
4522 
4554 GLFWAPI const float* glfwGetJoystickAxes(int jid, int* count);
4555 
4595 GLFWAPI const unsigned char* glfwGetJoystickButtons(int jid, int* count);
4596 
4652 GLFWAPI const unsigned char* glfwGetJoystickHats(int jid, int* count);
4653 
4683 GLFWAPI const char* glfwGetJoystickName(int jid);
4684 
4724 GLFWAPI const char* glfwGetJoystickGUID(int jid);
4725 
4750 GLFWAPI void glfwSetJoystickUserPointer(int jid, void* pointer);
4751 
4774 GLFWAPI void* glfwGetJoystickUserPointer(int jid);
4775 
4802 GLFWAPI int glfwJoystickIsGamepad(int jid);
4803 
4832 
4865 GLFWAPI int glfwUpdateGamepadMappings(const char* string);
4866 
4895 GLFWAPI const char* glfwGetGamepadName(int jid);
4896 
4934 
4958 GLFWAPI void glfwSetClipboardString(GLFWwindow* window, const char* string);
4959 
4988 GLFWAPI const char* glfwGetClipboardString(GLFWwindow* window);
4989 
5015 GLFWAPI double glfwGetTime(void);
5016 
5042 GLFWAPI void glfwSetTime(double time);
5043 
5065 
5085 
5122 GLFWAPI void glfwMakeContextCurrent(GLFWwindow* window);
5123 
5143 GLFWAPI GLFWwindow* glfwGetCurrentContext(void);
5144 
5177 GLFWAPI void glfwSwapBuffers(GLFWwindow* window);
5178 
5223 GLFWAPI void glfwSwapInterval(int interval);
5224 
5261 GLFWAPI int glfwExtensionSupported(const char* extension);
5262 
5303 GLFWAPI GLFWglproc glfwGetProcAddress(const char* procname);
5304 
5331 GLFWAPI int glfwVulkanSupported(void);
5332 
5379 
5380 #if defined(VK_VERSION_1_0)
5381 
5421 GLFWAPI GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char* procname);
5422 
5459 
5519 GLFWAPI VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow* window, const VkAllocationCallbacks* allocator, VkSurfaceKHR* surface);
5520 
5521 #endif /*VK_VERSION_1_0*/
5522 
5523 
5524 /*************************************************************************
5525  * Global definition cleanup
5526  *************************************************************************/
5527 
5528 /* ------------------- BEGIN SYSTEM/COMPILER SPECIFIC -------------------- */
5529 
5530 #ifdef GLFW_WINGDIAPI_DEFINED
5531  #undef WINGDIAPI
5532  #undef GLFW_WINGDIAPI_DEFINED
5533 #endif
5534 
5535 #ifdef GLFW_CALLBACK_DEFINED
5536  #undef CALLBACK
5537  #undef GLFW_CALLBACK_DEFINED
5538 #endif
5539 
5540 /* Some OpenGL related headers need GLAPIENTRY, but it is unconditionally
5541  * defined by some gl.h variants (OpenBSD) so define it after if needed.
5542  */
5543 #ifndef GLAPIENTRY
5544  #define GLAPIENTRY APIENTRY
5545 #endif
5546 
5547 /* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */
5548 
5549 
5550 #ifdef __cplusplus
5551 }
5552 #endif
5553 
5554 #endif /* _glfw3_h_ */
5555 
Gamepad input state.
Definition: glfw3.h:1612
GLFWAPI void glfwSetWindowAspectRatio(GLFWwindow *window, int numer, int denom)
Sets the aspect ratio of the specified window.
Definition: window.c:618
int redBits
Definition: glfw3.h:1535
GLFWAPI void glfwSetInputMode(GLFWwindow *window, int mode, int value)
Sets an input option for the specified window.
Definition: input.c:484
void(* GLFWwindowiconifyfun)(GLFWwindow *, int)
The function signature for window iconify/restore callbacks.
Definition: glfw3.h:1269
int height
Definition: glfw3.h:1532
GLFWAPI void glfwFocusWindow(GLFWwindow *window)
Brings the specified window to front and sets input focus.
Definition: window.c:794
GLFWAPI void glfwGetWindowSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the client area of the specified window.
Definition: window.c:544
GLenum GLsizei const void * pointer
GLFWAPI GLFWcursor * glfwCreateCursor(const GLFWimage *image, int xhot, int yhot)
Creates a custom cursor.
Definition: input.c:692
void(* GLFWcharmodsfun)(GLFWwindow *, unsigned int, int)
The function signature for Unicode character with modifiers callbacks.
Definition: glfw3.h:1458
typedef void(APIENTRY *GLDEBUGPROC)(GLenum source
int blueBits
Definition: glfw3.h:1541
GLFWAPI void glfwSetCursorPos(GLFWwindow *window, double xpos, double ypos)
Sets the position of the cursor, relative to the client area of the window.
Definition: input.c:660
GLFWAPI GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun)
Sets the monitor configuration callback.
Definition: monitor.c:393
GLFWAPI int glfwGetInputMode(GLFWwindow *window, int mode)
Returns the value of an input option for the specified window.
Definition: input.c:461
VkResult
Definition: vulkan_core.h:122
GLFWAPI void glfwSetGamma(GLFWmonitor *monitor, float gamma)
Generates a gamma ramp and sets it for the specified monitor.
Definition: monitor.c:428
GLFWAPI int glfwGetWindowAttrib(GLFWwindow *window, int attrib)
Returns an attribute of the specified window.
Definition: window.c:804
GLFWAPI void glfwSetWindowTitle(GLFWwindow *window, const char *title)
Sets the title of the specified window.
Definition: window.c:495
unsigned char * pixels
Definition: glfw3.h:1598
GLFWAPI GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char *procname)
Definition: src/vulkan.c:243
GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow *window, GLFWwindowsizefun cbfun)
Sets the size callback for the specified window.
Definition: window.c:984
void(* GLFWmonitorfun)(GLFWmonitor *, int)
The function signature for monitor configuration callbacks.
Definition: glfw3.h:1492
#define GLFWAPI
Definition: glfw3.h:240
GLdouble GLdouble GLdouble top
GLFWAPI GLFWglproc glfwGetProcAddress(const char *procname)
Returns the address of the specified function for the current context.
Definition: context.c:741
GLFWAPI void glfwSetWindowSizeLimits(GLFWwindow *window, int minwidth, int minheight, int maxwidth, int maxheight)
Sets the size limits of the specified window.
Definition: window.c:573
GLFWAPI void glfwHideWindow(GLFWwindow *window)
Hides the specified window.
Definition: window.c:781
GLFWAPI int glfwJoystickPresent(int jid)
Returns whether the specified joystick is present.
Definition: input.c:875
def axes(out, pos, rotation=np.eye(3), size=0.075, thickness=2)
GLFWAPI uint64_t glfwGetTimerFrequency(void)
Returns the frequency, in Hz, of the raw timer.
Definition: input.c:1302
int width
Definition: glfw3.h:1529
GLFWAPI void glfwSetWindowAttrib(GLFWwindow *window, int attrib, int value)
Sets an attribute of the specified window.
Definition: window.c:863
GLFWAPI const unsigned char * glfwGetJoystickButtons(int jid, int *count)
Returns the state of all buttons of the specified joystick.
Definition: input.c:926
GLFWAPI int glfwVulkanSupported(void)
Returns whether the Vulkan loader and an ICD have been found.
Definition: src/vulkan.c:219
GLFWAPI const GLFWvidmode * glfwGetVideoMode(GLFWmonitor *monitor)
Returns the current mode of the specified monitor.
Definition: monitor.c:417
GLFWAPI GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun cbfun)
Sets the joystick configuration callback.
Definition: input.c:1070
GLfloat value
GLFWAPI void * glfwGetWindowUserPointer(GLFWwindow *window)
Returns the user pointer of the specified window.
Definition: window.c:964
struct GLFWimage GLFWimage
Image data.
int height
Definition: glfw3.h:1595
struct GLFWmonitor GLFWmonitor
GLFWAPI float glfwGetWindowOpacity(GLFWwindow *window)
Returns the opacity of the whole window.
Definition: window.c:696
void(* GLFWdropfun)(GLFWwindow *, int, const char **)
The function signature for file drop callbacks.
Definition: glfw3.h:1475
GLFWAPI GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun)
Sets the error callback.
Definition: init.c:309
GLFWAPI GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow *window, GLFWmousebuttonfun cbfun)
Sets the mouse button callback.
Definition: input.c:821
GLFWAPI void glfwPostEmptyEvent(void)
Posts an empty event to the event queue.
Definition: window.c:1104
void(* GLFWkeyfun)(GLFWwindow *, int, int, int, int)
The function signature for keyboard key callbacks.
Definition: glfw3.h:1418
int refreshRate
Definition: glfw3.h:1544
unsigned short * red
Definition: glfw3.h:1563
void(* GLFWmousebuttonfun)(GLFWwindow *, int, int, int)
The function signature for mouse button callbacks.
Definition: glfw3.h:1344
void(* GLFWcharfun)(GLFWwindow *, unsigned int)
The function signature for Unicode character callbacks.
Definition: glfw3.h:1435
GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow *window, GLFWframebuffersizefun cbfun)
Sets the framebuffer resize callback for the specified window.
Definition: window.c:1050
GLFWAPI uint64_t glfwGetTimerValue(void)
Returns the current value of the raw timer.
Definition: input.c:1296
GLFWAPI int glfwGetError(const char **description)
Returns and clears the last error for the calling thread.
Definition: init.c:285
GLFWAPI const char * glfwGetKeyName(int key, int scancode)
Returns the layout-specific name of the specified printable key.
Definition: input.c:559
GLFWAPI int glfwGetMouseButton(GLFWwindow *window, int button)
Returns the last reported state of a mouse button for the specified window.
Definition: input.c:614
unsigned short * green
Definition: glfw3.h:1566
GLFWAPI void glfwGetMonitorContentScale(GLFWmonitor *monitor, float *xscale, float *yscale)
Retrieves the content scale for the specified monitor.
Definition: monitor.c:351
void(* GLFWvkproc)(void)
Vulkan API function pointer type.
Definition: glfw3.h:1113
GLFWAPI void * glfwGetJoystickUserPointer(int jid)
Returns the user pointer of the specified joystick.
Definition: input.c:1054
GLenum GLenum GLsizei void * image
GLFWAPI void * glfwGetMonitorUserPointer(GLFWmonitor *monitor)
Returns the user pointer of the specified monitor.
Definition: monitor.c:384
int greenBits
Definition: glfw3.h:1538
GLFWAPI int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily)
Definition: src/vulkan.c:269
GLuint64 key
Definition: glext.h:8966
GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow *window, GLFWwindowiconifyfun cbfun)
Sets the iconify callback for the specified window.
Definition: window.c:1028
GLFWAPI const char * glfwGetClipboardString(GLFWwindow *window)
Returns the contents of the clipboard as a string.
Definition: input.c:1269
GLFWAPI int glfwInit(void)
Initializes the GLFW library.
Definition: init.c:198
GLenum mode
GLFWAPI const char * glfwGetGamepadName(int jid)
Returns the human-readable gamepad name for the specified joystick.
Definition: input.c:1162
GLFWAPI GLFWmonitor ** glfwGetMonitors(int *count)
Returns the currently connected monitors.
Definition: monitor.c:296
GLFWAPI void glfwSetWindowUserPointer(GLFWwindow *window, void *pointer)
Sets the user pointer of the specified window.
Definition: window.c:955
void(* GLFWcursorposfun)(GLFWwindow *, double, double)
The function signature for cursor position callbacks.
Definition: glfw3.h:1363
GLFWAPI const char * glfwGetMonitorName(GLFWmonitor *monitor)
Returns the name of the specified monitor.
Definition: monitor.c:366
GLFWAPI GLFWwindowrefreshfun glfwSetWindowRefreshCallback(GLFWwindow *window, GLFWwindowrefreshfun cbfun)
Sets the refresh callback for the specified window.
Definition: window.c:1006
void(* GLFWwindowcontentscalefun)(GLFWwindow *, float, float)
The function signature for window content scale callbacks.
Definition: glfw3.h:1323
GLFWAPI int glfwGetGamepadState(int jid, GLFWgamepadstate *state)
Retrieves the state of the specified joystick remapped as a gamepad.
Definition: input.c:1190
GLFWAPI void glfwSwapInterval(int interval)
Sets the swap interval for the current context.
Definition: context.c:658
void * VkInstance
Definition: internal.h:118
unsigned int uint32_t
Definition: stdint.h:80
GLFWAPI const char * glfwGetVersionString(void)
Returns a string describing the compile-time configuration.
Definition: init.c:280
GLFWAPI GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow *window, GLFWwindowposfun cbfun)
Sets the position callback for the specified window.
Definition: window.c:973
void(* GLFWwindowsizefun)(GLFWwindow *, int, int)
The function signature for window resize callbacks.
Definition: glfw3.h:1202
GLFWAPI int glfwUpdateGamepadMappings(const char *string)
Adds the specified SDL_GameControllerDB gamepad mappings.
Definition: input.c:1077
void * VkPhysicalDevice
Definition: internal.h:119
GLFWAPI void glfwIconifyWindow(GLFWwindow *window)
Iconifies the specified window.
Definition: window.c:724
GLFWAPI void glfwGetVersion(int *major, int *minor, int *rev)
Retrieves the version of the GLFW library.
Definition: init.c:270
GLFWAPI void glfwGetWindowContentScale(GLFWwindow *window, float *xscale, float *yscale)
Retrieves the content scale for the specified window.
Definition: window.c:681
GLint GLsizei GLsizei height
GLFWAPI void glfwDefaultWindowHints(void)
Resets all window hints to their default values.
Definition: window.c:252
GLFWAPI void glfwSwapBuffers(GLFWwindow *window)
Swaps the front and back buffers of the specified window.
Definition: context.c:641
GLFWAPI void glfwMakeContextCurrent(GLFWwindow *window)
Makes the context of the specified window current for the calling thread.
Definition: context.c:611
struct GLFWgammaramp GLFWgammaramp
Gamma ramp.
unsigned int size
Definition: glfw3.h:1572
GLFWAPI void glfwGetWindowFrameSize(GLFWwindow *window, int *left, int *top, int *right, int *bottom)
Retrieves the size of the frame of the window.
Definition: window.c:661
GLFWAPI GLFWcharfun glfwSetCharCallback(GLFWwindow *window, GLFWcharfun cbfun)
Sets the Unicode character callback.
Definition: input.c:801
unsigned __int64 uint64_t
Definition: stdint.h:90
GLFWAPI const GLFWgammaramp * glfwGetGammaRamp(GLFWmonitor *monitor)
Returns the current gamma ramp for the specified monitor.
Definition: monitor.c:470
GLFWAPI void glfwMaximizeWindow(GLFWwindow *window)
Maximizes the specified window.
Definition: window.c:742
void(* GLFWframebuffersizefun)(GLFWwindow *, int, int)
The function signature for framebuffer resize callbacks.
Definition: glfw3.h:1305
GLFWAPI GLFWcursorposfun glfwSetCursorPosCallback(GLFWwindow *window, GLFWcursorposfun cbfun)
Sets the cursor position callback.
Definition: input.c:832
GLint left
Definition: glext.h:1963
uint64_t VkSurfaceKHR
Definition: internal.h:120
GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow *window, GLFWwindowfocusfun cbfun)
Sets the focus callback for the specified window.
Definition: window.c:1017
GLFWAPI GLFWcursorenterfun glfwSetCursorEnterCallback(GLFWwindow *window, GLFWcursorenterfun cbfun)
Sets the cursor enter/exit callback.
Definition: input.c:843
void(* GLFWwindowposfun)(GLFWwindow *, int, int)
The function signature for window position callbacks.
Definition: glfw3.h:1184
GLFWAPI GLFWmonitor * glfwGetWindowMonitor(GLFWwindow *window)
Returns the monitor that the window uses for full screen mode.
Definition: window.c:907
GLFWAPI void glfwSetWindowSize(GLFWwindow *window, int width, int height)
Sets the size of the client area of the specified window.
Definition: window.c:558
GLFWAPI GLFWcharmodsfun glfwSetCharModsCallback(GLFWwindow *window, GLFWcharmodsfun cbfun)
Sets the Unicode character with modifiers callback.
Definition: input.c:811
GLFWAPI void glfwSetWindowPos(GLFWwindow *window, int xpos, int ypos)
Sets the position of the client area of the specified window.
Definition: window.c:531
struct GLFWgamepadstate GLFWgamepadstate
Gamepad input state.
GLFWAPI void glfwSetJoystickUserPointer(int jid, void *pointer)
Sets the user pointer of the specified joystick.
Definition: input.c:1038
GLFWAPI void glfwSetWindowShouldClose(GLFWwindow *window, int value)
Sets the close flag of the specified window.
Definition: window.c:486
GLFWAPI void glfwWaitEvents(void)
Waits until events are queued and processes them.
Definition: window.c:1078
GLFWAPI void glfwSetClipboardString(GLFWwindow *window, const char *string)
Sets the clipboard to the specified string.
Definition: input.c:1261
GLFWAPI void glfwSetTime(double time)
Sets the GLFW timer.
Definition: input.c:1282
GLFWAPI GLFWwindowcontentscalefun glfwSetWindowContentScaleCallback(GLFWwindow *window, GLFWwindowcontentscalefun cbfun)
Sets the window content scale callback for the specified window.
Definition: window.c:1061
int width
Definition: glfw3.h:1592
GLFWAPI 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.
Definition: window.c:916
GLFWAPI GLFWwindow * glfwCreateWindow(int width, int height, const char *title, GLFWmonitor *monitor, GLFWwindow *share)
Creates a window and its associated context.
Definition: window.c:151
GLFWAPI void glfwWaitEventsTimeout(double timeout)
Waits with timeout until events are queued and processes them.
Definition: window.c:1088
GLFWAPI const unsigned char * glfwGetJoystickHats(int jid, int *count)
Returns the state of all hats of the specified joystick.
Definition: input.c:959
GLFWAPI void glfwGetMonitorPos(GLFWmonitor *monitor, int *xpos, int *ypos)
Returns the position of the monitor&#39;s viewport on the virtual screen.
Definition: monitor.c:318
GLFWAPI void glfwSetCursor(GLFWwindow *window, GLFWcursor *cursor)
Sets the cursor for the window.
Definition: input.c:778
GLFWAPI void glfwSetWindowOpacity(GLFWwindow *window, float opacity)
Sets the opacity of the whole window.
Definition: window.c:705
GLFWAPI void glfwGetCursorPos(GLFWwindow *window, double *xpos, double *ypos)
Retrieves the position of the cursor relative to the client area of the window.
Definition: input.c:637
GLFWAPI double glfwGetTime(void)
Returns the value of the GLFW timer.
Definition: input.c:1275
Gamma ramp.
Definition: glfw3.h:1559
void(* GLFWjoystickfun)(int, int)
The function signature for joystick configuration callbacks.
Definition: glfw3.h:1510
GLFWAPI void glfwDestroyCursor(GLFWcursor *cursor)
Destroys a cursor.
Definition: input.c:743
unsigned short * blue
Definition: glfw3.h:1569
Video mode type.
Definition: glfw3.h:1525
GLFWAPI void glfwGetWindowPos(GLFWwindow *window, int *xpos, int *ypos)
Retrieves the position of the client area of the specified window.
Definition: window.c:517
GLFWAPI void glfwRequestWindowAttention(GLFWwindow *window)
Requests user attention to the specified window.
Definition: window.c:771
GLdouble right
GLbitfield GLuint64 timeout
GLFWAPI VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow *handle, const VkAllocationCallbacks *allocator, VkSurfaceKHR *surface)
Definition: src/vulkan.c:293
GLFWAPI GLFWscrollfun glfwSetScrollCallback(GLFWwindow *window, GLFWscrollfun cbfun)
Sets the scroll callback.
Definition: input.c:854
static double xpos
Definition: splitview.c:33
GLFWAPI GLFWdropfun glfwSetDropCallback(GLFWwindow *window, GLFWdropfun cbfun)
Sets the file drop callback.
Definition: input.c:865
GLFWAPI const GLFWvidmode * glfwGetVideoModes(GLFWmonitor *monitor, int *count)
Returns the available video modes for the specified monitor.
Definition: monitor.c:400
GLFWAPI GLFWmonitor * glfwGetPrimaryMonitor(void)
Returns the primary monitor.
Definition: monitor.c:308
GLFWAPI void glfwDestroyWindow(GLFWwindow *window)
Destroys the specified window and its context.
Definition: window.c:444
GLFWAPI void glfwGetFramebufferSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the framebuffer of the specified window.
Definition: window.c:647
GLFWAPI int glfwJoystickIsGamepad(int jid)
Returns whether the specified joystick has a gamepad mapping.
Definition: input.c:1137
GLFWAPI void glfwShowWindow(GLFWwindow *window)
Makes the specified window visible.
Definition: window.c:755
GLint GLsizei count
GLFWAPI GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow *window, GLFWwindowclosefun cbfun)
Sets the close callback for the specified window.
Definition: window.c:995
struct GLFWcursor GLFWcursor
Opaque cursor object.
Definition: glfw3.h:1149
GLFWAPI void glfwTerminate(void)
Terminates the GLFW library.
Definition: init.c:243
void(* GLFWwindowclosefun)(GLFWwindow *)
The function signature for window close callbacks.
Definition: glfw3.h:1218
GLFWAPI void glfwSetMonitorUserPointer(GLFWmonitor *monitor, void *pointer)
Sets the user pointer of the specified monitor.
Definition: monitor.c:375
GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor *monitor, int *widthMM, int *heightMM)
Returns the physical size of the monitor.
Definition: monitor.c:333
GLFWAPI GLFWkeyfun glfwSetKeyCallback(GLFWwindow *window, GLFWkeyfun cbfun)
Sets the key callback.
Definition: input.c:791
GLFWAPI void glfwPollEvents(void)
Processes all pending events.
Definition: window.c:1072
GLFWAPI int glfwGetKeyScancode(int key)
Returns the platform-specific scancode of the specified key.
Definition: input.c:578
void(* GLFWcursorenterfun)(GLFWwindow *, int)
The function signature for cursor enter/leave callbacks.
Definition: glfw3.h:1380
GLFWAPI const char ** glfwGetRequiredInstanceExtensions(uint32_t *count)
Returns the Vulkan instance extensions required by GLFW.
Definition: src/vulkan.c:225
GLFWAPI int glfwExtensionSupported(const char *extension)
Returns whether the specified extension is available.
Definition: context.c:675
Image data.
Definition: glfw3.h:1588
void(* GLFWscrollfun)(GLFWwindow *, double, double)
The function signature for scroll callbacks.
Definition: glfw3.h:1397
void(* GLFWwindowmaximizefun)(GLFWwindow *, int)
The function signature for window maximize/restore callbacks.
Definition: glfw3.h:1287
GLFWAPI GLFWcursor * glfwCreateStandardCursor(int shape)
Creates a cursor with a standard shape.
Definition: input.c:713
struct GLFWvidmode GLFWvidmode
Video mode type.
GLFWAPI void glfwWindowHintString(int hint, const char *value)
Sets the specified window hint to the desired value.
Definition: window.c:419
GLFWAPI void glfwRestoreWindow(GLFWwindow *window)
Restores the specified window.
Definition: window.c:733
GLFWAPI const float * glfwGetJoystickAxes(int jid, int *count)
Returns the values of all axes of the specified joystick.
Definition: input.c:897
GLFWAPI int glfwGetKey(GLFWwindow *window, int key)
Returns the last reported state of a keyboard key for the specified window.
Definition: input.c:591
void(* GLFWwindowrefreshfun)(GLFWwindow *)
The function signature for window content refresh callbacks.
Definition: glfw3.h:1234
auto device
Definition: pyrs_net.cpp:17
GLFWAPI GLFWwindow * glfwGetCurrentContext(void)
Returns the window whose context is current on the calling thread.
Definition: context.c:635
struct GLFWwindow GLFWwindow
GLFWAPI void glfwWindowHint(int hint, int value)
Sets the specified window hint to the desired value.
Definition: window.c:291
GLFWAPI void glfwSetWindowIcon(GLFWwindow *window, int count, const GLFWimage *images)
Sets the icon for the specified window.
Definition: window.c:505
void(* GLFWglproc)(void)
Client API function pointer type.
Definition: glfw3.h:1099
GLint GLsizei width
GLFWAPI GLFWwindowmaximizefun glfwSetWindowMaximizeCallback(GLFWwindow *window, GLFWwindowmaximizefun cbfun)
Sets the maximize callback for the specified window.
Definition: window.c:1039
GLFWAPI void glfwSetGammaRamp(GLFWmonitor *monitor, const GLFWgammaramp *ramp)
Sets the current gamma ramp for the specified monitor.
Definition: monitor.c:483
void(* GLFWerrorfun)(int, const char *)
The function signature for error callbacks.
Definition: glfw3.h:1165
static double ypos
Definition: splitview.c:33
GLFWAPI const char * glfwGetJoystickGUID(int jid)
Returns the SDL comaptible GUID of the specified joystick.
Definition: input.c:1013
GLFWAPI const char * glfwGetJoystickName(int jid)
Returns the name of the specified joystick.
Definition: input.c:988
void(* GLFWwindowfocusfun)(GLFWwindow *, int)
The function signature for window focus/defocus callbacks.
Definition: glfw3.h:1251
GLFWAPI int glfwWindowShouldClose(GLFWwindow *window)
Checks the close flag of the specified window.
Definition: window.c:477
GLdouble GLdouble bottom
GLFWAPI void glfwInitHint(int hint, int value)
Sets the specified init hint to the desired value.
Definition: init.c:251


librealsense2
Author(s): Sergey Dorodnicov , Doron Hirshberg , Mark Horn , Reagan Lopez , Itay Carpis
autogenerated on Mon May 3 2021 02:47:16