internal.h
Go to the documentation of this file.
1 //========================================================================
2 // GLFW 3.1 - www.glfw.org
3 //------------------------------------------------------------------------
4 // Copyright (c) 2002-2006 Marcus Geelnard
5 // Copyright (c) 2006-2010 Camilla Berglund <elmindreda@elmindreda.org>
6 //
7 // This software is provided 'as-is', without any express or implied
8 // warranty. In no event will the authors be held liable for any damages
9 // arising from the use of this software.
10 //
11 // Permission is granted to anyone to use this software for any purpose,
12 // including commercial applications, and to alter it and redistribute it
13 // freely, subject to the following restrictions:
14 //
15 // 1. The origin of this software must not be misrepresented; you must not
16 // claim that you wrote the original software. If you use this software
17 // in a product, an acknowledgment in the product documentation would
18 // be appreciated but is not required.
19 //
20 // 2. Altered source versions must be plainly marked as such, and must not
21 // be misrepresented as being the original software.
22 //
23 // 3. This notice may not be removed or altered from any source
24 // distribution.
25 //
26 //========================================================================
27 
28 #ifndef _glfw3_internal_h_
29 #define _glfw3_internal_h_
30 
31 
32 #if defined(_GLFW_USE_CONFIG_H)
33  #include "glfw_config.h"
34 #endif
35 
36 #define _GLFW_VERSION_NUMBER "3.1.2"
37 
38 #if defined(GLFW_INCLUDE_GLCOREARB) || \
39  defined(GLFW_INCLUDE_ES1) || \
40  defined(GLFW_INCLUDE_ES2) || \
41  defined(GLFW_INCLUDE_ES3) || \
42  defined(GLFW_INCLUDE_NONE) || \
43  defined(GLFW_INCLUDE_GLEXT) || \
44  defined(GLFW_INCLUDE_GLU) || \
45  defined(GLFW_DLL)
46  #error "You may not define any header option macros when compiling GLFW"
47 #endif
48 
49 #if defined(_GLFW_USE_OPENGL)
50  // This is the default for glfw3.h
51 #elif defined(_GLFW_USE_GLESV1)
52  #define GLFW_INCLUDE_ES1
53 #elif defined(_GLFW_USE_GLESV2)
54  #define GLFW_INCLUDE_ES2
55 #else
56  #error "No supported client library selected"
57 #endif
58 
59 // Disable the inclusion of the platform glext.h by gl.h to allow proper
60 // inclusion of our own, newer glext.h below
61 #define GL_GLEXT_LEGACY
62 
63 #include "../include/GLFW/glfw3.h"
64 
65 #if defined(_GLFW_USE_OPENGL)
66  // This path may need to be changed if you build GLFW using your own setup
67  // GLFW comes with its own copy of glext.h since it uses fairly new extensions
68  // and not all development environments come with an up-to-date version
69  #include "../deps/GL/glext.h"
70 #endif
71 
73 typedef const GLubyte* (APIENTRY * PFNGLGETSTRINGPROC)(GLenum);
75 
79 typedef struct _GLFWwindow _GLFWwindow;
80 typedef struct _GLFWlibrary _GLFWlibrary;
81 typedef struct _GLFWmonitor _GLFWmonitor;
82 typedef struct _GLFWcursor _GLFWcursor;
83 
84 #if defined(_GLFW_COCOA)
85  #include "cocoa_platform.h"
86 #elif defined(_GLFW_WIN32)
87  #include "win32_platform.h"
88 #elif defined(_GLFW_X11)
89  #include "x11_platform.h"
90 #elif defined(_GLFW_WAYLAND)
91  #include "wl_platform.h"
92 #elif defined(_GLFW_MIR)
93  #include "mir_platform.h"
94 #else
95  #error "No supported window creation API selected"
96 #endif
97 
98 
99 //========================================================================
100 // Doxygen group definitions
101 //========================================================================
102 
126 //========================================================================
127 // Helper macros
128 //========================================================================
129 
130 // Checks for whether the library has been initialized
131 #define _GLFW_REQUIRE_INIT() \
132  if (!_glfwInitialized) \
133  { \
134  _glfwInputError(GLFW_NOT_INITIALIZED, NULL); \
135  return; \
136  }
137 #define _GLFW_REQUIRE_INIT_OR_RETURN(x) \
138  if (!_glfwInitialized) \
139  { \
140  _glfwInputError(GLFW_NOT_INITIALIZED, NULL); \
141  return x; \
142  }
143 
144 // Swaps the provided pointers
145 #define _GLFW_SWAP_POINTERS(x, y) \
146  { \
147  void* t; \
148  t = x; \
149  x = y; \
150  y = t; \
151  }
152 
153 
154 //========================================================================
155 // Platform-independent structures
156 //========================================================================
157 
165 {
166  int width;
167  int height;
168  const char* title;
176 };
177 
178 
186 {
187  int api;
188  int major;
189  int minor;
192  int profile;
194  int release;
196 };
197 
198 
208 {
209  int redBits;
211  int blueBits;
220  int stereo;
221  int samples;
222  int sRGB;
224 
225  // This is defined in the context API's context.h
227 };
228 
229 
233 {
234  struct _GLFWwindow* next;
235 
236  // Window settings and state
242  void* userPointer;
246 
247  // Window input state
253  char keys[GLFW_KEY_LAST + 1];
254 
255  // OpenGL extensions and context attributes
256  struct {
257  int api;
260  int profile;
262  int release;
263  } context;
264 
265 #if defined(_GLFW_USE_OPENGL)
266  PFNGLGETSTRINGIPROC GetStringi;
267 #endif
271 
272  struct {
288  } callbacks;
289 
290  // This is defined in the window API's platform.h
292  // This is defined in the context API's context.h
294 };
295 
296 
300 {
301  char* name;
302 
303  // Physical dimensions in millimeters.
304  int widthMM, heightMM;
305 
309 
312 
313  // This is defined in the window API's platform.h
315 };
316 
317 
321 {
323 
324  // This is defined in the window API's platform.h
326 };
327 
331 {
332  struct {
337  } hints;
338 
339  double cursorPosX, cursorPosY;
340 
342 
345 
348 
349  struct {
351  } callbacks;
352 
353  // This is defined in the window API's platform.h
355  // This is defined in the context API's context.h
357  // This is defined in the platform's time.h
359  // This is defined in the platform's joystick.h
361  // This is defined in the platform's tls.h
363 };
364 
365 
366 //========================================================================
367 // Global state shared between compilation units of GLFW
368 //========================================================================
369 
373 
378 extern _GLFWlibrary _glfw;
379 
380 
381 //========================================================================
382 // Platform API functions
383 //========================================================================
384 
389 int _glfwPlatformInit(void);
390 
394 void _glfwPlatformTerminate(void);
395 
403 const char* _glfwPlatformGetVersionString(void);
404 
408 void _glfwPlatformGetCursorPos(_GLFWwindow* window, double* xpos, double* ypos);
409 
413 void _glfwPlatformSetCursorPos(_GLFWwindow* window, double xpos, double ypos);
414 
420 
425 
435 
439 void _glfwPlatformGetMonitorPos(_GLFWmonitor* monitor, int* xpos, int* ypos);
440 
445 
449 
454 
459 
463 void _glfwPlatformSetClipboardString(_GLFWwindow* window, const char* string);
464 
471 const char* _glfwPlatformGetClipboardString(_GLFWwindow* window);
472 
476 int _glfwPlatformJoystickPresent(int joy);
477 
481 const float* _glfwPlatformGetJoystickAxes(int joy, int* count);
482 
486 const unsigned char* _glfwPlatformGetJoystickButtons(int joy, int* count);
487 
491 const char* _glfwPlatformGetJoystickName(int joy);
492 
496 double _glfwPlatformGetTime(void);
497 
501 void _glfwPlatformSetTime(double time);
502 
506  const _GLFWwndconfig* wndconfig,
507  const _GLFWctxconfig* ctxconfig,
508  const _GLFWfbconfig* fbconfig);
509 
513 
517 void _glfwPlatformSetWindowTitle(_GLFWwindow* window, const char* title);
518 
522 void _glfwPlatformGetWindowPos(_GLFWwindow* window, int* xpos, int* ypos);
523 
527 void _glfwPlatformSetWindowPos(_GLFWwindow* window, int xpos, int ypos);
528 
532 void _glfwPlatformGetWindowSize(_GLFWwindow* window, int* width, int* height);
533 
537 void _glfwPlatformSetWindowSize(_GLFWwindow* window, int width, int height);
538 
542 void _glfwPlatformGetFramebufferSize(_GLFWwindow* window, int* width, int* height);
543 
547 void _glfwPlatformGetWindowFrameSize(_GLFWwindow* window, int* left, int* top, int* right, int* bottom);
548 
553 
558 
563 
567 
572 
577 
582 
587 
591 void _glfwPlatformPollEvents(void);
592 
596 void _glfwPlatformWaitEvents(void);
597 
601 void _glfwPlatformPostEmptyEvent(void);
602 
607 
612 
617 
621 void _glfwPlatformSwapInterval(int interval);
622 
626 int _glfwPlatformExtensionSupported(const char* extension);
627 
631 GLFWglproc _glfwPlatformGetProcAddress(const char* procname);
632 
636 int _glfwPlatformCreateCursor(_GLFWcursor* cursor, const GLFWimage* image, int xhot, int yhot);
637 
641 int _glfwPlatformCreateStandardCursor(_GLFWcursor* cursor, int shape);
642 
647 
651 void _glfwPlatformSetCursor(_GLFWwindow* window, _GLFWcursor* cursor);
652 
653 
654 //========================================================================
655 // Event API functions
656 //========================================================================
657 
665 
672 void _glfwInputWindowPos(_GLFWwindow* window, int xpos, int ypos);
673 
680 void _glfwInputWindowSize(_GLFWwindow* window, int width, int height);
681 
688 void _glfwInputFramebufferSize(_GLFWwindow* window, int width, int height);
689 
696 void _glfwInputWindowIconify(_GLFWwindow* window, int iconified);
697 
701 void _glfwInputWindowDamage(_GLFWwindow* window);
702 
708 
717 void _glfwInputKey(_GLFWwindow* window, int key, int scancode, int action, int mods);
718 
727 void _glfwInputChar(_GLFWwindow* window, unsigned int codepoint, int mods, int plain);
728 
735 void _glfwInputScroll(_GLFWwindow* window, double x, double y);
736 
743 void _glfwInputMouseClick(_GLFWwindow* window, int button, int action, int mods);
744 
753 void _glfwInputCursorMotion(_GLFWwindow* window, double x, double y);
754 
761 void _glfwInputCursorEnter(_GLFWwindow* window, int entered);
762 
765 void _glfwInputMonitorChange(void);
766 
773 void _glfwInputError(int error, const char* format, ...);
774 
781 void _glfwInputDrop(_GLFWwindow* window, int count, const char** names);
782 
783 
784 //========================================================================
785 // Utility functions
786 //========================================================================
787 
791  const GLFWvidmode* desired);
792 
796 int _glfwCompareVideoModes(const GLFWvidmode* first, const GLFWvidmode* second);
797 
801 void _glfwSplitBPP(int bpp, int* red, int* green, int* blue);
802 
809 int _glfwStringInExtensionString(const char* string, const char* extensions);
810 
819 const _GLFWfbconfig* _glfwChooseFBConfig(const _GLFWfbconfig* desired,
820  const _GLFWfbconfig* alternatives,
821  unsigned int count);
822 
829 
841 
850 
853 void _glfwAllocGammaArrays(GLFWgammaramp* ramp, unsigned int size);
854 
858 
867 _GLFWmonitor* _glfwAllocMonitor(const char* name, int widthMM, int heightMM);
868 
873 
877 
878 #endif // _glfw3_internal_h_
void _glfwInputChar(_GLFWwindow *window, unsigned int codepoint, int mods, int plain)
Notifies shared code of a Unicode character input event.
Definition: input.c:159
GLFWcharmodsfun charmods
Definition: internal.h:286
GLboolean _glfwInitialized
Flag indicating whether GLFW has been successfully initialized.
int revision
Definition: internal.h:258
GLFWwindowposfun pos
Definition: internal.h:273
void(* GLFWwindowiconifyfun)(GLFWwindow *, int)
The function signature for window iconify/restore callbacks.
Definition: glfw3.h:826
const GLubyte *APIENTRYP PFNGLGETSTRINGIPROC(GLenum name, GLuint index)
Definition: glext.h:1161
void _glfwFreeGammaArrays(GLFWgammaramp *ramp)
Definition: monitor.c:197
GLboolean debug
Definition: internal.h:191
Library global data.
Definition: internal.h:330
PFNGLCLEARPROC Clear
Definition: internal.h:270
GLFWcursorposfun cursorPos
Definition: internal.h:281
const GLint * first
Definition: glext.h:368
GLboolean _glfwIsValidContext(const _GLFWctxconfig *ctxconfig)
Checks whether the current context fulfils the specified hard constraints.
Definition: context.c:478
_GLFWwindow * share
Definition: internal.h:195
GLFWgammaramp currentRamp
Definition: internal.h:311
GLboolean floating
Definition: internal.h:240
void _glfwFreeMonitor(_GLFWmonitor *monitor)
Frees a monitor object and any data associated with it.
Definition: monitor.c:176
Cursor structure.
Definition: internal.h:320
void _glfwPlatformSwapBuffers(_GLFWwindow *window)
Swaps the front and back buffers of the specified window.
Definition: wgl_context.c:600
void(* GLFWcharmodsfun)(GLFWwindow *, unsigned int, int)
The function signature for Unicode character with modifiers callbacks.
Definition: glfw3.h:948
void _glfwPlatformGetVideoMode(_GLFWmonitor *monitor, GLFWvidmode *mode)
_GLFWfbconfig framebuffer
Definition: internal.h:333
int _glfwPlatformCreateStandardCursor(_GLFWcursor *cursor, int shape)
Creates a cursor with a standard shape.
_GLFW_PLATFORM_CURSOR_STATE
Definition: internal.h:325
_GLFWwindow * _glfwPlatformGetCurrentContext(void)
Returns the window whose context is current on the calling thread.
Definition: win32_tls.c:65
void _glfwPlatformGetWindowSize(_GLFWwindow *window, int *width, int *height)
Retrieves the size of the client area of the specified window.
Definition: win32_window.c:895
int major(int version)
Definition: rs.cpp:49
int _glfwStringInExtensionString(const char *string, const char *extensions)
Searches an extension string for the specified extension.
Definition: context.c:500
void(* GLFWmonitorfun)(GLFWmonitor *, int)
The function signature for monitor configuration callbacks.
Definition: glfw3.h:975
int _glfwPlatformWindowFocused(_GLFWwindow *window)
Returns whether the window is focused.
Definition: win32_window.c:976
GLboolean _glfwPlatformIsSameMonitor(_GLFWmonitor *first, _GLFWmonitor *second)
Checks whether two monitor objects represent the same monitor.
void _glfwInputWindowIconify(_GLFWwindow *window, int iconified)
Notifies shared code of a window iconification event.
Definition: window.c:85
GLint GLint GLsizei GLsizei height
Definition: glext.h:112
GLint GLint GLint GLint GLint GLint y
Definition: glext.h:114
void _glfwInputWindowSize(_GLFWwindow *window, int width, int height)
Notifies shared code of a window resize event.
Definition: window.c:79
double _glfwPlatformGetTime(void)
Returns the value of the GLFW timer.
Definition: win32_time.c:75
_GLFWmonitor ** _glfwPlatformGetMonitors(int *count)
Returns the currently connected monitors.
GLFWmousebuttonfun mouseButton
Definition: internal.h:280
Window configuration.
Definition: internal.h:164
GLFWwindowclosefun close
Definition: internal.h:275
void _glfwPlatformApplyCursorMode(_GLFWwindow *window)
Applies the cursor mode of the specified window to the system.
_GLFWcursor * next
Definition: internal.h:322
void _glfwPlatformGetWindowPos(_GLFWwindow *window, int *xpos, int *ypos)
Retrieves the position of the client area of the specified window.
Definition: win32_window.c:875
GLFWvidmode * modes
Definition: internal.h:306
const _GLFWfbconfig * _glfwChooseFBConfig(const _GLFWfbconfig *desired, const _GLFWfbconfig *alternatives, unsigned int count)
Chooses the framebuffer config that best matches the desired one.
Definition: context.c:191
GLenum GLenum GLsizei void * image
Definition: glext.h:2716
typedef GLenum(APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC)(GLenum target)
int accumGreenBits
Definition: internal.h:216
_GLFWctxconfig context
Definition: internal.h:335
void(* GLFWdropfun)(GLFWwindow *, int, const char **)
The function signature for file drop callbacks.
Definition: glfw3.h:962
GLFWglproc _glfwPlatformGetProcAddress(const char *procname)
Returns the address of the specified function for the current context.
Definition: wgl_context.c:657
const float * _glfwPlatformGetJoystickAxes(int joy, int *count)
Returns the values of all axes of the specified joystick.
GLFWcursorenterfun cursorEnter
Definition: internal.h:282
GLFWframebuffersizefun fbsize
Definition: internal.h:279
_GLFW_PLATFORM_LIBRARY_TIME_STATE
Definition: internal.h:358
void _glfwPlatformSetGammaRamp(_GLFWmonitor *monitor, const GLFWgammaramp *ramp)
Sets the current gamma ramp for the specified monitor.
void(* GLFWkeyfun)(GLFWwindow *, int, int, int, int)
The function signature for keyboard key callbacks.
Definition: glfw3.h:917
const GLubyte *(APIENTRY * PFNGLGETSTRINGPROC)(GLenum)
Definition: internal.h:73
const char * _glfwPlatformGetVersionString(void)
Returns a string describing the compile-time configuration.
Definition: win32_init.c:370
void(* GLFWmousebuttonfun)(GLFWwindow *, int, int, int)
The function signature for mouse button callbacks.
Definition: glfw3.h:858
int _glfwPlatformExtensionSupported(const char *extension)
Returns whether the specified extension is available.
Definition: wgl_context.c:628
void _glfwPlatformGetWindowFrameSize(_GLFWwindow *window, int *left, int *top, int *right, int *bottom)
Retrieves the size of the frame of the window.
Definition: win32_window.c:926
GLFWkeyfun key
Definition: internal.h:284
void(* GLFWcharfun)(GLFWwindow *, unsigned int)
The function signature for Unicode character callbacks.
Definition: glfw3.h:930
void _glfwInputWindowFocus(_GLFWwindow *window, GLboolean focused)
Notifies shared code of a window focus event.
Definition: window.c:39
int _glfwPlatformInit(void)
Initializes the platform-specific part of the library.
Definition: win32_init.c:324
void(APIENTRY * PFNGLGETINTEGERVPROC)(GLenum, GLint *)
Definition: internal.h:74
void _glfwPlatformTerminate(void)
Terminates the platform-specific part of the library.
Definition: win32_init.c:354
void _glfwPlatformPostEmptyEvent(void)
Posts an empty event to the event queue.
GLbyte GLbyte blue
Definition: glext.h:379
void _glfwPlatformPollEvents(void)
Processes all pending events.
Definition: win32_window.c:991
int stencilBits
Definition: internal.h:214
int _glfwPlatformCreateCursor(_GLFWcursor *cursor, const GLFWimage *image, int xhot, int yhot)
Creates a custom cursor.
PFNGLGETSTRINGPROC GetString
Definition: internal.h:269
_GLFWwindow * windowListHead
Definition: internal.h:343
void _glfwPlatformSetWindowSize(_GLFWwindow *window, int width, int height)
Sets the size of the client area of the specified window.
Definition: win32_window.c:906
int modeCount
Definition: internal.h:307
GLuint GLuint * names
Definition: glext.h:5325
void _glfwPlatformDestroyWindow(_GLFWwindow *window)
Definition: win32_window.c:853
GLboolean autoIconify
Definition: internal.h:239
const char * title
Definition: internal.h:168
void _glfwInputWindowDamage(_GLFWwindow *window)
Notifies shared code of a window damage event.
Definition: window.c:97
int release
Definition: internal.h:262
GLFWvidmode videoMode
Definition: internal.h:243
void _glfwInputWindowCloseRequest(_GLFWwindow *window)
Notifies shared code of a window close request event.
Definition: window.c:103
#define APIENTRY
Definition: glext.h:47
Monitor structure.
Definition: internal.h:299
void _glfwInputDrop(_GLFWwindow *window, int count, const char **names)
Notifies dropped object over window.
Definition: input.c:219
char * name
Definition: internal.h:301
GLboolean closed
Definition: internal.h:241
typedef GLint(APIENTRYP PFNGLGETATTRIBLOCATIONPROC)(GLuint program
GLFWwindowrefreshfun refresh
Definition: internal.h:276
const unsigned char * _glfwPlatformGetJoystickButtons(int joy, int *count)
Returns the state of all buttons of the specified joystick.
void _glfwPlatformGetFramebufferSize(_GLFWwindow *window, int *width, int *height)
Retrieves the size of the framebuffer of the specified window.
Definition: win32_window.c:921
void _glfwPlatformSetWindowPos(_GLFWwindow *window, int xpos, int ypos)
Sets the position of the client area of the specified window.
Definition: win32_window.c:886
void _glfwPlatformSetTime(double time)
Sets the GLFW timer.
Definition: win32_time.c:81
int profile
Definition: internal.h:260
_GLFWcursor * cursorListHead
Definition: internal.h:341
_GLFW_PLATFORM_FBCONFIG
Definition: internal.h:226
int _glfwPlatformWindowIconified(_GLFWwindow *window)
Returns whether the window is iconified.
Definition: win32_window.c:981
_GLFWlibrary _glfw
All global data protected by _glfwInitialized. This should only be touched after a call to glfwInit t...
char keys[GLFW_KEY_LAST+1]
Definition: internal.h:253
int refreshRate
Definition: internal.h:336
_GLFWwindow * cursorWindow
Definition: internal.h:344
GLboolean visible
Definition: internal.h:170
void(* GLFWcursorposfun)(GLFWwindow *, double, double)
The function signature for cursor position callbacks.
Definition: glfw3.h:872
typedef GLboolean(APIENTRYP PFNGLISQUERYPROC)(GLuint id)
GLint GLint bottom
Definition: glext.h:1947
double cursorPosY
Definition: internal.h:250
void _glfwPlatformGetGammaRamp(_GLFWmonitor *monitor, GLFWgammaramp *ramp)
Returns the current gamma ramp for the specified monitor.
_GLFW_PLATFORM_CONTEXT_STATE
Definition: internal.h:293
GLuint GLuint GLsizei count
Definition: glext.h:111
GLboolean forward
Definition: internal.h:190
void _glfwPlatformIconifyWindow(_GLFWwindow *window)
Iconifies the specified window.
Definition: win32_window.c:948
PFNGLGETINTEGERVPROC GetIntegerv
Definition: internal.h:268
_GLFW_PLATFORM_WINDOW_STATE
Definition: internal.h:291
int monitorCount
Definition: internal.h:347
_GLFWmonitor * monitor
Definition: internal.h:175
int robustness
Definition: internal.h:261
GLFWcharfun character
Definition: internal.h:285
void _glfwPlatformSetCursorPos(_GLFWwindow *window, double xpos, double ypos)
Sets the position of the cursor, relative to the client area of the window.
int cursorMode
Definition: internal.h:251
void(* GLFWwindowsizefun)(GLFWwindow *, int, int)
The function signature for window resize callbacks.
Definition: glfw3.h:773
GLFWwindowsizefun size
Definition: internal.h:274
void * userPointer
Definition: internal.h:242
double cursorPosY
Definition: internal.h:339
_GLFW_PLATFORM_LIBRARY_WINDOW_STATE
Definition: internal.h:354
int accumBlueBits
Definition: internal.h:217
struct _GLFWwindow * next
Definition: internal.h:234
void _glfwFreeMonitors(_GLFWmonitor **monitors, int count)
Definition: monitor.c:206
_GLFW_PLATFORM_LIBRARY_TLS_STATE
Definition: internal.h:362
int _glfwPlatformWindowVisible(_GLFWwindow *window)
Returns whether the window is visible.
Definition: win32_window.c:986
GLboolean stickyKeys
Definition: internal.h:248
void _glfwPlatformDestroyCursor(_GLFWcursor *cursor)
Destroys a cursor.
void _glfwSplitBPP(int bpp, int *red, int *green, int *blue)
Splits a color depth into red, green and blue bit depths.
Definition: monitor.c:271
int _glfwPlatformJoystickPresent(int joy)
Returns whether the specified joystick is present.
void(* GLFWframebuffersizefun)(GLFWwindow *, int, int)
The function signature for framebuffer resize callbacks.
Definition: glfw3.h:841
void _glfwPlatformSwapInterval(int interval)
Sets the swap interval for the current context.
Definition: wgl_context.c:613
GLFWvidmode currentMode
Definition: internal.h:308
void(APIENTRY * PFNGLCLEARPROC)(GLbitfield)
Definition: internal.h:72
GLFWvidmode * _glfwPlatformGetVideoModes(_GLFWmonitor *monitor, int *count)
Returns the available video modes for the specified monitor.
GLint left
Definition: glext.h:1947
_GLFWwndconfig window
Definition: internal.h:334
_GLFWmonitor * _glfwAllocMonitor(const char *name, int widthMM, int heightMM)
Allocates and returns a monitor object with the specified name and dimensions.
Definition: monitor.c:166
int auxBuffers
Definition: internal.h:219
void _glfwPlatformGetMonitorPos(_GLFWmonitor *monitor, int *xpos, int *ypos)
Returns the position of the monitor&#39;s viewport on the virtual screen.
GLdouble GLdouble right
Definition: glext.h:6472
void _glfwInputMouseClick(_GLFWwindow *window, int button, int action, int mods)
Notifies shared code of a mouse button click event.
Definition: input.c:180
GLuint * monitors
Definition: glext.h:5363
void _glfwPlatformSetClipboardString(_GLFWwindow *window, const char *string)
Sets the clipboard to the specified string.
void _glfwInputWindowPos(_GLFWwindow *window, int xpos, int ypos)
Notifies shared code of a window movement event.
Definition: window.c:73
void(* GLFWwindowposfun)(GLFWwindow *, int, int)
The function signature for window position callbacks.
Definition: glfw3.h:759
void _glfwAllocGammaArrays(GLFWgammaramp *ramp, unsigned int size)
Definition: monitor.c:189
GLboolean decorated
Definition: internal.h:171
GLenum mode
Definition: glext.h:1117
void _glfwPlatformShowWindow(_GLFWwindow *window)
Makes the specified window visible.
Definition: win32_window.c:958
GLboolean resizable
Definition: internal.h:237
void _glfwInputScroll(_GLFWwindow *window, double x, double y)
Notifies shared code of a scroll event.
Definition: input.c:174
_GLFW_PLATFORM_LIBRARY_CONTEXT_STATE
Definition: internal.h:356
double cursorPosX
Definition: internal.h:250
GLboolean forward
Definition: internal.h:259
GLFWgammaramp originalRamp
Definition: internal.h:310
typedef void(APIENTRYP PFNGLDRAWRANGEELEMENTSPROC)(GLenum mode
GLboolean floating
Definition: internal.h:174
GLbyte green
Definition: glext.h:379
GLboolean autoIconify
Definition: internal.h:173
GLboolean _glfwRefreshContextAttribs(const _GLFWctxconfig *ctxconfig)
Retrieves the attributes of the current context.
Definition: context.c:354
const char * _glfwPlatformGetJoystickName(int joy)
Returns the name of the specified joystick.
void _glfwPlatformUnhideWindow(_GLFWwindow *window)
Definition: win32_window.c:966
#define GLFW_KEY_LAST
Definition: glfw3.h:391
void _glfwInputCursorEnter(_GLFWwindow *window, int entered)
Notifies shared code of a cursor enter/leave event.
Definition: input.c:213
GLboolean stickyMouseButtons
Definition: internal.h:249
_GLFW_PLATFORM_LIBRARY_JOYSTICK_STATE
Definition: internal.h:360
_GLFW_PLATFORM_MONITOR_STATE
Definition: internal.h:314
Gamma ramp.
Definition: glfw3.h:1013
void _glfwPlatformMakeContextCurrent(_GLFWwindow *window)
Makes the context of the specified window current for the calling thread.
Definition: wgl_context.c:590
void _glfwInputCursorMotion(_GLFWwindow *window, double x, double y)
Notifies shared code of a cursor motion event.
Definition: input.c:195
void _glfwPlatformGetCursorPos(_GLFWwindow *window, double *xpos, double *ypos)
Retrieves the position of the cursor relative to the client area of the window.
GLboolean _glfwIsValidContextConfig(const _GLFWctxconfig *ctxconfig)
Checks whether the desired context attributes are valid.
Definition: context.c:90
Video mode type.
Definition: glfw3.h:983
void _glfwInputMonitorChange(void)
Definition: monitor.c:89
GLint GLint GLsizei width
Definition: glext.h:112
GLuint const GLchar * name
Definition: glext.h:655
GLFWmonitorfun monitor
Definition: internal.h:350
void _glfwInputKey(_GLFWwindow *window, int key, int scancode, int action, int mods)
Notifies shared code of a physical key event.
Definition: input.c:134
void _glfwPlatformSetCursor(_GLFWwindow *window, _GLFWcursor *cursor)
Sets the cursor for the window.
GLsizeiptr size
Definition: glext.h:532
void _glfwPlatformHideWindow(_GLFWwindow *window)
Hides the specified window.
Definition: win32_window.c:971
int minor(int version)
Definition: rs.cpp:53
int _glfwCompareVideoModes(const GLFWvidmode *first, const GLFWvidmode *second)
Performs lexical comparison between two GLFWvidmode structures.
Definition: monitor.c:266
void(* GLFWwindowclosefun)(GLFWwindow *)
The function signature for window close callbacks.
Definition: glfw3.h:785
void _glfwPlatformWaitEvents(void)
Waits until events are queued and processes them.
GLFWdropfun drop
Definition: internal.h:287
_GLFWcursor * cursor
Definition: internal.h:245
void _glfwInputError(int error, const char *format,...)
Notifies shared code of an error.
typedef GLbitfield(APIENTRYP PFNGLQUERYMATRIXXOESPROC)(GLfixed *mantissa
#define GLFW_MOUSE_BUTTON_LAST
Definition: glfw3.h:431
void _glfwInputFramebufferSize(_GLFWwindow *window, int width, int height)
Notifies shared code of a framebuffer resize event.
Definition: window.c:91
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: glext.h:112
const GLFWvidmode * _glfwChooseVideoMode(_GLFWmonitor *monitor, const GLFWvidmode *desired)
Definition: monitor.c:216
int accumAlphaBits
Definition: internal.h:218
char mouseButtons[GLFW_MOUSE_BUTTON_LAST+1]
Definition: internal.h:252
_GLFWmonitor ** monitors
Definition: internal.h:346
void(* GLFWcursorenterfun)(GLFWwindow *, int)
The function signature for cursor enter/leave callbacks.
Definition: glfw3.h:886
const char * _glfwPlatformGetClipboardString(_GLFWwindow *window)
Returns the contents of the clipboard as a string.
Image data.
Definition: glfw3.h:1031
void(* GLFWscrollfun)(GLFWwindow *, double, double)
The function signature for scroll callbacks.
Definition: glfw3.h:900
Context configuration.
Definition: internal.h:185
Window and context structure.
Definition: internal.h:232
Framebuffer configuration.
Definition: internal.h:207
GLdouble GLdouble GLdouble GLdouble top
Definition: glext.h:6472
GLFWscrollfun scroll
Definition: internal.h:283
GLboolean resizable
Definition: internal.h:169
_GLFWmonitor * monitor
Definition: internal.h:244
void _glfwPlatformSetWindowTitle(_GLFWwindow *window, const char *title)
Sets the title of the specified window.
Definition: win32_window.c:861
GLFWwindowiconifyfun iconify
Definition: internal.h:278
GLint GLint GLint GLint GLint x
Definition: glext.h:114
void(* GLFWwindowrefreshfun)(GLFWwindow *)
The function signature for window content refresh callbacks.
Definition: glfw3.h:797
GLFWwindowfocusfun focus
Definition: internal.h:277
void _glfwPlatformRestoreWindow(_GLFWwindow *window)
Restores the specified window.
Definition: win32_window.c:953
int accumRedBits
Definition: internal.h:215
void(* GLFWglproc)(void)
Client API function pointer type.
Definition: glfw3.h:706
GLboolean decorated
Definition: internal.h:238
int doublebuffer
Definition: internal.h:223
int _glfwPlatformCreateWindow(_GLFWwindow *window, const _GLFWwndconfig *wndconfig, const _GLFWctxconfig *ctxconfig, const _GLFWfbconfig *fbconfig)
Definition: win32_window.c:797
void(* GLFWwindowfocusfun)(GLFWwindow *, int)
The function signature for window focus/defocus callbacks.
Definition: glfw3.h:811
GLboolean focused
Definition: internal.h:172


librealsense
Author(s): Sergey Dorodnicov , Mark Horn , Reagan Lopez
autogenerated on Fri Mar 13 2020 03:16:17