pixo 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1454) hide show
  1. checksums.yaml +7 -0
  2. data/CODE_OF_CONDUCT.md +74 -0
  3. data/Gemfile +6 -0
  4. data/Gemfile.lock +23 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +43 -0
  7. data/Rakefile +8 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/ext/CMakeLists.txt +35 -0
  11. data/ext/libpixgem/extconf.rb +29 -0
  12. data/ext/libpixgem/include/opengl.h +4 -0
  13. data/ext/libpixgem/src/application.cpp +135 -0
  14. data/ext/libpixgem/src/application.hpp +28 -0
  15. data/ext/libpixgem/src/camera.cpp +28 -0
  16. data/ext/libpixgem/src/camera.hpp +22 -0
  17. data/ext/libpixgem/src/fade_candy.cpp +32 -0
  18. data/ext/libpixgem/src/fade_candy.hpp +22 -0
  19. data/ext/libpixgem/src/gem.cpp +58 -0
  20. data/ext/libpixgem/src/holder.cpp +9 -0
  21. data/ext/libpixgem/src/holder.hpp +8 -0
  22. data/ext/libpixgem/src/pattern.cpp +57 -0
  23. data/ext/libpixgem/src/pattern.hpp +25 -0
  24. data/ext/pixo/CMakeLists.txt +57 -0
  25. data/ext/pixo/README.md +3 -0
  26. data/ext/pixo/ext/glew/CMakeLists.txt +118 -0
  27. data/ext/pixo/ext/glew/LICENSE.txt +73 -0
  28. data/ext/pixo/ext/glew/Makefile +347 -0
  29. data/ext/pixo/ext/glew/README.md +192 -0
  30. data/ext/pixo/ext/glew/auto/Makefile +357 -0
  31. data/ext/pixo/ext/glew/auto/bin/filter_gl_ext.sh +523 -0
  32. data/ext/pixo/ext/glew/auto/bin/filter_gles_ext.sh +19 -0
  33. data/ext/pixo/ext/glew/auto/bin/filter_spec.py +38 -0
  34. data/ext/pixo/ext/glew/auto/bin/make.pl +223 -0
  35. data/ext/pixo/ext/glew/auto/bin/make_def_fun.pl +35 -0
  36. data/ext/pixo/ext/glew/auto/bin/make_def_var.pl +31 -0
  37. data/ext/pixo/ext/glew/auto/bin/make_enable_index.pl +45 -0
  38. data/ext/pixo/ext/glew/auto/bin/make_header.pl +71 -0
  39. data/ext/pixo/ext/glew/auto/bin/make_html.pl +55 -0
  40. data/ext/pixo/ext/glew/auto/bin/make_index.pl +38 -0
  41. data/ext/pixo/ext/glew/auto/bin/make_info.pl +59 -0
  42. data/ext/pixo/ext/glew/auto/bin/make_info_list.pl +47 -0
  43. data/ext/pixo/ext/glew/auto/bin/make_init.pl +59 -0
  44. data/ext/pixo/ext/glew/auto/bin/make_initd.pl +43 -0
  45. data/ext/pixo/ext/glew/auto/bin/make_list.pl +73 -0
  46. data/ext/pixo/ext/glew/auto/bin/make_list2.pl +44 -0
  47. data/ext/pixo/ext/glew/auto/bin/make_str.pl +53 -0
  48. data/ext/pixo/ext/glew/auto/bin/make_struct_fun.pl +36 -0
  49. data/ext/pixo/ext/glew/auto/bin/make_struct_var.pl +31 -0
  50. data/ext/pixo/ext/glew/auto/bin/parse_spec.pl +393 -0
  51. data/ext/pixo/ext/glew/auto/bin/parse_xml.py +131 -0
  52. data/ext/pixo/ext/glew/auto/bin/update_ext.sh +25 -0
  53. data/ext/pixo/ext/glew/auto/blacklist +14 -0
  54. data/ext/pixo/ext/glew/auto/core/gl/GLX_AMD_gpu_association +23 -0
  55. data/ext/pixo/ext/glew/auto/core/gl/GLX_ARB_get_proc_address +5 -0
  56. data/ext/pixo/ext/glew/auto/core/gl/GLX_ATI_pixel_format_float +5 -0
  57. data/ext/pixo/ext/glew/auto/core/gl/GLX_ATI_render_texture +42 -0
  58. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_create_context_es2_profile +5 -0
  59. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_create_context_es_profile +5 -0
  60. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_fbconfig_packed_float +6 -0
  61. data/ext/pixo/ext/glew/auto/core/gl/GLX_EXT_framebuffer_sRGB +5 -0
  62. data/ext/pixo/ext/glew/auto/core/gl/GLX_MESA_swap_control +6 -0
  63. data/ext/pixo/ext/glew/auto/core/gl/GLX_NV_float_buffer +5 -0
  64. data/ext/pixo/ext/glew/auto/core/gl/GLX_NV_vertex_array_range +6 -0
  65. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIS_shared_multisample +6 -0
  66. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_hyperpipe +26 -0
  67. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_swap_barrier +6 -0
  68. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGIX_swap_group +5 -0
  69. data/ext/pixo/ext/glew/auto/core/gl/GLX_SGI_video_sync +6 -0
  70. data/ext/pixo/ext/glew/auto/core/gl/GLX_SUN_video_resize +8 -0
  71. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_2 +5 -0
  72. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_3 +83 -0
  73. data/ext/pixo/ext/glew/auto/core/gl/GLX_VERSION_1_4 +7 -0
  74. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_float_pixels +18 -0
  75. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_pixel_buffer +5 -0
  76. data/ext/pixo/ext/glew/auto/core/gl/GL_APPLE_texture_range +13 -0
  77. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_draw_instanced +4 -0
  78. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_imaging +113 -0
  79. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_instanced_arrays +8 -0
  80. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_internalformat_query2 +104 -0
  81. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_matrix_palette +19 -0
  82. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_multitexture +73 -0
  83. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_robustness +31 -0
  84. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_separate_shader_objects +73 -0
  85. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_vertex_attrib_64bit +14 -0
  86. data/ext/pixo/ext/glew/auto/core/gl/GL_ARB_vertex_blend +56 -0
  87. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_point_sprites +10 -0
  88. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_texture_env_combine3 +7 -0
  89. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_texture_env_route +7 -0
  90. data/ext/pixo/ext/glew/auto/core/gl/GL_ATIX_vertex_shader_output_point_size +5 -0
  91. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_envmap_bumpmap +16 -0
  92. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_map_object_buffer +6 -0
  93. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_pn_triangles +15 -0
  94. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_separate_stencil +10 -0
  95. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_shader_texture_lod +4 -0
  96. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_texture_compression_3dc +5 -0
  97. data/ext/pixo/ext/glew/auto/core/gl/GL_ATI_vertex_streams +59 -0
  98. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_Cg_shader +6 -0
  99. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_bindable_uniform +13 -0
  100. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_debug_marker +7 -0
  101. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_depth_bounds_test +7 -0
  102. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_draw_instanced +6 -0
  103. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_draw_range_elements +7 -0
  104. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_fog_coord +17 -0
  105. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_framebuffer_sRGB +6 -0
  106. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_geometry_shader4 +27 -0
  107. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_gpu_program_parameters +6 -0
  108. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_gpu_shader4 +64 -0
  109. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_packed_float +7 -0
  110. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_pixel_buffer_object +8 -0
  111. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_secondary_color +28 -0
  112. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_array +13 -0
  113. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_buffer_object +10 -0
  114. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_compression_latc +8 -0
  115. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_compression_rgtc +8 -0
  116. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_cube_map +16 -0
  117. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_edge_clamp +5 -0
  118. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_integer +57 -0
  119. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_rectangle +8 -0
  120. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_texture_shared_exponent +7 -0
  121. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_timer_query +7 -0
  122. data/ext/pixo/ext/glew/auto/core/gl/GL_EXT_vertex_shader +157 -0
  123. data/ext/pixo/ext/glew/auto/core/gl/GL_KTX_buffer_region +13 -0
  124. data/ext/pixo/ext/glew/auto/core/gl/GL_NVX_gpu_memory_info +9 -0
  125. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_depth_buffer_float +11 -0
  126. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_depth_range_unclamped +9 -0
  127. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program2 +9 -0
  128. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program4 +4 -0
  129. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_fragment_program_option +4 -0
  130. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_framebuffer_multisample_coverage +9 -0
  131. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_geometry_program4 +8 -0
  132. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_geometry_shader4 +4 -0
  133. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_gpu_program4 +24 -0
  134. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_gpu_program5 +10 -0
  135. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_parameter_buffer_object +12 -0
  136. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_present_video +16 -0
  137. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_tessellation_program5 +9 -0
  138. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_transform_feedback +40 -0
  139. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vdpau_interop +19 -0
  140. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program2_option +6 -0
  141. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program3 +5 -0
  142. data/ext/pixo/ext/glew/auto/core/gl/GL_NV_vertex_program4 +5 -0
  143. data/ext/pixo/ext/glew/auto/core/gl/GL_SGIX_shadow +8 -0
  144. data/ext/pixo/ext/glew/auto/core/gl/GL_SUN_read_video_pixels +5 -0
  145. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_2 +50 -0
  146. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_2_1 +4 -0
  147. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_3 +147 -0
  148. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_4 +90 -0
  149. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_1_5 +75 -0
  150. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_2_0 +181 -0
  151. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_2_1 +33 -0
  152. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_0 +164 -0
  153. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_1 +42 -0
  154. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_2 +29 -0
  155. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_3_3 +7 -0
  156. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_0 +21 -0
  157. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_1 +3 -0
  158. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_2 +13 -0
  159. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_3 +6 -0
  160. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_4 +8 -0
  161. data/ext/pixo/ext/glew/auto/core/gl/GL_VERSION_4_5 +9 -0
  162. data/ext/pixo/ext/glew/auto/core/gl/GL_WIN_swap_hint +5 -0
  163. data/ext/pixo/ext/glew/auto/core/gl/WGL_ARB_create_context +13 -0
  164. data/ext/pixo/ext/glew/auto/core/gl/WGL_ATI_render_texture_rectangle +5 -0
  165. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_create_context_es2_profile +5 -0
  166. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_create_context_es_profile +5 -0
  167. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_framebuffer_sRGB +5 -0
  168. data/ext/pixo/ext/glew/auto/core/gl/WGL_EXT_pixel_format_packed_float +5 -0
  169. data/ext/pixo/ext/glew/auto/core/gl/WGL_NV_gpu_affinity +13 -0
  170. data/ext/pixo/ext/glew/auto/core/gl/WGL_NV_vertex_array_range +6 -0
  171. data/ext/pixo/ext/glew/auto/custom.txt +7 -0
  172. data/ext/pixo/ext/glew/auto/doc/advanced.html +130 -0
  173. data/ext/pixo/ext/glew/auto/doc/basic.html +180 -0
  174. data/ext/pixo/ext/glew/auto/doc/build.html +49 -0
  175. data/ext/pixo/ext/glew/auto/doc/credits.html +2 -0
  176. data/ext/pixo/ext/glew/auto/doc/index.html +111 -0
  177. data/ext/pixo/ext/glew/auto/doc/install.html +126 -0
  178. data/ext/pixo/ext/glew/auto/doc/log.html +1073 -0
  179. data/ext/pixo/ext/glew/auto/src/eglew_head.h +88 -0
  180. data/ext/pixo/ext/glew/auto/src/eglew_mid.h +4 -0
  181. data/ext/pixo/ext/glew/auto/src/eglew_tail.h +15 -0
  182. data/ext/pixo/ext/glew/auto/src/footer.html +4 -0
  183. data/ext/pixo/ext/glew/auto/src/glew.rc +135 -0
  184. data/ext/pixo/ext/glew/auto/src/glew_head.c +285 -0
  185. data/ext/pixo/ext/glew/auto/src/glew_head.h +1129 -0
  186. data/ext/pixo/ext/glew/auto/src/glew_init_egl.c +45 -0
  187. data/ext/pixo/ext/glew/auto/src/glew_init_gl.c +206 -0
  188. data/ext/pixo/ext/glew/auto/src/glew_init_glx.c +53 -0
  189. data/ext/pixo/ext/glew/auto/src/glew_init_tail.c +67 -0
  190. data/ext/pixo/ext/glew/auto/src/glew_init_wgl.c +41 -0
  191. data/ext/pixo/ext/glew/auto/src/glew_license.h +32 -0
  192. data/ext/pixo/ext/glew/auto/src/glew_str_egl.c +17 -0
  193. data/ext/pixo/ext/glew/auto/src/glew_str_glx.c +17 -0
  194. data/ext/pixo/ext/glew/auto/src/glew_str_head.c +9 -0
  195. data/ext/pixo/ext/glew/auto/src/glew_str_tail.c +7 -0
  196. data/ext/pixo/ext/glew/auto/src/glew_str_wgl.c +17 -0
  197. data/ext/pixo/ext/glew/auto/src/glew_tail.h +67 -0
  198. data/ext/pixo/ext/glew/auto/src/glewinfo.rc +123 -0
  199. data/ext/pixo/ext/glew/auto/src/glewinfo_egl.c +6 -0
  200. data/ext/pixo/ext/glew/auto/src/glewinfo_gl.c +7 -0
  201. data/ext/pixo/ext/glew/auto/src/glewinfo_glx.c +6 -0
  202. data/ext/pixo/ext/glew/auto/src/glewinfo_head.c +89 -0
  203. data/ext/pixo/ext/glew/auto/src/glewinfo_tail.c +598 -0
  204. data/ext/pixo/ext/glew/auto/src/glewinfo_wgl.c +8 -0
  205. data/ext/pixo/ext/glew/auto/src/glxew_head.h +106 -0
  206. data/ext/pixo/ext/glew/auto/src/glxew_mid.h +4 -0
  207. data/ext/pixo/ext/glew/auto/src/glxew_tail.h +20 -0
  208. data/ext/pixo/ext/glew/auto/src/header.html +98 -0
  209. data/ext/pixo/ext/glew/auto/src/khronos_license.h +23 -0
  210. data/ext/pixo/ext/glew/auto/src/mesa_license.h +24 -0
  211. data/ext/pixo/ext/glew/auto/src/visualinfo.rc +123 -0
  212. data/ext/pixo/ext/glew/auto/src/wglew_head.h +36 -0
  213. data/ext/pixo/ext/glew/auto/src/wglew_mid.h +4 -0
  214. data/ext/pixo/ext/glew/auto/src/wglew_tail.h +22 -0
  215. data/ext/pixo/ext/glew/build/cmake/CMakeLists.txt +215 -0
  216. data/ext/pixo/ext/glew/build/cmake/CopyImportedTargetProperties.cmake +88 -0
  217. data/ext/pixo/ext/glew/build/cmake/glew-config.cmake +60 -0
  218. data/ext/pixo/ext/glew/build/cmake/testbuild/CMakeLists.txt +25 -0
  219. data/ext/pixo/ext/glew/build/cmake/testbuild/main.c +23 -0
  220. data/ext/pixo/ext/glew/build/glew.rc +135 -0
  221. data/ext/pixo/ext/glew/build/glewinfo.rc +123 -0
  222. data/ext/pixo/ext/glew/build/vc10/common.props +29 -0
  223. data/ext/pixo/ext/glew/build/vc10/glew.sln +56 -0
  224. data/ext/pixo/ext/glew/build/vc10/glew_shared.vcxproj +254 -0
  225. data/ext/pixo/ext/glew/build/vc10/glew_static.vcxproj +228 -0
  226. data/ext/pixo/ext/glew/build/vc10/glewinfo.vcxproj +252 -0
  227. data/ext/pixo/ext/glew/build/vc10/visualinfo.vcxproj +251 -0
  228. data/ext/pixo/ext/glew/build/vc12/common.props +29 -0
  229. data/ext/pixo/ext/glew/build/vc12/glew.sln +56 -0
  230. data/ext/pixo/ext/glew/build/vc12/glew_shared.vcxproj +258 -0
  231. data/ext/pixo/ext/glew/build/vc12/glew_static.vcxproj +232 -0
  232. data/ext/pixo/ext/glew/build/vc12/glewinfo.vcxproj +259 -0
  233. data/ext/pixo/ext/glew/build/vc12/visualinfo.vcxproj +258 -0
  234. data/ext/pixo/ext/glew/build/vc6/Makefile +21 -0
  235. data/ext/pixo/ext/glew/build/vc6/glew.dsw +71 -0
  236. data/ext/pixo/ext/glew/build/vc6/glew_shared.dsp +122 -0
  237. data/ext/pixo/ext/glew/build/vc6/glew_static.dsp +112 -0
  238. data/ext/pixo/ext/glew/build/vc6/glewinfo.dsp +103 -0
  239. data/ext/pixo/ext/glew/build/vc6/visualinfo.dsp +103 -0
  240. data/ext/pixo/ext/glew/build/visualinfo.rc +123 -0
  241. data/ext/pixo/ext/glew/cmake-testbuild.sh +71 -0
  242. data/ext/pixo/ext/glew/config/Makefile.cygming +21 -0
  243. data/ext/pixo/ext/glew/config/Makefile.cygwin +19 -0
  244. data/ext/pixo/ext/glew/config/Makefile.darwin +25 -0
  245. data/ext/pixo/ext/glew/config/Makefile.darwin-ppc +24 -0
  246. data/ext/pixo/ext/glew/config/Makefile.darwin-universal +27 -0
  247. data/ext/pixo/ext/glew/config/Makefile.darwin-x86_64 +24 -0
  248. data/ext/pixo/ext/glew/config/Makefile.fedora-mingw32 +12 -0
  249. data/ext/pixo/ext/glew/config/Makefile.freebsd +17 -0
  250. data/ext/pixo/ext/glew/config/Makefile.gnu +17 -0
  251. data/ext/pixo/ext/glew/config/Makefile.haiku +20 -0
  252. data/ext/pixo/ext/glew/config/Makefile.irix +17 -0
  253. data/ext/pixo/ext/glew/config/Makefile.kfreebsd +17 -0
  254. data/ext/pixo/ext/glew/config/Makefile.linux +34 -0
  255. data/ext/pixo/ext/glew/config/Makefile.linux-clang +34 -0
  256. data/ext/pixo/ext/glew/config/Makefile.linux-clang-egl +4 -0
  257. data/ext/pixo/ext/glew/config/Makefile.linux-egl +4 -0
  258. data/ext/pixo/ext/glew/config/Makefile.linux-mingw-w64 +22 -0
  259. data/ext/pixo/ext/glew/config/Makefile.linux-mingw32 +22 -0
  260. data/ext/pixo/ext/glew/config/Makefile.linux-mingw64 +22 -0
  261. data/ext/pixo/ext/glew/config/Makefile.linux-osmesa +4 -0
  262. data/ext/pixo/ext/glew/config/Makefile.mingw +17 -0
  263. data/ext/pixo/ext/glew/config/Makefile.mingw-win32 +5 -0
  264. data/ext/pixo/ext/glew/config/Makefile.msys +19 -0
  265. data/ext/pixo/ext/glew/config/Makefile.msys-win32 +5 -0
  266. data/ext/pixo/ext/glew/config/Makefile.msys-win64 +5 -0
  267. data/ext/pixo/ext/glew/config/Makefile.nacl-32 +31 -0
  268. data/ext/pixo/ext/glew/config/Makefile.nacl-64 +31 -0
  269. data/ext/pixo/ext/glew/config/Makefile.netbsd +17 -0
  270. data/ext/pixo/ext/glew/config/Makefile.openbsd +17 -0
  271. data/ext/pixo/ext/glew/config/Makefile.solaris +14 -0
  272. data/ext/pixo/ext/glew/config/Makefile.solaris-gcc +15 -0
  273. data/ext/pixo/ext/glew/config/config.guess +1456 -0
  274. data/ext/pixo/ext/glew/config/version +7 -0
  275. data/ext/pixo/ext/glew/doc/advanced.html +232 -0
  276. data/ext/pixo/ext/glew/doc/basic.html +282 -0
  277. data/ext/pixo/ext/glew/doc/build.html +151 -0
  278. data/ext/pixo/ext/glew/doc/credits.html +104 -0
  279. data/ext/pixo/ext/glew/doc/github.png +0 -0
  280. data/ext/pixo/ext/glew/doc/glew.css +187 -0
  281. data/ext/pixo/ext/glew/doc/glew.html +724 -0
  282. data/ext/pixo/ext/glew/doc/glew.png +0 -0
  283. data/ext/pixo/ext/glew/doc/glew.txt +29 -0
  284. data/ext/pixo/ext/glew/doc/glxew.html +185 -0
  285. data/ext/pixo/ext/glew/doc/gpl.txt +340 -0
  286. data/ext/pixo/ext/glew/doc/index.html +213 -0
  287. data/ext/pixo/ext/glew/doc/install.html +228 -0
  288. data/ext/pixo/ext/glew/doc/khronos.txt +20 -0
  289. data/ext/pixo/ext/glew/doc/log.html +1175 -0
  290. data/ext/pixo/ext/glew/doc/mesa.txt +21 -0
  291. data/ext/pixo/ext/glew/doc/new.png +0 -0
  292. data/ext/pixo/ext/glew/doc/ogl_sm.jpg +0 -0
  293. data/ext/pixo/ext/glew/doc/travis.png +0 -0
  294. data/ext/pixo/ext/glew/doc/wglew.html +168 -0
  295. data/ext/pixo/ext/glew/glew.pc.in +11 -0
  296. data/ext/pixo/ext/glew/include/GL/eglew.h +2261 -0
  297. data/ext/pixo/ext/glew/include/GL/glew.h +20113 -0
  298. data/ext/pixo/ext/glew/include/GL/glxew.h +1769 -0
  299. data/ext/pixo/ext/glew/include/GL/wglew.h +1427 -0
  300. data/ext/pixo/ext/glew/maintain.sh +142 -0
  301. data/ext/pixo/ext/glew/src/glew.c +23960 -0
  302. data/ext/pixo/ext/glew/src/glewinfo.c +13912 -0
  303. data/ext/pixo/ext/glew/src/visualinfo.c +1297 -0
  304. data/ext/pixo/ext/glfw/CMake/MacOSXBundleInfo.plist.in +38 -0
  305. data/ext/pixo/ext/glfw/CMake/amd64-mingw32msvc.cmake +13 -0
  306. data/ext/pixo/ext/glfw/CMake/i586-mingw32msvc.cmake +13 -0
  307. data/ext/pixo/ext/glfw/CMake/i686-pc-mingw32.cmake +13 -0
  308. data/ext/pixo/ext/glfw/CMake/i686-w64-mingw32.cmake +13 -0
  309. data/ext/pixo/ext/glfw/CMake/modules/FindMir.cmake +18 -0
  310. data/ext/pixo/ext/glfw/CMake/modules/FindVulkan.cmake +34 -0
  311. data/ext/pixo/ext/glfw/CMake/modules/FindWaylandProtocols.cmake +26 -0
  312. data/ext/pixo/ext/glfw/CMake/modules/FindXKBCommon.cmake +34 -0
  313. data/ext/pixo/ext/glfw/CMake/x86_64-w64-mingw32.cmake +13 -0
  314. data/ext/pixo/ext/glfw/CMakeLists.txt +419 -0
  315. data/ext/pixo/ext/glfw/COPYING.txt +22 -0
  316. data/ext/pixo/ext/glfw/README.md +274 -0
  317. data/ext/pixo/ext/glfw/cmake_uninstall.cmake.in +29 -0
  318. data/ext/pixo/ext/glfw/deps/KHR/khrplatform.h +282 -0
  319. data/ext/pixo/ext/glfw/deps/getopt.c +230 -0
  320. data/ext/pixo/ext/glfw/deps/getopt.h +57 -0
  321. data/ext/pixo/ext/glfw/deps/glad/glad.h +3520 -0
  322. data/ext/pixo/ext/glfw/deps/glad.c +1555 -0
  323. data/ext/pixo/ext/glfw/deps/linmath.h +574 -0
  324. data/ext/pixo/ext/glfw/deps/mingw/_mingw_dxhelper.h +117 -0
  325. data/ext/pixo/ext/glfw/deps/mingw/dinput.h +2467 -0
  326. data/ext/pixo/ext/glfw/deps/mingw/xinput.h +239 -0
  327. data/ext/pixo/ext/glfw/deps/tinycthread.c +594 -0
  328. data/ext/pixo/ext/glfw/deps/tinycthread.h +441 -0
  329. data/ext/pixo/ext/glfw/deps/vulkan/vk_platform.h +120 -0
  330. data/ext/pixo/ext/glfw/deps/vulkan/vulkan.h +3835 -0
  331. data/ext/pixo/ext/glfw/docs/CMakeLists.txt +32 -0
  332. data/ext/pixo/ext/glfw/docs/Doxyfile.in +1859 -0
  333. data/ext/pixo/ext/glfw/docs/DoxygenLayout.xml +188 -0
  334. data/ext/pixo/ext/glfw/docs/build.dox +347 -0
  335. data/ext/pixo/ext/glfw/docs/compat.dox +224 -0
  336. data/ext/pixo/ext/glfw/docs/compile.dox +284 -0
  337. data/ext/pixo/ext/glfw/docs/context.dox +345 -0
  338. data/ext/pixo/ext/glfw/docs/extra.css +1 -0
  339. data/ext/pixo/ext/glfw/docs/extra.less +370 -0
  340. data/ext/pixo/ext/glfw/docs/footer.html +7 -0
  341. data/ext/pixo/ext/glfw/docs/header.html +34 -0
  342. data/ext/pixo/ext/glfw/docs/input.dox +665 -0
  343. data/ext/pixo/ext/glfw/docs/internal.dox +116 -0
  344. data/ext/pixo/ext/glfw/docs/intro.dox +372 -0
  345. data/ext/pixo/ext/glfw/docs/main.dox +47 -0
  346. data/ext/pixo/ext/glfw/docs/monitor.dox +216 -0
  347. data/ext/pixo/ext/glfw/docs/moving.dox +506 -0
  348. data/ext/pixo/ext/glfw/docs/news.dox +376 -0
  349. data/ext/pixo/ext/glfw/docs/quick.dox +364 -0
  350. data/ext/pixo/ext/glfw/docs/spaces.svg +872 -0
  351. data/ext/pixo/ext/glfw/docs/vulkan.dox +211 -0
  352. data/ext/pixo/ext/glfw/docs/window.dox +1008 -0
  353. data/ext/pixo/ext/glfw/examples/CMakeLists.txt +67 -0
  354. data/ext/pixo/ext/glfw/examples/boing.c +678 -0
  355. data/ext/pixo/ext/glfw/examples/gears.c +357 -0
  356. data/ext/pixo/ext/glfw/examples/glfw.icns +0 -0
  357. data/ext/pixo/ext/glfw/examples/glfw.ico +0 -0
  358. data/ext/pixo/ext/glfw/examples/glfw.rc +3 -0
  359. data/ext/pixo/ext/glfw/examples/heightmap.c +511 -0
  360. data/ext/pixo/ext/glfw/examples/particles.c +1068 -0
  361. data/ext/pixo/ext/glfw/examples/simple.c +163 -0
  362. data/ext/pixo/ext/glfw/examples/splitview.c +545 -0
  363. data/ext/pixo/ext/glfw/examples/wave.c +460 -0
  364. data/ext/pixo/ext/glfw/include/GLFW/glfw3.h +4248 -0
  365. data/ext/pixo/ext/glfw/include/GLFW/glfw3native.h +456 -0
  366. data/ext/pixo/ext/glfw/src/CMakeLists.txt +120 -0
  367. data/ext/pixo/ext/glfw/src/cocoa_init.m +398 -0
  368. data/ext/pixo/ext/glfw/src/cocoa_joystick.h +60 -0
  369. data/ext/pixo/ext/glfw/src/cocoa_joystick.m +511 -0
  370. data/ext/pixo/ext/glfw/src/cocoa_monitor.m +413 -0
  371. data/ext/pixo/ext/glfw/src/cocoa_platform.h +150 -0
  372. data/ext/pixo/ext/glfw/src/cocoa_time.c +60 -0
  373. data/ext/pixo/ext/glfw/src/cocoa_window.m +1653 -0
  374. data/ext/pixo/ext/glfw/src/context.c +720 -0
  375. data/ext/pixo/ext/glfw/src/egl_context.c +746 -0
  376. data/ext/pixo/ext/glfw/src/egl_context.h +213 -0
  377. data/ext/pixo/ext/glfw/src/glfw3.pc.in +13 -0
  378. data/ext/pixo/ext/glfw/src/glfw3Config.cmake.in +1 -0
  379. data/ext/pixo/ext/glfw/src/glfw_config.h.in +65 -0
  380. data/ext/pixo/ext/glfw/src/glx_context.c +677 -0
  381. data/ext/pixo/ext/glfw/src/glx_context.h +182 -0
  382. data/ext/pixo/ext/glfw/src/init.c +200 -0
  383. data/ext/pixo/ext/glfw/src/input.c +659 -0
  384. data/ext/pixo/ext/glfw/src/internal.h +1055 -0
  385. data/ext/pixo/ext/glfw/src/linux_joystick.c +341 -0
  386. data/ext/pixo/ext/glfw/src/linux_joystick.h +68 -0
  387. data/ext/pixo/ext/glfw/src/mir_init.c +238 -0
  388. data/ext/pixo/ext/glfw/src/mir_monitor.c +182 -0
  389. data/ext/pixo/ext/glfw/src/mir_platform.h +130 -0
  390. data/ext/pixo/ext/glfw/src/mir_window.c +848 -0
  391. data/ext/pixo/ext/glfw/src/monitor.c +477 -0
  392. data/ext/pixo/ext/glfw/src/nsgl_context.h +60 -0
  393. data/ext/pixo/ext/glfw/src/nsgl_context.m +308 -0
  394. data/ext/pixo/ext/glfw/src/posix_time.c +85 -0
  395. data/ext/pixo/ext/glfw/src/posix_time.h +48 -0
  396. data/ext/pixo/ext/glfw/src/posix_tls.c +68 -0
  397. data/ext/pixo/ext/glfw/src/posix_tls.h +49 -0
  398. data/ext/pixo/ext/glfw/src/vulkan.c +302 -0
  399. data/ext/pixo/ext/glfw/src/wgl_context.c +718 -0
  400. data/ext/pixo/ext/glfw/src/wgl_context.h +157 -0
  401. data/ext/pixo/ext/glfw/src/win32_init.c +473 -0
  402. data/ext/pixo/ext/glfw/src/win32_joystick.c +763 -0
  403. data/ext/pixo/ext/glfw/src/win32_joystick.h +64 -0
  404. data/ext/pixo/ext/glfw/src/win32_monitor.c +401 -0
  405. data/ext/pixo/ext/glfw/src/win32_platform.h +350 -0
  406. data/ext/pixo/ext/glfw/src/win32_time.c +74 -0
  407. data/ext/pixo/ext/glfw/src/win32_tls.c +69 -0
  408. data/ext/pixo/ext/glfw/src/win32_window.c +1724 -0
  409. data/ext/pixo/ext/glfw/src/window.c +904 -0
  410. data/ext/pixo/ext/glfw/src/wl_init.c +658 -0
  411. data/ext/pixo/ext/glfw/src/wl_monitor.c +269 -0
  412. data/ext/pixo/ext/glfw/src/wl_platform.h +179 -0
  413. data/ext/pixo/ext/glfw/src/wl_window.c +1050 -0
  414. data/ext/pixo/ext/glfw/src/x11_init.c +833 -0
  415. data/ext/pixo/ext/glfw/src/x11_monitor.c +491 -0
  416. data/ext/pixo/ext/glfw/src/x11_platform.h +296 -0
  417. data/ext/pixo/ext/glfw/src/x11_window.c +2475 -0
  418. data/ext/pixo/ext/glfw/src/xkb_unicode.c +889 -0
  419. data/ext/pixo/ext/glfw/src/xkb_unicode.h +33 -0
  420. data/ext/pixo/ext/glfw/tests/CMakeLists.txt +80 -0
  421. data/ext/pixo/ext/glfw/tests/clipboard.c +157 -0
  422. data/ext/pixo/ext/glfw/tests/cursor.c +317 -0
  423. data/ext/pixo/ext/glfw/tests/empty.c +131 -0
  424. data/ext/pixo/ext/glfw/tests/events.c +620 -0
  425. data/ext/pixo/ext/glfw/tests/gamma.c +188 -0
  426. data/ext/pixo/ext/glfw/tests/glfwinfo.c +899 -0
  427. data/ext/pixo/ext/glfw/tests/icon.c +148 -0
  428. data/ext/pixo/ext/glfw/tests/iconify.c +298 -0
  429. data/ext/pixo/ext/glfw/tests/joysticks.c +216 -0
  430. data/ext/pixo/ext/glfw/tests/monitors.c +243 -0
  431. data/ext/pixo/ext/glfw/tests/msaa.c +163 -0
  432. data/ext/pixo/ext/glfw/tests/reopen.c +192 -0
  433. data/ext/pixo/ext/glfw/tests/sharing.c +186 -0
  434. data/ext/pixo/ext/glfw/tests/tearing.c +214 -0
  435. data/ext/pixo/ext/glfw/tests/threads.c +143 -0
  436. data/ext/pixo/ext/glfw/tests/timeout.c +97 -0
  437. data/ext/pixo/ext/glfw/tests/title.c +78 -0
  438. data/ext/pixo/ext/glfw/tests/vulkan.c +2245 -0
  439. data/ext/pixo/ext/glfw/tests/windows.c +166 -0
  440. data/ext/pixo/ext/glm/CMakeLists.txt +227 -0
  441. data/ext/pixo/ext/glm/cmake/CMakePackageConfigHelpers.cmake +227 -0
  442. data/ext/pixo/ext/glm/cmake/GNUInstallDirs.cmake +188 -0
  443. data/ext/pixo/ext/glm/cmake/glm.pc.in +7 -0
  444. data/ext/pixo/ext/glm/cmake/glmBuildConfig.cmake.in +6 -0
  445. data/ext/pixo/ext/glm/cmake/glmConfig.cmake.in +9 -0
  446. data/ext/pixo/ext/glm/copying.txt +54 -0
  447. data/ext/pixo/ext/glm/doc/api/a00001.html +66 -0
  448. data/ext/pixo/ext/glm/doc/api/a00001_source.html +457 -0
  449. data/ext/pixo/ext/glm/doc/api/a00002.html +66 -0
  450. data/ext/pixo/ext/glm/doc/api/a00002_source.html +83 -0
  451. data/ext/pixo/ext/glm/doc/api/a00003.html +66 -0
  452. data/ext/pixo/ext/glm/doc/api/a00003_source.html +167 -0
  453. data/ext/pixo/ext/glm/doc/api/a00004.html +66 -0
  454. data/ext/pixo/ext/glm/doc/api/a00004_source.html +857 -0
  455. data/ext/pixo/ext/glm/doc/api/a00005.html +66 -0
  456. data/ext/pixo/ext/glm/doc/api/a00005_source.html +754 -0
  457. data/ext/pixo/ext/glm/doc/api/a00006.html +66 -0
  458. data/ext/pixo/ext/glm/doc/api/a00006_source.html +194 -0
  459. data/ext/pixo/ext/glm/doc/api/a00007.html +141 -0
  460. data/ext/pixo/ext/glm/doc/api/a00007_source.html +207 -0
  461. data/ext/pixo/ext/glm/doc/api/a00008.html +102 -0
  462. data/ext/pixo/ext/glm/doc/api/a00008_source.html +111 -0
  463. data/ext/pixo/ext/glm/doc/api/a00009.html +137 -0
  464. data/ext/pixo/ext/glm/doc/api/a00009_source.html +149 -0
  465. data/ext/pixo/ext/glm/doc/api/a00010.html +80 -0
  466. data/ext/pixo/ext/glm/doc/api/a00010_source.html +90 -0
  467. data/ext/pixo/ext/glm/doc/api/a00011.html +88 -0
  468. data/ext/pixo/ext/glm/doc/api/a00011_source.html +97 -0
  469. data/ext/pixo/ext/glm/doc/api/a00012.html +91 -0
  470. data/ext/pixo/ext/glm/doc/api/a00012_source.html +107 -0
  471. data/ext/pixo/ext/glm/doc/api/a00013.html +85 -0
  472. data/ext/pixo/ext/glm/doc/api/a00013_source.html +98 -0
  473. data/ext/pixo/ext/glm/doc/api/a00014.html +66 -0
  474. data/ext/pixo/ext/glm/doc/api/a00014_source.html +65 -0
  475. data/ext/pixo/ext/glm/doc/api/a00015.html +81 -0
  476. data/ext/pixo/ext/glm/doc/api/a00015_source.html +88 -0
  477. data/ext/pixo/ext/glm/doc/api/a00016.html +327 -0
  478. data/ext/pixo/ext/glm/doc/api/a00016_source.html +239 -0
  479. data/ext/pixo/ext/glm/doc/api/a00017.html +93 -0
  480. data/ext/pixo/ext/glm/doc/api/a00017_source.html +102 -0
  481. data/ext/pixo/ext/glm/doc/api/a00018.html +162 -0
  482. data/ext/pixo/ext/glm/doc/api/a00018_source.html +193 -0
  483. data/ext/pixo/ext/glm/doc/api/a00019.html +129 -0
  484. data/ext/pixo/ext/glm/doc/api/a00019_source.html +271 -0
  485. data/ext/pixo/ext/glm/doc/api/a00020.html +89 -0
  486. data/ext/pixo/ext/glm/doc/api/a00020_source.html +105 -0
  487. data/ext/pixo/ext/glm/doc/api/a00021.html +126 -0
  488. data/ext/pixo/ext/glm/doc/api/a00021_source.html +175 -0
  489. data/ext/pixo/ext/glm/doc/api/a00022.html +66 -0
  490. data/ext/pixo/ext/glm/doc/api/a00022_source.html +65 -0
  491. data/ext/pixo/ext/glm/doc/api/a00023.html +66 -0
  492. data/ext/pixo/ext/glm/doc/api/a00023_source.html +219 -0
  493. data/ext/pixo/ext/glm/doc/api/a00024.html +76 -0
  494. data/ext/pixo/ext/glm/doc/api/a00024_source.html +84 -0
  495. data/ext/pixo/ext/glm/doc/api/a00025.html +111 -0
  496. data/ext/pixo/ext/glm/doc/api/a00025_source.html +157 -0
  497. data/ext/pixo/ext/glm/doc/api/a00026.html +111 -0
  498. data/ext/pixo/ext/glm/doc/api/a00026_source.html +118 -0
  499. data/ext/pixo/ext/glm/doc/api/a00027.html +100 -0
  500. data/ext/pixo/ext/glm/doc/api/a00027_source.html +111 -0
  501. data/ext/pixo/ext/glm/doc/api/a00028.html +97 -0
  502. data/ext/pixo/ext/glm/doc/api/a00028_source.html +109 -0
  503. data/ext/pixo/ext/glm/doc/api/a00029.html +168 -0
  504. data/ext/pixo/ext/glm/doc/api/a00029_source.html +238 -0
  505. data/ext/pixo/ext/glm/doc/api/a00030.html +94 -0
  506. data/ext/pixo/ext/glm/doc/api/a00030_source.html +110 -0
  507. data/ext/pixo/ext/glm/doc/api/a00031.html +97 -0
  508. data/ext/pixo/ext/glm/doc/api/a00031_source.html +121 -0
  509. data/ext/pixo/ext/glm/doc/api/a00032.html +112 -0
  510. data/ext/pixo/ext/glm/doc/api/a00032_source.html +149 -0
  511. data/ext/pixo/ext/glm/doc/api/a00033.html +85 -0
  512. data/ext/pixo/ext/glm/doc/api/a00033_source.html +165 -0
  513. data/ext/pixo/ext/glm/doc/api/a00034.html +99 -0
  514. data/ext/pixo/ext/glm/doc/api/a00034_source.html +115 -0
  515. data/ext/pixo/ext/glm/doc/api/a00035.html +118 -0
  516. data/ext/pixo/ext/glm/doc/api/a00035_source.html +135 -0
  517. data/ext/pixo/ext/glm/doc/api/a00036.html +100 -0
  518. data/ext/pixo/ext/glm/doc/api/a00036_source.html +111 -0
  519. data/ext/pixo/ext/glm/doc/api/a00037.html +83 -0
  520. data/ext/pixo/ext/glm/doc/api/a00037_source.html +93 -0
  521. data/ext/pixo/ext/glm/doc/api/a00038.html +979 -0
  522. data/ext/pixo/ext/glm/doc/api/a00038_source.html +1716 -0
  523. data/ext/pixo/ext/glm/doc/api/a00039.html +66 -0
  524. data/ext/pixo/ext/glm/doc/api/a00039_source.html +65 -0
  525. data/ext/pixo/ext/glm/doc/api/a00040.html +66 -0
  526. data/ext/pixo/ext/glm/doc/api/a00040_source.html +119 -0
  527. data/ext/pixo/ext/glm/doc/api/a00041.html +81 -0
  528. data/ext/pixo/ext/glm/doc/api/a00041_source.html +93 -0
  529. data/ext/pixo/ext/glm/doc/api/a00042.html +79 -0
  530. data/ext/pixo/ext/glm/doc/api/a00042_source.html +91 -0
  531. data/ext/pixo/ext/glm/doc/api/a00043.html +67 -0
  532. data/ext/pixo/ext/glm/doc/api/a00043_source.html +185 -0
  533. data/ext/pixo/ext/glm/doc/api/a00044.html +93 -0
  534. data/ext/pixo/ext/glm/doc/api/a00044_source.html +104 -0
  535. data/ext/pixo/ext/glm/doc/api/a00045.html +98 -0
  536. data/ext/pixo/ext/glm/doc/api/a00045_source.html +107 -0
  537. data/ext/pixo/ext/glm/doc/api/a00046.html +66 -0
  538. data/ext/pixo/ext/glm/doc/api/a00046_source.html +65 -0
  539. data/ext/pixo/ext/glm/doc/api/a00047.html +93 -0
  540. data/ext/pixo/ext/glm/doc/api/a00047_source.html +124 -0
  541. data/ext/pixo/ext/glm/doc/api/a00048.html +72 -0
  542. data/ext/pixo/ext/glm/doc/api/a00048_source.html +237 -0
  543. data/ext/pixo/ext/glm/doc/api/a00049.html +79 -0
  544. data/ext/pixo/ext/glm/doc/api/a00049_source.html +89 -0
  545. data/ext/pixo/ext/glm/doc/api/a00050_source.html +2457 -0
  546. data/ext/pixo/ext/glm/doc/api/a00051.html +66 -0
  547. data/ext/pixo/ext/glm/doc/api/a00051_source.html +88 -0
  548. data/ext/pixo/ext/glm/doc/api/a00052.html +66 -0
  549. data/ext/pixo/ext/glm/doc/api/a00052_source.html +80 -0
  550. data/ext/pixo/ext/glm/doc/api/a00053.html +66 -0
  551. data/ext/pixo/ext/glm/doc/api/a00053_source.html +79 -0
  552. data/ext/pixo/ext/glm/doc/api/a00054.html +66 -0
  553. data/ext/pixo/ext/glm/doc/api/a00054_source.html +79 -0
  554. data/ext/pixo/ext/glm/doc/api/a00055.html +66 -0
  555. data/ext/pixo/ext/glm/doc/api/a00055_source.html +88 -0
  556. data/ext/pixo/ext/glm/doc/api/a00056.html +66 -0
  557. data/ext/pixo/ext/glm/doc/api/a00056_source.html +79 -0
  558. data/ext/pixo/ext/glm/doc/api/a00057.html +66 -0
  559. data/ext/pixo/ext/glm/doc/api/a00057_source.html +79 -0
  560. data/ext/pixo/ext/glm/doc/api/a00058_source.html +79 -0
  561. data/ext/pixo/ext/glm/doc/api/a00059.html +66 -0
  562. data/ext/pixo/ext/glm/doc/api/a00059_source.html +88 -0
  563. data/ext/pixo/ext/glm/doc/api/a00060.html +66 -0
  564. data/ext/pixo/ext/glm/doc/api/a00060_source.html +65 -0
  565. data/ext/pixo/ext/glm/doc/api/a00061.html +85 -0
  566. data/ext/pixo/ext/glm/doc/api/a00061_source.html +101 -0
  567. data/ext/pixo/ext/glm/doc/api/a00062.html +81 -0
  568. data/ext/pixo/ext/glm/doc/api/a00062_source.html +87 -0
  569. data/ext/pixo/ext/glm/doc/api/a00063.html +76 -0
  570. data/ext/pixo/ext/glm/doc/api/a00063_source.html +91 -0
  571. data/ext/pixo/ext/glm/doc/api/a00064.html +265 -0
  572. data/ext/pixo/ext/glm/doc/api/a00064_source.html +438 -0
  573. data/ext/pixo/ext/glm/doc/api/a00065.html +86 -0
  574. data/ext/pixo/ext/glm/doc/api/a00065_source.html +104 -0
  575. data/ext/pixo/ext/glm/doc/api/a00066.html +79 -0
  576. data/ext/pixo/ext/glm/doc/api/a00066_source.html +89 -0
  577. data/ext/pixo/ext/glm/doc/api/a00067.html +111 -0
  578. data/ext/pixo/ext/glm/doc/api/a00067_source.html +143 -0
  579. data/ext/pixo/ext/glm/doc/api/a00068.html +100 -0
  580. data/ext/pixo/ext/glm/doc/api/a00068_source.html +122 -0
  581. data/ext/pixo/ext/glm/doc/api/a00069.html +99 -0
  582. data/ext/pixo/ext/glm/doc/api/a00069_source.html +108 -0
  583. data/ext/pixo/ext/glm/doc/api/a00070.html +158 -0
  584. data/ext/pixo/ext/glm/doc/api/a00070_source.html +289 -0
  585. data/ext/pixo/ext/glm/doc/api/a00071.html +89 -0
  586. data/ext/pixo/ext/glm/doc/api/a00071_source.html +110 -0
  587. data/ext/pixo/ext/glm/doc/api/a00072.html +77 -0
  588. data/ext/pixo/ext/glm/doc/api/a00072_source.html +84 -0
  589. data/ext/pixo/ext/glm/doc/api/a00073.html +82 -0
  590. data/ext/pixo/ext/glm/doc/api/a00073_source.html +100 -0
  591. data/ext/pixo/ext/glm/doc/api/a00074.html +99 -0
  592. data/ext/pixo/ext/glm/doc/api/a00074_source.html +121 -0
  593. data/ext/pixo/ext/glm/doc/api/a00075.html +78 -0
  594. data/ext/pixo/ext/glm/doc/api/a00075_source.html +84 -0
  595. data/ext/pixo/ext/glm/doc/api/a00076.html +81 -0
  596. data/ext/pixo/ext/glm/doc/api/a00076_source.html +85 -0
  597. data/ext/pixo/ext/glm/doc/api/a00077.html +107 -0
  598. data/ext/pixo/ext/glm/doc/api/a00077_source.html +115 -0
  599. data/ext/pixo/ext/glm/doc/api/a00078.html +82 -0
  600. data/ext/pixo/ext/glm/doc/api/a00078_source.html +91 -0
  601. data/ext/pixo/ext/glm/doc/api/a00079.html +81 -0
  602. data/ext/pixo/ext/glm/doc/api/a00079_source.html +86 -0
  603. data/ext/pixo/ext/glm/doc/api/a00080.html +175 -0
  604. data/ext/pixo/ext/glm/doc/api/a00080_source.html +233 -0
  605. data/ext/pixo/ext/glm/doc/api/a00081.html +66 -0
  606. data/ext/pixo/ext/glm/doc/api/a00081_source.html +65 -0
  607. data/ext/pixo/ext/glm/doc/api/a00082_source.html +61 -0
  608. data/ext/pixo/ext/glm/doc/api/a00083.html +78 -0
  609. data/ext/pixo/ext/glm/doc/api/a00083_source.html +84 -0
  610. data/ext/pixo/ext/glm/doc/api/a00084.html +79 -0
  611. data/ext/pixo/ext/glm/doc/api/a00084_source.html +87 -0
  612. data/ext/pixo/ext/glm/doc/api/a00085.html +66 -0
  613. data/ext/pixo/ext/glm/doc/api/a00085_source.html +123 -0
  614. data/ext/pixo/ext/glm/doc/api/a00086.html +76 -0
  615. data/ext/pixo/ext/glm/doc/api/a00086_source.html +81 -0
  616. data/ext/pixo/ext/glm/doc/api/a00087.html +161 -0
  617. data/ext/pixo/ext/glm/doc/api/a00087_source.html +329 -0
  618. data/ext/pixo/ext/glm/doc/api/a00088.html +129 -0
  619. data/ext/pixo/ext/glm/doc/api/a00088_source.html +189 -0
  620. data/ext/pixo/ext/glm/doc/api/a00089.html +98 -0
  621. data/ext/pixo/ext/glm/doc/api/a00089_source.html +115 -0
  622. data/ext/pixo/ext/glm/doc/api/a00090.html +67 -0
  623. data/ext/pixo/ext/glm/doc/api/a00090_source.html +133 -0
  624. data/ext/pixo/ext/glm/doc/api/a00091.html +81 -0
  625. data/ext/pixo/ext/glm/doc/api/a00091_source.html +90 -0
  626. data/ext/pixo/ext/glm/doc/api/a00092.html +109 -0
  627. data/ext/pixo/ext/glm/doc/api/a00092_source.html +126 -0
  628. data/ext/pixo/ext/glm/doc/api/a00093.html +83 -0
  629. data/ext/pixo/ext/glm/doc/api/a00093_source.html +94 -0
  630. data/ext/pixo/ext/glm/doc/api/a00094.html +108 -0
  631. data/ext/pixo/ext/glm/doc/api/a00094_source.html +143 -0
  632. data/ext/pixo/ext/glm/doc/api/a00095.html +126 -0
  633. data/ext/pixo/ext/glm/doc/api/a00095_source.html +149 -0
  634. data/ext/pixo/ext/glm/doc/api/a00096.html +69 -0
  635. data/ext/pixo/ext/glm/doc/api/a00096_source.html +131 -0
  636. data/ext/pixo/ext/glm/doc/api/a00097.html +67 -0
  637. data/ext/pixo/ext/glm/doc/api/a00097_source.html +79 -0
  638. data/ext/pixo/ext/glm/doc/api/a00098.html +66 -0
  639. data/ext/pixo/ext/glm/doc/api/a00098_source.html +827 -0
  640. data/ext/pixo/ext/glm/doc/api/a00099.html +67 -0
  641. data/ext/pixo/ext/glm/doc/api/a00099_source.html +219 -0
  642. data/ext/pixo/ext/glm/doc/api/a00100.html +67 -0
  643. data/ext/pixo/ext/glm/doc/api/a00100_source.html +282 -0
  644. data/ext/pixo/ext/glm/doc/api/a00101.html +67 -0
  645. data/ext/pixo/ext/glm/doc/api/a00101_source.html +402 -0
  646. data/ext/pixo/ext/glm/doc/api/a00102.html +82 -0
  647. data/ext/pixo/ext/glm/doc/api/a00102_source.html +105 -0
  648. data/ext/pixo/ext/glm/doc/api/a00103.html +91 -0
  649. data/ext/pixo/ext/glm/doc/api/a00103_source.html +102 -0
  650. data/ext/pixo/ext/glm/doc/api/a00104.html +82 -0
  651. data/ext/pixo/ext/glm/doc/api/a00104_source.html +89 -0
  652. data/ext/pixo/ext/glm/doc/api/a00105.html +88 -0
  653. data/ext/pixo/ext/glm/doc/api/a00105_source.html +95 -0
  654. data/ext/pixo/ext/glm/doc/api/a00106.html +102 -0
  655. data/ext/pixo/ext/glm/doc/api/a00106_source.html +144 -0
  656. data/ext/pixo/ext/glm/doc/api/a00107.html +66 -0
  657. data/ext/pixo/ext/glm/doc/api/a00107_source.html +65 -0
  658. data/ext/pixo/ext/glm/doc/api/a00108.html +241 -0
  659. data/ext/pixo/ext/glm/doc/api/a00108_source.html +383 -0
  660. data/ext/pixo/ext/glm/doc/api/a00109.html +493 -0
  661. data/ext/pixo/ext/glm/doc/api/a00109_source.html +769 -0
  662. data/ext/pixo/ext/glm/doc/api/a00110.html +82 -0
  663. data/ext/pixo/ext/glm/doc/api/a00110_source.html +113 -0
  664. data/ext/pixo/ext/glm/doc/api/a00111.html +66 -0
  665. data/ext/pixo/ext/glm/doc/api/a00111_source.html +248 -0
  666. data/ext/pixo/ext/glm/doc/api/a00112.html +66 -0
  667. data/ext/pixo/ext/glm/doc/api/a00112_source.html +79 -0
  668. data/ext/pixo/ext/glm/doc/api/a00113.html +102 -0
  669. data/ext/pixo/ext/glm/doc/api/a00113_source.html +352 -0
  670. data/ext/pixo/ext/glm/doc/api/a00114.html +271 -0
  671. data/ext/pixo/ext/glm/doc/api/a00114_source.html +469 -0
  672. data/ext/pixo/ext/glm/doc/api/a00115.html +66 -0
  673. data/ext/pixo/ext/glm/doc/api/a00115_source.html +245 -0
  674. data/ext/pixo/ext/glm/doc/api/a00116.html +66 -0
  675. data/ext/pixo/ext/glm/doc/api/a00116_source.html +228 -0
  676. data/ext/pixo/ext/glm/doc/api/a00117.html +66 -0
  677. data/ext/pixo/ext/glm/doc/api/a00117_source.html +230 -0
  678. data/ext/pixo/ext/glm/doc/api/a00118.html +66 -0
  679. data/ext/pixo/ext/glm/doc/api/a00118_source.html +236 -0
  680. data/ext/pixo/ext/glm/doc/api/a00119.html +66 -0
  681. data/ext/pixo/ext/glm/doc/api/a00119_source.html +252 -0
  682. data/ext/pixo/ext/glm/doc/api/a00120.html +66 -0
  683. data/ext/pixo/ext/glm/doc/api/a00120_source.html +235 -0
  684. data/ext/pixo/ext/glm/doc/api/a00121.html +66 -0
  685. data/ext/pixo/ext/glm/doc/api/a00121_source.html +240 -0
  686. data/ext/pixo/ext/glm/doc/api/a00122.html +66 -0
  687. data/ext/pixo/ext/glm/doc/api/a00122_source.html +240 -0
  688. data/ext/pixo/ext/glm/doc/api/a00123.html +66 -0
  689. data/ext/pixo/ext/glm/doc/api/a00123_source.html +257 -0
  690. data/ext/pixo/ext/glm/doc/api/a00124.html +71 -0
  691. data/ext/pixo/ext/glm/doc/api/a00124_source.html +692 -0
  692. data/ext/pixo/ext/glm/doc/api/a00125.html +128 -0
  693. data/ext/pixo/ext/glm/doc/api/a00125_source.html +158 -0
  694. data/ext/pixo/ext/glm/doc/api/a00126.html +67 -0
  695. data/ext/pixo/ext/glm/doc/api/a00126_source.html +299 -0
  696. data/ext/pixo/ext/glm/doc/api/a00127.html +192 -0
  697. data/ext/pixo/ext/glm/doc/api/a00127_source.html +435 -0
  698. data/ext/pixo/ext/glm/doc/api/a00128.html +66 -0
  699. data/ext/pixo/ext/glm/doc/api/a00128_source.html +357 -0
  700. data/ext/pixo/ext/glm/doc/api/a00129.html +66 -0
  701. data/ext/pixo/ext/glm/doc/api/a00129_source.html +443 -0
  702. data/ext/pixo/ext/glm/doc/api/a00130.html +66 -0
  703. data/ext/pixo/ext/glm/doc/api/a00130_source.html +461 -0
  704. data/ext/pixo/ext/glm/doc/api/a00131.html +66 -0
  705. data/ext/pixo/ext/glm/doc/api/a00131_source.html +500 -0
  706. data/ext/pixo/ext/glm/doc/api/a00132.html +91 -0
  707. data/ext/pixo/ext/glm/doc/api/a00132_source.html +101 -0
  708. data/ext/pixo/ext/glm/doc/api/a00133.html +107 -0
  709. data/ext/pixo/ext/glm/doc/api/a00133_source.html +159 -0
  710. data/ext/pixo/ext/glm/doc/api/a00134.html +66 -0
  711. data/ext/pixo/ext/glm/doc/api/a00134_source.html +65 -0
  712. data/ext/pixo/ext/glm/doc/api/a00135.html +66 -0
  713. data/ext/pixo/ext/glm/doc/api/a00135_source.html +65 -0
  714. data/ext/pixo/ext/glm/doc/api/a00136.html +66 -0
  715. data/ext/pixo/ext/glm/doc/api/a00136_source.html +65 -0
  716. data/ext/pixo/ext/glm/doc/api/a00137.html +86 -0
  717. data/ext/pixo/ext/glm/doc/api/a00137_source.html +98 -0
  718. data/ext/pixo/ext/glm/doc/api/a00138.html +91 -0
  719. data/ext/pixo/ext/glm/doc/api/a00138_source.html +104 -0
  720. data/ext/pixo/ext/glm/doc/api/a00139.html +66 -0
  721. data/ext/pixo/ext/glm/doc/api/a00139_source.html +65 -0
  722. data/ext/pixo/ext/glm/doc/api/a00140.html +85 -0
  723. data/ext/pixo/ext/glm/doc/api/a00140_source.html +94 -0
  724. data/ext/pixo/ext/glm/doc/api/a00146.html +1123 -0
  725. data/ext/pixo/ext/glm/doc/api/a00147.html +325 -0
  726. data/ext/pixo/ext/glm/doc/api/a00148.html +367 -0
  727. data/ext/pixo/ext/glm/doc/api/a00149.html +577 -0
  728. data/ext/pixo/ext/glm/doc/api/a00150.html +210 -0
  729. data/ext/pixo/ext/glm/doc/api/a00151.html +364 -0
  730. data/ext/pixo/ext/glm/doc/api/a00152.html +532 -0
  731. data/ext/pixo/ext/glm/doc/api/a00153.html +393 -0
  732. data/ext/pixo/ext/glm/doc/api/a00154.html +103 -0
  733. data/ext/pixo/ext/glm/doc/api/a00155.html +177 -0
  734. data/ext/pixo/ext/glm/doc/api/a00156.html +84 -0
  735. data/ext/pixo/ext/glm/doc/api/a00157.html +808 -0
  736. data/ext/pixo/ext/glm/doc/api/a00158.html +2827 -0
  737. data/ext/pixo/ext/glm/doc/api/a00159.html +53 -0
  738. data/ext/pixo/ext/glm/doc/api/a00160.html +985 -0
  739. data/ext/pixo/ext/glm/doc/api/a00161.html +141 -0
  740. data/ext/pixo/ext/glm/doc/api/a00162.html +670 -0
  741. data/ext/pixo/ext/glm/doc/api/a00163.html +217 -0
  742. data/ext/pixo/ext/glm/doc/api/a00164.html +137 -0
  743. data/ext/pixo/ext/glm/doc/api/a00165.html +290 -0
  744. data/ext/pixo/ext/glm/doc/api/a00166.html +201 -0
  745. data/ext/pixo/ext/glm/doc/api/a00167.html +1885 -0
  746. data/ext/pixo/ext/glm/doc/api/a00168.html +129 -0
  747. data/ext/pixo/ext/glm/doc/api/a00169.html +1690 -0
  748. data/ext/pixo/ext/glm/doc/api/a00170.html +136 -0
  749. data/ext/pixo/ext/glm/doc/api/a00171.html +1406 -0
  750. data/ext/pixo/ext/glm/doc/api/a00172.html +939 -0
  751. data/ext/pixo/ext/glm/doc/api/a00173.html +303 -0
  752. data/ext/pixo/ext/glm/doc/api/a00174.html +406 -0
  753. data/ext/pixo/ext/glm/doc/api/a00175.html +603 -0
  754. data/ext/pixo/ext/glm/doc/api/a00176.html +688 -0
  755. data/ext/pixo/ext/glm/doc/api/a00177.html +3678 -0
  756. data/ext/pixo/ext/glm/doc/api/a00178.html +445 -0
  757. data/ext/pixo/ext/glm/doc/api/a00179.html +233 -0
  758. data/ext/pixo/ext/glm/doc/api/a00180.html +53 -0
  759. data/ext/pixo/ext/glm/doc/api/a00181.html +1293 -0
  760. data/ext/pixo/ext/glm/doc/api/a00182.html +273 -0
  761. data/ext/pixo/ext/glm/doc/api/a00183.html +103 -0
  762. data/ext/pixo/ext/glm/doc/api/a00184.html +213 -0
  763. data/ext/pixo/ext/glm/doc/api/a00185.html +153 -0
  764. data/ext/pixo/ext/glm/doc/api/a00186.html +117 -0
  765. data/ext/pixo/ext/glm/doc/api/a00187.html +312 -0
  766. data/ext/pixo/ext/glm/doc/api/a00188.html +193 -0
  767. data/ext/pixo/ext/glm/doc/api/a00189.html +464 -0
  768. data/ext/pixo/ext/glm/doc/api/a00190.html +565 -0
  769. data/ext/pixo/ext/glm/doc/api/a00191.html +99 -0
  770. data/ext/pixo/ext/glm/doc/api/a00192.html +553 -0
  771. data/ext/pixo/ext/glm/doc/api/a00193.html +355 -0
  772. data/ext/pixo/ext/glm/doc/api/a00194.html +282 -0
  773. data/ext/pixo/ext/glm/doc/api/a00195.html +246 -0
  774. data/ext/pixo/ext/glm/doc/api/a00196.html +143 -0
  775. data/ext/pixo/ext/glm/doc/api/a00197.html +137 -0
  776. data/ext/pixo/ext/glm/doc/api/a00198.html +53 -0
  777. data/ext/pixo/ext/glm/doc/api/a00199.html +314 -0
  778. data/ext/pixo/ext/glm/doc/api/a00200.html +397 -0
  779. data/ext/pixo/ext/glm/doc/api/a00201.html +55 -0
  780. data/ext/pixo/ext/glm/doc/api/a00202.html +126 -0
  781. data/ext/pixo/ext/glm/doc/api/a00203.html +105 -0
  782. data/ext/pixo/ext/glm/doc/api/a00204.html +117 -0
  783. data/ext/pixo/ext/glm/doc/api/a00205.html +191 -0
  784. data/ext/pixo/ext/glm/doc/api/a00206.html +421 -0
  785. data/ext/pixo/ext/glm/doc/api/a00207.html +259 -0
  786. data/ext/pixo/ext/glm/doc/api/a00208.html +317 -0
  787. data/ext/pixo/ext/glm/doc/api/a00209.html +251 -0
  788. data/ext/pixo/ext/glm/doc/api/a00210.html +64 -0
  789. data/ext/pixo/ext/glm/doc/api/a00211.html +293 -0
  790. data/ext/pixo/ext/glm/doc/api/a00212.html +99 -0
  791. data/ext/pixo/ext/glm/doc/api/a00213.html +127 -0
  792. data/ext/pixo/ext/glm/doc/api/a00214.html +90 -0
  793. data/ext/pixo/ext/glm/doc/api/a00215.html +127 -0
  794. data/ext/pixo/ext/glm/doc/api/a00216.html +115 -0
  795. data/ext/pixo/ext/glm/doc/api/a00217.html +93 -0
  796. data/ext/pixo/ext/glm/doc/api/a00218.html +105 -0
  797. data/ext/pixo/ext/glm/doc/api/a00219.html +93 -0
  798. data/ext/pixo/ext/glm/doc/api/a00220.html +613 -0
  799. data/ext/pixo/ext/glm/doc/api/a00221.html +55 -0
  800. data/ext/pixo/ext/glm/doc/api/a00222.html +137 -0
  801. data/ext/pixo/ext/glm/doc/api/a00223.html +165 -0
  802. data/ext/pixo/ext/glm/doc/api/a00224.html +439 -0
  803. data/ext/pixo/ext/glm/doc/api/a00225.html +53 -0
  804. data/ext/pixo/ext/glm/doc/api/a00226.html +53 -0
  805. data/ext/pixo/ext/glm/doc/api/a00227.html +53 -0
  806. data/ext/pixo/ext/glm/doc/api/a00228.html +53 -0
  807. data/ext/pixo/ext/glm/doc/api/a00229.html +211 -0
  808. data/ext/pixo/ext/glm/doc/api/a00230.html +213 -0
  809. data/ext/pixo/ext/glm/doc/api/a00231.html +83 -0
  810. data/ext/pixo/ext/glm/doc/api/a00232.html +143 -0
  811. data/ext/pixo/ext/glm/doc/api/a00233.html +372 -0
  812. data/ext/pixo/ext/glm/doc/api/a00234.html +7811 -0
  813. data/ext/pixo/ext/glm/doc/api/a00235.html +54 -0
  814. data/ext/pixo/ext/glm/doc/api/a00236.html +163 -0
  815. data/ext/pixo/ext/glm/doc/api/a00237.html +271 -0
  816. data/ext/pixo/ext/glm/doc/api/a00238.html +149 -0
  817. data/ext/pixo/ext/glm/doc/api/arrowdown.png +0 -0
  818. data/ext/pixo/ext/glm/doc/api/arrowright.png +0 -0
  819. data/ext/pixo/ext/glm/doc/api/bc_s.png +0 -0
  820. data/ext/pixo/ext/glm/doc/api/bdwn.png +0 -0
  821. data/ext/pixo/ext/glm/doc/api/closed.png +0 -0
  822. data/ext/pixo/ext/glm/doc/api/dir_1f76e953200861345293ade84ac7fb6c.html +61 -0
  823. data/ext/pixo/ext/glm/doc/api/dir_275089585c7fc1b5fd5d7d42c69cb1da.html +61 -0
  824. data/ext/pixo/ext/glm/doc/api/dir_577c788b67d63fb3b3b5752bd495d0f2.html +63 -0
  825. data/ext/pixo/ext/glm/doc/api/dir_5ce58d942b2d0776e17a9a58abc01e04.html +114 -0
  826. data/ext/pixo/ext/glm/doc/api/dir_7b98f88bffbed4b390b5f8f520d9c08e.html +61 -0
  827. data/ext/pixo/ext/glm/doc/api/dir_8d176b5b7dd0ae42ea6876078f2bde49.html +177 -0
  828. data/ext/pixo/ext/glm/doc/api/dir_9440d7c11b99dcd7e5d369c7cf9802fe.html +101 -0
  829. data/ext/pixo/ext/glm/doc/api/dir_e29b03b892e0e25920d021a614d4db9b.html +63 -0
  830. data/ext/pixo/ext/glm/doc/api/dir_e529a619cfdec1fa4c331fb042fd332f.html +129 -0
  831. data/ext/pixo/ext/glm/doc/api/doc.png +0 -0
  832. data/ext/pixo/ext/glm/doc/api/doxygen.css +865 -0
  833. data/ext/pixo/ext/glm/doc/api/doxygen.png +0 -0
  834. data/ext/pixo/ext/glm/doc/api/dynsections.js +104 -0
  835. data/ext/pixo/ext/glm/doc/api/files.html +200 -0
  836. data/ext/pixo/ext/glm/doc/api/folderclosed.png +0 -0
  837. data/ext/pixo/ext/glm/doc/api/folderopen.png +0 -0
  838. data/ext/pixo/ext/glm/doc/api/index.html +68 -0
  839. data/ext/pixo/ext/glm/doc/api/jquery.js +68 -0
  840. data/ext/pixo/ext/glm/doc/api/logo.png +0 -0
  841. data/ext/pixo/ext/glm/doc/api/modules.html +149 -0
  842. data/ext/pixo/ext/glm/doc/api/nav_f.png +0 -0
  843. data/ext/pixo/ext/glm/doc/api/nav_g.png +0 -0
  844. data/ext/pixo/ext/glm/doc/api/nav_h.png +0 -0
  845. data/ext/pixo/ext/glm/doc/api/open.png +0 -0
  846. data/ext/pixo/ext/glm/doc/api/splitbar.png +0 -0
  847. data/ext/pixo/ext/glm/doc/api/sync_off.png +0 -0
  848. data/ext/pixo/ext/glm/doc/api/sync_on.png +0 -0
  849. data/ext/pixo/ext/glm/doc/api/tab_a.png +0 -0
  850. data/ext/pixo/ext/glm/doc/api/tab_b.png +0 -0
  851. data/ext/pixo/ext/glm/doc/api/tab_h.png +0 -0
  852. data/ext/pixo/ext/glm/doc/api/tab_s.png +0 -0
  853. data/ext/pixo/ext/glm/doc/api/tabs.css +79 -0
  854. data/ext/pixo/ext/glm/doc/glm.docx +0 -0
  855. data/ext/pixo/ext/glm/doc/glm.pdf +0 -0
  856. data/ext/pixo/ext/glm/doc/logo.png +0 -0
  857. data/ext/pixo/ext/glm/doc/man.doxy +2396 -0
  858. data/ext/pixo/ext/glm/doc/pages.doxy +32 -0
  859. data/ext/pixo/ext/glm/doc/theme/doxygen.css +865 -0
  860. data/ext/pixo/ext/glm/doc/theme/tabs.css +79 -0
  861. data/ext/pixo/ext/glm/glm/CMakeLists.txt +67 -0
  862. data/ext/pixo/ext/glm/glm/common.hpp +6 -0
  863. data/ext/pixo/ext/glm/glm/detail/_features.hpp +399 -0
  864. data/ext/pixo/ext/glm/glm/detail/_fixes.hpp +30 -0
  865. data/ext/pixo/ext/glm/glm/detail/_noise.hpp +107 -0
  866. data/ext/pixo/ext/glm/glm/detail/_swizzle.hpp +797 -0
  867. data/ext/pixo/ext/glm/glm/detail/_swizzle_func.hpp +696 -0
  868. data/ext/pixo/ext/glm/glm/detail/_vectorize.hpp +131 -0
  869. data/ext/pixo/ext/glm/glm/detail/dummy.cpp +207 -0
  870. data/ext/pixo/ext/glm/glm/detail/func_common.hpp +427 -0
  871. data/ext/pixo/ext/glm/glm/detail/func_common.inl +848 -0
  872. data/ext/pixo/ext/glm/glm/detail/func_common_simd.inl +231 -0
  873. data/ext/pixo/ext/glm/glm/detail/func_exponential.hpp +103 -0
  874. data/ext/pixo/ext/glm/glm/detail/func_exponential.inl +146 -0
  875. data/ext/pixo/ext/glm/glm/detail/func_exponential_simd.inl +35 -0
  876. data/ext/pixo/ext/glm/glm/detail/func_geometric.hpp +113 -0
  877. data/ext/pixo/ext/glm/glm/detail/func_geometric.inl +247 -0
  878. data/ext/pixo/ext/glm/glm/detail/func_geometric_simd.inl +99 -0
  879. data/ext/pixo/ext/glm/glm/detail/func_integer.hpp +203 -0
  880. data/ext/pixo/ext/glm/glm/detail/func_integer.inl +375 -0
  881. data/ext/pixo/ext/glm/glm/detail/func_integer_simd.inl +66 -0
  882. data/ext/pixo/ext/glm/glm/detail/func_matrix.hpp +149 -0
  883. data/ext/pixo/ext/glm/glm/detail/func_matrix.inl +401 -0
  884. data/ext/pixo/ext/glm/glm/detail/func_matrix_simd.inl +88 -0
  885. data/ext/pixo/ext/glm/glm/detail/func_packing.hpp +168 -0
  886. data/ext/pixo/ext/glm/glm/detail/func_packing.inl +190 -0
  887. data/ext/pixo/ext/glm/glm/detail/func_packing_simd.inl +9 -0
  888. data/ext/pixo/ext/glm/glm/detail/func_trigonometric.hpp +176 -0
  889. data/ext/pixo/ext/glm/glm/detail/func_trigonometric.inl +200 -0
  890. data/ext/pixo/ext/glm/glm/detail/func_trigonometric_simd.inl +0 -0
  891. data/ext/pixo/ext/glm/glm/detail/func_vector_relational.hpp +111 -0
  892. data/ext/pixo/ext/glm/glm/detail/func_vector_relational.inl +105 -0
  893. data/ext/pixo/ext/glm/glm/detail/func_vector_relational_simd.inl +9 -0
  894. data/ext/pixo/ext/glm/glm/detail/glm.cpp +257 -0
  895. data/ext/pixo/ext/glm/glm/detail/precision.hpp +63 -0
  896. data/ext/pixo/ext/glm/glm/detail/setup.hpp +777 -0
  897. data/ext/pixo/ext/glm/glm/detail/type_float.hpp +67 -0
  898. data/ext/pixo/ext/glm/glm/detail/type_gentype.hpp +195 -0
  899. data/ext/pixo/ext/glm/glm/detail/type_gentype.inl +341 -0
  900. data/ext/pixo/ext/glm/glm/detail/type_half.hpp +19 -0
  901. data/ext/pixo/ext/glm/glm/detail/type_half.inl +244 -0
  902. data/ext/pixo/ext/glm/glm/detail/type_int.hpp +306 -0
  903. data/ext/pixo/ext/glm/glm/detail/type_mat.hpp +767 -0
  904. data/ext/pixo/ext/glm/glm/detail/type_mat.inl +3 -0
  905. data/ext/pixo/ext/glm/glm/detail/type_mat2x2.hpp +183 -0
  906. data/ext/pixo/ext/glm/glm/detail/type_mat2x2.inl +490 -0
  907. data/ext/pixo/ext/glm/glm/detail/type_mat2x3.hpp +165 -0
  908. data/ext/pixo/ext/glm/glm/detail/type_mat2x3.inl +464 -0
  909. data/ext/pixo/ext/glm/glm/detail/type_mat2x4.hpp +167 -0
  910. data/ext/pixo/ext/glm/glm/detail/type_mat2x4.inl +473 -0
  911. data/ext/pixo/ext/glm/glm/detail/type_mat3x2.hpp +173 -0
  912. data/ext/pixo/ext/glm/glm/detail/type_mat3x2.inl +498 -0
  913. data/ext/pixo/ext/glm/glm/detail/type_mat3x3.hpp +190 -0
  914. data/ext/pixo/ext/glm/glm/detail/type_mat3x3.inl +567 -0
  915. data/ext/pixo/ext/glm/glm/detail/type_mat3x4.hpp +172 -0
  916. data/ext/pixo/ext/glm/glm/detail/type_mat3x4.inl +538 -0
  917. data/ext/pixo/ext/glm/glm/detail/type_mat4x2.hpp +177 -0
  918. data/ext/pixo/ext/glm/glm/detail/type_mat4x2.inl +551 -0
  919. data/ext/pixo/ext/glm/glm/detail/type_mat4x3.hpp +177 -0
  920. data/ext/pixo/ext/glm/glm/detail/type_mat4x3.inl +568 -0
  921. data/ext/pixo/ext/glm/glm/detail/type_mat4x4.hpp +195 -0
  922. data/ext/pixo/ext/glm/glm/detail/type_mat4x4.inl +677 -0
  923. data/ext/pixo/ext/glm/glm/detail/type_mat4x4_simd.inl +7 -0
  924. data/ext/pixo/ext/glm/glm/detail/type_vec.hpp +576 -0
  925. data/ext/pixo/ext/glm/glm/detail/type_vec.inl +2 -0
  926. data/ext/pixo/ext/glm/glm/detail/type_vec1.hpp +299 -0
  927. data/ext/pixo/ext/glm/glm/detail/type_vec1.inl +564 -0
  928. data/ext/pixo/ext/glm/glm/detail/type_vec2.hpp +385 -0
  929. data/ext/pixo/ext/glm/glm/detail/type_vec2.inl +900 -0
  930. data/ext/pixo/ext/glm/glm/detail/type_vec3.hpp +406 -0
  931. data/ext/pixo/ext/glm/glm/detail/type_vec3.inl +1028 -0
  932. data/ext/pixo/ext/glm/glm/detail/type_vec4.hpp +451 -0
  933. data/ext/pixo/ext/glm/glm/detail/type_vec4.inl +975 -0
  934. data/ext/pixo/ext/glm/glm/detail/type_vec4_simd.inl +481 -0
  935. data/ext/pixo/ext/glm/glm/exponential.hpp +6 -0
  936. data/ext/pixo/ext/glm/glm/ext.hpp +117 -0
  937. data/ext/pixo/ext/glm/glm/fwd.hpp +2570 -0
  938. data/ext/pixo/ext/glm/glm/geometric.hpp +6 -0
  939. data/ext/pixo/ext/glm/glm/glm.hpp +88 -0
  940. data/ext/pixo/ext/glm/glm/gtc/bitfield.hpp +207 -0
  941. data/ext/pixo/ext/glm/glm/gtc/bitfield.inl +515 -0
  942. data/ext/pixo/ext/glm/glm/gtc/color_encoding.hpp +50 -0
  943. data/ext/pixo/ext/glm/glm/gtc/color_encoding.inl +65 -0
  944. data/ext/pixo/ext/glm/glm/gtc/color_space.hpp +56 -0
  945. data/ext/pixo/ext/glm/glm/gtc/color_space.inl +75 -0
  946. data/ext/pixo/ext/glm/glm/gtc/constants.hpp +176 -0
  947. data/ext/pixo/ext/glm/glm/gtc/constants.inl +181 -0
  948. data/ext/pixo/ext/glm/glm/gtc/epsilon.hpp +73 -0
  949. data/ext/pixo/ext/glm/glm/gtc/epsilon.inl +125 -0
  950. data/ext/pixo/ext/glm/glm/gtc/functions.hpp +53 -0
  951. data/ext/pixo/ext/glm/glm/gtc/functions.inl +31 -0
  952. data/ext/pixo/ext/glm/glm/gtc/integer.hpp +102 -0
  953. data/ext/pixo/ext/glm/glm/gtc/integer.inl +71 -0
  954. data/ext/pixo/ext/glm/glm/gtc/matrix_access.hpp +59 -0
  955. data/ext/pixo/ext/glm/glm/gtc/matrix_access.inl +63 -0
  956. data/ext/pixo/ext/glm/glm/gtc/matrix_integer.hpp +486 -0
  957. data/ext/pixo/ext/glm/glm/gtc/matrix_inverse.hpp +49 -0
  958. data/ext/pixo/ext/glm/glm/gtc/matrix_inverse.inl +120 -0
  959. data/ext/pixo/ext/glm/glm/gtc/matrix_transform.hpp +465 -0
  960. data/ext/pixo/ext/glm/glm/gtc/matrix_transform.inl +575 -0
  961. data/ext/pixo/ext/glm/glm/gtc/noise.hpp +60 -0
  962. data/ext/pixo/ext/glm/glm/gtc/noise.inl +808 -0
  963. data/ext/pixo/ext/glm/glm/gtc/packing.hpp +579 -0
  964. data/ext/pixo/ext/glm/glm/gtc/packing.inl +781 -0
  965. data/ext/pixo/ext/glm/glm/gtc/quaternion.hpp +397 -0
  966. data/ext/pixo/ext/glm/glm/gtc/quaternion.inl +801 -0
  967. data/ext/pixo/ext/glm/glm/gtc/quaternion_simd.inl +198 -0
  968. data/ext/pixo/ext/glm/glm/gtc/random.hpp +98 -0
  969. data/ext/pixo/ext/glm/glm/gtc/random.inl +350 -0
  970. data/ext/pixo/ext/glm/glm/gtc/reciprocal.hpp +135 -0
  971. data/ext/pixo/ext/glm/glm/gtc/reciprocal.inl +192 -0
  972. data/ext/pixo/ext/glm/glm/gtc/round.hpp +174 -0
  973. data/ext/pixo/ext/glm/glm/gtc/round.inl +344 -0
  974. data/ext/pixo/ext/glm/glm/gtc/type_aligned.hpp +362 -0
  975. data/ext/pixo/ext/glm/glm/gtc/type_precision.hpp +861 -0
  976. data/ext/pixo/ext/glm/glm/gtc/type_precision.inl +7 -0
  977. data/ext/pixo/ext/glm/glm/gtc/type_ptr.hpp +149 -0
  978. data/ext/pixo/ext/glm/glm/gtc/type_ptr.inl +450 -0
  979. data/ext/pixo/ext/glm/glm/gtc/ulp.hpp +63 -0
  980. data/ext/pixo/ext/glm/glm/gtc/ulp.inl +321 -0
  981. data/ext/pixo/ext/glm/glm/gtc/vec1.hpp +164 -0
  982. data/ext/pixo/ext/glm/glm/gtc/vec1.inl +2 -0
  983. data/ext/pixo/ext/glm/glm/gtx/associated_min_max.hpp +202 -0
  984. data/ext/pixo/ext/glm/glm/gtx/associated_min_max.inl +355 -0
  985. data/ext/pixo/ext/glm/glm/gtx/bit.hpp +95 -0
  986. data/ext/pixo/ext/glm/glm/gtx/bit.inl +93 -0
  987. data/ext/pixo/ext/glm/glm/gtx/closest_point.hpp +45 -0
  988. data/ext/pixo/ext/glm/glm/gtx/closest_point.inl +46 -0
  989. data/ext/pixo/ext/glm/glm/gtx/color_space.hpp +68 -0
  990. data/ext/pixo/ext/glm/glm/gtx/color_space.inl +143 -0
  991. data/ext/pixo/ext/glm/glm/gtx/color_space_YCoCg.hpp +56 -0
  992. data/ext/pixo/ext/glm/glm/gtx/color_space_YCoCg.inl +108 -0
  993. data/ext/pixo/ext/glm/glm/gtx/common.hpp +53 -0
  994. data/ext/pixo/ext/glm/glm/gtx/common.inl +112 -0
  995. data/ext/pixo/ext/glm/glm/gtx/compatibility.hpp +130 -0
  996. data/ext/pixo/ext/glm/glm/gtx/compatibility.inl +65 -0
  997. data/ext/pixo/ext/glm/glm/gtx/component_wise.hpp +65 -0
  998. data/ext/pixo/ext/glm/glm/gtx/component_wise.inl +128 -0
  999. data/ext/pixo/ext/glm/glm/gtx/dual_quaternion.hpp +266 -0
  1000. data/ext/pixo/ext/glm/glm/gtx/dual_quaternion.inl +357 -0
  1001. data/ext/pixo/ext/glm/glm/gtx/euler_angles.hpp +143 -0
  1002. data/ext/pixo/ext/glm/glm/gtx/euler_angles.inl +312 -0
  1003. data/ext/pixo/ext/glm/glm/gtx/extend.hpp +38 -0
  1004. data/ext/pixo/ext/glm/glm/gtx/extend.inl +49 -0
  1005. data/ext/pixo/ext/glm/glm/gtx/extended_min_max.hpp +133 -0
  1006. data/ext/pixo/ext/glm/glm/gtx/extended_min_max.inl +140 -0
  1007. data/ext/pixo/ext/glm/glm/gtx/fast_exponential.hpp +91 -0
  1008. data/ext/pixo/ext/glm/glm/gtx/fast_exponential.inl +137 -0
  1009. data/ext/pixo/ext/glm/glm/gtx/fast_square_root.hpp +88 -0
  1010. data/ext/pixo/ext/glm/glm/gtx/fast_square_root.inl +81 -0
  1011. data/ext/pixo/ext/glm/glm/gtx/fast_trigonometry.hpp +75 -0
  1012. data/ext/pixo/ext/glm/glm/gtx/fast_trigonometry.inl +143 -0
  1013. data/ext/pixo/ext/glm/glm/gtx/float_notmalize.inl +14 -0
  1014. data/ext/pixo/ext/glm/glm/gtx/gradient_paint.hpp +48 -0
  1015. data/ext/pixo/ext/glm/glm/gtx/gradient_paint.inl +37 -0
  1016. data/ext/pixo/ext/glm/glm/gtx/handed_coordinate_space.hpp +46 -0
  1017. data/ext/pixo/ext/glm/glm/gtx/handed_coordinate_space.inl +27 -0
  1018. data/ext/pixo/ext/glm/glm/gtx/hash.hpp +134 -0
  1019. data/ext/pixo/ext/glm/glm/gtx/hash.inl +185 -0
  1020. data/ext/pixo/ext/glm/glm/gtx/integer.hpp +72 -0
  1021. data/ext/pixo/ext/glm/glm/gtx/integer.inl +182 -0
  1022. data/ext/pixo/ext/glm/glm/gtx/intersect.hpp +87 -0
  1023. data/ext/pixo/ext/glm/glm/gtx/intersect.inl +170 -0
  1024. data/ext/pixo/ext/glm/glm/gtx/io.hpp +197 -0
  1025. data/ext/pixo/ext/glm/glm/gtx/io.inl +441 -0
  1026. data/ext/pixo/ext/glm/glm/gtx/log_base.hpp +44 -0
  1027. data/ext/pixo/ext/glm/glm/gtx/log_base.inl +18 -0
  1028. data/ext/pixo/ext/glm/glm/gtx/matrix_cross_product.hpp +43 -0
  1029. data/ext/pixo/ext/glm/glm/gtx/matrix_cross_product.inl +38 -0
  1030. data/ext/pixo/ext/glm/glm/gtx/matrix_decompose.hpp +42 -0
  1031. data/ext/pixo/ext/glm/glm/gtx/matrix_decompose.inl +194 -0
  1032. data/ext/pixo/ext/glm/glm/gtx/matrix_interpolation.hpp +61 -0
  1033. data/ext/pixo/ext/glm/glm/gtx/matrix_interpolation.inl +134 -0
  1034. data/ext/pixo/ext/glm/glm/gtx/matrix_major_storage.hpp +115 -0
  1035. data/ext/pixo/ext/glm/glm/gtx/matrix_major_storage.inl +167 -0
  1036. data/ext/pixo/ext/glm/glm/gtx/matrix_operation.hpp +84 -0
  1037. data/ext/pixo/ext/glm/glm/gtx/matrix_operation.inl +118 -0
  1038. data/ext/pixo/ext/glm/glm/gtx/matrix_query.hpp +73 -0
  1039. data/ext/pixo/ext/glm/glm/gtx/matrix_query.inl +114 -0
  1040. data/ext/pixo/ext/glm/glm/gtx/matrix_transform_2d.hpp +78 -0
  1041. data/ext/pixo/ext/glm/glm/gtx/matrix_transform_2d.inl +69 -0
  1042. data/ext/pixo/ext/glm/glm/gtx/mixed_product.hpp +37 -0
  1043. data/ext/pixo/ext/glm/glm/gtx/mixed_product.inl +16 -0
  1044. data/ext/pixo/ext/glm/glm/gtx/norm.hpp +86 -0
  1045. data/ext/pixo/ext/glm/glm/gtx/norm.inl +106 -0
  1046. data/ext/pixo/ext/glm/glm/gtx/normal.hpp +39 -0
  1047. data/ext/pixo/ext/glm/glm/gtx/normal.inl +16 -0
  1048. data/ext/pixo/ext/glm/glm/gtx/normalize_dot.hpp +45 -0
  1049. data/ext/pixo/ext/glm/glm/gtx/normalize_dot.inl +17 -0
  1050. data/ext/pixo/ext/glm/glm/gtx/number_precision.hpp +57 -0
  1051. data/ext/pixo/ext/glm/glm/gtx/number_precision.inl +7 -0
  1052. data/ext/pixo/ext/glm/glm/gtx/optimum_pow.hpp +50 -0
  1053. data/ext/pixo/ext/glm/glm/gtx/optimum_pow.inl +23 -0
  1054. data/ext/pixo/ext/glm/glm/gtx/orthonormalize.hpp +45 -0
  1055. data/ext/pixo/ext/glm/glm/gtx/orthonormalize.inl +30 -0
  1056. data/ext/pixo/ext/glm/glm/gtx/perpendicular.hpp +39 -0
  1057. data/ext/pixo/ext/glm/glm/gtx/perpendicular.inl +15 -0
  1058. data/ext/pixo/ext/glm/glm/gtx/polar_coordinates.hpp +44 -0
  1059. data/ext/pixo/ext/glm/glm/gtx/polar_coordinates.inl +37 -0
  1060. data/ext/pixo/ext/glm/glm/gtx/projection.hpp +36 -0
  1061. data/ext/pixo/ext/glm/glm/gtx/projection.inl +11 -0
  1062. data/ext/pixo/ext/glm/glm/gtx/quaternion.hpp +185 -0
  1063. data/ext/pixo/ext/glm/glm/gtx/quaternion.inl +212 -0
  1064. data/ext/pixo/ext/glm/glm/gtx/range.hpp +85 -0
  1065. data/ext/pixo/ext/glm/glm/gtx/raw_data.hpp +47 -0
  1066. data/ext/pixo/ext/glm/glm/gtx/raw_data.inl +2 -0
  1067. data/ext/pixo/ext/glm/glm/gtx/rotate_normalized_axis.hpp +64 -0
  1068. data/ext/pixo/ext/glm/glm/gtx/rotate_normalized_axis.inl +59 -0
  1069. data/ext/pixo/ext/glm/glm/gtx/rotate_vector.hpp +117 -0
  1070. data/ext/pixo/ext/glm/glm/gtx/rotate_vector.inl +188 -0
  1071. data/ext/pixo/ext/glm/glm/gtx/scalar_multiplication.hpp +69 -0
  1072. data/ext/pixo/ext/glm/glm/gtx/scalar_relational.hpp +32 -0
  1073. data/ext/pixo/ext/glm/glm/gtx/scalar_relational.inl +89 -0
  1074. data/ext/pixo/ext/glm/glm/gtx/spline.hpp +61 -0
  1075. data/ext/pixo/ext/glm/glm/gtx/spline.inl +63 -0
  1076. data/ext/pixo/ext/glm/glm/gtx/std_based_type.hpp +63 -0
  1077. data/ext/pixo/ext/glm/glm/gtx/std_based_type.inl +7 -0
  1078. data/ext/pixo/ext/glm/glm/gtx/string_cast.hpp +47 -0
  1079. data/ext/pixo/ext/glm/glm/gtx/string_cast.inl +458 -0
  1080. data/ext/pixo/ext/glm/glm/gtx/transform.hpp +56 -0
  1081. data/ext/pixo/ext/glm/glm/gtx/transform.inl +24 -0
  1082. data/ext/pixo/ext/glm/glm/gtx/transform2.hpp +107 -0
  1083. data/ext/pixo/ext/glm/glm/gtx/transform2.inl +126 -0
  1084. data/ext/pixo/ext/glm/glm/gtx/type_aligned.hpp +966 -0
  1085. data/ext/pixo/ext/glm/glm/gtx/type_aligned.inl +7 -0
  1086. data/ext/pixo/ext/glm/glm/gtx/type_trait.hpp +252 -0
  1087. data/ext/pixo/ext/glm/glm/gtx/type_trait.inl +0 -0
  1088. data/ext/pixo/ext/glm/glm/gtx/vector_angle.hpp +60 -0
  1089. data/ext/pixo/ext/glm/glm/gtx/vector_angle.inl +58 -0
  1090. data/ext/pixo/ext/glm/glm/gtx/vector_query.hpp +62 -0
  1091. data/ext/pixo/ext/glm/glm/gtx/vector_query.inl +193 -0
  1092. data/ext/pixo/ext/glm/glm/gtx/wrap.hpp +51 -0
  1093. data/ext/pixo/ext/glm/glm/gtx/wrap.inl +58 -0
  1094. data/ext/pixo/ext/glm/glm/integer.hpp +6 -0
  1095. data/ext/pixo/ext/glm/glm/mat2x2.hpp +52 -0
  1096. data/ext/pixo/ext/glm/glm/mat2x3.hpp +32 -0
  1097. data/ext/pixo/ext/glm/glm/mat2x4.hpp +31 -0
  1098. data/ext/pixo/ext/glm/glm/mat3x2.hpp +31 -0
  1099. data/ext/pixo/ext/glm/glm/mat3x3.hpp +52 -0
  1100. data/ext/pixo/ext/glm/glm/mat3x4.hpp +31 -0
  1101. data/ext/pixo/ext/glm/glm/mat4x2.hpp +31 -0
  1102. data/ext/pixo/ext/glm/glm/mat4x3.hpp +31 -0
  1103. data/ext/pixo/ext/glm/glm/mat4x4.hpp +52 -0
  1104. data/ext/pixo/ext/glm/glm/matrix.hpp +6 -0
  1105. data/ext/pixo/ext/glm/glm/packing.hpp +6 -0
  1106. data/ext/pixo/ext/glm/glm/simd/common.h +240 -0
  1107. data/ext/pixo/ext/glm/glm/simd/exponential.h +20 -0
  1108. data/ext/pixo/ext/glm/glm/simd/geometric.h +124 -0
  1109. data/ext/pixo/ext/glm/glm/simd/integer.h +115 -0
  1110. data/ext/pixo/ext/glm/glm/simd/matrix.h +1028 -0
  1111. data/ext/pixo/ext/glm/glm/simd/packing.h +8 -0
  1112. data/ext/pixo/ext/glm/glm/simd/platform.h +437 -0
  1113. data/ext/pixo/ext/glm/glm/simd/trigonometric.h +9 -0
  1114. data/ext/pixo/ext/glm/glm/simd/vector_relational.h +8 -0
  1115. data/ext/pixo/ext/glm/glm/trigonometric.hpp +6 -0
  1116. data/ext/pixo/ext/glm/glm/vec2.hpp +6 -0
  1117. data/ext/pixo/ext/glm/glm/vec3.hpp +6 -0
  1118. data/ext/pixo/ext/glm/glm/vec4.hpp +6 -0
  1119. data/ext/pixo/ext/glm/glm/vector_relational.hpp +6 -0
  1120. data/ext/pixo/ext/glm/readme.md +962 -0
  1121. data/ext/pixo/ext/glm/test/CMakeLists.txt +17 -0
  1122. data/ext/pixo/ext/glm/test/bug/CMakeLists.txt +0 -0
  1123. data/ext/pixo/ext/glm/test/core/CMakeLists.txt +38 -0
  1124. data/ext/pixo/ext/glm/test/core/core_func_common.cpp +1272 -0
  1125. data/ext/pixo/ext/glm/test/core/core_func_exponential.cpp +128 -0
  1126. data/ext/pixo/ext/glm/test/core/core_func_geometric.cpp +193 -0
  1127. data/ext/pixo/ext/glm/test/core/core_func_integer.cpp +1554 -0
  1128. data/ext/pixo/ext/glm/test/core/core_func_integer_bit_count.cpp +291 -0
  1129. data/ext/pixo/ext/glm/test/core/core_func_integer_find_lsb.cpp +400 -0
  1130. data/ext/pixo/ext/glm/test/core/core_func_integer_find_msb.cpp +438 -0
  1131. data/ext/pixo/ext/glm/test/core/core_func_matrix.cpp +277 -0
  1132. data/ext/pixo/ext/glm/test/core/core_func_noise.cpp +7 -0
  1133. data/ext/pixo/ext/glm/test/core/core_func_packing.cpp +156 -0
  1134. data/ext/pixo/ext/glm/test/core/core_func_swizzle.cpp +78 -0
  1135. data/ext/pixo/ext/glm/test/core/core_func_trigonometric.cpp +10 -0
  1136. data/ext/pixo/ext/glm/test/core/core_func_vector_relational.cpp +42 -0
  1137. data/ext/pixo/ext/glm/test/core/core_setup_force_cxx98.cpp +10 -0
  1138. data/ext/pixo/ext/glm/test/core/core_setup_message.cpp +263 -0
  1139. data/ext/pixo/ext/glm/test/core/core_setup_precision.cpp +58 -0
  1140. data/ext/pixo/ext/glm/test/core/core_type_aligned.cpp +128 -0
  1141. data/ext/pixo/ext/glm/test/core/core_type_cast.cpp +144 -0
  1142. data/ext/pixo/ext/glm/test/core/core_type_ctor.cpp +358 -0
  1143. data/ext/pixo/ext/glm/test/core/core_type_float.cpp +31 -0
  1144. data/ext/pixo/ext/glm/test/core/core_type_int.cpp +43 -0
  1145. data/ext/pixo/ext/glm/test/core/core_type_length.cpp +79 -0
  1146. data/ext/pixo/ext/glm/test/core/core_type_mat2x2.cpp +145 -0
  1147. data/ext/pixo/ext/glm/test/core/core_type_mat2x3.cpp +118 -0
  1148. data/ext/pixo/ext/glm/test/core/core_type_mat2x4.cpp +121 -0
  1149. data/ext/pixo/ext/glm/test/core/core_type_mat3x2.cpp +124 -0
  1150. data/ext/pixo/ext/glm/test/core/core_type_mat3x3.cpp +184 -0
  1151. data/ext/pixo/ext/glm/test/core/core_type_mat3x4.cpp +123 -0
  1152. data/ext/pixo/ext/glm/test/core/core_type_mat4x2.cpp +127 -0
  1153. data/ext/pixo/ext/glm/test/core/core_type_mat4x3.cpp +128 -0
  1154. data/ext/pixo/ext/glm/test/core/core_type_mat4x4.cpp +313 -0
  1155. data/ext/pixo/ext/glm/test/core/core_type_vec1.cpp +147 -0
  1156. data/ext/pixo/ext/glm/test/core/core_type_vec2.cpp +312 -0
  1157. data/ext/pixo/ext/glm/test/core/core_type_vec3.cpp +486 -0
  1158. data/ext/pixo/ext/glm/test/core/core_type_vec4.cpp +559 -0
  1159. data/ext/pixo/ext/glm/test/external/gli/CMakeLists.txt +27 -0
  1160. data/ext/pixo/ext/glm/test/external/gli/core/dummy.cpp +4 -0
  1161. data/ext/pixo/ext/glm/test/external/gli/core/generate_mipmaps.hpp +25 -0
  1162. data/ext/pixo/ext/glm/test/external/gli/core/generate_mipmaps.inl +69 -0
  1163. data/ext/pixo/ext/glm/test/external/gli/core/image2d.hpp +169 -0
  1164. data/ext/pixo/ext/glm/test/external/gli/core/image2d.inl +229 -0
  1165. data/ext/pixo/ext/glm/test/external/gli/core/operation.hpp +82 -0
  1166. data/ext/pixo/ext/glm/test/external/gli/core/operation.inl +233 -0
  1167. data/ext/pixo/ext/glm/test/external/gli/core/operator.hpp +28 -0
  1168. data/ext/pixo/ext/glm/test/external/gli/core/operator.inl +210 -0
  1169. data/ext/pixo/ext/glm/test/external/gli/core/shared_array.hpp +48 -0
  1170. data/ext/pixo/ext/glm/test/external/gli/core/shared_array.inl +151 -0
  1171. data/ext/pixo/ext/glm/test/external/gli/core/shared_ptr.hpp +41 -0
  1172. data/ext/pixo/ext/glm/test/external/gli/core/shared_ptr.inl +125 -0
  1173. data/ext/pixo/ext/glm/test/external/gli/core/size.hpp +31 -0
  1174. data/ext/pixo/ext/glm/test/external/gli/core/size.inl +47 -0
  1175. data/ext/pixo/ext/glm/test/external/gli/core/texture2d.hpp +122 -0
  1176. data/ext/pixo/ext/glm/test/external/gli/core/texture2d.inl +304 -0
  1177. data/ext/pixo/ext/glm/test/external/gli/core/texture2d_array.hpp +59 -0
  1178. data/ext/pixo/ext/glm/test/external/gli/core/texture2d_array.inl +78 -0
  1179. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube.hpp +65 -0
  1180. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube.inl +70 -0
  1181. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube_array.hpp +59 -0
  1182. data/ext/pixo/ext/glm/test/external/gli/core/texture_cube_array.inl +72 -0
  1183. data/ext/pixo/ext/glm/test/external/gli/gli.hpp +31 -0
  1184. data/ext/pixo/ext/glm/test/external/gli/gtx/compression.hpp +27 -0
  1185. data/ext/pixo/ext/glm/test/external/gli/gtx/compression.inl +8 -0
  1186. data/ext/pixo/ext/glm/test/external/gli/gtx/fetch.hpp +46 -0
  1187. data/ext/pixo/ext/glm/test/external/gli/gtx/fetch.inl +91 -0
  1188. data/ext/pixo/ext/glm/test/external/gli/gtx/gl_texture2d.hpp +33 -0
  1189. data/ext/pixo/ext/glm/test/external/gli/gtx/gl_texture2d.inl +210 -0
  1190. data/ext/pixo/ext/glm/test/external/gli/gtx/gradient.hpp +38 -0
  1191. data/ext/pixo/ext/glm/test/external/gli/gtx/gradient.inl +74 -0
  1192. data/ext/pixo/ext/glm/test/external/gli/gtx/loader.hpp +37 -0
  1193. data/ext/pixo/ext/glm/test/external/gli/gtx/loader.inl +46 -0
  1194. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds10.hpp +35 -0
  1195. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds10.inl +595 -0
  1196. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds9.hpp +39 -0
  1197. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_dds9.inl +790 -0
  1198. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_tga.hpp +36 -0
  1199. data/ext/pixo/ext/glm/test/external/gli/gtx/loader_tga.inl +159 -0
  1200. data/ext/pixo/ext/glm/test/external/gli/gtx/wavelet.hpp +27 -0
  1201. data/ext/pixo/ext/glm/test/external/gli/gtx/wavelet.inl +8 -0
  1202. data/ext/pixo/ext/glm/test/glm.cppcheck +6 -0
  1203. data/ext/pixo/ext/glm/test/gtc/CMakeLists.txt +22 -0
  1204. data/ext/pixo/ext/glm/test/gtc/gtc_bitfield.cpp +642 -0
  1205. data/ext/pixo/ext/glm/test/gtc/gtc_color_encoding.cpp +51 -0
  1206. data/ext/pixo/ext/glm/test/gtc/gtc_color_space.cpp +50 -0
  1207. data/ext/pixo/ext/glm/test/gtc/gtc_constants.cpp +28 -0
  1208. data/ext/pixo/ext/glm/test/gtc/gtc_epsilon.cpp +77 -0
  1209. data/ext/pixo/ext/glm/test/gtc/gtc_functions.cpp +35 -0
  1210. data/ext/pixo/ext/glm/test/gtc/gtc_integer.cpp +232 -0
  1211. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_access.cpp +381 -0
  1212. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_integer.cpp +8 -0
  1213. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_inverse.cpp +51 -0
  1214. data/ext/pixo/ext/glm/test/gtc/gtc_matrix_transform.cpp +54 -0
  1215. data/ext/pixo/ext/glm/test/gtc/gtc_noise.cpp +188 -0
  1216. data/ext/pixo/ext/glm/test/gtc/gtc_packing.cpp +682 -0
  1217. data/ext/pixo/ext/glm/test/gtc/gtc_quaternion.cpp +312 -0
  1218. data/ext/pixo/ext/glm/test/gtc/gtc_random.cpp +377 -0
  1219. data/ext/pixo/ext/glm/test/gtc/gtc_reciprocal.cpp +8 -0
  1220. data/ext/pixo/ext/glm/test/gtc/gtc_round.cpp +458 -0
  1221. data/ext/pixo/ext/glm/test/gtc/gtc_type_aligned.cpp +118 -0
  1222. data/ext/pixo/ext/glm/test/gtc/gtc_type_precision.cpp +890 -0
  1223. data/ext/pixo/ext/glm/test/gtc/gtc_type_ptr.cpp +252 -0
  1224. data/ext/pixo/ext/glm/test/gtc/gtc_ulp.cpp +96 -0
  1225. data/ext/pixo/ext/glm/test/gtc/gtc_user_defined_types.cpp +30 -0
  1226. data/ext/pixo/ext/glm/test/gtc/gtc_vec1.cpp +8 -0
  1227. data/ext/pixo/ext/glm/test/gtx/CMakeLists.txt +49 -0
  1228. data/ext/pixo/ext/glm/test/gtx/gtx_associated_min_max.cpp +9 -0
  1229. data/ext/pixo/ext/glm/test/gtx/gtx_closest_point.cpp +8 -0
  1230. data/ext/pixo/ext/glm/test/gtx/gtx_color_space.cpp +19 -0
  1231. data/ext/pixo/ext/glm/test/gtx/gtx_color_space_YCoCg.cpp +8 -0
  1232. data/ext/pixo/ext/glm/test/gtx/gtx_common.cpp +127 -0
  1233. data/ext/pixo/ext/glm/test/gtx/gtx_compatibility.cpp +18 -0
  1234. data/ext/pixo/ext/glm/test/gtx/gtx_component_wise.cpp +115 -0
  1235. data/ext/pixo/ext/glm/test/gtx/gtx_dual_quaternion.cpp +188 -0
  1236. data/ext/pixo/ext/glm/test/gtx/gtx_euler_angle.cpp +328 -0
  1237. data/ext/pixo/ext/glm/test/gtx/gtx_extend.cpp +8 -0
  1238. data/ext/pixo/ext/glm/test/gtx/gtx_extended_min_max.cpp +8 -0
  1239. data/ext/pixo/ext/glm/test/gtx/gtx_extented_min_max.cpp +39 -0
  1240. data/ext/pixo/ext/glm/test/gtx/gtx_fast_exponential.cpp +8 -0
  1241. data/ext/pixo/ext/glm/test/gtx/gtx_fast_square_root.cpp +45 -0
  1242. data/ext/pixo/ext/glm/test/gtx/gtx_fast_trigonometry.cpp +445 -0
  1243. data/ext/pixo/ext/glm/test/gtx/gtx_gradient_paint.cpp +33 -0
  1244. data/ext/pixo/ext/glm/test/gtx/gtx_handed_coordinate_space.cpp +8 -0
  1245. data/ext/pixo/ext/glm/test/gtx/gtx_int_10_10_10_2.cpp +18 -0
  1246. data/ext/pixo/ext/glm/test/gtx/gtx_integer.cpp +64 -0
  1247. data/ext/pixo/ext/glm/test/gtx/gtx_intersect.cpp +8 -0
  1248. data/ext/pixo/ext/glm/test/gtx/gtx_io.cpp +175 -0
  1249. data/ext/pixo/ext/glm/test/gtx/gtx_log_base.cpp +53 -0
  1250. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_cross_product.cpp +8 -0
  1251. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_decompose.cpp +18 -0
  1252. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_interpolation.cpp +10 -0
  1253. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_major_storage.cpp +8 -0
  1254. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_operation.cpp +8 -0
  1255. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_query.cpp +65 -0
  1256. data/ext/pixo/ext/glm/test/gtx/gtx_matrix_transform_2d.cpp +8 -0
  1257. data/ext/pixo/ext/glm/test/gtx/gtx_mixed_product.cpp +18 -0
  1258. data/ext/pixo/ext/glm/test/gtx/gtx_norm.cpp +8 -0
  1259. data/ext/pixo/ext/glm/test/gtx/gtx_normal.cpp +8 -0
  1260. data/ext/pixo/ext/glm/test/gtx/gtx_normalize_dot.cpp +8 -0
  1261. data/ext/pixo/ext/glm/test/gtx/gtx_number_precision.cpp +8 -0
  1262. data/ext/pixo/ext/glm/test/gtx/gtx_optimum_pow.cpp +8 -0
  1263. data/ext/pixo/ext/glm/test/gtx/gtx_orthonormalize.cpp +8 -0
  1264. data/ext/pixo/ext/glm/test/gtx/gtx_perpendicular.cpp +8 -0
  1265. data/ext/pixo/ext/glm/test/gtx/gtx_polar_coordinates.cpp +8 -0
  1266. data/ext/pixo/ext/glm/test/gtx/gtx_projection.cpp +8 -0
  1267. data/ext/pixo/ext/glm/test/gtx/gtx_quaternion.cpp +102 -0
  1268. data/ext/pixo/ext/glm/test/gtx/gtx_random.cpp +99 -0
  1269. data/ext/pixo/ext/glm/test/gtx/gtx_range.cpp +52 -0
  1270. data/ext/pixo/ext/glm/test/gtx/gtx_rotate_normalized_axis.cpp +8 -0
  1271. data/ext/pixo/ext/glm/test/gtx/gtx_rotate_vector.cpp +75 -0
  1272. data/ext/pixo/ext/glm/test/gtx/gtx_scalar_multiplication.cpp +34 -0
  1273. data/ext/pixo/ext/glm/test/gtx/gtx_scalar_relational.cpp +170 -0
  1274. data/ext/pixo/ext/glm/test/gtx/gtx_simd_mat4.cpp +324 -0
  1275. data/ext/pixo/ext/glm/test/gtx/gtx_simd_vec4.cpp +71 -0
  1276. data/ext/pixo/ext/glm/test/gtx/gtx_spline.cpp +99 -0
  1277. data/ext/pixo/ext/glm/test/gtx/gtx_string_cast.cpp +128 -0
  1278. data/ext/pixo/ext/glm/test/gtx/gtx_type_aligned.cpp +113 -0
  1279. data/ext/pixo/ext/glm/test/gtx/gtx_type_trait.cpp +12 -0
  1280. data/ext/pixo/ext/glm/test/gtx/gtx_vector_angle.cpp +58 -0
  1281. data/ext/pixo/ext/glm/test/gtx/gtx_vector_query.cpp +81 -0
  1282. data/ext/pixo/ext/glm/test/gtx/gtx_wrap.cpp +189 -0
  1283. data/ext/pixo/ext/glm/util/autoexp.txt +28 -0
  1284. data/ext/pixo/ext/glm/util/autoexp.vc2010.dat +3896 -0
  1285. data/ext/pixo/ext/glm/util/glm.natvis +69 -0
  1286. data/ext/pixo/ext/glm/util/usertype.dat +407 -0
  1287. data/ext/pixo/ext/tinyobjloader/CMakeLists.txt +146 -0
  1288. data/ext/pixo/ext/tinyobjloader/LICENSE +21 -0
  1289. data/ext/pixo/ext/tinyobjloader/README.md +254 -0
  1290. data/ext/pixo/ext/tinyobjloader/appveyor.yml +22 -0
  1291. data/ext/pixo/ext/tinyobjloader/build.ninja +53 -0
  1292. data/ext/pixo/ext/tinyobjloader/deps/cpplint.py +6323 -0
  1293. data/ext/pixo/ext/tinyobjloader/examples/callback_api/Makefile +2 -0
  1294. data/ext/pixo/ext/tinyobjloader/examples/callback_api/main.cc +166 -0
  1295. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_sticher.cc +110 -0
  1296. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_writer.cc +176 -0
  1297. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/obj_writer.h +9 -0
  1298. data/ext/pixo/ext/tinyobjloader/examples/obj_sticher/premake4.lua +38 -0
  1299. data/ext/pixo/ext/tinyobjloader/examples/viewer/README.md +37 -0
  1300. data/ext/pixo/ext/tinyobjloader/examples/viewer/premake4.lua +44 -0
  1301. data/ext/pixo/ext/tinyobjloader/examples/viewer/stb_image.h +6755 -0
  1302. data/ext/pixo/ext/tinyobjloader/examples/viewer/trackball.cc +292 -0
  1303. data/ext/pixo/ext/tinyobjloader/examples/viewer/trackball.h +75 -0
  1304. data/ext/pixo/ext/tinyobjloader/examples/viewer/viewer.cc +698 -0
  1305. data/ext/pixo/ext/tinyobjloader/examples/voxelize/Makefile +2 -0
  1306. data/ext/pixo/ext/tinyobjloader/examples/voxelize/README.md +5 -0
  1307. data/ext/pixo/ext/tinyobjloader/examples/voxelize/main.cc +74 -0
  1308. data/ext/pixo/ext/tinyobjloader/examples/voxelize/voxelizer.h +764 -0
  1309. data/ext/pixo/ext/tinyobjloader/experimental/LICENSE.ltalloc +26 -0
  1310. data/ext/pixo/ext/tinyobjloader/experimental/README.md +5 -0
  1311. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.cc +973 -0
  1312. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.h +14 -0
  1313. data/ext/pixo/ext/tinyobjloader/experimental/ltalloc.hpp +59 -0
  1314. data/ext/pixo/ext/tinyobjloader/experimental/premake5.lua +95 -0
  1315. data/ext/pixo/ext/tinyobjloader/experimental/tinyobj_loader_opt.h +1678 -0
  1316. data/ext/pixo/ext/tinyobjloader/experimental/trackball.cc +292 -0
  1317. data/ext/pixo/ext/tinyobjloader/experimental/trackball.h +75 -0
  1318. data/ext/pixo/ext/tinyobjloader/experimental/viewer.cc +748 -0
  1319. data/ext/pixo/ext/tinyobjloader/images/rungholt.jpg +0 -0
  1320. data/ext/pixo/ext/tinyobjloader/images/sanmugel.png +0 -0
  1321. data/ext/pixo/ext/tinyobjloader/jni/Android.mk +12 -0
  1322. data/ext/pixo/ext/tinyobjloader/jni/Application.mk +2 -0
  1323. data/ext/pixo/ext/tinyobjloader/jni/Makefile +2 -0
  1324. data/ext/pixo/ext/tinyobjloader/jni/README +1 -0
  1325. data/ext/pixo/ext/tinyobjloader/loader_example.cc +419 -0
  1326. data/ext/pixo/ext/tinyobjloader/models/catmark_torus_creases0.obj +101 -0
  1327. data/ext/pixo/ext/tinyobjloader/models/cornell_box.mtl +24 -0
  1328. data/ext/pixo/ext/tinyobjloader/models/cornell_box.obj +145 -0
  1329. data/ext/pixo/ext/tinyobjloader/models/cornell_box_multimaterial.obj +146 -0
  1330. data/ext/pixo/ext/tinyobjloader/models/cube.mtl +24 -0
  1331. data/ext/pixo/ext/tinyobjloader/models/cube.obj +31 -0
  1332. data/ext/pixo/ext/tinyobjloader/models/issue-92.mtl +6 -0
  1333. data/ext/pixo/ext/tinyobjloader/models/issue-92.obj +7 -0
  1334. data/ext/pixo/ext/tinyobjloader/models/issue-95-2.mtl +5 -0
  1335. data/ext/pixo/ext/tinyobjloader/models/issue-95-2.obj +7 -0
  1336. data/ext/pixo/ext/tinyobjloader/models/issue-95.mtl +5 -0
  1337. data/ext/pixo/ext/tinyobjloader/models/issue-95.obj +7 -0
  1338. data/ext/pixo/ext/tinyobjloader/models/missing_material_file.obj +145 -0
  1339. data/ext/pixo/ext/tinyobjloader/models/mtllib-multiple-files-issue-112.mtl +6 -0
  1340. data/ext/pixo/ext/tinyobjloader/models/mtllib-multiple-files-issue-112.obj +7 -0
  1341. data/ext/pixo/ext/tinyobjloader/models/no_material.obj +133 -0
  1342. data/ext/pixo/ext/tinyobjloader/models/pbr-mat-ext.mtl +19 -0
  1343. data/ext/pixo/ext/tinyobjloader/models/pbr-mat-ext.obj +10 -0
  1344. data/ext/pixo/ext/tinyobjloader/models/test-nan.obj +145 -0
  1345. data/ext/pixo/ext/tinyobjloader/models/texture-options-issue-85.mtl +36 -0
  1346. data/ext/pixo/ext/tinyobjloader/models/texture-options-issue-85.obj +7 -0
  1347. data/ext/pixo/ext/tinyobjloader/models/tr-and-d-issue-43.mtl +13 -0
  1348. data/ext/pixo/ext/tinyobjloader/models/tr-and-d-issue-43.obj +817 -0
  1349. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-104.obj +30 -0
  1350. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-68.mtl +9 -0
  1351. data/ext/pixo/ext/tinyobjloader/models/usemtl-issue-68.obj +817 -0
  1352. data/ext/pixo/ext/tinyobjloader/premake4.lua +29 -0
  1353. data/ext/pixo/ext/tinyobjloader/python/TODO.md +2 -0
  1354. data/ext/pixo/ext/tinyobjloader/python/cornell_box_multimaterial_output.json +581 -0
  1355. data/ext/pixo/ext/tinyobjloader/python/howto.py +9 -0
  1356. data/ext/pixo/ext/tinyobjloader/python/main.cpp +203 -0
  1357. data/ext/pixo/ext/tinyobjloader/python/setup.py +13 -0
  1358. data/ext/pixo/ext/tinyobjloader/tests/Makefile +16 -0
  1359. data/ext/pixo/ext/tinyobjloader/tests/README.md +37 -0
  1360. data/ext/pixo/ext/tinyobjloader/tests/catch.hpp +10445 -0
  1361. data/ext/pixo/ext/tinyobjloader/tests/config-msvc.py +52 -0
  1362. data/ext/pixo/ext/tinyobjloader/tests/config-posix.py +53 -0
  1363. data/ext/pixo/ext/tinyobjloader/tests/kuroga.py +312 -0
  1364. data/ext/pixo/ext/tinyobjloader/tests/tester.cc +588 -0
  1365. data/ext/pixo/ext/tinyobjloader/tests/vcbuild.bat +4 -0
  1366. data/ext/pixo/ext/tinyobjloader/tiny_obj_loader.cc +2 -0
  1367. data/ext/pixo/ext/tinyobjloader/tiny_obj_loader.h +2029 -0
  1368. data/ext/pixo/ext/tinyobjloader/tinyobjloader-config.cmake.in +9 -0
  1369. data/ext/pixo/ext/tinyobjloader/tinyobjloader.pc.in +15 -0
  1370. data/ext/pixo/ext/tinyobjloader/tools/travis_postbuild.sh +12 -0
  1371. data/ext/pixo/ext/tinyobjloader/tools/windows/premake5.exe +0 -0
  1372. data/ext/pixo/ext/tinyobjloader/vcsetup.bat +1 -0
  1373. data/ext/pixo/ext/tinyobjloader/wercker.yml +10 -0
  1374. data/ext/pixo/fadecandy_configs/4x4x4.json +21 -0
  1375. data/ext/pixo/fadecandy_configs/8x8x8.json +18 -0
  1376. data/ext/pixo/patterns/basic.glsl +20 -0
  1377. data/ext/pixo/patterns/bendy_pipes.glsl +116 -0
  1378. data/ext/pixo/patterns/blades.glsl +69 -0
  1379. data/ext/pixo/patterns/blob_neon.glsl +71 -0
  1380. data/ext/pixo/patterns/bubbles.glsl +58 -0
  1381. data/ext/pixo/patterns/chevron.glsl +45 -0
  1382. data/ext/pixo/patterns/clouds.glsl +382 -0
  1383. data/ext/pixo/patterns/cnoise.glsl +162 -0
  1384. data/ext/pixo/patterns/corrente_continua.glsl +51 -0
  1385. data/ext/pixo/patterns/drain.glsl +32 -0
  1386. data/ext/pixo/patterns/dual_spiral.glsl +21 -0
  1387. data/ext/pixo/patterns/ether.glsl +35 -0
  1388. data/ext/pixo/patterns/fire.glsl +56 -0
  1389. data/ext/pixo/patterns/fireball.glsl +229 -0
  1390. data/ext/pixo/patterns/flame.glsl +101 -0
  1391. data/ext/pixo/patterns/flower.glsl +27 -0
  1392. data/ext/pixo/patterns/galaxy.glsl +50 -0
  1393. data/ext/pixo/patterns/goop.glsl +117 -0
  1394. data/ext/pixo/patterns/hypno_rings.glsl +13 -0
  1395. data/ext/pixo/patterns/lightning.glsl +111 -0
  1396. data/ext/pixo/patterns/paint.glsl +39 -0
  1397. data/ext/pixo/patterns/plad.glsl +22 -0
  1398. data/ext/pixo/patterns/plasam.glsl +30 -0
  1399. data/ext/pixo/patterns/plasma_globe.glsl +215 -0
  1400. data/ext/pixo/patterns/pulse.glsl +44 -0
  1401. data/ext/pixo/patterns/pulsing_circles.glsl +32 -0
  1402. data/ext/pixo/patterns/rainbow_ribbon.glsl +41 -0
  1403. data/ext/pixo/patterns/rings.glsl +62 -0
  1404. data/ext/pixo/patterns/sauron.glsl +220 -0
  1405. data/ext/pixo/patterns/scales.glsl +64 -0
  1406. data/ext/pixo/patterns/soccer.glsl +737 -0
  1407. data/ext/pixo/patterns/spherical_polyhedra.glsl +251 -0
  1408. data/ext/pixo/patterns/spiral.glsl +23 -0
  1409. data/ext/pixo/patterns/star.glsl +518 -0
  1410. data/ext/pixo/patterns/tiedy.glsl +39 -0
  1411. data/ext/pixo/patterns/tunnel.glsl +145 -0
  1412. data/ext/pixo/patterns/warping_grid.glsl +50 -0
  1413. data/ext/pixo/pixlib/CMakeLists.txt +34 -0
  1414. data/ext/pixo/pixlib/include/opc_client.h +205 -0
  1415. data/ext/pixo/pixlib/include/pixlib/app.hpp +41 -0
  1416. data/ext/pixo/pixlib/include/pixlib/camera.hpp +78 -0
  1417. data/ext/pixo/pixlib/include/pixlib/cube.hpp +46 -0
  1418. data/ext/pixo/pixlib/include/pixlib/drawable.hpp +11 -0
  1419. data/ext/pixo/pixlib/include/pixlib/fade_candy.hpp +38 -0
  1420. data/ext/pixo/pixlib/include/pixlib/led_cluster.hpp +58 -0
  1421. data/ext/pixo/pixlib/include/pixlib/led_mesh.hpp +60 -0
  1422. data/ext/pixo/pixlib/include/pixlib/led_renderer.hpp +36 -0
  1423. data/ext/pixo/pixlib/include/pixlib/mesh.hpp +56 -0
  1424. data/ext/pixo/pixlib/include/pixlib/pattern.hpp +21 -0
  1425. data/ext/pixo/pixlib/include/pixlib/pattern_renderer.hpp +28 -0
  1426. data/ext/pixo/pixlib/include/pixlib/renderer.hpp +32 -0
  1427. data/ext/pixo/pixlib/include/pixlib/scene.hpp +39 -0
  1428. data/ext/pixo/pixlib/include/pixlib/shader.hpp +19 -0
  1429. data/ext/pixo/pixlib/include/pixlib/texture.hpp +34 -0
  1430. data/ext/pixo/pixlib/include/pixlib/timer.hpp +19 -0
  1431. data/ext/pixo/pixlib/include/pixlib.hpp +6 -0
  1432. data/ext/pixo/pixlib/src/app.cpp +59 -0
  1433. data/ext/pixo/pixlib/src/camera.cpp +106 -0
  1434. data/ext/pixo/pixlib/src/cube.cpp +100 -0
  1435. data/ext/pixo/pixlib/src/fade_candy.cpp +70 -0
  1436. data/ext/pixo/pixlib/src/led_cluster.cpp +78 -0
  1437. data/ext/pixo/pixlib/src/led_mesh.cpp +123 -0
  1438. data/ext/pixo/pixlib/src/led_renderer.cpp +135 -0
  1439. data/ext/pixo/pixlib/src/mesh.cpp +146 -0
  1440. data/ext/pixo/pixlib/src/pattern.cpp +32 -0
  1441. data/ext/pixo/pixlib/src/pattern_renderer.cpp +103 -0
  1442. data/ext/pixo/pixlib/src/renderer.cpp +127 -0
  1443. data/ext/pixo/pixlib/src/scene.cpp +52 -0
  1444. data/ext/pixo/pixlib/src/shader.cpp +59 -0
  1445. data/ext/pixo/pixlib/src/texture.cpp +62 -0
  1446. data/ext/pixo/pixlib/src/timer.cpp +39 -0
  1447. data/ext/pixo/src/CMakeLists.txt +14 -0
  1448. data/ext/pixo/src/main.cpp +244 -0
  1449. data/ext/pixo/src/opengl.h +4 -0
  1450. data/lib/pixo/version.rb +3 -0
  1451. data/lib/pixo.rb +7 -0
  1452. data/pixo.gemspec +34 -0
  1453. data/pkg/pixo-0.1.0.gem +0 -0
  1454. metadata +1539 -0
@@ -0,0 +1,1055 @@
1
+ //========================================================================
2
+ // GLFW 3.2 - www.glfw.org
3
+ //------------------------------------------------------------------------
4
+ // Copyright (c) 2002-2006 Marcus Geelnard
5
+ // Copyright (c) 2006-2016 Camilla Berglund <elmindreda@glfw.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
+ #if defined(GLFW_INCLUDE_GLCOREARB) || \
37
+ defined(GLFW_INCLUDE_ES1) || \
38
+ defined(GLFW_INCLUDE_ES2) || \
39
+ defined(GLFW_INCLUDE_ES3) || \
40
+ defined(GLFW_INCLUDE_NONE) || \
41
+ defined(GLFW_INCLUDE_GLEXT) || \
42
+ defined(GLFW_INCLUDE_GLU) || \
43
+ defined(GLFW_INCLUDE_VULKAN) || \
44
+ defined(GLFW_DLL)
45
+ #error "You must not define any header option macros when compiling GLFW"
46
+ #endif
47
+
48
+ #define GLFW_INCLUDE_NONE
49
+ #include "../include/GLFW/glfw3.h"
50
+
51
+ typedef int GLFWbool;
52
+
53
+ typedef struct _GLFWwndconfig _GLFWwndconfig;
54
+ typedef struct _GLFWctxconfig _GLFWctxconfig;
55
+ typedef struct _GLFWfbconfig _GLFWfbconfig;
56
+ typedef struct _GLFWcontext _GLFWcontext;
57
+ typedef struct _GLFWwindow _GLFWwindow;
58
+ typedef struct _GLFWlibrary _GLFWlibrary;
59
+ typedef struct _GLFWmonitor _GLFWmonitor;
60
+ typedef struct _GLFWcursor _GLFWcursor;
61
+
62
+ typedef void (* _GLFWmakecontextcurrentfun)(_GLFWwindow*);
63
+ typedef void (* _GLFWswapbuffersfun)(_GLFWwindow*);
64
+ typedef void (* _GLFWswapintervalfun)(int);
65
+ typedef int (* _GLFWextensionsupportedfun)(const char*);
66
+ typedef GLFWglproc (* _GLFWgetprocaddressfun)(const char*);
67
+ typedef void (* _GLFWdestroycontextfun)(_GLFWwindow*);
68
+
69
+ #define GL_VERSION 0x1f02
70
+ #define GL_NONE 0
71
+ #define GL_COLOR_BUFFER_BIT 0x00004000
72
+ #define GL_EXTENSIONS 0x1f03
73
+ #define GL_NUM_EXTENSIONS 0x821d
74
+ #define GL_CONTEXT_FLAGS 0x821e
75
+ #define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x00000001
76
+ #define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
77
+ #define GL_CONTEXT_PROFILE_MASK 0x9126
78
+ #define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002
79
+ #define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001
80
+ #define GL_RESET_NOTIFICATION_STRATEGY_ARB 0x8256
81
+ #define GL_LOSE_CONTEXT_ON_RESET_ARB 0x8252
82
+ #define GL_NO_RESET_NOTIFICATION_ARB 0x8261
83
+ #define GL_CONTEXT_RELEASE_BEHAVIOR 0x82fb
84
+ #define GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH 0x82fc
85
+ #define GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR 0x00000008
86
+
87
+ typedef int GLint;
88
+ typedef unsigned int GLuint;
89
+ typedef unsigned int GLenum;
90
+ typedef unsigned int GLbitfield;
91
+ typedef unsigned char GLubyte;
92
+
93
+ typedef void (APIENTRY * PFNGLCLEARPROC)(GLbitfield);
94
+ typedef const GLubyte* (APIENTRY * PFNGLGETSTRINGPROC)(GLenum);
95
+ typedef void (APIENTRY * PFNGLGETINTEGERVPROC)(GLenum,GLint*);
96
+ typedef const GLubyte* (APIENTRY * PFNGLGETSTRINGIPROC)(GLenum,GLuint);
97
+
98
+ #define VK_NULL_HANDLE 0
99
+
100
+ typedef void* VkInstance;
101
+ typedef void* VkPhysicalDevice;
102
+ typedef uint64_t VkSurfaceKHR;
103
+ typedef uint32_t VkFlags;
104
+ typedef uint32_t VkBool32;
105
+
106
+ typedef enum VkStructureType
107
+ {
108
+ VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000,
109
+ VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR = 1000005000,
110
+ VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR = 1000006000,
111
+ VK_STRUCTURE_TYPE_MIR_SURFACE_CREATE_INFO_KHR = 1000007000,
112
+ VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000,
113
+ VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
114
+ } VkStructureType;
115
+
116
+ typedef enum VkResult
117
+ {
118
+ VK_SUCCESS = 0,
119
+ VK_NOT_READY = 1,
120
+ VK_TIMEOUT = 2,
121
+ VK_EVENT_SET = 3,
122
+ VK_EVENT_RESET = 4,
123
+ VK_INCOMPLETE = 5,
124
+ VK_ERROR_OUT_OF_HOST_MEMORY = -1,
125
+ VK_ERROR_OUT_OF_DEVICE_MEMORY = -2,
126
+ VK_ERROR_INITIALIZATION_FAILED = -3,
127
+ VK_ERROR_DEVICE_LOST = -4,
128
+ VK_ERROR_MEMORY_MAP_FAILED = -5,
129
+ VK_ERROR_LAYER_NOT_PRESENT = -6,
130
+ VK_ERROR_EXTENSION_NOT_PRESENT = -7,
131
+ VK_ERROR_FEATURE_NOT_PRESENT = -8,
132
+ VK_ERROR_INCOMPATIBLE_DRIVER = -9,
133
+ VK_ERROR_TOO_MANY_OBJECTS = -10,
134
+ VK_ERROR_FORMAT_NOT_SUPPORTED = -11,
135
+ VK_ERROR_SURFACE_LOST_KHR = -1000000000,
136
+ VK_SUBOPTIMAL_KHR = 1000001003,
137
+ VK_ERROR_OUT_OF_DATE_KHR = -1000001004,
138
+ VK_ERROR_INCOMPATIBLE_DISPLAY_KHR = -1000003001,
139
+ VK_ERROR_NATIVE_WINDOW_IN_USE_KHR = -1000000001,
140
+ VK_ERROR_VALIDATION_FAILED_EXT = -1000011001,
141
+ VK_RESULT_MAX_ENUM = 0x7FFFFFFF
142
+ } VkResult;
143
+
144
+ typedef struct VkAllocationCallbacks VkAllocationCallbacks;
145
+
146
+ typedef struct VkExtensionProperties
147
+ {
148
+ char extensionName[256];
149
+ uint32_t specVersion;
150
+ } VkExtensionProperties;
151
+
152
+ typedef void (APIENTRY * PFN_vkVoidFunction)(void);
153
+
154
+ #if defined(_GLFW_VULKAN_STATIC)
155
+ PFN_vkVoidFunction vkGetInstanceProcAddr(VkInstance,const char*);
156
+ VkResult vkEnumerateInstanceExtensionProperties(const char*,uint32_t*,VkExtensionProperties*);
157
+ #else
158
+ typedef PFN_vkVoidFunction (APIENTRY * PFN_vkGetInstanceProcAddr)(VkInstance,const char*);
159
+ typedef VkResult (APIENTRY * PFN_vkEnumerateInstanceExtensionProperties)(const char*,uint32_t*,VkExtensionProperties*);
160
+ #define vkEnumerateInstanceExtensionProperties _glfw.vk.EnumerateInstanceExtensionProperties
161
+ #define vkGetInstanceProcAddr _glfw.vk.GetInstanceProcAddr
162
+ #endif
163
+
164
+ #if defined(_GLFW_COCOA)
165
+ #include "cocoa_platform.h"
166
+ #elif defined(_GLFW_WIN32)
167
+ #include "win32_platform.h"
168
+ #elif defined(_GLFW_X11)
169
+ #include "x11_platform.h"
170
+ #elif defined(_GLFW_WAYLAND)
171
+ #include "wl_platform.h"
172
+ #elif defined(_GLFW_MIR)
173
+ #include "mir_platform.h"
174
+ #else
175
+ #error "No supported window creation API selected"
176
+ #endif
177
+
178
+
179
+ //========================================================================
180
+ // Doxygen group definitions
181
+ //========================================================================
182
+
183
+ /*! @defgroup platform Platform interface
184
+ * @brief The interface implemented by the platform-specific code.
185
+ *
186
+ * The platform API is the interface exposed by the platform-specific code for
187
+ * each platform and is called by the shared code of the public API It mirrors
188
+ * the public API except it uses objects instead of handles.
189
+ */
190
+ /*! @defgroup event Event interface
191
+ * @brief The interface used by the platform-specific code to report events.
192
+ *
193
+ * The event API is used by the platform-specific code to notify the shared
194
+ * code of events that can be translated into state changes and/or callback
195
+ * calls.
196
+ */
197
+ /*! @defgroup utility Utility functions
198
+ * @brief Various utility functions for internal use.
199
+ *
200
+ * These functions are shared code and may be used by any part of GLFW
201
+ * Each platform may add its own utility functions, but those must only be
202
+ * called by the platform-specific code
203
+ */
204
+
205
+
206
+ //========================================================================
207
+ // Helper macros
208
+ //========================================================================
209
+
210
+ // Constructs a version number string from the public header macros
211
+ #define _GLFW_CONCAT_VERSION(m, n, r) #m "." #n "." #r
212
+ #define _GLFW_MAKE_VERSION(m, n, r) _GLFW_CONCAT_VERSION(m, n, r)
213
+ #define _GLFW_VERSION_NUMBER _GLFW_MAKE_VERSION(GLFW_VERSION_MAJOR, \
214
+ GLFW_VERSION_MINOR, \
215
+ GLFW_VERSION_REVISION)
216
+
217
+ // Checks for whether the library has been initialized
218
+ #define _GLFW_REQUIRE_INIT() \
219
+ if (!_glfwInitialized) \
220
+ { \
221
+ _glfwInputError(GLFW_NOT_INITIALIZED, NULL); \
222
+ return; \
223
+ }
224
+ #define _GLFW_REQUIRE_INIT_OR_RETURN(x) \
225
+ if (!_glfwInitialized) \
226
+ { \
227
+ _glfwInputError(GLFW_NOT_INITIALIZED, NULL); \
228
+ return x; \
229
+ }
230
+
231
+ // Swaps the provided pointers
232
+ #define _GLFW_SWAP_POINTERS(x, y) \
233
+ { \
234
+ void* t; \
235
+ t = x; \
236
+ x = y; \
237
+ y = t; \
238
+ }
239
+
240
+
241
+ //========================================================================
242
+ // Platform-independent structures
243
+ //========================================================================
244
+
245
+ /*! @brief Window configuration.
246
+ *
247
+ * Parameters relating to the creation of the window but not directly related
248
+ * to the framebuffer. This is used to pass window creation parameters from
249
+ * shared code to the platform API.
250
+ */
251
+ struct _GLFWwndconfig
252
+ {
253
+ int width;
254
+ int height;
255
+ const char* title;
256
+ GLFWbool resizable;
257
+ GLFWbool visible;
258
+ GLFWbool decorated;
259
+ GLFWbool focused;
260
+ GLFWbool autoIconify;
261
+ GLFWbool floating;
262
+ GLFWbool maximized;
263
+ };
264
+
265
+ /*! @brief Context configuration.
266
+ *
267
+ * Parameters relating to the creation of the context but not directly related
268
+ * to the framebuffer. This is used to pass context creation parameters from
269
+ * shared code to the platform API.
270
+ */
271
+ struct _GLFWctxconfig
272
+ {
273
+ int client;
274
+ int source;
275
+ int major;
276
+ int minor;
277
+ GLFWbool forward;
278
+ GLFWbool debug;
279
+ GLFWbool noerror;
280
+ int profile;
281
+ int robustness;
282
+ int release;
283
+ _GLFWwindow* share;
284
+ };
285
+
286
+ /*! @brief Framebuffer configuration.
287
+ *
288
+ * This describes buffers and their sizes. It also contains
289
+ * a platform-specific ID used to map back to the backend API object.
290
+ *
291
+ * It is used to pass framebuffer parameters from shared code to the platform
292
+ * API and also to enumerate and select available framebuffer configs.
293
+ */
294
+ struct _GLFWfbconfig
295
+ {
296
+ int redBits;
297
+ int greenBits;
298
+ int blueBits;
299
+ int alphaBits;
300
+ int depthBits;
301
+ int stencilBits;
302
+ int accumRedBits;
303
+ int accumGreenBits;
304
+ int accumBlueBits;
305
+ int accumAlphaBits;
306
+ int auxBuffers;
307
+ GLFWbool stereo;
308
+ int samples;
309
+ GLFWbool sRGB;
310
+ GLFWbool doublebuffer;
311
+ uintptr_t handle;
312
+ };
313
+
314
+ /*! @brief Context structure.
315
+ */
316
+ struct _GLFWcontext
317
+ {
318
+ int client;
319
+ int source;
320
+ int major, minor, revision;
321
+ GLFWbool forward, debug, noerror;
322
+ int profile;
323
+ int robustness;
324
+ int release;
325
+
326
+ PFNGLGETSTRINGIPROC GetStringi;
327
+ PFNGLGETINTEGERVPROC GetIntegerv;
328
+ PFNGLGETSTRINGPROC GetString;
329
+
330
+ _GLFWmakecontextcurrentfun makeCurrent;
331
+ _GLFWswapbuffersfun swapBuffers;
332
+ _GLFWswapintervalfun swapInterval;
333
+ _GLFWextensionsupportedfun extensionSupported;
334
+ _GLFWgetprocaddressfun getProcAddress;
335
+ _GLFWdestroycontextfun destroy;
336
+
337
+ // This is defined in the context API's context.h
338
+ _GLFW_PLATFORM_CONTEXT_STATE;
339
+ // This is defined in egl_context.h
340
+ _GLFW_EGL_CONTEXT_STATE;
341
+ };
342
+
343
+ /*! @brief Window and context structure.
344
+ */
345
+ struct _GLFWwindow
346
+ {
347
+ struct _GLFWwindow* next;
348
+
349
+ // Window settings and state
350
+ GLFWbool resizable;
351
+ GLFWbool decorated;
352
+ GLFWbool autoIconify;
353
+ GLFWbool floating;
354
+ GLFWbool closed;
355
+ void* userPointer;
356
+ GLFWvidmode videoMode;
357
+ _GLFWmonitor* monitor;
358
+ _GLFWcursor* cursor;
359
+
360
+ int minwidth, minheight;
361
+ int maxwidth, maxheight;
362
+ int numer, denom;
363
+
364
+ GLFWbool stickyKeys;
365
+ GLFWbool stickyMouseButtons;
366
+ int cursorMode;
367
+ char mouseButtons[GLFW_MOUSE_BUTTON_LAST + 1];
368
+ char keys[GLFW_KEY_LAST + 1];
369
+ // Virtual cursor position when cursor is disabled
370
+ double virtualCursorPosX, virtualCursorPosY;
371
+
372
+ _GLFWcontext context;
373
+
374
+ struct {
375
+ GLFWwindowposfun pos;
376
+ GLFWwindowsizefun size;
377
+ GLFWwindowclosefun close;
378
+ GLFWwindowrefreshfun refresh;
379
+ GLFWwindowfocusfun focus;
380
+ GLFWwindowiconifyfun iconify;
381
+ GLFWframebuffersizefun fbsize;
382
+ GLFWmousebuttonfun mouseButton;
383
+ GLFWcursorposfun cursorPos;
384
+ GLFWcursorenterfun cursorEnter;
385
+ GLFWscrollfun scroll;
386
+ GLFWkeyfun key;
387
+ GLFWcharfun character;
388
+ GLFWcharmodsfun charmods;
389
+ GLFWdropfun drop;
390
+ } callbacks;
391
+
392
+ // This is defined in the window API's platform.h
393
+ _GLFW_PLATFORM_WINDOW_STATE;
394
+ };
395
+
396
+ /*! @brief Monitor structure.
397
+ */
398
+ struct _GLFWmonitor
399
+ {
400
+ char* name;
401
+
402
+ // Physical dimensions in millimeters.
403
+ int widthMM, heightMM;
404
+
405
+ // The window whose video mode is current on this monitor
406
+ _GLFWwindow* window;
407
+
408
+ GLFWvidmode* modes;
409
+ int modeCount;
410
+ GLFWvidmode currentMode;
411
+
412
+ GLFWgammaramp originalRamp;
413
+ GLFWgammaramp currentRamp;
414
+
415
+ // This is defined in the window API's platform.h
416
+ _GLFW_PLATFORM_MONITOR_STATE;
417
+ };
418
+
419
+ /*! @brief Cursor structure
420
+ */
421
+ struct _GLFWcursor
422
+ {
423
+ _GLFWcursor* next;
424
+
425
+ // This is defined in the window API's platform.h
426
+ _GLFW_PLATFORM_CURSOR_STATE;
427
+ };
428
+
429
+ /*! @brief Library global data.
430
+ */
431
+ struct _GLFWlibrary
432
+ {
433
+ struct {
434
+ _GLFWfbconfig framebuffer;
435
+ _GLFWwndconfig window;
436
+ _GLFWctxconfig context;
437
+ int refreshRate;
438
+ } hints;
439
+
440
+ _GLFWcursor* cursorListHead;
441
+
442
+ _GLFWwindow* windowListHead;
443
+
444
+ _GLFWmonitor** monitors;
445
+ int monitorCount;
446
+
447
+ uint64_t timerOffset;
448
+
449
+ struct {
450
+ GLFWbool available;
451
+ void* handle;
452
+ char** extensions;
453
+ uint32_t extensionCount;
454
+ #if !defined(_GLFW_VULKAN_STATIC)
455
+ PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties;
456
+ PFN_vkGetInstanceProcAddr GetInstanceProcAddr;
457
+ #endif
458
+ GLFWbool KHR_surface;
459
+ GLFWbool KHR_win32_surface;
460
+ GLFWbool KHR_xlib_surface;
461
+ GLFWbool KHR_xcb_surface;
462
+ GLFWbool KHR_wayland_surface;
463
+ GLFWbool KHR_mir_surface;
464
+ } vk;
465
+
466
+ struct {
467
+ GLFWmonitorfun monitor;
468
+ GLFWjoystickfun joystick;
469
+ } callbacks;
470
+
471
+ // This is defined in the window API's platform.h
472
+ _GLFW_PLATFORM_LIBRARY_WINDOW_STATE;
473
+ // This is defined in the context API's context.h
474
+ _GLFW_PLATFORM_LIBRARY_CONTEXT_STATE;
475
+ // This is defined in the platform's time.h
476
+ _GLFW_PLATFORM_LIBRARY_TIME_STATE;
477
+ // This is defined in the platform's joystick.h
478
+ _GLFW_PLATFORM_LIBRARY_JOYSTICK_STATE;
479
+ // This is defined in the platform's tls.h
480
+ _GLFW_PLATFORM_LIBRARY_TLS_STATE;
481
+ // This is defined in egl_context.h
482
+ _GLFW_EGL_LIBRARY_CONTEXT_STATE;
483
+ };
484
+
485
+
486
+ //========================================================================
487
+ // Global state shared between compilation units of GLFW
488
+ //========================================================================
489
+
490
+ /*! @brief Flag indicating whether GLFW has been successfully initialized.
491
+ */
492
+ extern GLFWbool _glfwInitialized;
493
+
494
+ /*! @brief All global data protected by @ref _glfwInitialized.
495
+ * This should only be touched after a call to @ref glfwInit that has not been
496
+ * followed by a call to @ref glfwTerminate.
497
+ */
498
+ extern _GLFWlibrary _glfw;
499
+
500
+
501
+ //========================================================================
502
+ // Platform API functions
503
+ //========================================================================
504
+
505
+ /*! @brief Initializes the platform-specific part of the library.
506
+ * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if an error occurred.
507
+ * @ingroup platform
508
+ */
509
+ int _glfwPlatformInit(void);
510
+
511
+ /*! @brief Terminates the platform-specific part of the library.
512
+ * @ingroup platform
513
+ */
514
+ void _glfwPlatformTerminate(void);
515
+
516
+ /*! @copydoc glfwGetVersionString
517
+ * @ingroup platform
518
+ *
519
+ * @note The returned string must be available for the duration of the program.
520
+ *
521
+ * @note The returned string must not change for the duration of the program.
522
+ */
523
+ const char* _glfwPlatformGetVersionString(void);
524
+
525
+ /*! @copydoc glfwGetCursorPos
526
+ * @ingroup platform
527
+ */
528
+ void _glfwPlatformGetCursorPos(_GLFWwindow* window, double* xpos, double* ypos);
529
+
530
+ /*! @copydoc glfwSetCursorPos
531
+ * @ingroup platform
532
+ */
533
+ void _glfwPlatformSetCursorPos(_GLFWwindow* window, double xpos, double ypos);
534
+
535
+ /*! @brief Sets the specified cursor mode of the specified window.
536
+ * @param[in] window The window whose cursor mode to set.
537
+ * @ingroup platform
538
+ */
539
+ void _glfwPlatformSetCursorMode(_GLFWwindow* window, int mode);
540
+
541
+ /*! @copydoc glfwGetKeyName
542
+ * @ingroup platform
543
+ */
544
+ const char* _glfwPlatformGetKeyName(int key, int scancode);
545
+
546
+ /*! @copydoc glfwGetMonitors
547
+ * @ingroup platform
548
+ */
549
+ _GLFWmonitor** _glfwPlatformGetMonitors(int* count);
550
+
551
+ /*! @brief Checks whether two monitor objects represent the same monitor.
552
+ *
553
+ * @param[in] first The first monitor.
554
+ * @param[in] second The second monitor.
555
+ * @return @c GLFW_TRUE if the monitor objects represent the same monitor, or
556
+ * @c GLFW_FALSE otherwise.
557
+ * @ingroup platform
558
+ */
559
+ GLFWbool _glfwPlatformIsSameMonitor(_GLFWmonitor* first, _GLFWmonitor* second);
560
+
561
+ /*! @copydoc glfwGetMonitorPos
562
+ * @ingroup platform
563
+ */
564
+ void _glfwPlatformGetMonitorPos(_GLFWmonitor* monitor, int* xpos, int* ypos);
565
+
566
+ /*! @copydoc glfwGetVideoModes
567
+ * @ingroup platform
568
+ */
569
+ GLFWvidmode* _glfwPlatformGetVideoModes(_GLFWmonitor* monitor, int* count);
570
+
571
+ /*! @ingroup platform
572
+ */
573
+ void _glfwPlatformGetVideoMode(_GLFWmonitor* monitor, GLFWvidmode* mode);
574
+
575
+ /*! @copydoc glfwGetGammaRamp
576
+ * @ingroup platform
577
+ */
578
+ void _glfwPlatformGetGammaRamp(_GLFWmonitor* monitor, GLFWgammaramp* ramp);
579
+
580
+ /*! @copydoc glfwSetGammaRamp
581
+ * @ingroup platform
582
+ */
583
+ void _glfwPlatformSetGammaRamp(_GLFWmonitor* monitor, const GLFWgammaramp* ramp);
584
+
585
+ /*! @copydoc glfwSetClipboardString
586
+ * @ingroup platform
587
+ */
588
+ void _glfwPlatformSetClipboardString(_GLFWwindow* window, const char* string);
589
+
590
+ /*! @copydoc glfwGetClipboardString
591
+ * @ingroup platform
592
+ *
593
+ * @note The returned string must be valid until the next call to @ref
594
+ * _glfwPlatformGetClipboardString or @ref _glfwPlatformSetClipboardString.
595
+ */
596
+ const char* _glfwPlatformGetClipboardString(_GLFWwindow* window);
597
+
598
+ /*! @copydoc glfwJoystickPresent
599
+ * @ingroup platform
600
+ */
601
+ int _glfwPlatformJoystickPresent(int joy);
602
+
603
+ /*! @copydoc glfwGetJoystickAxes
604
+ * @ingroup platform
605
+ */
606
+ const float* _glfwPlatformGetJoystickAxes(int joy, int* count);
607
+
608
+ /*! @copydoc glfwGetJoystickButtons
609
+ * @ingroup platform
610
+ */
611
+ const unsigned char* _glfwPlatformGetJoystickButtons(int joy, int* count);
612
+
613
+ /*! @copydoc glfwGetJoystickName
614
+ * @ingroup platform
615
+ */
616
+ const char* _glfwPlatformGetJoystickName(int joy);
617
+
618
+ /*! @copydoc glfwGetTimerValue
619
+ * @ingroup platform
620
+ */
621
+ uint64_t _glfwPlatformGetTimerValue(void);
622
+
623
+ /*! @copydoc glfwGetTimerFrequency
624
+ * @ingroup platform
625
+ */
626
+ uint64_t _glfwPlatformGetTimerFrequency(void);
627
+
628
+ /*! @ingroup platform
629
+ */
630
+ int _glfwPlatformCreateWindow(_GLFWwindow* window,
631
+ const _GLFWwndconfig* wndconfig,
632
+ const _GLFWctxconfig* ctxconfig,
633
+ const _GLFWfbconfig* fbconfig);
634
+
635
+ /*! @ingroup platform
636
+ */
637
+ void _glfwPlatformDestroyWindow(_GLFWwindow* window);
638
+
639
+ /*! @copydoc glfwSetWindowTitle
640
+ * @ingroup platform
641
+ */
642
+ void _glfwPlatformSetWindowTitle(_GLFWwindow* window, const char* title);
643
+
644
+ /*! @copydoc glfwSetWindowIcon
645
+ * @ingroup platform
646
+ */
647
+ void _glfwPlatformSetWindowIcon(_GLFWwindow* window, int count, const GLFWimage* images);
648
+
649
+ /*! @copydoc glfwGetWindowPos
650
+ * @ingroup platform
651
+ */
652
+ void _glfwPlatformGetWindowPos(_GLFWwindow* window, int* xpos, int* ypos);
653
+
654
+ /*! @copydoc glfwSetWindowPos
655
+ * @ingroup platform
656
+ */
657
+ void _glfwPlatformSetWindowPos(_GLFWwindow* window, int xpos, int ypos);
658
+
659
+ /*! @copydoc glfwGetWindowSize
660
+ * @ingroup platform
661
+ */
662
+ void _glfwPlatformGetWindowSize(_GLFWwindow* window, int* width, int* height);
663
+
664
+ /*! @copydoc glfwSetWindowSize
665
+ * @ingroup platform
666
+ */
667
+ void _glfwPlatformSetWindowSize(_GLFWwindow* window, int width, int height);
668
+
669
+ /*! @copydoc glfwSetWindowSizeLimits
670
+ * @ingroup platform
671
+ */
672
+ void _glfwPlatformSetWindowSizeLimits(_GLFWwindow* window, int minwidth, int minheight, int maxwidth, int maxheight);
673
+
674
+ /*! @copydoc glfwSetWindowAspectRatio
675
+ * @ingroup platform
676
+ */
677
+ void _glfwPlatformSetWindowAspectRatio(_GLFWwindow* window, int numer, int denom);
678
+
679
+ /*! @copydoc glfwGetFramebufferSize
680
+ * @ingroup platform
681
+ */
682
+ void _glfwPlatformGetFramebufferSize(_GLFWwindow* window, int* width, int* height);
683
+
684
+ /*! @copydoc glfwGetWindowFrameSize
685
+ * @ingroup platform
686
+ */
687
+ void _glfwPlatformGetWindowFrameSize(_GLFWwindow* window, int* left, int* top, int* right, int* bottom);
688
+
689
+ /*! @copydoc glfwIconifyWindow
690
+ * @ingroup platform
691
+ */
692
+ void _glfwPlatformIconifyWindow(_GLFWwindow* window);
693
+
694
+ /*! @copydoc glfwRestoreWindow
695
+ * @ingroup platform
696
+ */
697
+ void _glfwPlatformRestoreWindow(_GLFWwindow* window);
698
+
699
+ /*! @copydoc glfwMaximizeWindow
700
+ * @ingroup platform
701
+ */
702
+ void _glfwPlatformMaximizeWindow(_GLFWwindow* window);
703
+
704
+ /*! @copydoc glfwShowWindow
705
+ * @ingroup platform
706
+ */
707
+ void _glfwPlatformShowWindow(_GLFWwindow* window);
708
+
709
+ /*! @copydoc glfwHideWindow
710
+ * @ingroup platform
711
+ */
712
+ void _glfwPlatformHideWindow(_GLFWwindow* window);
713
+
714
+ /*! @copydoc glfwFocusWindow
715
+ * @ingroup platform
716
+ */
717
+ void _glfwPlatformFocusWindow(_GLFWwindow* window);
718
+
719
+ /*! @copydoc glfwSetWindowMonitor
720
+ * @ingroup platform
721
+ */
722
+ void _glfwPlatformSetWindowMonitor(_GLFWwindow* window, _GLFWmonitor* monitor, int xpos, int ypos, int width, int height, int refreshRate);
723
+
724
+ /*! @brief Returns whether the window is focused.
725
+ * @ingroup platform
726
+ */
727
+ int _glfwPlatformWindowFocused(_GLFWwindow* window);
728
+
729
+ /*! @brief Returns whether the window is iconified.
730
+ * @ingroup platform
731
+ */
732
+ int _glfwPlatformWindowIconified(_GLFWwindow* window);
733
+
734
+ /*! @brief Returns whether the window is visible.
735
+ * @ingroup platform
736
+ */
737
+ int _glfwPlatformWindowVisible(_GLFWwindow* window);
738
+
739
+ /*! @brief Returns whether the window is maximized.
740
+ * @ingroup platform
741
+ */
742
+ int _glfwPlatformWindowMaximized(_GLFWwindow* window);
743
+
744
+ /*! @copydoc glfwPollEvents
745
+ * @ingroup platform
746
+ */
747
+ void _glfwPlatformPollEvents(void);
748
+
749
+ /*! @copydoc glfwWaitEvents
750
+ * @ingroup platform
751
+ */
752
+ void _glfwPlatformWaitEvents(void);
753
+
754
+ /*! @copydoc glfwWaitEventsTimeout
755
+ * @ingroup platform
756
+ */
757
+ void _glfwPlatformWaitEventsTimeout(double timeout);
758
+
759
+ /*! @copydoc glfwPostEmptyEvent
760
+ * @ingroup platform
761
+ */
762
+ void _glfwPlatformPostEmptyEvent(void);
763
+
764
+ /*! @ingroup platform
765
+ */
766
+ void _glfwPlatformSetCurrentContext(_GLFWwindow* context);
767
+
768
+ /*! @copydoc glfwGetCurrentContext
769
+ * @ingroup platform
770
+ */
771
+ _GLFWwindow* _glfwPlatformGetCurrentContext(void);
772
+
773
+ /*! @copydoc glfwCreateCursor
774
+ * @ingroup platform
775
+ */
776
+ int _glfwPlatformCreateCursor(_GLFWcursor* cursor, const GLFWimage* image, int xhot, int yhot);
777
+
778
+ /*! @copydoc glfwCreateStandardCursor
779
+ * @ingroup platform
780
+ */
781
+ int _glfwPlatformCreateStandardCursor(_GLFWcursor* cursor, int shape);
782
+
783
+ /*! @copydoc glfwDestroyCursor
784
+ * @ingroup platform
785
+ */
786
+ void _glfwPlatformDestroyCursor(_GLFWcursor* cursor);
787
+
788
+ /*! @copydoc glfwSetCursor
789
+ * @ingroup platform
790
+ */
791
+ void _glfwPlatformSetCursor(_GLFWwindow* window, _GLFWcursor* cursor);
792
+
793
+ /*! @ingroup platform
794
+ */
795
+ char** _glfwPlatformGetRequiredInstanceExtensions(uint32_t* count);
796
+
797
+ /*! @ingroup platform
798
+ */
799
+ int _glfwPlatformGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint32_t queuefamily);
800
+
801
+ /*! @ingroup platform
802
+ */
803
+ VkResult _glfwPlatformCreateWindowSurface(VkInstance instance, _GLFWwindow* window, const VkAllocationCallbacks* allocator, VkSurfaceKHR* surface);
804
+
805
+
806
+ //========================================================================
807
+ // Event API functions
808
+ //========================================================================
809
+
810
+ /*! @brief Notifies shared code of a window focus event.
811
+ * @param[in] window The window that received the event.
812
+ * @param[in] focused `GLFW_TRUE` if the window received focus, or `GLFW_FALSE`
813
+ * if it lost focus.
814
+ * @ingroup event
815
+ */
816
+ void _glfwInputWindowFocus(_GLFWwindow* window, GLFWbool focused);
817
+
818
+ /*! @brief Notifies shared code of a window movement event.
819
+ * @param[in] window The window that received the event.
820
+ * @param[in] xpos The new x-coordinate of the client area of the window.
821
+ * @param[in] ypos The new y-coordinate of the client area of the window.
822
+ * @ingroup event
823
+ */
824
+ void _glfwInputWindowPos(_GLFWwindow* window, int xpos, int ypos);
825
+
826
+ /*! @brief Notifies shared code of a window resize event.
827
+ * @param[in] window The window that received the event.
828
+ * @param[in] width The new width of the client area of the window.
829
+ * @param[in] height The new height of the client area of the window.
830
+ * @ingroup event
831
+ */
832
+ void _glfwInputWindowSize(_GLFWwindow* window, int width, int height);
833
+
834
+ /*! @brief Notifies shared code of a framebuffer resize event.
835
+ * @param[in] window The window that received the event.
836
+ * @param[in] width The new width, in pixels, of the framebuffer.
837
+ * @param[in] height The new height, in pixels, of the framebuffer.
838
+ * @ingroup event
839
+ */
840
+ void _glfwInputFramebufferSize(_GLFWwindow* window, int width, int height);
841
+
842
+ /*! @brief Notifies shared code of a window iconification event.
843
+ * @param[in] window The window that received the event.
844
+ * @param[in] iconified `GLFW_TRUE` if the window was iconified, or
845
+ * `GLFW_FALSE` if it was restored.
846
+ * @ingroup event
847
+ */
848
+ void _glfwInputWindowIconify(_GLFWwindow* window, GLFWbool iconified);
849
+
850
+ /*! @brief Notifies shared code of a window damage event.
851
+ * @param[in] window The window that received the event.
852
+ */
853
+ void _glfwInputWindowDamage(_GLFWwindow* window);
854
+
855
+ /*! @brief Notifies shared code of a window close request event
856
+ * @param[in] window The window that received the event.
857
+ * @ingroup event
858
+ */
859
+ void _glfwInputWindowCloseRequest(_GLFWwindow* window);
860
+
861
+ void _glfwInputWindowMonitorChange(_GLFWwindow* window, _GLFWmonitor* monitor);
862
+
863
+ /*! @brief Notifies shared code of a physical key event.
864
+ * @param[in] window The window that received the event.
865
+ * @param[in] key The key that was pressed or released.
866
+ * @param[in] scancode The system-specific scan code of the key.
867
+ * @param[in] action @ref GLFW_PRESS or @ref GLFW_RELEASE.
868
+ * @param[in] mods The modifiers pressed when the event was generated.
869
+ * @ingroup event
870
+ */
871
+ void _glfwInputKey(_GLFWwindow* window, int key, int scancode, int action, int mods);
872
+
873
+ /*! @brief Notifies shared code of a Unicode character input event.
874
+ * @param[in] window The window that received the event.
875
+ * @param[in] codepoint The Unicode code point of the input character.
876
+ * @param[in] mods Bit field describing which modifier keys were held down.
877
+ * @param[in] plain `GLFW_TRUE` if the character is regular text input, or
878
+ * `GLFW_FALSE` otherwise.
879
+ * @ingroup event
880
+ */
881
+ void _glfwInputChar(_GLFWwindow* window, unsigned int codepoint, int mods, GLFWbool plain);
882
+
883
+ /*! @brief Notifies shared code of a scroll event.
884
+ * @param[in] window The window that received the event.
885
+ * @param[in] xoffset The scroll offset along the x-axis.
886
+ * @param[in] yoffset The scroll offset along the y-axis.
887
+ * @ingroup event
888
+ */
889
+ void _glfwInputScroll(_GLFWwindow* window, double xoffset, double yoffset);
890
+
891
+ /*! @brief Notifies shared code of a mouse button click event.
892
+ * @param[in] window The window that received the event.
893
+ * @param[in] button The button that was pressed or released.
894
+ * @param[in] action @ref GLFW_PRESS or @ref GLFW_RELEASE.
895
+ * @ingroup event
896
+ */
897
+ void _glfwInputMouseClick(_GLFWwindow* window, int button, int action, int mods);
898
+
899
+ /*! @brief Notifies shared code of a cursor motion event.
900
+ * @param[in] window The window that received the event.
901
+ * @param[in] xpos The new x-coordinate of the cursor, relative to the left
902
+ * edge of the client area of the window.
903
+ * @param[in] ypos The new y-coordinate of the cursor, relative to the top edge
904
+ * of the client area of the window.
905
+ * @ingroup event
906
+ */
907
+ void _glfwInputCursorPos(_GLFWwindow* window, double xpos, double ypos);
908
+
909
+ /*! @brief Notifies shared code of a cursor enter/leave event.
910
+ * @param[in] window The window that received the event.
911
+ * @param[in] entered `GLFW_TRUE` if the cursor entered the client area of the
912
+ * window, or `GLFW_FALSE` if it left it.
913
+ * @ingroup event
914
+ */
915
+ void _glfwInputCursorEnter(_GLFWwindow* window, GLFWbool entered);
916
+
917
+ /*! @ingroup event
918
+ */
919
+ void _glfwInputMonitorChange(void);
920
+
921
+ /*! @ingroup event
922
+ */
923
+ void _glfwInputMonitorWindowChange(_GLFWmonitor* monitor, _GLFWwindow* window);
924
+
925
+ /*! @brief Notifies shared code of an error.
926
+ * @param[in] error The error code most suitable for the error.
927
+ * @param[in] format The `printf` style format string of the error
928
+ * description.
929
+ * @ingroup event
930
+ */
931
+ #if defined(__GNUC__)
932
+ void _glfwInputError(int error, const char* format, ...) __attribute__((format(printf, 2, 3)));
933
+ #else
934
+ void _glfwInputError(int error, const char* format, ...);
935
+ #endif
936
+
937
+ /*! @brief Notifies dropped object over window.
938
+ * @param[in] window The window that received the event.
939
+ * @param[in] count The number of dropped objects.
940
+ * @param[in] names The names of the dropped objects.
941
+ * @ingroup event
942
+ */
943
+ void _glfwInputDrop(_GLFWwindow* window, int count, const char** names);
944
+
945
+ /*! @brief Notifies shared code of a joystick connection/disconnection event.
946
+ * @param[in] joy The joystick that was connected or disconnected.
947
+ * @param[in] event One of `GLFW_CONNECTED` or `GLFW_DISCONNECTED`.
948
+ * @ingroup event
949
+ */
950
+ void _glfwInputJoystickChange(int joy, int event);
951
+
952
+
953
+ //========================================================================
954
+ // Utility functions
955
+ //========================================================================
956
+
957
+ /*! @ingroup utility
958
+ */
959
+ const GLFWvidmode* _glfwChooseVideoMode(_GLFWmonitor* monitor,
960
+ const GLFWvidmode* desired);
961
+
962
+ /*! @brief Performs lexical comparison between two @ref GLFWvidmode structures.
963
+ * @ingroup utility
964
+ */
965
+ int _glfwCompareVideoModes(const GLFWvidmode* first, const GLFWvidmode* second);
966
+
967
+ /*! @brief Splits a color depth into red, green and blue bit depths.
968
+ * @ingroup utility
969
+ */
970
+ void _glfwSplitBPP(int bpp, int* red, int* green, int* blue);
971
+
972
+ /*! @brief Searches an extension string for the specified extension.
973
+ * @param[in] string The extension string to search.
974
+ * @param[in] extensions The extension to search for.
975
+ * @return `GLFW_TRUE` if the extension was found, or `GLFW_FALSE` otherwise.
976
+ * @ingroup utility
977
+ */
978
+ GLFWbool _glfwStringInExtensionString(const char* string, const char* extensions);
979
+
980
+ /*! @brief Chooses the framebuffer config that best matches the desired one.
981
+ * @param[in] desired The desired framebuffer config.
982
+ * @param[in] alternatives The framebuffer configs supported by the system.
983
+ * @param[in] count The number of entries in the alternatives array.
984
+ * @return The framebuffer config most closely matching the desired one, or @c
985
+ * NULL if none fulfilled the hard constraints of the desired values.
986
+ * @ingroup utility
987
+ */
988
+ const _GLFWfbconfig* _glfwChooseFBConfig(const _GLFWfbconfig* desired,
989
+ const _GLFWfbconfig* alternatives,
990
+ unsigned int count);
991
+
992
+ /*! @brief Retrieves the attributes of the current context.
993
+ * @param[in] ctxconfig The desired context attributes.
994
+ * @return `GLFW_TRUE` if successful, or `GLFW_FALSE` if the context is
995
+ * unusable.
996
+ * @ingroup utility
997
+ */
998
+ GLFWbool _glfwRefreshContextAttribs(const _GLFWctxconfig* ctxconfig);
999
+
1000
+ /*! @brief Checks whether the desired context attributes are valid.
1001
+ * @param[in] ctxconfig The context attributes to check.
1002
+ * @return `GLFW_TRUE` if the context attributes are valid, or `GLFW_FALSE`
1003
+ * otherwise.
1004
+ * @ingroup utility
1005
+ *
1006
+ * This function checks things like whether the specified client API version
1007
+ * exists and whether all relevant options have supported and non-conflicting
1008
+ * values.
1009
+ */
1010
+ GLFWbool _glfwIsValidContextConfig(const _GLFWctxconfig* ctxconfig);
1011
+
1012
+ /*! @ingroup utility
1013
+ */
1014
+ void _glfwAllocGammaArrays(GLFWgammaramp* ramp, unsigned int size);
1015
+
1016
+ /*! @ingroup utility
1017
+ */
1018
+ void _glfwFreeGammaArrays(GLFWgammaramp* ramp);
1019
+
1020
+ /*! @brief Allocates and returns a monitor object with the specified name
1021
+ * and dimensions.
1022
+ * @param[in] name The name of the monitor.
1023
+ * @param[in] widthMM The width, in mm, of the monitor's display area.
1024
+ * @param[in] heightMM The height, in mm, of the monitor's display area.
1025
+ * @return The newly created object.
1026
+ * @ingroup utility
1027
+ */
1028
+ _GLFWmonitor* _glfwAllocMonitor(const char* name, int widthMM, int heightMM);
1029
+
1030
+ /*! @brief Frees a monitor object and any data associated with it.
1031
+ * @ingroup utility
1032
+ */
1033
+ void _glfwFreeMonitor(_GLFWmonitor* monitor);
1034
+
1035
+ /*! @ingroup utility
1036
+ */
1037
+ void _glfwFreeMonitors(_GLFWmonitor** monitors, int count);
1038
+
1039
+ /*! @ingroup utility
1040
+ */
1041
+ GLFWbool _glfwIsPrintable(int key);
1042
+
1043
+ /*! @ingroup utility
1044
+ */
1045
+ GLFWbool _glfwInitVulkan(void);
1046
+
1047
+ /*! @ingroup utility
1048
+ */
1049
+ void _glfwTerminateVulkan(void);
1050
+
1051
+ /*! @ingroup utility
1052
+ */
1053
+ const char* _glfwGetVulkanResultString(VkResult result);
1054
+
1055
+ #endif // _glfw3_internal_h_