ruby-glfw 0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/README +1 -0
- data/README.API +73 -0
- data/Rakefile +120 -0
- data/examples/boing.rb +519 -0
- data/examples/gears.rb +327 -0
- data/examples/keytest.rb +117 -0
- data/examples/listmodes.rb +20 -0
- data/examples/mipmaps.rb +104 -0
- data/examples/mipmaps.tga +0 -0
- data/examples/particles.rb +837 -0
- data/examples/pong3d.rb +741 -0
- data/examples/pong3d_field.tga +0 -0
- data/examples/pong3d_instr.tga +0 -0
- data/examples/pong3d_menu.tga +0 -0
- data/examples/pong3d_title.tga +0 -0
- data/examples/pong3d_winner1.tga +0 -0
- data/examples/pong3d_winner2.tga +0 -0
- data/examples/splitview.rb +432 -0
- data/examples/triangle.rb +89 -0
- data/examples/wave.rb +294 -0
- data/ext/glfw/glfw.c +1094 -0
- data/ext/glfw/mkrf_conf.rb +70 -0
- data/glfw-src/Makefile +220 -0
- data/glfw-src/compile.ami +61 -0
- data/glfw-src/compile.bat +217 -0
- data/glfw-src/compile.sh +607 -0
- data/glfw-src/docs/Makefile +57 -0
- data/glfw-src/docs/Reference.pdf +0 -0
- data/glfw-src/docs/UsersGuide.pdf +0 -0
- data/glfw-src/docs/cleanup.bat +22 -0
- data/glfw-src/docs/glfwdoc.sty +80 -0
- data/glfw-src/docs/glfwrm.tex +3034 -0
- data/glfw-src/docs/glfwug.tex +2024 -0
- data/glfw-src/docs/readme.txt +80 -0
- data/glfw-src/examples/Makefile.amigaos.gcc +70 -0
- data/glfw-src/examples/Makefile.amigaos.vbcc +70 -0
- data/glfw-src/examples/Makefile.dos.djgpp +71 -0
- data/glfw-src/examples/Makefile.macosx.gcc +96 -0
- data/glfw-src/examples/Makefile.win32.bcc +75 -0
- data/glfw-src/examples/Makefile.win32.cross-mgw +79 -0
- data/glfw-src/examples/Makefile.win32.cygwin +79 -0
- data/glfw-src/examples/Makefile.win32.lcc +74 -0
- data/glfw-src/examples/Makefile.win32.mgw +75 -0
- data/glfw-src/examples/Makefile.win32.msvc +74 -0
- data/glfw-src/examples/Makefile.win32.ow +74 -0
- data/glfw-src/examples/Makefile.win32.pellesc +74 -0
- data/glfw-src/examples/Makefile.x11.in +54 -0
- data/glfw-src/examples/boing.c +606 -0
- data/glfw-src/examples/bundle.sh +46 -0
- data/glfw-src/examples/gears.c +382 -0
- data/glfw-src/examples/keytest.c +264 -0
- data/glfw-src/examples/listmodes.c +48 -0
- data/glfw-src/examples/mipmaps.c +126 -0
- data/glfw-src/examples/mipmaps.tga +0 -0
- data/glfw-src/examples/mtbench.c +301 -0
- data/glfw-src/examples/mthello.c +48 -0
- data/glfw-src/examples/particles.c +1148 -0
- data/glfw-src/examples/pong3d.c +839 -0
- data/glfw-src/examples/pong3d_field.tga +0 -0
- data/glfw-src/examples/pong3d_instr.tga +0 -0
- data/glfw-src/examples/pong3d_menu.tga +0 -0
- data/glfw-src/examples/pong3d_title.tga +0 -0
- data/glfw-src/examples/pong3d_winner1.tga +0 -0
- data/glfw-src/examples/pong3d_winner2.tga +0 -0
- data/glfw-src/examples/splitview.c +506 -0
- data/glfw-src/examples/triangle.c +108 -0
- data/glfw-src/examples/wave.c +397 -0
- data/glfw-src/images/opengl.gif +0 -0
- data/glfw-src/images/osicert.gif +0 -0
- data/glfw-src/include/GL/glfw.h +486 -0
- data/glfw-src/lib/amigaos/Makefile.amigaos.gcc +128 -0
- data/glfw-src/lib/amigaos/Makefile.amigaos.vbcc +128 -0
- data/glfw-src/lib/amigaos/SDI_compiler.h +94 -0
- data/glfw-src/lib/amigaos/amigaos_enable.c +51 -0
- data/glfw-src/lib/amigaos/amigaos_fullscreen.c +319 -0
- data/glfw-src/lib/amigaos/amigaos_glext.c +61 -0
- data/glfw-src/lib/amigaos/amigaos_init.c +284 -0
- data/glfw-src/lib/amigaos/amigaos_joystick.c +359 -0
- data/glfw-src/lib/amigaos/amigaos_thread.c +494 -0
- data/glfw-src/lib/amigaos/amigaos_time.c +206 -0
- data/glfw-src/lib/amigaos/amigaos_window.c +830 -0
- data/glfw-src/lib/amigaos/platform.h +337 -0
- data/glfw-src/lib/dos/Makefile.dos.djgpp +146 -0
- data/glfw-src/lib/dos/dos_enable.c +51 -0
- data/glfw-src/lib/dos/dos_events.c +173 -0
- data/glfw-src/lib/dos/dos_fullscreen.c +101 -0
- data/glfw-src/lib/dos/dos_glext.c +59 -0
- data/glfw-src/lib/dos/dos_init.c +105 -0
- data/glfw-src/lib/dos/dos_irq.s +246 -0
- data/glfw-src/lib/dos/dos_joystick.c +94 -0
- data/glfw-src/lib/dos/dos_keyboard.c +694 -0
- data/glfw-src/lib/dos/dos_mouse.c +337 -0
- data/glfw-src/lib/dos/dos_thread.c +267 -0
- data/glfw-src/lib/dos/dos_time.c +309 -0
- data/glfw-src/lib/dos/dos_window.c +563 -0
- data/glfw-src/lib/dos/platform.h +341 -0
- data/glfw-src/lib/enable.c +295 -0
- data/glfw-src/lib/fullscreen.c +95 -0
- data/glfw-src/lib/glext.c +201 -0
- data/glfw-src/lib/image.c +629 -0
- data/glfw-src/lib/init.c +108 -0
- data/glfw-src/lib/input.c +280 -0
- data/glfw-src/lib/internal.h +210 -0
- data/glfw-src/lib/joystick.c +101 -0
- data/glfw-src/lib/macosx/Makefile.macosx.gcc +172 -0
- data/glfw-src/lib/macosx/Makefile.macosx.gcc.universal +166 -0
- data/glfw-src/lib/macosx/libglfw.pc.in +11 -0
- data/glfw-src/lib/macosx/macosx_enable.c +42 -0
- data/glfw-src/lib/macosx/macosx_fullscreen.c +126 -0
- data/glfw-src/lib/macosx/macosx_glext.c +52 -0
- data/glfw-src/lib/macosx/macosx_init.c +194 -0
- data/glfw-src/lib/macosx/macosx_joystick.c +50 -0
- data/glfw-src/lib/macosx/macosx_thread.c +414 -0
- data/glfw-src/lib/macosx/macosx_time.c +112 -0
- data/glfw-src/lib/macosx/macosx_window.c +1279 -0
- data/glfw-src/lib/macosx/platform.h +349 -0
- data/glfw-src/lib/stream.c +194 -0
- data/glfw-src/lib/tga.c +405 -0
- data/glfw-src/lib/thread.c +340 -0
- data/glfw-src/lib/time.c +83 -0
- data/glfw-src/lib/win32/Makefile.win32.bcc +265 -0
- data/glfw-src/lib/win32/Makefile.win32.cross-mgw +274 -0
- data/glfw-src/lib/win32/Makefile.win32.cygwin +279 -0
- data/glfw-src/lib/win32/Makefile.win32.lcc +246 -0
- data/glfw-src/lib/win32/Makefile.win32.mgw +243 -0
- data/glfw-src/lib/win32/Makefile.win32.msvc +242 -0
- data/glfw-src/lib/win32/Makefile.win32.ow +242 -0
- data/glfw-src/lib/win32/Makefile.win32.pellesc +242 -0
- data/glfw-src/lib/win32/glfwdll.def +67 -0
- data/glfw-src/lib/win32/glfwdll_mgw1.def +67 -0
- data/glfw-src/lib/win32/glfwdll_mgw2.def +67 -0
- data/glfw-src/lib/win32/glfwdll_pellesc.def +65 -0
- data/glfw-src/lib/win32/libglfw.pc.in +11 -0
- data/glfw-src/lib/win32/platform.h +474 -0
- data/glfw-src/lib/win32/win32_dllmain.c +60 -0
- data/glfw-src/lib/win32/win32_enable.c +155 -0
- data/glfw-src/lib/win32/win32_fullscreen.c +317 -0
- data/glfw-src/lib/win32/win32_glext.c +85 -0
- data/glfw-src/lib/win32/win32_init.c +356 -0
- data/glfw-src/lib/win32/win32_joystick.c +234 -0
- data/glfw-src/lib/win32/win32_thread.c +511 -0
- data/glfw-src/lib/win32/win32_time.c +146 -0
- data/glfw-src/lib/win32/win32_window.c +1714 -0
- data/glfw-src/lib/window.c +727 -0
- data/glfw-src/lib/x11/Makefile.x11.in +243 -0
- data/glfw-src/lib/x11/platform.h +415 -0
- data/glfw-src/lib/x11/x11_enable.c +51 -0
- data/glfw-src/lib/x11/x11_fullscreen.c +524 -0
- data/glfw-src/lib/x11/x11_glext.c +69 -0
- data/glfw-src/lib/x11/x11_init.c +275 -0
- data/glfw-src/lib/x11/x11_joystick.c +371 -0
- data/glfw-src/lib/x11/x11_keysym2unicode.c +902 -0
- data/glfw-src/lib/x11/x11_thread.c +507 -0
- data/glfw-src/lib/x11/x11_time.c +154 -0
- data/glfw-src/lib/x11/x11_window.c +1746 -0
- data/glfw-src/license.txt +21 -0
- data/glfw-src/readme.html +927 -0
- data/glfw-src/support/d/examples/Makefile +59 -0
- data/glfw-src/support/d/examples/boing.d +610 -0
- data/glfw-src/support/d/examples/gears.d +379 -0
- data/glfw-src/support/d/examples/keytest.d +272 -0
- data/glfw-src/support/d/examples/listmodes.d +48 -0
- data/glfw-src/support/d/examples/mipmaps.d +126 -0
- data/glfw-src/support/d/examples/mtbench.d +304 -0
- data/glfw-src/support/d/examples/mthello.d +54 -0
- data/glfw-src/support/d/examples/particles.d +1150 -0
- data/glfw-src/support/d/examples/pong3d.d +840 -0
- data/glfw-src/support/d/examples/splitview.d +486 -0
- data/glfw-src/support/d/examples/triangle.d +108 -0
- data/glfw-src/support/d/examples/wave.d +400 -0
- data/glfw-src/support/d/imports/gl.d +4539 -0
- data/glfw-src/support/d/imports/glfw.d +349 -0
- data/glfw-src/support/d/imports/glu.d +328 -0
- data/glfw-src/support/d/lib/glfwdll.def +64 -0
- data/glfw-src/support/d/lib/glu32.def +56 -0
- data/glfw-src/support/d/lib/makefile +12 -0
- data/glfw-src/support/d/lib/opengl32.def +372 -0
- data/glfw-src/support/d/readme.html +83 -0
- data/glfw-src/support/delphi/examples/Triangle.dpr +105 -0
- data/glfw-src/support/delphi/lib/glfw.pas +437 -0
- data/glfw-src/support/delphi/readme.html +97 -0
- data/glfw-src/support/lua/examples/gears.lua +383 -0
- data/glfw-src/support/lua/examples/test1.lua +68 -0
- data/glfw-src/support/lua/readme.html +128 -0
- data/glfw-src/support/lua/src/luaglfw.c +1179 -0
- data/glfw-src/support/lua/src/luaglfw.h +48 -0
- data/glfw-src/support/lua/src/runlua.c +82 -0
- data/glfw-src/support/masm/examples/fpc.mac +47 -0
- data/glfw-src/support/masm/examples/makeit.bat +66 -0
- data/glfw-src/support/masm/examples/triangle.asm +232 -0
- data/glfw-src/support/masm/include/glfw.inc +326 -0
- data/glfw-src/support/masm/include/glu32.inc +55 -0
- data/glfw-src/support/masm/include/opengl32.inc +372 -0
- data/glfw-src/support/masm/lib/glfwdll.lib +0 -0
- data/glfw-src/support/masm/readme.html +170 -0
- data/glfw-src/support/msvc80/GLFW.sln +26 -0
- data/glfw-src/support/msvc80/GLFW.vcproj +257 -0
- data/glfw-src/support/msvc80/GLFWDLL.vcproj +287 -0
- data/glfw-src/support/visualbasic/bindings/glfw.bas +320 -0
- data/glfw-src/support/visualbasic/bindings/glu32.bas +284 -0
- data/glfw-src/support/visualbasic/bindings/opengl32.bas +999 -0
- data/glfw-src/support/visualbasic/examples/Triangle.bas +101 -0
- data/glfw-src/support/visualbasic/readme.html +164 -0
- data/website/index.html +84 -0
- data/website/style.css +110 -0
- metadata +301 -0
@@ -0,0 +1,67 @@
|
|
1
|
+
LIBRARY GLFW.DLL
|
2
|
+
|
3
|
+
EXPORTS
|
4
|
+
glfwBroadcastCond
|
5
|
+
glfwCloseWindow
|
6
|
+
glfwCreateCond
|
7
|
+
glfwCreateMutex
|
8
|
+
glfwCreateThread
|
9
|
+
glfwDestroyCond
|
10
|
+
glfwDestroyMutex
|
11
|
+
glfwDestroyThread
|
12
|
+
glfwDisable
|
13
|
+
glfwEnable
|
14
|
+
glfwExtensionSupported
|
15
|
+
glfwFreeImage
|
16
|
+
glfwGetDesktopMode
|
17
|
+
glfwGetGLVersion
|
18
|
+
glfwGetJoystickButtons
|
19
|
+
glfwGetJoystickParam
|
20
|
+
glfwGetJoystickPos
|
21
|
+
glfwGetKey
|
22
|
+
glfwGetMouseButton
|
23
|
+
glfwGetMousePos
|
24
|
+
glfwGetMouseWheel
|
25
|
+
glfwGetNumberOfProcessors
|
26
|
+
glfwGetProcAddress
|
27
|
+
glfwGetThreadID
|
28
|
+
glfwGetTime
|
29
|
+
glfwGetVersion
|
30
|
+
glfwGetVideoModes
|
31
|
+
glfwGetWindowParam
|
32
|
+
glfwGetWindowSize
|
33
|
+
glfwIconifyWindow
|
34
|
+
glfwInit
|
35
|
+
glfwLoadMemoryTexture2D
|
36
|
+
glfwLoadTexture2D
|
37
|
+
glfwLoadTextureImage2D
|
38
|
+
glfwLockMutex
|
39
|
+
glfwOpenWindow
|
40
|
+
glfwOpenWindowHint
|
41
|
+
glfwPollEvents
|
42
|
+
glfwReadImage
|
43
|
+
glfwReadMemoryImage
|
44
|
+
glfwRestoreWindow
|
45
|
+
glfwSetCharCallback
|
46
|
+
glfwSetKeyCallback
|
47
|
+
glfwSetMouseButtonCallback
|
48
|
+
glfwSetMousePos
|
49
|
+
glfwSetMousePosCallback
|
50
|
+
glfwSetMouseWheel
|
51
|
+
glfwSetMouseWheelCallback
|
52
|
+
glfwSetTime
|
53
|
+
glfwSetWindowCloseCallback
|
54
|
+
glfwSetWindowRefreshCallback
|
55
|
+
glfwSetWindowPos
|
56
|
+
glfwSetWindowSize
|
57
|
+
glfwSetWindowSizeCallback
|
58
|
+
glfwSetWindowTitle
|
59
|
+
glfwSignalCond
|
60
|
+
glfwSleep
|
61
|
+
glfwSwapBuffers
|
62
|
+
glfwSwapInterval
|
63
|
+
glfwTerminate
|
64
|
+
glfwUnlockMutex
|
65
|
+
glfwWaitCond
|
66
|
+
glfwWaitEvents
|
67
|
+
glfwWaitThread
|
@@ -0,0 +1,67 @@
|
|
1
|
+
LIBRARY GLFW.DLL
|
2
|
+
|
3
|
+
EXPORTS
|
4
|
+
glfwBroadcastCond = glfwBroadcastCond@4
|
5
|
+
glfwCloseWindow = glfwCloseWindow@0
|
6
|
+
glfwCreateCond = glfwCreateCond@0
|
7
|
+
glfwCreateMutex = glfwCreateMutex@0
|
8
|
+
glfwCreateThread = glfwCreateThread@8
|
9
|
+
glfwDestroyCond = glfwDestroyCond@4
|
10
|
+
glfwDestroyMutex = glfwDestroyMutex@4
|
11
|
+
glfwDestroyThread = glfwDestroyThread@4
|
12
|
+
glfwDisable = glfwDisable@4
|
13
|
+
glfwEnable = glfwEnable@4
|
14
|
+
glfwExtensionSupported = glfwExtensionSupported@4
|
15
|
+
glfwFreeImage = glfwFreeImage@4
|
16
|
+
glfwGetDesktopMode = glfwGetDesktopMode@4
|
17
|
+
glfwGetGLVersion = glfwGetGLVersion@12
|
18
|
+
glfwGetJoystickButtons = glfwGetJoystickButtons@12
|
19
|
+
glfwGetJoystickParam = glfwGetJoystickParam@8
|
20
|
+
glfwGetJoystickPos = glfwGetJoystickPos@12
|
21
|
+
glfwGetKey = glfwGetKey@4
|
22
|
+
glfwGetMouseButton = glfwGetMouseButton@4
|
23
|
+
glfwGetMousePos = glfwGetMousePos@8
|
24
|
+
glfwGetMouseWheel = glfwGetMouseWheel@0
|
25
|
+
glfwGetNumberOfProcessors = glfwGetNumberOfProcessors@0
|
26
|
+
glfwGetProcAddress = glfwGetProcAddress@4
|
27
|
+
glfwGetThreadID = glfwGetThreadID@0
|
28
|
+
glfwGetTime = glfwGetTime@0
|
29
|
+
glfwGetVersion = glfwGetVersion@12
|
30
|
+
glfwGetVideoModes = glfwGetVideoModes@8
|
31
|
+
glfwGetWindowParam = glfwGetWindowParam@4
|
32
|
+
glfwGetWindowSize = glfwGetWindowSize@8
|
33
|
+
glfwIconifyWindow = glfwIconifyWindow@0
|
34
|
+
glfwInit = glfwInit@0
|
35
|
+
glfwLoadMemoryTexture2D = glfwLoadMemoryTexture2D@12
|
36
|
+
glfwLoadTexture2D = glfwLoadTexture2D@8
|
37
|
+
glfwLoadTextureImage2D = glfwLoadTextureImage2D@8
|
38
|
+
glfwLockMutex = glfwLockMutex@4
|
39
|
+
glfwOpenWindow = glfwOpenWindow@36
|
40
|
+
glfwOpenWindowHint = glfwOpenWindowHint@8
|
41
|
+
glfwPollEvents = glfwPollEvents@0
|
42
|
+
glfwReadImage = glfwReadImage@12
|
43
|
+
glfwReadMemoryImage = glfwReadMemoryImage@16
|
44
|
+
glfwRestoreWindow = glfwRestoreWindow@0
|
45
|
+
glfwSetCharCallback = glfwSetCharCallback@4
|
46
|
+
glfwSetKeyCallback = glfwSetKeyCallback@4
|
47
|
+
glfwSetMouseButtonCallback = glfwSetMouseButtonCallback@4
|
48
|
+
glfwSetMousePos = glfwSetMousePos@8
|
49
|
+
glfwSetMousePosCallback = glfwSetMousePosCallback@4
|
50
|
+
glfwSetMouseWheel = glfwSetMouseWheel@4
|
51
|
+
glfwSetMouseWheelCallback = glfwSetMouseWheelCallback@4
|
52
|
+
glfwSetTime = glfwSetTime@8
|
53
|
+
glfwSetWindowCloseCallback = glfwSetWindowCloseCallback@4
|
54
|
+
glfwSetWindowRefreshCallback = glfwSetWindowRefreshCallback@4
|
55
|
+
glfwSetWindowPos = glfwSetWindowPos@8
|
56
|
+
glfwSetWindowSize = glfwSetWindowSize@8
|
57
|
+
glfwSetWindowSizeCallback = glfwSetWindowSizeCallback@4
|
58
|
+
glfwSetWindowTitle = glfwSetWindowTitle@4
|
59
|
+
glfwSignalCond = glfwSignalCond@4
|
60
|
+
glfwSleep = glfwSleep@8
|
61
|
+
glfwSwapBuffers = glfwSwapBuffers@0
|
62
|
+
glfwSwapInterval = glfwSwapInterval@4
|
63
|
+
glfwTerminate = glfwTerminate@0
|
64
|
+
glfwUnlockMutex = glfwUnlockMutex@4
|
65
|
+
glfwWaitCond = glfwWaitCond@16
|
66
|
+
glfwWaitEvents = glfwWaitEvents@0
|
67
|
+
glfwWaitThread = glfwWaitThread@8
|
@@ -0,0 +1,67 @@
|
|
1
|
+
LIBRARY GLFW.DLL
|
2
|
+
|
3
|
+
EXPORTS
|
4
|
+
glfwBroadcastCond@4
|
5
|
+
glfwCloseWindow@0
|
6
|
+
glfwCreateCond@0
|
7
|
+
glfwCreateMutex@0
|
8
|
+
glfwCreateThread@8
|
9
|
+
glfwDestroyCond@4
|
10
|
+
glfwDestroyMutex@4
|
11
|
+
glfwDestroyThread@4
|
12
|
+
glfwDisable@4
|
13
|
+
glfwEnable@4
|
14
|
+
glfwExtensionSupported@4
|
15
|
+
glfwFreeImage@4
|
16
|
+
glfwGetDesktopMode@4
|
17
|
+
glfwGetGLVersion@12
|
18
|
+
glfwGetJoystickButtons@12
|
19
|
+
glfwGetJoystickParam@8
|
20
|
+
glfwGetJoystickPos@12
|
21
|
+
glfwGetKey@4
|
22
|
+
glfwGetMouseButton@4
|
23
|
+
glfwGetMousePos@8
|
24
|
+
glfwGetMouseWheel@0
|
25
|
+
glfwGetNumberOfProcessors@0
|
26
|
+
glfwGetProcAddress@4
|
27
|
+
glfwGetThreadID@0
|
28
|
+
glfwGetTime@0
|
29
|
+
glfwGetVersion@12
|
30
|
+
glfwGetVideoModes@8
|
31
|
+
glfwGetWindowParam@4
|
32
|
+
glfwGetWindowSize@8
|
33
|
+
glfwIconifyWindow@0
|
34
|
+
glfwInit@0
|
35
|
+
glfwLoadMemoryTexture2D@12
|
36
|
+
glfwLoadTexture2D@8
|
37
|
+
glfwLoadTextureImage2D@8
|
38
|
+
glfwLockMutex@4
|
39
|
+
glfwOpenWindow@36
|
40
|
+
glfwOpenWindowHint@8
|
41
|
+
glfwPollEvents@0
|
42
|
+
glfwReadImage@12
|
43
|
+
glfwReadMemoryImage@16
|
44
|
+
glfwRestoreWindow@0
|
45
|
+
glfwSetCharCallback@4
|
46
|
+
glfwSetKeyCallback@4
|
47
|
+
glfwSetMouseButtonCallback@4
|
48
|
+
glfwSetMousePos@8
|
49
|
+
glfwSetMousePosCallback@4
|
50
|
+
glfwSetMouseWheel@4
|
51
|
+
glfwSetMouseWheelCallback@4
|
52
|
+
glfwSetTime@8
|
53
|
+
glfwSetWindowCloseCallback@4
|
54
|
+
glfwSetWindowRefreshCallback@4
|
55
|
+
glfwSetWindowPos@8
|
56
|
+
glfwSetWindowSize@8
|
57
|
+
glfwSetWindowSizeCallback@4
|
58
|
+
glfwSetWindowTitle@4
|
59
|
+
glfwSignalCond@4
|
60
|
+
glfwSleep@8
|
61
|
+
glfwSwapBuffers@0
|
62
|
+
glfwSwapInterval@4
|
63
|
+
glfwTerminate@0
|
64
|
+
glfwUnlockMutex@4
|
65
|
+
glfwWaitCond@16
|
66
|
+
glfwWaitEvents@0
|
67
|
+
glfwWaitThread@8
|
@@ -0,0 +1,65 @@
|
|
1
|
+
LIBRARY GLFW
|
2
|
+
|
3
|
+
EXPORTS
|
4
|
+
glfwBroadcastCond = glfwBroadcastCond@4
|
5
|
+
glfwCloseWindow = glfwCloseWindow@0
|
6
|
+
glfwCreateCond = glfwCreateCond@0
|
7
|
+
glfwCreateMutex = glfwCreateMutex@0
|
8
|
+
glfwCreateThread = glfwCreateThread@8
|
9
|
+
glfwDestroyCond = glfwDestroyCond@4
|
10
|
+
glfwDestroyMutex = glfwDestroyMutex@4
|
11
|
+
glfwDestroyThread = glfwDestroyThread@4
|
12
|
+
glfwDisable = glfwDisable@4
|
13
|
+
glfwEnable = glfwEnable@4
|
14
|
+
glfwExtensionSupported = glfwExtensionSupported@4
|
15
|
+
glfwFreeImage = glfwFreeImage@4
|
16
|
+
glfwGetDesktopMode = glfwGetDesktopMode@4
|
17
|
+
glfwGetGLVersion = glfwGetGLVersion@12
|
18
|
+
glfwGetJoystickButtons = glfwGetJoystickButtons@12
|
19
|
+
glfwGetJoystickParam = glfwGetJoystickParam@8
|
20
|
+
glfwGetJoystickPos = glfwGetJoystickPos@12
|
21
|
+
glfwGetKey = glfwGetKey@4
|
22
|
+
glfwGetMouseButton = glfwGetMouseButton@4
|
23
|
+
glfwGetMousePos = glfwGetMousePos@8
|
24
|
+
glfwGetMouseWheel = glfwGetMouseWheel@0
|
25
|
+
glfwGetNumberOfProcessors = glfwGetNumberOfProcessors@0
|
26
|
+
glfwGetProcAddress = glfwGetProcAddress@4
|
27
|
+
glfwGetThreadID = glfwGetThreadID@0
|
28
|
+
glfwGetTime = glfwGetTime@0
|
29
|
+
glfwGetVersion = glfwGetVersion@12
|
30
|
+
glfwGetVideoModes = glfwGetVideoModes@8
|
31
|
+
glfwGetWindowParam = glfwGetWindowParam@4
|
32
|
+
glfwGetWindowSize = glfwGetWindowSize@8
|
33
|
+
glfwIconifyWindow = glfwIconifyWindow@0
|
34
|
+
glfwInit = glfwInit@0
|
35
|
+
glfwLoadTexture2D = glfwLoadTexture2D@8
|
36
|
+
glfwLockMutex = glfwLockMutex@4
|
37
|
+
glfwOpenWindow = glfwOpenWindow@36
|
38
|
+
glfwOpenWindowHint = glfwOpenWindowHint@8
|
39
|
+
glfwPollEvents = glfwPollEvents@0
|
40
|
+
glfwReadImage = glfwReadImage@12
|
41
|
+
glfwReadMemoryImage = glfwReadMemoryImage@16
|
42
|
+
glfwRestoreWindow = glfwRestoreWindow@0
|
43
|
+
glfwSetCharCallback = glfwSetCharCallback@4
|
44
|
+
glfwSetKeyCallback = glfwSetKeyCallback@4
|
45
|
+
glfwSetMouseButtonCallback = glfwSetMouseButtonCallback@4
|
46
|
+
glfwSetMousePos = glfwSetMousePos@8
|
47
|
+
glfwSetMousePosCallback = glfwSetMousePosCallback@4
|
48
|
+
glfwSetMouseWheel = glfwSetMouseWheel@4
|
49
|
+
glfwSetMouseWheelCallback = glfwSetMouseWheelCallback@4
|
50
|
+
glfwSetTime = glfwSetTime@8
|
51
|
+
glfwSetWindowCloseCallback = glfwSetWindowCloseCallback@4
|
52
|
+
glfwSetWindowRefreshCallback = glfwSetWindowRefreshCallback@4
|
53
|
+
glfwSetWindowPos = glfwSetWindowPos@8
|
54
|
+
glfwSetWindowSize = glfwSetWindowSize@8
|
55
|
+
glfwSetWindowSizeCallback = glfwSetWindowSizeCallback@4
|
56
|
+
glfwSetWindowTitle = glfwSetWindowTitle@4
|
57
|
+
glfwSignalCond = glfwSignalCond@4
|
58
|
+
glfwSleep = glfwSleep@8
|
59
|
+
glfwSwapBuffers = glfwSwapBuffers@0
|
60
|
+
glfwSwapInterval = glfwSwapInterval@4
|
61
|
+
glfwTerminate = glfwTerminate@0
|
62
|
+
glfwUnlockMutex = glfwUnlockMutex@4
|
63
|
+
glfwWaitCond = glfwWaitCond@16
|
64
|
+
glfwWaitEvents = glfwWaitEvents@0
|
65
|
+
glfwWaitThread = glfwWaitThread@8
|
@@ -0,0 +1,11 @@
|
|
1
|
+
prefix=@PREFIX@
|
2
|
+
exec_prefix=@PREFIX@
|
3
|
+
libdir=@PREFIX@/lib
|
4
|
+
includedir=@PREFIX@/include
|
5
|
+
|
6
|
+
Name: GLFW
|
7
|
+
Description: A portable framework for OpenGL development
|
8
|
+
Version: 2.6.0
|
9
|
+
URL: http://glfw.sourceforge.net/
|
10
|
+
Libs: -L${libdir} -lglfw -lglu32 -lopengl32 -lm -s -mwindows -e _mainCRTStartup
|
11
|
+
Cflags: -I${includedir} -mwin32
|
@@ -0,0 +1,474 @@
|
|
1
|
+
//========================================================================
|
2
|
+
// GLFW - An OpenGL framework
|
3
|
+
// File: platform.h
|
4
|
+
// Platform: Windows
|
5
|
+
// API version: 2.6
|
6
|
+
// WWW: http://glfw.sourceforge.net
|
7
|
+
//------------------------------------------------------------------------
|
8
|
+
// Copyright (c) 2002-2006 Camilla Berglund
|
9
|
+
//
|
10
|
+
// This software is provided 'as-is', without any express or implied
|
11
|
+
// warranty. In no event will the authors be held liable for any damages
|
12
|
+
// arising from the use of this software.
|
13
|
+
//
|
14
|
+
// Permission is granted to anyone to use this software for any purpose,
|
15
|
+
// including commercial applications, and to alter it and redistribute it
|
16
|
+
// freely, subject to the following restrictions:
|
17
|
+
//
|
18
|
+
// 1. The origin of this software must not be misrepresented; you must not
|
19
|
+
// claim that you wrote the original software. If you use this software
|
20
|
+
// in a product, an acknowledgment in the product documentation would
|
21
|
+
// be appreciated but is not required.
|
22
|
+
//
|
23
|
+
// 2. Altered source versions must be plainly marked as such, and must not
|
24
|
+
// be misrepresented as being the original software.
|
25
|
+
//
|
26
|
+
// 3. This notice may not be removed or altered from any source
|
27
|
+
// distribution.
|
28
|
+
//
|
29
|
+
//========================================================================
|
30
|
+
|
31
|
+
#ifndef _platform_h_
|
32
|
+
#define _platform_h_
|
33
|
+
|
34
|
+
|
35
|
+
// This is the Windows version of GLFW
|
36
|
+
#define _GLFW_WIN32
|
37
|
+
|
38
|
+
|
39
|
+
// Include files
|
40
|
+
#include <windows.h>
|
41
|
+
#include <mmsystem.h>
|
42
|
+
#include "../../include/GL/glfw.h"
|
43
|
+
|
44
|
+
|
45
|
+
//========================================================================
|
46
|
+
// Hack: Define things that some <windows.h>'s do not define
|
47
|
+
//========================================================================
|
48
|
+
|
49
|
+
// Some old versions of w32api (used by MinGW and Cygwin) define
|
50
|
+
// WH_KEYBOARD_LL without typedef:ing KBDLLHOOKSTRUCT (!)
|
51
|
+
#if defined(__MINGW32__) || defined(__CYGWIN__)
|
52
|
+
#include <w32api.h>
|
53
|
+
#if defined(WH_KEYBOARD_LL) && (__W32API_MAJOR_VERSION == 1) && (__W32API_MINOR_VERSION <= 2)
|
54
|
+
#undef WH_KEYBOARD_LL
|
55
|
+
#endif
|
56
|
+
#endif
|
57
|
+
|
58
|
+
//------------------------------------------------------------------------
|
59
|
+
// ** NOTE ** If this gives you compiler errors and you are using MinGW
|
60
|
+
// (or Dev-C++), update to w32api version 1.3 or later:
|
61
|
+
// http://sourceforge.net/project/showfiles.php?group_id=2435
|
62
|
+
//------------------------------------------------------------------------
|
63
|
+
#ifndef WH_KEYBOARD_LL
|
64
|
+
#define WH_KEYBOARD_LL 13
|
65
|
+
typedef struct tagKBDLLHOOKSTRUCT {
|
66
|
+
DWORD vkCode;
|
67
|
+
DWORD scanCode;
|
68
|
+
DWORD flags;
|
69
|
+
DWORD time;
|
70
|
+
DWORD dwExtraInfo;
|
71
|
+
} KBDLLHOOKSTRUCT, FAR *LPKBDLLHOOKSTRUCT, *PKBDLLHOOKSTRUCT;
|
72
|
+
#endif // WH_KEYBOARD_LL
|
73
|
+
|
74
|
+
#ifndef LLKHF_ALTDOWN
|
75
|
+
#define LLKHF_ALTDOWN 0x00000020
|
76
|
+
#endif
|
77
|
+
|
78
|
+
#ifndef SPI_SETSCREENSAVERRUNNING
|
79
|
+
#define SPI_SETSCREENSAVERRUNNING 97
|
80
|
+
#endif
|
81
|
+
#ifndef SPI_GETANIMATION
|
82
|
+
#define SPI_GETANIMATION 72
|
83
|
+
#endif
|
84
|
+
#ifndef SPI_SETANIMATION
|
85
|
+
#define SPI_SETANIMATION 73
|
86
|
+
#endif
|
87
|
+
#ifndef SPI_GETFOREGROUNDLOCKTIMEOUT
|
88
|
+
#define SPI_GETFOREGROUNDLOCKTIMEOUT 0x2000
|
89
|
+
#endif
|
90
|
+
#ifndef SPI_SETFOREGROUNDLOCKTIMEOUT
|
91
|
+
#define SPI_SETFOREGROUNDLOCKTIMEOUT 0x2001
|
92
|
+
#endif
|
93
|
+
|
94
|
+
#ifndef CDS_FULLSCREEN
|
95
|
+
#define CDS_FULLSCREEN 4
|
96
|
+
#endif
|
97
|
+
|
98
|
+
#ifndef PFD_GENERIC_ACCELERATED
|
99
|
+
#define PFD_GENERIC_ACCELERATED 0x00001000
|
100
|
+
#endif
|
101
|
+
#ifndef PFD_DEPTH_DONTCARE
|
102
|
+
#define PFD_DEPTH_DONTCARE 0x20000000
|
103
|
+
#endif
|
104
|
+
|
105
|
+
#ifndef ENUM_CURRENT_SETTINGS
|
106
|
+
#define ENUM_CURRENT_SETTINGS -1
|
107
|
+
#endif
|
108
|
+
#ifndef ENUM_REGISTRY_SETTINGS
|
109
|
+
#define ENUM_REGISTRY_SETTINGS -2
|
110
|
+
#endif
|
111
|
+
|
112
|
+
#ifndef WM_MOUSEWHEEL
|
113
|
+
#define WM_MOUSEWHEEL 0x020A
|
114
|
+
#endif
|
115
|
+
#ifndef WHEEL_DELTA
|
116
|
+
#define WHEEL_DELTA 120
|
117
|
+
#endif
|
118
|
+
|
119
|
+
#ifndef WM_XBUTTONDOWN
|
120
|
+
#define WM_XBUTTONDOWN 0x020B
|
121
|
+
#endif
|
122
|
+
#ifndef WM_XBUTTONUP
|
123
|
+
#define WM_XBUTTONUP 0x020C
|
124
|
+
#endif
|
125
|
+
#ifndef XBUTTON1
|
126
|
+
#define XBUTTON1 1
|
127
|
+
#endif
|
128
|
+
#ifndef XBUTTON2
|
129
|
+
#define XBUTTON2 2
|
130
|
+
#endif
|
131
|
+
|
132
|
+
// wglSwapIntervalEXT typedef (Win32 buffer-swap interval control)
|
133
|
+
typedef int (APIENTRY * WGLSWAPINTERVALEXT_T) (int);
|
134
|
+
// wglChoosePixelFormatARB typedef
|
135
|
+
typedef BOOL (WINAPI * WGLCHOOSEPIXELFORMATARB_T) (HDC, const int *, const FLOAT *, UINT, int *, UINT *);
|
136
|
+
// wglGetPixelFormatAttribivARB typedef
|
137
|
+
typedef BOOL (WINAPI * WGLGETPIXELFORMATATTRIBIVARB_T) (HDC, int, int, UINT, const int *, int *);
|
138
|
+
// wglGetExtensionStringEXT typedef
|
139
|
+
typedef const char *(APIENTRY * WGLGETEXTENSIONSSTRINGEXT_T)( void );
|
140
|
+
// wglGetExtensionStringARB typedef
|
141
|
+
typedef const char *(APIENTRY * WGLGETEXTENSIONSSTRINGARB_T)( HDC );
|
142
|
+
|
143
|
+
#define WGL_DRAW_TO_WINDOW_ARB 0x2001
|
144
|
+
#define WGL_SUPPORT_OPENGL_ARB 0x2010
|
145
|
+
#define WGL_ACCELERATION_ARB 0x2003
|
146
|
+
#define WGL_FULL_ACCELERATION_ARB 0x2027
|
147
|
+
#define WGL_DOUBLE_BUFFER_ARB 0x2011
|
148
|
+
#define WGL_STEREO_ARB 0x2012
|
149
|
+
#define WGL_COLOR_BITS_ARB 0x2014
|
150
|
+
#define WGL_RED_BITS_ARB 0x2015
|
151
|
+
#define WGL_GREEN_BITS_ARB 0x2017
|
152
|
+
#define WGL_BLUE_BITS_ARB 0x2019
|
153
|
+
#define WGL_ALPHA_BITS_ARB 0x201B
|
154
|
+
#define WGL_ACCUM_BITS_ARB 0x201D
|
155
|
+
#define WGL_ACCUM_RED_BITS_ARB 0x201E
|
156
|
+
#define WGL_ACCUM_GREEN_BITS_ARB 0x201F
|
157
|
+
#define WGL_ACCUM_BLUE_BITS_ARB 0x2020
|
158
|
+
#define WGL_ACCUM_ALPHA_BITS_ARB 0x2021
|
159
|
+
#define WGL_DEPTH_BITS_ARB 0x2022
|
160
|
+
#define WGL_STENCIL_BITS_ARB 0x2023
|
161
|
+
#define WGL_AUX_BUFFERS_ARB 0x2024
|
162
|
+
#define WGL_SAMPLE_BUFFERS_ARB 0x2041
|
163
|
+
#define WGL_SAMPLES_ARB 0x2042
|
164
|
+
|
165
|
+
|
166
|
+
//========================================================================
|
167
|
+
// DLLs that are loaded at glfwInit()
|
168
|
+
//========================================================================
|
169
|
+
|
170
|
+
// gdi32.dll function pointer typedefs
|
171
|
+
#ifndef _GLFW_NO_DLOAD_GDI32
|
172
|
+
typedef int (WINAPI * CHOOSEPIXELFORMAT_T) (HDC,CONST PIXELFORMATDESCRIPTOR*);
|
173
|
+
typedef int (WINAPI * DESCRIBEPIXELFORMAT_T) (HDC,int,UINT,LPPIXELFORMATDESCRIPTOR);
|
174
|
+
typedef int (WINAPI * GETPIXELFORMAT_T) (HDC);
|
175
|
+
typedef BOOL (WINAPI * SETPIXELFORMAT_T) (HDC,int,const PIXELFORMATDESCRIPTOR*);
|
176
|
+
typedef BOOL (WINAPI * SWAPBUFFERS_T) (HDC);
|
177
|
+
#endif // _GLFW_NO_DLOAD_GDI32
|
178
|
+
|
179
|
+
// winmm.dll function pointer typedefs
|
180
|
+
#ifndef _GLFW_NO_DLOAD_WINMM
|
181
|
+
typedef MMRESULT (WINAPI * JOYGETDEVCAPSA_T) (UINT,LPJOYCAPSA,UINT);
|
182
|
+
typedef MMRESULT (WINAPI * JOYGETPOS_T) (UINT,LPJOYINFO);
|
183
|
+
typedef MMRESULT (WINAPI * JOYGETPOSEX_T) (UINT,LPJOYINFOEX);
|
184
|
+
typedef DWORD (WINAPI * TIMEGETTIME_T) (void);
|
185
|
+
#endif // _GLFW_NO_DLOAD_WINMM
|
186
|
+
|
187
|
+
|
188
|
+
// gdi32.dll shortcuts
|
189
|
+
#ifndef _GLFW_NO_DLOAD_GDI32
|
190
|
+
#define _glfw_ChoosePixelFormat _glfwLibrary.Libs.ChoosePixelFormat
|
191
|
+
#define _glfw_DescribePixelFormat _glfwLibrary.Libs.DescribePixelFormat
|
192
|
+
#define _glfw_GetPixelFormat _glfwLibrary.Libs.GetPixelFormat
|
193
|
+
#define _glfw_SetPixelFormat _glfwLibrary.Libs.SetPixelFormat
|
194
|
+
#define _glfw_SwapBuffers _glfwLibrary.Libs.SwapBuffers
|
195
|
+
#else
|
196
|
+
#define _glfw_ChoosePixelFormat ChoosePixelFormat
|
197
|
+
#define _glfw_DescribePixelFormat DescribePixelFormat
|
198
|
+
#define _glfw_GetPixelFormat GetPixelFormat
|
199
|
+
#define _glfw_SetPixelFormat SetPixelFormat
|
200
|
+
#define _glfw_SwapBuffers SwapBuffers
|
201
|
+
#endif // _GLFW_NO_DLOAD_GDI32
|
202
|
+
|
203
|
+
// winmm.dll shortcuts
|
204
|
+
#ifndef _GLFW_NO_DLOAD_WINMM
|
205
|
+
#define _glfw_joyGetDevCaps _glfwLibrary.Libs.joyGetDevCapsA
|
206
|
+
#define _glfw_joyGetPos _glfwLibrary.Libs.joyGetPos
|
207
|
+
#define _glfw_joyGetPosEx _glfwLibrary.Libs.joyGetPosEx
|
208
|
+
#define _glfw_timeGetTime _glfwLibrary.Libs.timeGetTime
|
209
|
+
#else
|
210
|
+
#define _glfw_joyGetDevCaps joyGetDevCapsA
|
211
|
+
#define _glfw_joyGetPos joyGetPos
|
212
|
+
#define _glfw_joyGetPosEx joyGetPosEx
|
213
|
+
#define _glfw_timeGetTime timeGetTime
|
214
|
+
#endif // _GLFW_NO_DLOAD_WINMM
|
215
|
+
|
216
|
+
|
217
|
+
//========================================================================
|
218
|
+
// Global variables (GLFW internals)
|
219
|
+
//========================================================================
|
220
|
+
|
221
|
+
//------------------------------------------------------------------------
|
222
|
+
// Window structure
|
223
|
+
//------------------------------------------------------------------------
|
224
|
+
typedef struct _GLFWwin_struct _GLFWwin;
|
225
|
+
|
226
|
+
struct _GLFWwin_struct {
|
227
|
+
|
228
|
+
// ========= PLATFORM INDEPENDENT MANDATORY PART =========================
|
229
|
+
|
230
|
+
// User callback functions
|
231
|
+
GLFWwindowsizefun WindowSizeCallback;
|
232
|
+
GLFWwindowclosefun WindowCloseCallback;
|
233
|
+
GLFWwindowrefreshfun WindowRefreshCallback;
|
234
|
+
GLFWmousebuttonfun MouseButtonCallback;
|
235
|
+
GLFWmouseposfun MousePosCallback;
|
236
|
+
GLFWmousewheelfun MouseWheelCallback;
|
237
|
+
GLFWkeyfun KeyCallback;
|
238
|
+
GLFWcharfun CharCallback;
|
239
|
+
|
240
|
+
// User selected window settings
|
241
|
+
int Fullscreen; // Fullscreen flag
|
242
|
+
int MouseLock; // Mouse-lock flag
|
243
|
+
int AutoPollEvents; // Auto polling flag
|
244
|
+
int SysKeysDisabled; // System keys disabled flag
|
245
|
+
int WindowNoResize; // Resize- and maximize gadgets disabled flag
|
246
|
+
|
247
|
+
// Window status & parameters
|
248
|
+
int Opened; // Flag telling if window is opened or not
|
249
|
+
int Active; // Application active flag
|
250
|
+
int Iconified; // Window iconified flag
|
251
|
+
int Width, Height; // Window width and heigth
|
252
|
+
int Accelerated; // GL_TRUE if window is HW accelerated
|
253
|
+
int RedBits;
|
254
|
+
int GreenBits;
|
255
|
+
int BlueBits;
|
256
|
+
int AlphaBits;
|
257
|
+
int DepthBits;
|
258
|
+
int StencilBits;
|
259
|
+
int AccumRedBits;
|
260
|
+
int AccumGreenBits;
|
261
|
+
int AccumBlueBits;
|
262
|
+
int AccumAlphaBits;
|
263
|
+
int AuxBuffers;
|
264
|
+
int Stereo;
|
265
|
+
int RefreshRate; // Vertical monitor refresh rate
|
266
|
+
int Samples;
|
267
|
+
|
268
|
+
// Extensions & OpenGL version
|
269
|
+
int Has_GL_SGIS_generate_mipmap;
|
270
|
+
int Has_GL_ARB_texture_non_power_of_two;
|
271
|
+
int GLVerMajor,GLVerMinor;
|
272
|
+
|
273
|
+
|
274
|
+
// ========= PLATFORM SPECIFIC PART ======================================
|
275
|
+
|
276
|
+
// Platform specific window resources
|
277
|
+
HDC DC; // Private GDI device context
|
278
|
+
HGLRC RC; // Permanent rendering context
|
279
|
+
HWND Wnd; // Window handle
|
280
|
+
ATOM ClassAtom; // Window class atom
|
281
|
+
int ModeID; // Mode ID for fullscreen mode
|
282
|
+
HHOOK KeyboardHook; // Keyboard hook handle
|
283
|
+
DWORD dwStyle; // Window styles used for window creation
|
284
|
+
DWORD dwExStyle; // --"--
|
285
|
+
|
286
|
+
// Platform specific extensions (context specific)
|
287
|
+
WGLSWAPINTERVALEXT_T SwapInterval;
|
288
|
+
WGLCHOOSEPIXELFORMATARB_T ChoosePixelFormat;
|
289
|
+
WGLGETPIXELFORMATATTRIBIVARB_T GetPixelFormatAttribiv;
|
290
|
+
WGLGETEXTENSIONSSTRINGEXT_T GetExtensionsStringEXT;
|
291
|
+
WGLGETEXTENSIONSSTRINGARB_T GetExtensionsStringARB;
|
292
|
+
|
293
|
+
// Various platform specific internal variables
|
294
|
+
int OldMouseLock; // Old mouse-lock flag (used for remembering
|
295
|
+
// mouse-lock state when iconifying)
|
296
|
+
int OldMouseLockValid;
|
297
|
+
int DesiredRefreshRate; // Desired vertical monitor refresh rate
|
298
|
+
|
299
|
+
};
|
300
|
+
|
301
|
+
GLFWGLOBAL _GLFWwin _glfwWin;
|
302
|
+
|
303
|
+
|
304
|
+
//------------------------------------------------------------------------
|
305
|
+
// User input status (most of this should go in _GLFWwin)
|
306
|
+
//------------------------------------------------------------------------
|
307
|
+
GLFWGLOBAL struct {
|
308
|
+
|
309
|
+
// ========= PLATFORM INDEPENDENT MANDATORY PART =========================
|
310
|
+
|
311
|
+
// Mouse status
|
312
|
+
int MousePosX, MousePosY;
|
313
|
+
int WheelPos;
|
314
|
+
char MouseButton[ GLFW_MOUSE_BUTTON_LAST+1 ];
|
315
|
+
|
316
|
+
// Keyboard status
|
317
|
+
char Key[ GLFW_KEY_LAST+1 ];
|
318
|
+
int LastChar;
|
319
|
+
|
320
|
+
// User selected settings
|
321
|
+
int StickyKeys;
|
322
|
+
int StickyMouseButtons;
|
323
|
+
int KeyRepeat;
|
324
|
+
|
325
|
+
|
326
|
+
// ========= PLATFORM SPECIFIC PART ======================================
|
327
|
+
|
328
|
+
// Platform specific internal variables
|
329
|
+
int MouseMoved, OldMouseX, OldMouseY;
|
330
|
+
|
331
|
+
} _glfwInput;
|
332
|
+
|
333
|
+
|
334
|
+
//------------------------------------------------------------------------
|
335
|
+
// Library global data
|
336
|
+
//------------------------------------------------------------------------
|
337
|
+
GLFWGLOBAL struct {
|
338
|
+
|
339
|
+
// ========= PLATFORM SPECIFIC PART ======================================
|
340
|
+
|
341
|
+
HINSTANCE Instance; // Instance of the application
|
342
|
+
|
343
|
+
// Timer data
|
344
|
+
struct {
|
345
|
+
int HasPerformanceCounter;
|
346
|
+
double Resolution;
|
347
|
+
unsigned int t0_32;
|
348
|
+
__int64 t0_64;
|
349
|
+
} Timer;
|
350
|
+
|
351
|
+
// System information
|
352
|
+
struct {
|
353
|
+
int WinVer;
|
354
|
+
int HasUnicode;
|
355
|
+
DWORD ForegroundLockTimeout;
|
356
|
+
} Sys;
|
357
|
+
|
358
|
+
#if !defined(_GLFW_NO_DLOAD_WINMM) || !defined(_GLFW_NO_DLOAD_GDI32)
|
359
|
+
// Library handles and function pointers
|
360
|
+
struct {
|
361
|
+
#ifndef _GLFW_NO_DLOAD_GDI32
|
362
|
+
// gdi32.dll
|
363
|
+
HINSTANCE gdi32;
|
364
|
+
CHOOSEPIXELFORMAT_T ChoosePixelFormat;
|
365
|
+
DESCRIBEPIXELFORMAT_T DescribePixelFormat;
|
366
|
+
GETPIXELFORMAT_T GetPixelFormat;
|
367
|
+
SETPIXELFORMAT_T SetPixelFormat;
|
368
|
+
SWAPBUFFERS_T SwapBuffers;
|
369
|
+
#endif // _GLFW_NO_DLOAD_GDI32
|
370
|
+
|
371
|
+
// winmm.dll
|
372
|
+
#ifndef _GLFW_NO_DLOAD_WINMM
|
373
|
+
HINSTANCE winmm;
|
374
|
+
JOYGETDEVCAPSA_T joyGetDevCapsA;
|
375
|
+
JOYGETPOS_T joyGetPos;
|
376
|
+
JOYGETPOSEX_T joyGetPosEx;
|
377
|
+
TIMEGETTIME_T timeGetTime;
|
378
|
+
#endif // _GLFW_NO_DLOAD_WINMM
|
379
|
+
} Libs;
|
380
|
+
#endif
|
381
|
+
|
382
|
+
} _glfwLibrary;
|
383
|
+
|
384
|
+
|
385
|
+
//------------------------------------------------------------------------
|
386
|
+
// Thread record (one for each thread)
|
387
|
+
//------------------------------------------------------------------------
|
388
|
+
typedef struct _GLFWthread_struct _GLFWthread;
|
389
|
+
|
390
|
+
struct _GLFWthread_struct {
|
391
|
+
|
392
|
+
// ========= PLATFORM INDEPENDENT MANDATORY PART =========================
|
393
|
+
|
394
|
+
// Pointer to previous and next threads in linked list
|
395
|
+
_GLFWthread *Previous, *Next;
|
396
|
+
|
397
|
+
// GLFW user side thread information
|
398
|
+
GLFWthread ID;
|
399
|
+
GLFWthreadfun Function;
|
400
|
+
|
401
|
+
// ========= PLATFORM SPECIFIC PART ======================================
|
402
|
+
|
403
|
+
// System side thread information
|
404
|
+
HANDLE Handle;
|
405
|
+
DWORD WinID;
|
406
|
+
|
407
|
+
};
|
408
|
+
|
409
|
+
|
410
|
+
//------------------------------------------------------------------------
|
411
|
+
// General thread information
|
412
|
+
//------------------------------------------------------------------------
|
413
|
+
GLFWGLOBAL struct {
|
414
|
+
|
415
|
+
// ========= PLATFORM INDEPENDENT MANDATORY PART =========================
|
416
|
+
|
417
|
+
// Next thread ID to use (increments for every created thread)
|
418
|
+
GLFWthread NextID;
|
419
|
+
|
420
|
+
// First thread in linked list (always the main thread)
|
421
|
+
_GLFWthread First;
|
422
|
+
|
423
|
+
// ========= PLATFORM SPECIFIC PART ======================================
|
424
|
+
|
425
|
+
// Critical section lock
|
426
|
+
CRITICAL_SECTION CriticalSection;
|
427
|
+
|
428
|
+
} _glfwThrd;
|
429
|
+
|
430
|
+
|
431
|
+
|
432
|
+
//========================================================================
|
433
|
+
// Macros for encapsulating critical code sections (i.e. making parts
|
434
|
+
// of GLFW thread safe)
|
435
|
+
//========================================================================
|
436
|
+
|
437
|
+
// Thread list management
|
438
|
+
#define ENTER_THREAD_CRITICAL_SECTION \
|
439
|
+
EnterCriticalSection( &_glfwThrd.CriticalSection );
|
440
|
+
#define LEAVE_THREAD_CRITICAL_SECTION \
|
441
|
+
LeaveCriticalSection( &_glfwThrd.CriticalSection );
|
442
|
+
|
443
|
+
|
444
|
+
//========================================================================
|
445
|
+
// Various Windows version constants
|
446
|
+
//========================================================================
|
447
|
+
|
448
|
+
#define _GLFW_WIN_UNKNOWN 0x0000 // Earlier than 95 or NT4
|
449
|
+
#define _GLFW_WIN_95 0x0001
|
450
|
+
#define _GLFW_WIN_98 0x0002
|
451
|
+
#define _GLFW_WIN_ME 0x0003
|
452
|
+
#define _GLFW_WIN_UNKNOWN_9x 0x0004 // Later than ME
|
453
|
+
#define _GLFW_WIN_NT4 0x0101
|
454
|
+
#define _GLFW_WIN_2K 0x0102
|
455
|
+
#define _GLFW_WIN_XP 0x0103
|
456
|
+
#define _GLFW_WIN_NET_SERVER 0x0104
|
457
|
+
#define _GLFW_WIN_UNKNOWN_NT 0x0105 // Later than .NET Server
|
458
|
+
|
459
|
+
|
460
|
+
//========================================================================
|
461
|
+
// Prototypes for platform specific internal functions
|
462
|
+
//========================================================================
|
463
|
+
|
464
|
+
// Time
|
465
|
+
void _glfwInitTimer( void );
|
466
|
+
|
467
|
+
// Fullscreen support
|
468
|
+
int _glfwGetClosestVideoModeBPP( int *w, int *h, int *bpp, int *refresh );
|
469
|
+
int _glfwGetClosestVideoMode( int *w, int *h, int *r, int *g, int *b, int *refresh );
|
470
|
+
void _glfwSetVideoModeMODE( int mode );
|
471
|
+
void _glfwSetVideoMode( int *w, int *h, int r, int g, int b, int refresh );
|
472
|
+
|
473
|
+
|
474
|
+
#endif // _platform_h_
|