95 #if !defined(_WIN32) && (defined(__WIN32__) || defined(WIN32) || defined(__MINGW32__)) 104 #define APIENTRY __stdcall 108 #define GLFW_APIENTRY_DEFINED 113 #if !defined(WINGDIAPI) && defined(_WIN32) 114 #define WINGDIAPI __declspec(dllimport) 115 #define GLFW_WINGDIAPI_DEFINED 120 #if !defined(CALLBACK) && defined(_WIN32) 121 #define CALLBACK __stdcall 122 #define GLFW_CALLBACK_DEFINED 138 #if defined(GLFW_INCLUDE_ES1) 141 #if defined(GLFW_INCLUDE_GLEXT) 142 #include <GLES/glext.h> 145 #elif defined(GLFW_INCLUDE_ES2) 147 #include <GLES2/gl2.h> 148 #if defined(GLFW_INCLUDE_GLEXT) 149 #include <GLES2/gl2ext.h> 152 #elif defined(GLFW_INCLUDE_ES3) 154 #include <GLES3/gl3.h> 155 #if defined(GLFW_INCLUDE_GLEXT) 156 #include <GLES2/gl2ext.h> 159 #elif defined(GLFW_INCLUDE_ES31) 161 #include <GLES3/gl31.h> 162 #if defined(GLFW_INCLUDE_GLEXT) 163 #include <GLES2/gl2ext.h> 166 #elif defined(GLFW_INCLUDE_ES32) 168 #include <GLES3/gl32.h> 169 #if defined(GLFW_INCLUDE_GLEXT) 170 #include <GLES2/gl2ext.h> 173 #elif defined(GLFW_INCLUDE_GLCOREARB) 175 #if defined(__APPLE__) 177 #include <OpenGL/gl3.h> 178 #if defined(GLFW_INCLUDE_GLEXT) 179 #include <OpenGL/gl3ext.h> 184 #include <GL/glcorearb.h> 188 #elif !defined(GLFW_INCLUDE_NONE) 190 #if defined(__APPLE__) 192 #if !defined(GLFW_INCLUDE_GLEXT) 193 #define GL_GLEXT_LEGACY 195 #include <OpenGL/gl.h> 196 #if defined(GLFW_INCLUDE_GLU) 197 #include <OpenGL/glu.h> 203 #if defined(GLFW_INCLUDE_GLEXT) 204 #include <GL/glext.h> 206 #if defined(GLFW_INCLUDE_GLU) 214 #if defined(GLFW_INCLUDE_VULKAN) 215 #include <vulkan/vulkan.h> 218 #if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL) 223 #error "You must not have both GLFW_DLL and _GLFW_BUILD_DLL defined" 229 #if defined(_WIN32) && defined(_GLFW_BUILD_DLL) 231 #define GLFWAPI __declspec(dllexport) 232 #elif defined(_WIN32) && defined(GLFW_DLL) 234 #define GLFWAPI __declspec(dllimport) 235 #elif defined(__GNUC__) && defined(_GLFW_BUILD_DLL) 237 #define GLFWAPI __attribute__((visibility("default"))) 255 #define GLFW_VERSION_MAJOR 3 262 #define GLFW_VERSION_MINOR 3 269 #define GLFW_VERSION_REVISION 0 299 #define GLFW_RELEASE 0 313 #define GLFW_REPEAT 2 323 #define GLFW_HAT_CENTERED 0 324 #define GLFW_HAT_UP 1 325 #define GLFW_HAT_RIGHT 2 326 #define GLFW_HAT_DOWN 4 327 #define GLFW_HAT_LEFT 8 328 #define GLFW_HAT_RIGHT_UP (GLFW_HAT_RIGHT | GLFW_HAT_UP) 329 #define GLFW_HAT_RIGHT_DOWN (GLFW_HAT_RIGHT | GLFW_HAT_DOWN) 330 #define GLFW_HAT_LEFT_UP (GLFW_HAT_LEFT | GLFW_HAT_UP) 331 #define GLFW_HAT_LEFT_DOWN (GLFW_HAT_LEFT | GLFW_HAT_DOWN) 359 #define GLFW_KEY_UNKNOWN -1 362 #define GLFW_KEY_SPACE 32 363 #define GLFW_KEY_APOSTROPHE 39 364 #define GLFW_KEY_COMMA 44 365 #define GLFW_KEY_MINUS 45 366 #define GLFW_KEY_PERIOD 46 367 #define GLFW_KEY_SLASH 47 368 #define GLFW_KEY_0 48 369 #define GLFW_KEY_1 49 370 #define GLFW_KEY_2 50 371 #define GLFW_KEY_3 51 372 #define GLFW_KEY_4 52 373 #define GLFW_KEY_5 53 374 #define GLFW_KEY_6 54 375 #define GLFW_KEY_7 55 376 #define GLFW_KEY_8 56 377 #define GLFW_KEY_9 57 378 #define GLFW_KEY_SEMICOLON 59 379 #define GLFW_KEY_EQUAL 61 380 #define GLFW_KEY_A 65 381 #define GLFW_KEY_B 66 382 #define GLFW_KEY_C 67 383 #define GLFW_KEY_D 68 384 #define GLFW_KEY_E 69 385 #define GLFW_KEY_F 70 386 #define GLFW_KEY_G 71 387 #define GLFW_KEY_H 72 388 #define GLFW_KEY_I 73 389 #define GLFW_KEY_J 74 390 #define GLFW_KEY_K 75 391 #define GLFW_KEY_L 76 392 #define GLFW_KEY_M 77 393 #define GLFW_KEY_N 78 394 #define GLFW_KEY_O 79 395 #define GLFW_KEY_P 80 396 #define GLFW_KEY_Q 81 397 #define GLFW_KEY_R 82 398 #define GLFW_KEY_S 83 399 #define GLFW_KEY_T 84 400 #define GLFW_KEY_U 85 401 #define GLFW_KEY_V 86 402 #define GLFW_KEY_W 87 403 #define GLFW_KEY_X 88 404 #define GLFW_KEY_Y 89 405 #define GLFW_KEY_Z 90 406 #define GLFW_KEY_LEFT_BRACKET 91 407 #define GLFW_KEY_BACKSLASH 92 408 #define GLFW_KEY_RIGHT_BRACKET 93 409 #define GLFW_KEY_GRAVE_ACCENT 96 410 #define GLFW_KEY_WORLD_1 161 411 #define GLFW_KEY_WORLD_2 162 414 #define GLFW_KEY_ESCAPE 256 415 #define GLFW_KEY_ENTER 257 416 #define GLFW_KEY_TAB 258 417 #define GLFW_KEY_BACKSPACE 259 418 #define GLFW_KEY_INSERT 260 419 #define GLFW_KEY_DELETE 261 420 #define GLFW_KEY_RIGHT 262 421 #define GLFW_KEY_LEFT 263 422 #define GLFW_KEY_DOWN 264 423 #define GLFW_KEY_UP 265 424 #define GLFW_KEY_PAGE_UP 266 425 #define GLFW_KEY_PAGE_DOWN 267 426 #define GLFW_KEY_HOME 268 427 #define GLFW_KEY_END 269 428 #define GLFW_KEY_CAPS_LOCK 280 429 #define GLFW_KEY_SCROLL_LOCK 281 430 #define GLFW_KEY_NUM_LOCK 282 431 #define GLFW_KEY_PRINT_SCREEN 283 432 #define GLFW_KEY_PAUSE 284 433 #define GLFW_KEY_F1 290 434 #define GLFW_KEY_F2 291 435 #define GLFW_KEY_F3 292 436 #define GLFW_KEY_F4 293 437 #define GLFW_KEY_F5 294 438 #define GLFW_KEY_F6 295 439 #define GLFW_KEY_F7 296 440 #define GLFW_KEY_F8 297 441 #define GLFW_KEY_F9 298 442 #define GLFW_KEY_F10 299 443 #define GLFW_KEY_F11 300 444 #define GLFW_KEY_F12 301 445 #define GLFW_KEY_F13 302 446 #define GLFW_KEY_F14 303 447 #define GLFW_KEY_F15 304 448 #define GLFW_KEY_F16 305 449 #define GLFW_KEY_F17 306 450 #define GLFW_KEY_F18 307 451 #define GLFW_KEY_F19 308 452 #define GLFW_KEY_F20 309 453 #define GLFW_KEY_F21 310 454 #define GLFW_KEY_F22 311 455 #define GLFW_KEY_F23 312 456 #define GLFW_KEY_F24 313 457 #define GLFW_KEY_F25 314 458 #define GLFW_KEY_KP_0 320 459 #define GLFW_KEY_KP_1 321 460 #define GLFW_KEY_KP_2 322 461 #define GLFW_KEY_KP_3 323 462 #define GLFW_KEY_KP_4 324 463 #define GLFW_KEY_KP_5 325 464 #define GLFW_KEY_KP_6 326 465 #define GLFW_KEY_KP_7 327 466 #define GLFW_KEY_KP_8 328 467 #define GLFW_KEY_KP_9 329 468 #define GLFW_KEY_KP_DECIMAL 330 469 #define GLFW_KEY_KP_DIVIDE 331 470 #define GLFW_KEY_KP_MULTIPLY 332 471 #define GLFW_KEY_KP_SUBTRACT 333 472 #define GLFW_KEY_KP_ADD 334 473 #define GLFW_KEY_KP_ENTER 335 474 #define GLFW_KEY_KP_EQUAL 336 475 #define GLFW_KEY_LEFT_SHIFT 340 476 #define GLFW_KEY_LEFT_CONTROL 341 477 #define GLFW_KEY_LEFT_ALT 342 478 #define GLFW_KEY_LEFT_SUPER 343 479 #define GLFW_KEY_RIGHT_SHIFT 344 480 #define GLFW_KEY_RIGHT_CONTROL 345 481 #define GLFW_KEY_RIGHT_ALT 346 482 #define GLFW_KEY_RIGHT_SUPER 347 483 #define GLFW_KEY_MENU 348 485 #define GLFW_KEY_LAST GLFW_KEY_MENU 501 #define GLFW_MOD_SHIFT 0x0001 506 #define GLFW_MOD_CONTROL 0x0002 511 #define GLFW_MOD_ALT 0x0004 516 #define GLFW_MOD_SUPER 0x0008 522 #define GLFW_MOD_CAPS_LOCK 0x0010 528 #define GLFW_MOD_NUM_LOCK 0x0020 539 #define GLFW_MOUSE_BUTTON_1 0 540 #define GLFW_MOUSE_BUTTON_2 1 541 #define GLFW_MOUSE_BUTTON_3 2 542 #define GLFW_MOUSE_BUTTON_4 3 543 #define GLFW_MOUSE_BUTTON_5 4 544 #define GLFW_MOUSE_BUTTON_6 5 545 #define GLFW_MOUSE_BUTTON_7 6 546 #define GLFW_MOUSE_BUTTON_8 7 547 #define GLFW_MOUSE_BUTTON_LAST GLFW_MOUSE_BUTTON_8 548 #define GLFW_MOUSE_BUTTON_LEFT GLFW_MOUSE_BUTTON_1 549 #define GLFW_MOUSE_BUTTON_RIGHT GLFW_MOUSE_BUTTON_2 550 #define GLFW_MOUSE_BUTTON_MIDDLE GLFW_MOUSE_BUTTON_3 560 #define GLFW_JOYSTICK_1 0 561 #define GLFW_JOYSTICK_2 1 562 #define GLFW_JOYSTICK_3 2 563 #define GLFW_JOYSTICK_4 3 564 #define GLFW_JOYSTICK_5 4 565 #define GLFW_JOYSTICK_6 5 566 #define GLFW_JOYSTICK_7 6 567 #define GLFW_JOYSTICK_8 7 568 #define GLFW_JOYSTICK_9 8 569 #define GLFW_JOYSTICK_10 9 570 #define GLFW_JOYSTICK_11 10 571 #define GLFW_JOYSTICK_12 11 572 #define GLFW_JOYSTICK_13 12 573 #define GLFW_JOYSTICK_14 13 574 #define GLFW_JOYSTICK_15 14 575 #define GLFW_JOYSTICK_16 15 576 #define GLFW_JOYSTICK_LAST GLFW_JOYSTICK_16 586 #define GLFW_GAMEPAD_BUTTON_A 0 587 #define GLFW_GAMEPAD_BUTTON_B 1 588 #define GLFW_GAMEPAD_BUTTON_X 2 589 #define GLFW_GAMEPAD_BUTTON_Y 3 590 #define GLFW_GAMEPAD_BUTTON_LEFT_BUMPER 4 591 #define GLFW_GAMEPAD_BUTTON_RIGHT_BUMPER 5 592 #define GLFW_GAMEPAD_BUTTON_BACK 6 593 #define GLFW_GAMEPAD_BUTTON_START 7 594 #define GLFW_GAMEPAD_BUTTON_GUIDE 8 595 #define GLFW_GAMEPAD_BUTTON_LEFT_THUMB 9 596 #define GLFW_GAMEPAD_BUTTON_RIGHT_THUMB 10 597 #define GLFW_GAMEPAD_BUTTON_DPAD_UP 11 598 #define GLFW_GAMEPAD_BUTTON_DPAD_RIGHT 12 599 #define GLFW_GAMEPAD_BUTTON_DPAD_DOWN 13 600 #define GLFW_GAMEPAD_BUTTON_DPAD_LEFT 14 601 #define GLFW_GAMEPAD_BUTTON_LAST GLFW_GAMEPAD_BUTTON_DPAD_LEFT 603 #define GLFW_GAMEPAD_BUTTON_CROSS GLFW_GAMEPAD_BUTTON_A 604 #define GLFW_GAMEPAD_BUTTON_CIRCLE GLFW_GAMEPAD_BUTTON_B 605 #define GLFW_GAMEPAD_BUTTON_SQUARE GLFW_GAMEPAD_BUTTON_X 606 #define GLFW_GAMEPAD_BUTTON_TRIANGLE GLFW_GAMEPAD_BUTTON_Y 616 #define GLFW_GAMEPAD_AXIS_LEFT_X 0 617 #define GLFW_GAMEPAD_AXIS_LEFT_Y 1 618 #define GLFW_GAMEPAD_AXIS_RIGHT_X 2 619 #define GLFW_GAMEPAD_AXIS_RIGHT_Y 3 620 #define GLFW_GAMEPAD_AXIS_LEFT_TRIGGER 4 621 #define GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER 5 622 #define GLFW_GAMEPAD_AXIS_LAST GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER 638 #define GLFW_NO_ERROR 0 647 #define GLFW_NOT_INITIALIZED 0x00010001 657 #define GLFW_NO_CURRENT_CONTEXT 0x00010002 665 #define GLFW_INVALID_ENUM 0x00010003 676 #define GLFW_INVALID_VALUE 0x00010004 684 #define GLFW_OUT_OF_MEMORY 0x00010005 700 #define GLFW_API_UNAVAILABLE 0x00010006 717 #define GLFW_VERSION_UNAVAILABLE 0x00010007 728 #define GLFW_PLATFORM_ERROR 0x00010008 747 #define GLFW_FORMAT_UNAVAILABLE 0x00010009 755 #define GLFW_NO_WINDOW_CONTEXT 0x0001000A 765 #define GLFW_FOCUSED 0x00020001 770 #define GLFW_ICONIFIED 0x00020002 776 #define GLFW_RESIZABLE 0x00020003 782 #define GLFW_VISIBLE 0x00020004 788 #define GLFW_DECORATED 0x00020005 794 #define GLFW_AUTO_ICONIFY 0x00020006 800 #define GLFW_FLOATING 0x00020007 806 #define GLFW_MAXIMIZED 0x00020008 811 #define GLFW_CENTER_CURSOR 0x00020009 818 #define GLFW_TRANSPARENT_FRAMEBUFFER 0x0002000A 823 #define GLFW_HOVERED 0x0002000B 829 #define GLFW_FOCUS_ON_SHOW 0x0002000C 835 #define GLFW_RED_BITS 0x00021001 840 #define GLFW_GREEN_BITS 0x00021002 845 #define GLFW_BLUE_BITS 0x00021003 850 #define GLFW_ALPHA_BITS 0x00021004 855 #define GLFW_DEPTH_BITS 0x00021005 860 #define GLFW_STENCIL_BITS 0x00021006 865 #define GLFW_ACCUM_RED_BITS 0x00021007 870 #define GLFW_ACCUM_GREEN_BITS 0x00021008 875 #define GLFW_ACCUM_BLUE_BITS 0x00021009 880 #define GLFW_ACCUM_ALPHA_BITS 0x0002100A 885 #define GLFW_AUX_BUFFERS 0x0002100B 890 #define GLFW_STEREO 0x0002100C 895 #define GLFW_SAMPLES 0x0002100D 900 #define GLFW_SRGB_CAPABLE 0x0002100E 905 #define GLFW_REFRESH_RATE 0x0002100F 910 #define GLFW_DOUBLEBUFFER 0x00021010 917 #define GLFW_CLIENT_API 0x00022001 923 #define GLFW_CONTEXT_VERSION_MAJOR 0x00022002 929 #define GLFW_CONTEXT_VERSION_MINOR 0x00022003 935 #define GLFW_CONTEXT_REVISION 0x00022004 941 #define GLFW_CONTEXT_ROBUSTNESS 0x00022005 947 #define GLFW_OPENGL_FORWARD_COMPAT 0x00022006 953 #define GLFW_OPENGL_DEBUG_CONTEXT 0x00022007 959 #define GLFW_OPENGL_PROFILE 0x00022008 965 #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009 971 #define GLFW_CONTEXT_NO_ERROR 0x0002200A 977 #define GLFW_CONTEXT_CREATION_API 0x0002200B 981 #define GLFW_SCALE_TO_MONITOR 0x0002200C 985 #define GLFW_COCOA_RETINA_FRAMEBUFFER 0x00023001 989 #define GLFW_COCOA_FRAME_NAME 0x00023002 993 #define GLFW_COCOA_GRAPHICS_SWITCHING 0x00023003 997 #define GLFW_X11_CLASS_NAME 0x00024001 1001 #define GLFW_X11_INSTANCE_NAME 0x00024002 1004 #define GLFW_NO_API 0 1005 #define GLFW_OPENGL_API 0x00030001 1006 #define GLFW_OPENGL_ES_API 0x00030002 1008 #define GLFW_NO_ROBUSTNESS 0 1009 #define GLFW_NO_RESET_NOTIFICATION 0x00031001 1010 #define GLFW_LOSE_CONTEXT_ON_RESET 0x00031002 1012 #define GLFW_OPENGL_ANY_PROFILE 0 1013 #define GLFW_OPENGL_CORE_PROFILE 0x00032001 1014 #define GLFW_OPENGL_COMPAT_PROFILE 0x00032002 1016 #define GLFW_CURSOR 0x00033001 1017 #define GLFW_STICKY_KEYS 0x00033002 1018 #define GLFW_STICKY_MOUSE_BUTTONS 0x00033003 1019 #define GLFW_LOCK_KEY_MODS 0x00033004 1020 #define GLFW_RAW_MOUSE_MOTION 0x00033005 1022 #define GLFW_CURSOR_NORMAL 0x00034001 1023 #define GLFW_CURSOR_HIDDEN 0x00034002 1024 #define GLFW_CURSOR_DISABLED 0x00034003 1026 #define GLFW_ANY_RELEASE_BEHAVIOR 0 1027 #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001 1028 #define GLFW_RELEASE_BEHAVIOR_NONE 0x00035002 1030 #define GLFW_NATIVE_CONTEXT_API 0x00036001 1031 #define GLFW_EGL_CONTEXT_API 0x00036002 1032 #define GLFW_OSMESA_CONTEXT_API 0x00036003 1046 #define GLFW_ARROW_CURSOR 0x00036001 1051 #define GLFW_IBEAM_CURSOR 0x00036002 1056 #define GLFW_CROSSHAIR_CURSOR 0x00036003 1061 #define GLFW_HAND_CURSOR 0x00036004 1066 #define GLFW_HRESIZE_CURSOR 0x00036005 1071 #define GLFW_VRESIZE_CURSOR 0x00036006 1074 #define GLFW_CONNECTED 0x00040001 1075 #define GLFW_DISCONNECTED 0x00040002 1083 #define GLFW_JOYSTICK_HAT_BUTTONS 0x00050001 1088 #define GLFW_COCOA_CHDIR_RESOURCES 0x00051001 1093 #define GLFW_COCOA_MENUBAR 0x00051002 1096 #define GLFW_DONT_CARE -1 5462 #if defined(VK_VERSION_1_0) 5612 #ifdef GLFW_WINGDIAPI_DEFINED 5614 #undef GLFW_WINGDIAPI_DEFINED 5617 #ifdef GLFW_CALLBACK_DEFINED 5619 #undef GLFW_CALLBACK_DEFINED 5626 #define GLAPIENTRY APIENTRY void glfwGetVersion(int *major, int *minor, int *rev)
Retrieves the version of the GLFW library.
Gamepad input state.
Definition: glfw3.h:1628
int redBits
Definition: glfw3.h:1551
void glfwGetWindowSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the content area of the specified window.
void glfwSetWindowSizeLimits(GLFWwindow *window, int minwidth, int minheight, int maxwidth, int maxheight)
Sets the size limits of the specified window.
void(* GLFWwindowiconifyfun)(GLFWwindow *, int)
The function signature for window iconify/restore callbacks.
Definition: glfw3.h:1285
int height
Definition: glfw3.h:1548
GLFWwindowrefreshfun glfwSetWindowRefreshCallback(GLFWwindow *window, GLFWwindowrefreshfun cbfun)
Sets the refresh callback for the specified window.
GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow *window, GLFWwindowposfun cbfun)
Sets the position callback for the specified window.
void glfwGetWindowPos(GLFWwindow *window, int *xpos, int *ypos)
Retrieves the position of the content area of the specified window.
int blueBits
Definition: glfw3.h:1557
unsigned char * pixels
Definition: glfw3.h:1614
void(* GLFWmonitorfun)(GLFWmonitor *, int)
The function signature for monitor configuration callbacks.
Definition: glfw3.h:1508
void * glfwGetWindowUserPointer(GLFWwindow *window)
Returns the user pointer of the specified window.
const GLFWvidmode * glfwGetVideoModes(GLFWmonitor *monitor, int *count)
Returns the available video modes for the specified monitor.
const GLFWgammaramp * glfwGetGammaRamp(GLFWmonitor *monitor)
Returns the current gamma ramp for the specified monitor.
void glfwIconifyWindow(GLFWwindow *window)
Iconifies the specified window.
GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun)
Sets the error callback.
GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow *window, GLFWwindowiconifyfun cbfun)
Sets the iconify callback for the specified window.
int glfwGetError(const char **description)
Returns and clears the last error for the calling thread.
int width
Definition: glfw3.h:1545
const char * glfwGetVersionString(void)
Returns a string describing the compile-time configuration.
GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow *window, GLFWwindowsizefun cbfun)
Sets the size callback for the specified window.
struct GLFWimage GLFWimage
Image data.
void glfwWaitEvents(void)
Waits until events are queued and processes them.
int height
Definition: glfw3.h:1611
void * glfwGetMonitorUserPointer(GLFWmonitor *monitor)
Returns the user pointer of the specified monitor.
GLFWglproc glfwGetProcAddress(const char *procname)
Returns the address of the specified function for the current context.
void glfwSetWindowAttrib(GLFWwindow *window, int attrib, int value)
Sets an attribute of the specified window.
void glfwMaximizeWindow(GLFWwindow *window)
Maximizes the specified window.
int refreshRate
Definition: glfw3.h:1560
unsigned short * red
Definition: glfw3.h:1579
VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow *window, const VkAllocationCallbacks *allocator, VkSurfaceKHR *surface)
Creates a Vulkan surface for the specified window.
GLFWmonitor ** glfwGetMonitors(int *count)
Returns the currently connected monitors.
void glfwDestroyWindow(GLFWwindow *window)
Destroys the specified window and its context.
void glfwSetMonitorUserPointer(GLFWmonitor *monitor, void *pointer)
Sets the user pointer of the specified monitor.
unsigned short * green
Definition: glfw3.h:1582
void(* GLFWvkproc)(void)
Vulkan API function pointer type.
Definition: glfw3.h:1129
void glfwSetWindowTitle(GLFWwindow *window, const char *title)
Sets the title of the specified window.
struct GLFWmonitor GLFWmonitor
Opaque monitor object.
Definition: glfw3.h:1141
struct GLFWwindow GLFWwindow
Opaque window object.
Definition: glfw3.h:1153
void glfwGetMonitorPhysicalSize(GLFWmonitor *monitor, int *widthMM, int *heightMM)
Returns the physical size of the monitor.
void glfwShowWindow(GLFWwindow *window)
Makes the specified window visible.
void glfwSetWindowSize(GLFWwindow *window, int width, int height)
Sets the size of the content area of the specified window.
int greenBits
Definition: glfw3.h:1554
void glfwRequestWindowAttention(GLFWwindow *window)
Requests user attention to the specified window.
void glfwSwapBuffers(GLFWwindow *window)
Swaps the front and back buffers of the specified window.
void glfwSetGamma(GLFWmonitor *monitor, float gamma)
Generates a gamma ramp and sets it for the specified monitor.
void glfwGetMonitorWorkarea(GLFWmonitor *monitor, int *xpos, int *ypos, int *width, int *height)
Retrives the work area of the monitor.
const GLFWvidmode * glfwGetVideoMode(GLFWmonitor *monitor)
Returns the current mode of the specified monitor.
void glfwGetWindowFrameSize(GLFWwindow *window, int *left, int *top, int *right, int *bottom)
Retrieves the size of the frame of the window.
void glfwRestoreWindow(GLFWwindow *window)
Restores the specified window.
void glfwWindowHintString(int hint, const char *value)
Sets the specified window hint to the desired value.
void glfwGetWindowContentScale(GLFWwindow *window, float *xscale, float *yscale)
Retrieves the content scale for the specified window.
void(* GLFWwindowcontentscalefun)(GLFWwindow *, float, float)
The function signature for window content scale callbacks.
Definition: glfw3.h:1339
void glfwGetMonitorContentScale(GLFWmonitor *monitor, float *xscale, float *yscale)
Retrieves the content scale for the specified monitor.
void(* GLFWwindowsizefun)(GLFWwindow *, int, int)
The function signature for window resize callbacks.
Definition: glfw3.h:1218
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.
void glfwFocusWindow(GLFWwindow *window)
Brings the specified window to front and sets input focus.
struct GLFWgammaramp GLFWgammaramp
Gamma ramp.
void glfwInitHint(int hint, int value)
Sets the specified init hint to the desired value.
GLFWwindow * glfwCreateWindow(int width, int height, const char *title, GLFWmonitor *monitor, GLFWwindow *share)
Creates a window and its associated context.
unsigned int size
Definition: glfw3.h:1588
void glfwSetWindowUserPointer(GLFWwindow *window, void *pointer)
Sets the user pointer of the specified window.
void glfwSetWindowShouldClose(GLFWwindow *window, int value)
Sets the close flag of the specified window.
GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, const char *procname)
Returns the address of the specified Vulkan instance function.
void glfwPostEmptyEvent(void)
Posts an empty event to the event queue.
void glfwWaitEventsTimeout(double timeout)
Waits with timeout until events are queued and processes them.
unsigned char buttons[15]
Definition: glfw3.h:1633
GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow *window, GLFWframebuffersizefun cbfun)
Sets the framebuffer resize callback for the specified window.
void(* GLFWframebuffersizefun)(GLFWwindow *, int, int)
The function signature for framebuffer resize callbacks.
Definition: glfw3.h:1321
GLFWwindowcontentscalefun glfwSetWindowContentScaleCallback(GLFWwindow *window, GLFWwindowcontentscalefun cbfun)
Sets the window content scale callback for the specified window.
int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily)
Returns whether the specified queue family can present images.
void(* GLFWwindowposfun)(GLFWwindow *, int, int)
The function signature for window position callbacks.
Definition: glfw3.h:1200
void glfwPollEvents(void)
Processes all pending events.
float glfwGetWindowOpacity(GLFWwindow *window)
Returns the opacity of the whole window.
void glfwHideWindow(GLFWwindow *window)
Hides the specified window.
GLFWwindow * glfwGetCurrentContext(void)
Returns the window whose context is current on the calling thread.
void glfwSetGammaRamp(GLFWmonitor *monitor, const GLFWgammaramp *ramp)
Sets the current gamma ramp for the specified monitor.
int width
Definition: glfw3.h:1608
GLFWmonitor * glfwGetWindowMonitor(GLFWwindow *window)
Returns the monitor that the window uses for full screen mode.
GLFWmonitor * glfwGetPrimaryMonitor(void)
Returns the primary monitor.
void glfwMakeContextCurrent(GLFWwindow *window)
Makes the context of the specified window current for the calling thread.
Gamma ramp.
Definition: glfw3.h:1575
GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow *window, GLFWwindowclosefun cbfun)
Sets the close callback for the specified window.
unsigned short * blue
Definition: glfw3.h:1585
Video mode type.
Definition: glfw3.h:1541
GLFWwindowmaximizefun glfwSetWindowMaximizeCallback(GLFWwindow *window, GLFWwindowmaximizefun cbfun)
Sets the maximize callback for the specified window.
int glfwVulkanSupported(void)
Returns whether the Vulkan loader and an ICD have been found.
void glfwSetWindowPos(GLFWwindow *window, int xpos, int ypos)
Sets the position of the content area of the specified window.
int glfwExtensionSupported(const char *extension)
Returns whether the specified extension is available.
void glfwGetFramebufferSize(GLFWwindow *window, int *width, int *height)
Retrieves the size of the framebuffer of the specified window.
void(* GLFWwindowclosefun)(GLFWwindow *)
The function signature for window close callbacks.
Definition: glfw3.h:1234
void glfwWindowHint(int hint, int value)
Sets the specified window hint to the desired value.
void glfwSwapInterval(int interval)
Sets the swap interval for the current context.
const char ** glfwGetRequiredInstanceExtensions(uint32_t *count)
Returns the Vulkan instance extensions required by GLFW.
int glfwInit(void)
Initializes the GLFW library.
Image data.
Definition: glfw3.h:1604
void glfwGetMonitorPos(GLFWmonitor *monitor, int *xpos, int *ypos)
Returns the position of the monitor's viewport on the virtual screen.
void(* GLFWwindowmaximizefun)(GLFWwindow *, int)
The function signature for window maximize/restore callbacks.
Definition: glfw3.h:1303
void glfwSetWindowOpacity(GLFWwindow *window, float opacity)
Sets the opacity of the whole window.
struct GLFWvidmode GLFWvidmode
Video mode type.
void glfwDefaultWindowHints(void)
Resets all window hints to their default values.
float axes[6]
Definition: glfw3.h:1637
GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow *window, GLFWwindowfocusfun cbfun)
Sets the focus callback for the specified window.
void glfwTerminate(void)
Terminates the GLFW library.
void glfwSetWindowIcon(GLFWwindow *window, int count, const GLFWimage *images)
Sets the icon for the specified window.
GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun)
Sets the monitor configuration callback.
void(* GLFWwindowrefreshfun)(GLFWwindow *)
The function signature for window content refresh callbacks.
Definition: glfw3.h:1250
void(* GLFWglproc)(void)
Client API function pointer type.
Definition: glfw3.h:1115
const char * glfwGetMonitorName(GLFWmonitor *monitor)
Returns the name of the specified monitor.
void(* GLFWerrorfun)(int, const char *)
The function signature for error callbacks.
Definition: glfw3.h:1181
void glfwSetWindowAspectRatio(GLFWwindow *window, int numer, int denom)
Sets the aspect ratio of the specified window.
int glfwWindowShouldClose(GLFWwindow *window)
Checks the close flag of the specified window.
int glfwGetWindowAttrib(GLFWwindow *window, int attrib)
Returns an attribute of the specified window.
void(* GLFWwindowfocusfun)(GLFWwindow *, int)
The function signature for window focus/defocus callbacks.
Definition: glfw3.h:1267