glfw3.h
Go to the documentation of this file.
00001 /*************************************************************************
00002  * GLFW 3.1 - www.glfw.org
00003  * A library for OpenGL, window and input
00004  *------------------------------------------------------------------------
00005  * Copyright (c) 2002-2006 Marcus Geelnard
00006  * Copyright (c) 2006-2010 Camilla Berglund <elmindreda@elmindreda.org>
00007  *
00008  * This software is provided 'as-is', without any express or implied
00009  * warranty. In no event will the authors be held liable for any damages
00010  * arising from the use of this software.
00011  *
00012  * Permission is granted to anyone to use this software for any purpose,
00013  * including commercial applications, and to alter it and redistribute it
00014  * freely, subject to the following restrictions:
00015  *
00016  * 1. The origin of this software must not be misrepresented; you must not
00017  *    claim that you wrote the original software. If you use this software
00018  *    in a product, an acknowledgment in the product documentation would
00019  *    be appreciated but is not required.
00020  *
00021  * 2. Altered source versions must be plainly marked as such, and must not
00022  *    be misrepresented as being the original software.
00023  *
00024  * 3. This notice may not be removed or altered from any source
00025  *    distribution.
00026  *
00027  *************************************************************************/
00028 
00029 #ifndef _glfw3_h_
00030 #define _glfw3_h_
00031 
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035 
00036 
00037 /*************************************************************************
00038  * Doxygen documentation
00039  *************************************************************************/
00040 
00070 /*************************************************************************
00071  * Compiler- and platform-specific preprocessor work
00072  *************************************************************************/
00073 
00074 /* If we are we on Windows, we want a single define for it.
00075  */
00076 #if !defined(_WIN32) && (defined(__WIN32__) || defined(WIN32) || defined(__MINGW32__))
00077  #define _WIN32
00078 #endif /* _WIN32 */
00079 
00080 /* It is customary to use APIENTRY for OpenGL function pointer declarations on
00081  * all platforms.  Additionally, the Windows OpenGL header needs APIENTRY.
00082  */
00083 #ifndef APIENTRY
00084  #ifdef _WIN32
00085   #define APIENTRY __stdcall
00086  #else
00087   #define APIENTRY
00088  #endif
00089 #endif /* APIENTRY */
00090 
00091 /* Some Windows OpenGL headers need this.
00092  */
00093 #if !defined(WINGDIAPI) && defined(_WIN32)
00094  #define WINGDIAPI __declspec(dllimport)
00095  #define GLFW_WINGDIAPI_DEFINED
00096 #endif /* WINGDIAPI */
00097 
00098 /* Some Windows GLU headers need this.
00099  */
00100 #if !defined(CALLBACK) && defined(_WIN32)
00101  #define CALLBACK __stdcall
00102  #define GLFW_CALLBACK_DEFINED
00103 #endif /* CALLBACK */
00104 
00105 /* Most Windows GLU headers need wchar_t.
00106  * The OS X OpenGL header blocks the definition of ptrdiff_t by glext.h.
00107  */
00108 #if !defined(GLFW_INCLUDE_NONE)
00109  #include <stddef.h>
00110 #endif
00111 
00112 /* Include the chosen client API headers.
00113  */
00114 #if defined(__APPLE_CC__)
00115  #if defined(GLFW_INCLUDE_GLCOREARB)
00116   #include <OpenGL/gl3.h>
00117   #if defined(GLFW_INCLUDE_GLEXT)
00118    #include <OpenGL/gl3ext.h>
00119   #endif
00120  #elif !defined(GLFW_INCLUDE_NONE)
00121   #if !defined(GLFW_INCLUDE_GLEXT)
00122    #define GL_GLEXT_LEGACY
00123   #endif
00124   #include <OpenGL/gl.h>
00125  #endif
00126  #if defined(GLFW_INCLUDE_GLU)
00127   #include <OpenGL/glu.h>
00128  #endif
00129 #else
00130  #if defined(GLFW_INCLUDE_GLCOREARB)
00131   #include <GL/glcorearb.h>
00132  #elif defined(GLFW_INCLUDE_ES1)
00133   #include <GLES/gl.h>
00134   #if defined(GLFW_INCLUDE_GLEXT)
00135    #include <GLES/glext.h>
00136   #endif
00137  #elif defined(GLFW_INCLUDE_ES2)
00138   #include <GLES2/gl2.h>
00139   #if defined(GLFW_INCLUDE_GLEXT)
00140    #include <GLES2/gl2ext.h>
00141   #endif
00142  #elif defined(GLFW_INCLUDE_ES3)
00143   #include <GLES3/gl3.h>
00144   #if defined(GLFW_INCLUDE_GLEXT)
00145    #include <GLES3/gl2ext.h>
00146   #endif
00147  #elif defined(GLFW_INCLUDE_ES31)
00148   #include <GLES3/gl31.h>
00149   #if defined(GLFW_INCLUDE_GLEXT)
00150    #include <GLES3/gl2ext.h>
00151   #endif
00152  #elif !defined(GLFW_INCLUDE_NONE)
00153   #include <GL/gl.h>
00154   #if defined(GLFW_INCLUDE_GLEXT)
00155    #include <GL/glext.h>
00156   #endif
00157  #endif
00158  #if defined(GLFW_INCLUDE_GLU)
00159   #include <GL/glu.h>
00160  #endif
00161 #endif
00162 
00163 #if defined(GLFW_DLL) && defined(_GLFW_BUILD_DLL)
00164  /* GLFW_DLL must be defined by applications that are linking against the DLL
00165   * version of the GLFW library.  _GLFW_BUILD_DLL is defined by the GLFW
00166   * configuration header when compiling the DLL version of the library.
00167   */
00168  #error "You may not have both GLFW_DLL and _GLFW_BUILD_DLL defined"
00169 #endif
00170 
00171 /* GLFWAPI is used to declare public API functions for export
00172  * from the DLL / shared library / dynamic library.
00173  */
00174 #if defined(_WIN32) && defined(_GLFW_BUILD_DLL)
00175  /* We are building GLFW as a Win32 DLL */
00176  #define GLFWAPI __declspec(dllexport)
00177 #elif defined(_WIN32) && defined(GLFW_DLL)
00178  /* We are calling GLFW as a Win32 DLL */
00179  #define GLFWAPI __declspec(dllimport)
00180 #elif defined(__GNUC__) && defined(_GLFW_BUILD_DLL)
00181  /* We are building GLFW as a shared / dynamic library */
00182  #define GLFWAPI __attribute__((visibility("default")))
00183 #else
00184  /* We are building or calling GLFW as a static library */
00185  #define GLFWAPI
00186 #endif
00187 
00188 
00189 /*************************************************************************
00190  * GLFW API tokens
00191  *************************************************************************/
00192 
00200 #define GLFW_VERSION_MAJOR          3
00201 
00207 #define GLFW_VERSION_MINOR          1
00208 
00214 #define GLFW_VERSION_REVISION       2
00215 
00225 #define GLFW_RELEASE                0
00226 
00232 #define GLFW_PRESS                  1
00233 
00239 #define GLFW_REPEAT                 2
00240 
00265 /* The unknown key */
00266 #define GLFW_KEY_UNKNOWN            -1
00267 
00268 /* Printable keys */
00269 #define GLFW_KEY_SPACE              32
00270 #define GLFW_KEY_APOSTROPHE         39  /* ' */
00271 #define GLFW_KEY_COMMA              44  /* , */
00272 #define GLFW_KEY_MINUS              45  /* - */
00273 #define GLFW_KEY_PERIOD             46  /* . */
00274 #define GLFW_KEY_SLASH              47  /* / */
00275 #define GLFW_KEY_0                  48
00276 #define GLFW_KEY_1                  49
00277 #define GLFW_KEY_2                  50
00278 #define GLFW_KEY_3                  51
00279 #define GLFW_KEY_4                  52
00280 #define GLFW_KEY_5                  53
00281 #define GLFW_KEY_6                  54
00282 #define GLFW_KEY_7                  55
00283 #define GLFW_KEY_8                  56
00284 #define GLFW_KEY_9                  57
00285 #define GLFW_KEY_SEMICOLON          59  /* ; */
00286 #define GLFW_KEY_EQUAL              61  /* = */
00287 #define GLFW_KEY_A                  65
00288 #define GLFW_KEY_B                  66
00289 #define GLFW_KEY_C                  67
00290 #define GLFW_KEY_D                  68
00291 #define GLFW_KEY_E                  69
00292 #define GLFW_KEY_F                  70
00293 #define GLFW_KEY_G                  71
00294 #define GLFW_KEY_H                  72
00295 #define GLFW_KEY_I                  73
00296 #define GLFW_KEY_J                  74
00297 #define GLFW_KEY_K                  75
00298 #define GLFW_KEY_L                  76
00299 #define GLFW_KEY_M                  77
00300 #define GLFW_KEY_N                  78
00301 #define GLFW_KEY_O                  79
00302 #define GLFW_KEY_P                  80
00303 #define GLFW_KEY_Q                  81
00304 #define GLFW_KEY_R                  82
00305 #define GLFW_KEY_S                  83
00306 #define GLFW_KEY_T                  84
00307 #define GLFW_KEY_U                  85
00308 #define GLFW_KEY_V                  86
00309 #define GLFW_KEY_W                  87
00310 #define GLFW_KEY_X                  88
00311 #define GLFW_KEY_Y                  89
00312 #define GLFW_KEY_Z                  90
00313 #define GLFW_KEY_LEFT_BRACKET       91  /* [ */
00314 #define GLFW_KEY_BACKSLASH          92  /* \ */
00315 #define GLFW_KEY_RIGHT_BRACKET      93  /* ] */
00316 #define GLFW_KEY_GRAVE_ACCENT       96  /* ` */
00317 #define GLFW_KEY_WORLD_1            161 /* non-US #1 */
00318 #define GLFW_KEY_WORLD_2            162 /* non-US #2 */
00319 
00320 /* Function keys */
00321 #define GLFW_KEY_ESCAPE             256
00322 #define GLFW_KEY_ENTER              257
00323 #define GLFW_KEY_TAB                258
00324 #define GLFW_KEY_BACKSPACE          259
00325 #define GLFW_KEY_INSERT             260
00326 #define GLFW_KEY_DELETE             261
00327 #define GLFW_KEY_RIGHT              262
00328 #define GLFW_KEY_LEFT               263
00329 #define GLFW_KEY_DOWN               264
00330 #define GLFW_KEY_UP                 265
00331 #define GLFW_KEY_PAGE_UP            266
00332 #define GLFW_KEY_PAGE_DOWN          267
00333 #define GLFW_KEY_HOME               268
00334 #define GLFW_KEY_END                269
00335 #define GLFW_KEY_CAPS_LOCK          280
00336 #define GLFW_KEY_SCROLL_LOCK        281
00337 #define GLFW_KEY_NUM_LOCK           282
00338 #define GLFW_KEY_PRINT_SCREEN       283
00339 #define GLFW_KEY_PAUSE              284
00340 #define GLFW_KEY_F1                 290
00341 #define GLFW_KEY_F2                 291
00342 #define GLFW_KEY_F3                 292
00343 #define GLFW_KEY_F4                 293
00344 #define GLFW_KEY_F5                 294
00345 #define GLFW_KEY_F6                 295
00346 #define GLFW_KEY_F7                 296
00347 #define GLFW_KEY_F8                 297
00348 #define GLFW_KEY_F9                 298
00349 #define GLFW_KEY_F10                299
00350 #define GLFW_KEY_F11                300
00351 #define GLFW_KEY_F12                301
00352 #define GLFW_KEY_F13                302
00353 #define GLFW_KEY_F14                303
00354 #define GLFW_KEY_F15                304
00355 #define GLFW_KEY_F16                305
00356 #define GLFW_KEY_F17                306
00357 #define GLFW_KEY_F18                307
00358 #define GLFW_KEY_F19                308
00359 #define GLFW_KEY_F20                309
00360 #define GLFW_KEY_F21                310
00361 #define GLFW_KEY_F22                311
00362 #define GLFW_KEY_F23                312
00363 #define GLFW_KEY_F24                313
00364 #define GLFW_KEY_F25                314
00365 #define GLFW_KEY_KP_0               320
00366 #define GLFW_KEY_KP_1               321
00367 #define GLFW_KEY_KP_2               322
00368 #define GLFW_KEY_KP_3               323
00369 #define GLFW_KEY_KP_4               324
00370 #define GLFW_KEY_KP_5               325
00371 #define GLFW_KEY_KP_6               326
00372 #define GLFW_KEY_KP_7               327
00373 #define GLFW_KEY_KP_8               328
00374 #define GLFW_KEY_KP_9               329
00375 #define GLFW_KEY_KP_DECIMAL         330
00376 #define GLFW_KEY_KP_DIVIDE          331
00377 #define GLFW_KEY_KP_MULTIPLY        332
00378 #define GLFW_KEY_KP_SUBTRACT        333
00379 #define GLFW_KEY_KP_ADD             334
00380 #define GLFW_KEY_KP_ENTER           335
00381 #define GLFW_KEY_KP_EQUAL           336
00382 #define GLFW_KEY_LEFT_SHIFT         340
00383 #define GLFW_KEY_LEFT_CONTROL       341
00384 #define GLFW_KEY_LEFT_ALT           342
00385 #define GLFW_KEY_LEFT_SUPER         343
00386 #define GLFW_KEY_RIGHT_SHIFT        344
00387 #define GLFW_KEY_RIGHT_CONTROL      345
00388 #define GLFW_KEY_RIGHT_ALT          346
00389 #define GLFW_KEY_RIGHT_SUPER        347
00390 #define GLFW_KEY_MENU               348
00391 #define GLFW_KEY_LAST               GLFW_KEY_MENU
00392 
00404 #define GLFW_MOD_SHIFT           0x0001
00405 
00407 #define GLFW_MOD_CONTROL         0x0002
00408 
00410 #define GLFW_MOD_ALT             0x0004
00411 
00413 #define GLFW_MOD_SUPER           0x0008
00414 
00423 #define GLFW_MOUSE_BUTTON_1         0
00424 #define GLFW_MOUSE_BUTTON_2         1
00425 #define GLFW_MOUSE_BUTTON_3         2
00426 #define GLFW_MOUSE_BUTTON_4         3
00427 #define GLFW_MOUSE_BUTTON_5         4
00428 #define GLFW_MOUSE_BUTTON_6         5
00429 #define GLFW_MOUSE_BUTTON_7         6
00430 #define GLFW_MOUSE_BUTTON_8         7
00431 #define GLFW_MOUSE_BUTTON_LAST      GLFW_MOUSE_BUTTON_8
00432 #define GLFW_MOUSE_BUTTON_LEFT      GLFW_MOUSE_BUTTON_1
00433 #define GLFW_MOUSE_BUTTON_RIGHT     GLFW_MOUSE_BUTTON_2
00434 #define GLFW_MOUSE_BUTTON_MIDDLE    GLFW_MOUSE_BUTTON_3
00435 
00443 #define GLFW_JOYSTICK_1             0
00444 #define GLFW_JOYSTICK_2             1
00445 #define GLFW_JOYSTICK_3             2
00446 #define GLFW_JOYSTICK_4             3
00447 #define GLFW_JOYSTICK_5             4
00448 #define GLFW_JOYSTICK_6             5
00449 #define GLFW_JOYSTICK_7             6
00450 #define GLFW_JOYSTICK_8             7
00451 #define GLFW_JOYSTICK_9             8
00452 #define GLFW_JOYSTICK_10            9
00453 #define GLFW_JOYSTICK_11            10
00454 #define GLFW_JOYSTICK_12            11
00455 #define GLFW_JOYSTICK_13            12
00456 #define GLFW_JOYSTICK_14            13
00457 #define GLFW_JOYSTICK_15            14
00458 #define GLFW_JOYSTICK_16            15
00459 #define GLFW_JOYSTICK_LAST          GLFW_JOYSTICK_16
00460 
00477 #define GLFW_NOT_INITIALIZED        0x00010001
00478 
00488 #define GLFW_NO_CURRENT_CONTEXT     0x00010002
00489 
00498 #define GLFW_INVALID_ENUM           0x00010003
00499 
00510 #define GLFW_INVALID_VALUE          0x00010004
00511 
00519 #define GLFW_OUT_OF_MEMORY          0x00010005
00520 
00539 #define GLFW_API_UNAVAILABLE        0x00010006
00540 
00557 #define GLFW_VERSION_UNAVAILABLE    0x00010007
00558 
00569 #define GLFW_PLATFORM_ERROR         0x00010008
00570 
00589 #define GLFW_FORMAT_UNAVAILABLE     0x00010009
00590 
00592 #define GLFW_FOCUSED                0x00020001
00593 #define GLFW_ICONIFIED              0x00020002
00594 #define GLFW_RESIZABLE              0x00020003
00595 #define GLFW_VISIBLE                0x00020004
00596 #define GLFW_DECORATED              0x00020005
00597 #define GLFW_AUTO_ICONIFY           0x00020006
00598 #define GLFW_FLOATING               0x00020007
00599 
00600 #define GLFW_RED_BITS               0x00021001
00601 #define GLFW_GREEN_BITS             0x00021002
00602 #define GLFW_BLUE_BITS              0x00021003
00603 #define GLFW_ALPHA_BITS             0x00021004
00604 #define GLFW_DEPTH_BITS             0x00021005
00605 #define GLFW_STENCIL_BITS           0x00021006
00606 #define GLFW_ACCUM_RED_BITS         0x00021007
00607 #define GLFW_ACCUM_GREEN_BITS       0x00021008
00608 #define GLFW_ACCUM_BLUE_BITS        0x00021009
00609 #define GLFW_ACCUM_ALPHA_BITS       0x0002100A
00610 #define GLFW_AUX_BUFFERS            0x0002100B
00611 #define GLFW_STEREO                 0x0002100C
00612 #define GLFW_SAMPLES                0x0002100D
00613 #define GLFW_SRGB_CAPABLE           0x0002100E
00614 #define GLFW_REFRESH_RATE           0x0002100F
00615 #define GLFW_DOUBLEBUFFER           0x00021010
00616 
00617 #define GLFW_CLIENT_API             0x00022001
00618 #define GLFW_CONTEXT_VERSION_MAJOR  0x00022002
00619 #define GLFW_CONTEXT_VERSION_MINOR  0x00022003
00620 #define GLFW_CONTEXT_REVISION       0x00022004
00621 #define GLFW_CONTEXT_ROBUSTNESS     0x00022005
00622 #define GLFW_OPENGL_FORWARD_COMPAT  0x00022006
00623 #define GLFW_OPENGL_DEBUG_CONTEXT   0x00022007
00624 #define GLFW_OPENGL_PROFILE         0x00022008
00625 #define GLFW_CONTEXT_RELEASE_BEHAVIOR 0x00022009
00626 
00627 #define GLFW_OPENGL_API             0x00030001
00628 #define GLFW_OPENGL_ES_API          0x00030002
00629 
00630 #define GLFW_NO_ROBUSTNESS                   0
00631 #define GLFW_NO_RESET_NOTIFICATION  0x00031001
00632 #define GLFW_LOSE_CONTEXT_ON_RESET  0x00031002
00633 
00634 #define GLFW_OPENGL_ANY_PROFILE              0
00635 #define GLFW_OPENGL_CORE_PROFILE    0x00032001
00636 #define GLFW_OPENGL_COMPAT_PROFILE  0x00032002
00637 
00638 #define GLFW_CURSOR                 0x00033001
00639 #define GLFW_STICKY_KEYS            0x00033002
00640 #define GLFW_STICKY_MOUSE_BUTTONS   0x00033003
00641 
00642 #define GLFW_CURSOR_NORMAL          0x00034001
00643 #define GLFW_CURSOR_HIDDEN          0x00034002
00644 #define GLFW_CURSOR_DISABLED        0x00034003
00645 
00646 #define GLFW_ANY_RELEASE_BEHAVIOR            0
00647 #define GLFW_RELEASE_BEHAVIOR_FLUSH 0x00035001
00648 #define GLFW_RELEASE_BEHAVIOR_NONE  0x00035002
00649 
00661 #define GLFW_ARROW_CURSOR           0x00036001
00662 
00666 #define GLFW_IBEAM_CURSOR           0x00036002
00667 
00671 #define GLFW_CROSSHAIR_CURSOR       0x00036003
00672 
00676 #define GLFW_HAND_CURSOR            0x00036004
00677 
00681 #define GLFW_HRESIZE_CURSOR         0x00036005
00682 
00686 #define GLFW_VRESIZE_CURSOR         0x00036006
00687 
00689 #define GLFW_CONNECTED              0x00040001
00690 #define GLFW_DISCONNECTED           0x00040002
00691 
00692 #define GLFW_DONT_CARE              -1
00693 
00694 
00695 /*************************************************************************
00696  * GLFW API types
00697  *************************************************************************/
00698 
00706 typedef void (*GLFWglproc)(void);
00707 
00714 typedef struct GLFWmonitor GLFWmonitor;
00715 
00722 typedef struct GLFWwindow GLFWwindow;
00723 
00730 typedef struct GLFWcursor GLFWcursor;
00731 
00743 typedef void (* GLFWerrorfun)(int,const char*);
00744 
00759 typedef void (* GLFWwindowposfun)(GLFWwindow*,int,int);
00760 
00773 typedef void (* GLFWwindowsizefun)(GLFWwindow*,int,int);
00774 
00785 typedef void (* GLFWwindowclosefun)(GLFWwindow*);
00786 
00797 typedef void (* GLFWwindowrefreshfun)(GLFWwindow*);
00798 
00811 typedef void (* GLFWwindowfocusfun)(GLFWwindow*,int);
00812 
00826 typedef void (* GLFWwindowiconifyfun)(GLFWwindow*,int);
00827 
00841 typedef void (* GLFWframebuffersizefun)(GLFWwindow*,int,int);
00842 
00858 typedef void (* GLFWmousebuttonfun)(GLFWwindow*,int,int,int);
00859 
00872 typedef void (* GLFWcursorposfun)(GLFWwindow*,double,double);
00873 
00886 typedef void (* GLFWcursorenterfun)(GLFWwindow*,int);
00887 
00900 typedef void (* GLFWscrollfun)(GLFWwindow*,double,double);
00901 
00917 typedef void (* GLFWkeyfun)(GLFWwindow*,int,int,int,int);
00918 
00930 typedef void (* GLFWcharfun)(GLFWwindow*,unsigned int);
00931 
00948 typedef void (* GLFWcharmodsfun)(GLFWwindow*,unsigned int,int);
00949 
00962 typedef void (* GLFWdropfun)(GLFWwindow*,int,const char**);
00963 
00975 typedef void (* GLFWmonitorfun)(GLFWmonitor*,int);
00976 
00983 typedef struct GLFWvidmode
00984 {
00987     int width;
00990     int height;
00993     int redBits;
00996     int greenBits;
00999     int blueBits;
01002     int refreshRate;
01003 } GLFWvidmode;
01004 
01013 typedef struct GLFWgammaramp
01014 {
01017     unsigned short* red;
01020     unsigned short* green;
01023     unsigned short* blue;
01026     unsigned int size;
01027 } GLFWgammaramp;
01028 
01031 typedef struct GLFWimage
01032 {
01035     int width;
01038     int height;
01041     unsigned char* pixels;
01042 } GLFWimage;
01043 
01044 
01045 /*************************************************************************
01046  * GLFW API functions
01047  *************************************************************************/
01048 
01080 GLFWAPI int glfwInit(void);
01081 
01112 GLFWAPI void glfwTerminate(void);
01113 
01139 GLFWAPI void glfwGetVersion(int* major, int* minor, int* rev);
01140 
01171 GLFWAPI const char* glfwGetVersionString(void);
01172 
01204 GLFWAPI GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun cbfun);
01205 
01233 GLFWAPI GLFWmonitor** glfwGetMonitors(int* count);
01234 
01256 GLFWAPI GLFWmonitor* glfwGetPrimaryMonitor(void);
01257 
01279 GLFWAPI void glfwGetMonitorPos(GLFWmonitor* monitor, int* xpos, int* ypos);
01280 
01312 GLFWAPI void glfwGetMonitorPhysicalSize(GLFWmonitor* monitor, int* widthMM, int* heightMM);
01313 
01338 GLFWAPI const char* glfwGetMonitorName(GLFWmonitor* monitor);
01339 
01363 GLFWAPI GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun cbfun);
01364 
01396 GLFWAPI const GLFWvidmode* glfwGetVideoModes(GLFWmonitor* monitor, int* count);
01397 
01423 GLFWAPI const GLFWvidmode* glfwGetVideoMode(GLFWmonitor* monitor);
01424 
01443 GLFWAPI void glfwSetGamma(GLFWmonitor* monitor, float gamma);
01444 
01468 GLFWAPI const GLFWgammaramp* glfwGetGammaRamp(GLFWmonitor* monitor);
01469 
01496 GLFWAPI void glfwSetGammaRamp(GLFWmonitor* monitor, const GLFWgammaramp* ramp);
01497 
01513 GLFWAPI void glfwDefaultWindowHints(void);
01514 
01535 GLFWAPI void glfwWindowHint(int target, int hint);
01536 
01650 GLFWAPI GLFWwindow* glfwCreateWindow(int width, int height, const char* title, GLFWmonitor* monitor, GLFWwindow* share);
01651 
01678 GLFWAPI void glfwDestroyWindow(GLFWwindow* window);
01679 
01696 GLFWAPI int glfwWindowShouldClose(GLFWwindow* window);
01697 
01716 GLFWAPI void glfwSetWindowShouldClose(GLFWwindow* window, int value);
01717 
01741 GLFWAPI void glfwSetWindowTitle(GLFWwindow* window, const char* title);
01742 
01767 GLFWAPI void glfwGetWindowPos(GLFWwindow* window, int* xpos, int* ypos);
01768 
01798 GLFWAPI void glfwSetWindowPos(GLFWwindow* window, int xpos, int ypos);
01799 
01828 GLFWAPI void glfwGetWindowSize(GLFWwindow* window, int* width, int* height);
01829 
01860 GLFWAPI void glfwSetWindowSize(GLFWwindow* window, int width, int height);
01861 
01887 GLFWAPI void glfwGetFramebufferSize(GLFWwindow* window, int* width, int* height);
01888 
01922 GLFWAPI void glfwGetWindowFrameSize(GLFWwindow* window, int* left, int* top, int* right, int* bottom);
01923 
01948 GLFWAPI void glfwIconifyWindow(GLFWwindow* window);
01949 
01973 GLFWAPI void glfwRestoreWindow(GLFWwindow* window);
01974 
01993 GLFWAPI void glfwShowWindow(GLFWwindow* window);
01994 
02013 GLFWAPI void glfwHideWindow(GLFWwindow* window);
02014 
02033 GLFWAPI GLFWmonitor* glfwGetWindowMonitor(GLFWwindow* window);
02034 
02064 GLFWAPI int glfwGetWindowAttrib(GLFWwindow* window, int attrib);
02065 
02085 GLFWAPI void glfwSetWindowUserPointer(GLFWwindow* window, void* pointer);
02086 
02104 GLFWAPI void* glfwGetWindowUserPointer(GLFWwindow* window);
02105 
02127 GLFWAPI GLFWwindowposfun glfwSetWindowPosCallback(GLFWwindow* window, GLFWwindowposfun cbfun);
02128 
02153 GLFWAPI GLFWwindowsizefun glfwSetWindowSizeCallback(GLFWwindow* window, GLFWwindowsizefun cbfun);
02154 
02187 GLFWAPI GLFWwindowclosefun glfwSetWindowCloseCallback(GLFWwindow* window, GLFWwindowclosefun cbfun);
02188 
02217 GLFWAPI GLFWwindowrefreshfun glfwSetWindowRefreshCallback(GLFWwindow* window, GLFWwindowrefreshfun cbfun);
02218 
02244 GLFWAPI GLFWwindowfocusfun glfwSetWindowFocusCallback(GLFWwindow* window, GLFWwindowfocusfun cbfun);
02245 
02266 GLFWAPI GLFWwindowiconifyfun glfwSetWindowIconifyCallback(GLFWwindow* window, GLFWwindowiconifyfun cbfun);
02267 
02288 GLFWAPI GLFWframebuffersizefun glfwSetFramebufferSizeCallback(GLFWwindow* window, GLFWframebuffersizefun cbfun);
02289 
02321 GLFWAPI void glfwPollEvents(void);
02322 
02364 GLFWAPI void glfwWaitEvents(void);
02365 
02385 GLFWAPI void glfwPostEmptyEvent(void);
02386 
02406 GLFWAPI int glfwGetInputMode(GLFWwindow* window, int mode);
02407 
02452 GLFWAPI void glfwSetInputMode(GLFWwindow* window, int mode, int value);
02453 
02490 GLFWAPI int glfwGetKey(GLFWwindow* window, int key);
02491 
02519 GLFWAPI int glfwGetMouseButton(GLFWwindow* window, int button);
02520 
02555 GLFWAPI void glfwGetCursorPos(GLFWwindow* window, double* xpos, double* ypos);
02556 
02594 GLFWAPI void glfwSetCursorPos(GLFWwindow* window, double xpos, double ypos);
02595 
02634 GLFWAPI GLFWcursor* glfwCreateCursor(const GLFWimage* image, int xhot, int yhot);
02635 
02659 GLFWAPI GLFWcursor* glfwCreateStandardCursor(int shape);
02660 
02682 GLFWAPI void glfwDestroyCursor(GLFWcursor* cursor);
02683 
02707 GLFWAPI void glfwSetCursor(GLFWwindow* window, GLFWcursor* cursor);
02708 
02751 GLFWAPI GLFWkeyfun glfwSetKeyCallback(GLFWwindow* window, GLFWkeyfun cbfun);
02752 
02790 GLFWAPI GLFWcharfun glfwSetCharCallback(GLFWwindow* window, GLFWcharfun cbfun);
02791 
02822 GLFWAPI GLFWcharmodsfun glfwSetCharModsCallback(GLFWwindow* window, GLFWcharmodsfun cbfun);
02823 
02853 GLFWAPI GLFWmousebuttonfun glfwSetMouseButtonCallback(GLFWwindow* window, GLFWmousebuttonfun cbfun);
02854 
02877 GLFWAPI GLFWcursorposfun glfwSetCursorPosCallback(GLFWwindow* window, GLFWcursorposfun cbfun);
02878 
02900 GLFWAPI GLFWcursorenterfun glfwSetCursorEnterCallback(GLFWwindow* window, GLFWcursorenterfun cbfun);
02901 
02926 GLFWAPI GLFWscrollfun glfwSetScrollCallback(GLFWwindow* window, GLFWscrollfun cbfun);
02927 
02953 GLFWAPI GLFWdropfun glfwSetDropCallback(GLFWwindow* window, GLFWdropfun cbfun);
02954 
02971 GLFWAPI int glfwJoystickPresent(int joy);
02972 
02997 GLFWAPI const float* glfwGetJoystickAxes(int joy, int* count);
02998 
03026 GLFWAPI const unsigned char* glfwGetJoystickButtons(int joy, int* count);
03027 
03052 GLFWAPI const char* glfwGetJoystickName(int joy);
03053 
03075 GLFWAPI void glfwSetClipboardString(GLFWwindow* window, const char* string);
03076 
03104 GLFWAPI const char* glfwGetClipboardString(GLFWwindow* window);
03105 
03128 GLFWAPI double glfwGetTime(void);
03129 
03151 GLFWAPI void glfwSetTime(double time);
03152 
03179 GLFWAPI void glfwMakeContextCurrent(GLFWwindow* window);
03180 
03199 GLFWAPI GLFWwindow* glfwGetCurrentContext(void);
03200 
03222 GLFWAPI void glfwSwapBuffers(GLFWwindow* window);
03223 
03264 GLFWAPI void glfwSwapInterval(int interval);
03265 
03294 GLFWAPI int glfwExtensionSupported(const char* extension);
03295 
03331 GLFWAPI GLFWglproc glfwGetProcAddress(const char* procname);
03332 
03333 
03334 /*************************************************************************
03335  * Global definition cleanup
03336  *************************************************************************/
03337 
03338 /* ------------------- BEGIN SYSTEM/COMPILER SPECIFIC -------------------- */
03339 
03340 #ifdef GLFW_WINGDIAPI_DEFINED
03341  #undef WINGDIAPI
03342  #undef GLFW_WINGDIAPI_DEFINED
03343 #endif
03344 
03345 #ifdef GLFW_CALLBACK_DEFINED
03346  #undef CALLBACK
03347  #undef GLFW_CALLBACK_DEFINED
03348 #endif
03349 
03350 /* -------------------- END SYSTEM/COMPILER SPECIFIC --------------------- */
03351 
03352 
03353 #ifdef __cplusplus
03354 }
03355 #endif
03356 
03357 #endif /* _glfw3_h_ */
03358 


librealsense
Author(s): Sergey Dorodnicov , Mark Horn , Reagan Lopez
autogenerated on Tue Jun 25 2019 19:54:39