From 40cbf3e45ff60ccb3163473c7a2dd52f7c3e40d2 Mon Sep 17 00:00:00 2001 From: Ioannis Tsakpinis Date: Tue, 17 May 2011 16:53:57 +0000 Subject: [PATCH] Added support for OpenGL ES. --- build.xml | 113 +- libs/windows/libEGL.dll | Bin 0 -> 3211264 bytes libs/windows/libEGL.lib | Bin 0 -> 12858 bytes libs/windows/libGLESv2.dll | Bin 0 -> 2781184 bytes platform_build/build-definitions.xml | 28 +- platform_build/build-generator.xml | 119 +- platform_build/linux_ant/build.xml | 24 +- platform_build/linux_ant/build_es.xml | 125 ++ platform_build/windows_ant/build.xml | 10 +- platform_build/windows_ant/build_es.xml | 65 ++ src/java/org/lwjgl/opengl/AWTGLCanvas.java | 43 +- src/java/org/lwjgl/opengl/CallbackUtil.java | 10 +- .../opengl/{Context.java => ContextGL.java} | 16 +- src/java/org/lwjgl/opengl/ContextGLES.java | 224 ++++ src/java/org/lwjgl/opengl/Display.java | 217 +++- .../lwjgl/opengl/DisplayImplementation.java | 2 +- ...{AbstractDrawable.java => DrawableGL.java} | 51 +- src/java/org/lwjgl/opengl/DrawableGLES.java | 211 ++++ src/java/org/lwjgl/opengl/DrawableLWJGL.java | 16 +- .../opengl/LinuxContextImplementation.java | 6 +- src/java/org/lwjgl/opengl/LinuxDisplay.java | 20 +- .../lwjgl/opengl/LinuxDisplayPeerInfo.java | 22 +- .../opengl/MacOSXContextImplementation.java | 6 +- src/java/org/lwjgl/opengl/MacOSXDisplay.java | 4 +- src/java/org/lwjgl/opengl/Pbuffer.java | 4 +- src/java/org/lwjgl/opengl/PixelFormat.java | 2 +- .../org/lwjgl/opengl/PixelFormatLWJGL.java | 11 + src/java/org/lwjgl/opengl/SharedDrawable.java | 6 +- .../opengl/WindowsContextImplementation.java | 2 +- src/java/org/lwjgl/opengl/WindowsDisplay.java | 21 +- .../lwjgl/opengl/WindowsDisplayPeerInfo.java | 21 +- src/java/org/lwjgl/opengles/APIUtil.java | 322 ++++++ .../org/lwjgl/opengles/ContextAttribs.java | 88 ++ src/java/org/lwjgl/opengles/EGL.java | 922 +++++++++++++++ src/java/org/lwjgl/opengles/EGLConfig.java | 120 ++ src/java/org/lwjgl/opengles/EGLContext.java | 114 ++ src/java/org/lwjgl/opengles/EGLDisplay.java | 216 ++++ src/java/org/lwjgl/opengles/EGLImageOES.java | 43 + .../org/lwjgl/opengles/EGLKHRFenceSync.java | 173 +++ .../lwjgl/opengles/EGLKHRReusableSync.java | 156 +++ src/java/org/lwjgl/opengles/EGLNVSync.java | 214 ++++ src/java/org/lwjgl/opengles/EGLSurface.java | 120 ++ src/java/org/lwjgl/opengles/EGLSyncKHR.java | 43 + src/java/org/lwjgl/opengles/EGLSyncNV.java | 43 + src/java/org/lwjgl/opengles/GLChecks.java | 188 +++ src/java/org/lwjgl/opengles/GLContext.java | 310 +++++ src/java/org/lwjgl/opengles/PeerInfo.java | 97 ++ src/java/org/lwjgl/opengles/PixelFormat.java | 767 +++++++++++++ .../PowerManagementEventException.java | 68 ++ src/java/org/lwjgl/opengles/StateTracker.java | 71 ++ src/java/org/lwjgl/opengles/Util.java | 139 +++ .../test/opengles/FullScreenWindowedTest.java | 327 ++++++ src/java/org/lwjgl/test/opengles/Gears.java | 580 ++++++++++ .../test/opengles/MappedIndexedVBOTest.java | 251 ++++ .../org/lwjgl/test/opengles/QuadRenderer.java | 70 ++ .../test/opengles/util/BufferObject.java | 99 ++ .../test/opengles/util/BufferObjectArray.java | 41 + .../opengles/util/BufferObjectElement.java | 41 + .../org/lwjgl/test/opengles/util/GLLight.java | 165 +++ .../lwjgl/test/opengles/util/GLMatrix.java | 163 +++ .../lwjgl/test/opengles/util/GLObject.java | 9 + .../lwjgl/test/opengles/util/Geometry.java | 78 ++ .../opengles/util/ImmediateModeBuffer.java | 58 + .../org/lwjgl/test/opengles/util/Shader.java | 98 ++ .../test/opengles/util/ShaderProgram.java | 82 ++ .../org/lwjgl/test/opengles/util/Sphere.java | 414 +++++++ .../lwjgl/util/generator/FieldsGenerator.java | 5 +- .../util/generator/JavaMethodsGenerator.java | 26 +- .../generator/NativeMethodStubsGenerator.java | 2 +- .../generator/RegisterStubsGenerator.java | 2 +- .../util/generator/opengl/EGLint64NV.java | 12 + .../util/generator/opengl/EGLuint64NV.java | 12 + .../opengl/GLESCapabilitiesGenerator.java | 308 +++++ .../opengl/GLESGeneratorProcessorFactory.java | 184 +++ .../util/generator/opengl/GLESTypeMap.java | 287 +++++ src/java/org/lwjgl/util/vector/Matrix4f.java | 22 + src/native/common/EGL/egl.h | 329 ++++++ src/native/common/EGL/eglext.h | 230 ++++ src/native/common/EGL/eglplatform.h | 110 ++ src/native/common/GLES2/gl2.h | 621 ++++++++++ src/native/common/GLES2/gl2ext.h | 803 +++++++++++++ src/native/common/GLES2/gl2extimg.h | 51 + src/native/common/GLES2/gl2platform.h | 30 + src/native/common/KHR/khrplatform.h | 269 +++++ src/native/common/{ => opengl}/extgl.c | 0 src/native/common/{ => opengl}/extgl.h | 0 src/native/common/{ => opengl}/extgl_types.h | 0 .../org_lwjgl_opengl_CallbackUtil.c | 0 .../{ => opengl}/org_lwjgl_opengl_GLContext.c | 0 src/native/common/opengles/extgl.c | 83 ++ src/native/common/opengles/extgl.h | 89 ++ src/native/common/opengles/extgl_egl.c | 106 ++ src/native/common/opengles/extgl_egl.h | 80 ++ src/native/common/opengles/extgl_types.h | 70 ++ .../common/opengles/org_lwjgl_opengles_EGL.c | 211 ++++ .../org_lwjgl_opengles_EGLKHRFenceSync.c | 81 ++ .../org_lwjgl_opengles_EGLKHRReusableSync.c | 52 + .../opengles/org_lwjgl_opengles_EGLNVSync.c | 94 ++ .../opengles/org_lwjgl_opengles_GLContext.c | 48 + src/native/linux/{ => opengl}/context.c | 0 src/native/linux/{ => opengl}/context.h | 0 src/native/linux/{ => opengl}/display.c | 0 src/native/linux/{ => opengl}/extgl_glx.c | 0 src/native/linux/{ => opengl}/extgl_glx.h | 0 .../{ => opengl}/org_lwjgl_opengl_Display.c | 0 ...rg_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c | 0 ...g_lwjgl_opengl_LinuxCanvasImplementation.c | 0 ..._lwjgl_opengl_LinuxContextImplementation.c | 0 .../{ => opengl}/org_lwjgl_opengl_Pbuffer.c | 0 src/native/linux/opengles/context.c | 56 + src/native/linux/opengles/context.h | 57 + src/native/linux/opengles/display.c | 409 +++++++ src/native/linux/opengles/extgl_glx.c | 69 ++ .../linux/opengles/org_lwjgl_opengl_Display.c | 576 ++++++++++ src/native/windows/{ => opengl}/context.c | 0 src/native/windows/{ => opengl}/context.h | 0 src/native/windows/{ => opengl}/extgl_wgl.c | 0 src/native/windows/{ => opengl}/extgl_wgl.h | 0 .../{ => opengl}/org_lwjgl_opengl_Pbuffer.c | 0 ...wjgl_opengl_WindowsContextImplementation.c | 0 .../org_lwjgl_opengl_WindowsPeerInfo.c | 0 src/native/windows/opengles/context.c | 508 +++++++++ src/native/windows/opengles/context.h | 98 ++ src/native/windows/opengles/extgl_wgl.c | 70 ++ .../org_lwjgl_opengl_WindowsPeerInfo.c | 57 + src/native/windows/org_lwjgl_opengl_Display.c | 46 +- .../lwjgl/opengl/EXT_texture_lod_bias.java | 21 +- .../opengles/AMD_compressed_3DC_texture.java | 43 + .../opengles/AMD_compressed_ATC_texture.java | 44 + .../opengles/AMD_performance_monitor.java | 123 ++ .../opengles/AMD_program_binary_Z400.java | 39 + .../opengles/ANGLE_framebuffer_blit.java | 56 + .../ANGLE_framebuffer_multisample.java | 55 + .../APPLE_framebuffer_multisample.java | 73 ++ .../org/lwjgl/opengles/APPLE_rgb_422.java | 55 + .../APPLE_texture_format_BGRA8888.java | 39 + .../opengles/APPLE_texture_max_level.java | 42 + .../org/lwjgl/opengles/ARB_draw_buffers.java | 69 ++ .../lwjgl/opengles/ARB_half_float_pixel.java | 43 + .../lwjgl/opengles/ARB_texture_rectangle.java | 78 ++ .../opengles/ARM_mali_shader_binary.java | 39 + .../org/lwjgl/opengles/ARM_rgba8.java | 39 + .../org/lwjgl/opengles/DMP_shader_binary.java | 39 + .../org/lwjgl/opengles/EXT_Cg_shader.java | 45 + .../org/lwjgl/opengles/EXT_bgra.java | 43 + .../org/lwjgl/opengles/EXT_blend_minmax.java | 45 + .../opengles/EXT_discard_framebuffer.java | 53 + .../org/lwjgl/opengles/EXT_frag_depth.java | 36 + .../lwjgl/opengles/EXT_multi_draw_arrays.java | 48 + .../org/lwjgl/opengles/EXT_packed_float.java | 53 + .../lwjgl/opengles/EXT_read_format_bgra.java | 43 + .../opengles/EXT_shader_texture_lod.java | 36 + .../org/lwjgl/opengles/EXT_texture_array.java | 79 ++ .../EXT_texture_compression_dxt1.java | 46 + .../EXT_texture_compression_latc.java | 49 + .../EXT_texture_compression_s3tc.java | 49 + .../EXT_texture_filter_anisotropic.java | 49 + .../opengles/EXT_texture_format_BGRA8888.java | 42 + .../lwjgl/opengles/EXT_texture_lod_bias.java | 58 + .../EXT_texture_type_2_10_10_10_REV.java | 39 + src/templates/org/lwjgl/opengles/GLES20.java | 1010 +++++++++++++++++ .../IMG_multisamples_render_to_texture.java | 65 ++ .../lwjgl/opengles/IMG_program_binary.java | 39 + .../org/lwjgl/opengles/IMG_shader_binary.java | 39 + .../IMG_texture_compression_pvrtc.java | 45 + .../lwjgl/opengles/NV_coverage_sample.java | 80 ++ .../lwjgl/opengles/NV_depth_nonlinear.java | 56 + .../org/lwjgl/opengles/NV_draw_path.java | 123 ++ .../opengles/NV_fbo_color_attachments.java | 54 + .../org/lwjgl/opengles/NV_fence.java | 72 ++ .../NV_framebuffer_vertex_attrib_array.java | 53 + .../org/lwjgl/opengles/NV_get_tex_image.java | 89 ++ .../org/lwjgl/opengles/NV_read_buffer.java | 43 + .../opengles/NV_shader_framebuffer_fetch.java | 36 + .../org/lwjgl/opengles/NV_system_time.java | 44 + .../org/lwjgl/opengles/OES_EGL_image.java | 43 + .../opengles/OES_EGL_image_external.java | 56 + .../org/lwjgl/opengles/OES_EGL_sync.java | 36 + .../opengles/OES_blend_equation_separate.java | 47 + .../opengles/OES_blend_func_separate.java | 52 + .../lwjgl/opengles/OES_blend_subtract.java | 51 + .../OES_compressed_ETC1_RGB8_texture.java | 39 + .../OES_compressed_paletted_texture.java | 48 + .../org/lwjgl/opengles/OES_depth24.java | 39 + .../org/lwjgl/opengles/OES_depth32.java | 39 + .../org/lwjgl/opengles/OES_depth_texture.java | 46 + .../opengles/OES_element_index_uint.java | 39 + .../lwjgl/opengles/OES_fbo_render_mipmap.java | 36 + .../opengles/OES_framebuffer_object.java | 182 +++ .../opengles/OES_get_program_binary.java | 65 ++ .../org/lwjgl/opengles/OES_mapbuffer.java | 86 ++ .../opengles/OES_packed_depth_stencil.java | 52 + .../org/lwjgl/opengles/OES_rgb8_rgba8.java | 43 + .../opengles/OES_standard_derivatives.java | 42 + .../org/lwjgl/opengles/OES_stencil1.java | 39 + .../org/lwjgl/opengles/OES_stencil4.java | 39 + .../org/lwjgl/opengles/OES_stencil8.java | 39 + .../org/lwjgl/opengles/OES_texture_3D.java | 91 ++ .../org/lwjgl/opengles/OES_texture_float.java | 42 + .../opengles/OES_texture_float_linear.java | 36 + .../opengles/OES_texture_half_float.java | 42 + .../OES_texture_half_float_linear.java | 36 + .../org/lwjgl/opengles/OES_texture_npot.java | 36 + .../opengles/OES_vertex_array_object.java | 61 + .../lwjgl/opengles/OES_vertex_half_float.java | 39 + .../opengles/OES_vertex_type_10_10_10_2.java | 40 + .../lwjgl/opengles/QCOM_driver_control.java | 65 ++ .../org/lwjgl/opengles/QCOM_extended_get.java | 95 ++ .../lwjgl/opengles/QCOM_extended_get2.java | 59 + .../QCOM_performance_monitor_global_mode.java | 43 + .../lwjgl/opengles/QCOM_tiled_rendering.java | 81 ++ .../opengles/QCOM_writeonly_rendering.java | 39 + .../org/lwjgl/opengles/VIV_shader_binary.java | 39 + 213 files changed, 19618 insertions(+), 194 deletions(-) create mode 100644 libs/windows/libEGL.dll create mode 100644 libs/windows/libEGL.lib create mode 100644 libs/windows/libGLESv2.dll create mode 100644 platform_build/linux_ant/build_es.xml create mode 100644 platform_build/windows_ant/build_es.xml rename src/java/org/lwjgl/opengl/{Context.java => ContextGL.java} (94%) create mode 100644 src/java/org/lwjgl/opengl/ContextGLES.java rename src/java/org/lwjgl/opengl/{AbstractDrawable.java => DrawableGL.java} (56%) create mode 100644 src/java/org/lwjgl/opengl/DrawableGLES.java create mode 100644 src/java/org/lwjgl/opengl/PixelFormatLWJGL.java create mode 100644 src/java/org/lwjgl/opengles/APIUtil.java create mode 100644 src/java/org/lwjgl/opengles/ContextAttribs.java create mode 100644 src/java/org/lwjgl/opengles/EGL.java create mode 100644 src/java/org/lwjgl/opengles/EGLConfig.java create mode 100644 src/java/org/lwjgl/opengles/EGLContext.java create mode 100644 src/java/org/lwjgl/opengles/EGLDisplay.java create mode 100644 src/java/org/lwjgl/opengles/EGLImageOES.java create mode 100644 src/java/org/lwjgl/opengles/EGLKHRFenceSync.java create mode 100644 src/java/org/lwjgl/opengles/EGLKHRReusableSync.java create mode 100644 src/java/org/lwjgl/opengles/EGLNVSync.java create mode 100644 src/java/org/lwjgl/opengles/EGLSurface.java create mode 100644 src/java/org/lwjgl/opengles/EGLSyncKHR.java create mode 100644 src/java/org/lwjgl/opengles/EGLSyncNV.java create mode 100644 src/java/org/lwjgl/opengles/GLChecks.java create mode 100644 src/java/org/lwjgl/opengles/GLContext.java create mode 100644 src/java/org/lwjgl/opengles/PeerInfo.java create mode 100644 src/java/org/lwjgl/opengles/PixelFormat.java create mode 100644 src/java/org/lwjgl/opengles/PowerManagementEventException.java create mode 100644 src/java/org/lwjgl/opengles/StateTracker.java create mode 100644 src/java/org/lwjgl/opengles/Util.java create mode 100644 src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java create mode 100644 src/java/org/lwjgl/test/opengles/Gears.java create mode 100644 src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java create mode 100644 src/java/org/lwjgl/test/opengles/QuadRenderer.java create mode 100644 src/java/org/lwjgl/test/opengles/util/BufferObject.java create mode 100644 src/java/org/lwjgl/test/opengles/util/BufferObjectArray.java create mode 100644 src/java/org/lwjgl/test/opengles/util/BufferObjectElement.java create mode 100644 src/java/org/lwjgl/test/opengles/util/GLLight.java create mode 100644 src/java/org/lwjgl/test/opengles/util/GLMatrix.java create mode 100644 src/java/org/lwjgl/test/opengles/util/GLObject.java create mode 100644 src/java/org/lwjgl/test/opengles/util/Geometry.java create mode 100644 src/java/org/lwjgl/test/opengles/util/ImmediateModeBuffer.java create mode 100644 src/java/org/lwjgl/test/opengles/util/Shader.java create mode 100644 src/java/org/lwjgl/test/opengles/util/ShaderProgram.java create mode 100644 src/java/org/lwjgl/test/opengles/util/Sphere.java create mode 100644 src/java/org/lwjgl/util/generator/opengl/EGLint64NV.java create mode 100644 src/java/org/lwjgl/util/generator/opengl/EGLuint64NV.java create mode 100644 src/java/org/lwjgl/util/generator/opengl/GLESCapabilitiesGenerator.java create mode 100644 src/java/org/lwjgl/util/generator/opengl/GLESGeneratorProcessorFactory.java create mode 100644 src/java/org/lwjgl/util/generator/opengl/GLESTypeMap.java create mode 100644 src/native/common/EGL/egl.h create mode 100644 src/native/common/EGL/eglext.h create mode 100644 src/native/common/EGL/eglplatform.h create mode 100644 src/native/common/GLES2/gl2.h create mode 100644 src/native/common/GLES2/gl2ext.h create mode 100644 src/native/common/GLES2/gl2extimg.h create mode 100644 src/native/common/GLES2/gl2platform.h create mode 100644 src/native/common/KHR/khrplatform.h rename src/native/common/{ => opengl}/extgl.c (100%) rename src/native/common/{ => opengl}/extgl.h (100%) rename src/native/common/{ => opengl}/extgl_types.h (100%) rename src/native/common/{ => opengl}/org_lwjgl_opengl_CallbackUtil.c (100%) rename src/native/common/{ => opengl}/org_lwjgl_opengl_GLContext.c (100%) create mode 100644 src/native/common/opengles/extgl.c create mode 100644 src/native/common/opengles/extgl.h create mode 100644 src/native/common/opengles/extgl_egl.c create mode 100644 src/native/common/opengles/extgl_egl.h create mode 100644 src/native/common/opengles/extgl_types.h create mode 100644 src/native/common/opengles/org_lwjgl_opengles_EGL.c create mode 100644 src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c create mode 100644 src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c create mode 100644 src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c create mode 100644 src/native/common/opengles/org_lwjgl_opengles_GLContext.c rename src/native/linux/{ => opengl}/context.c (100%) rename src/native/linux/{ => opengl}/context.h (100%) rename src/native/linux/{ => opengl}/display.c (100%) rename src/native/linux/{ => opengl}/extgl_glx.c (100%) rename src/native/linux/{ => opengl}/extgl_glx.h (100%) rename src/native/linux/{ => opengl}/org_lwjgl_opengl_Display.c (100%) rename src/native/linux/{ => opengl}/org_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c (100%) rename src/native/linux/{ => opengl}/org_lwjgl_opengl_LinuxCanvasImplementation.c (100%) rename src/native/linux/{ => opengl}/org_lwjgl_opengl_LinuxContextImplementation.c (100%) rename src/native/linux/{ => opengl}/org_lwjgl_opengl_Pbuffer.c (100%) create mode 100644 src/native/linux/opengles/context.c create mode 100644 src/native/linux/opengles/context.h create mode 100644 src/native/linux/opengles/display.c create mode 100644 src/native/linux/opengles/extgl_glx.c create mode 100644 src/native/linux/opengles/org_lwjgl_opengl_Display.c rename src/native/windows/{ => opengl}/context.c (100%) rename src/native/windows/{ => opengl}/context.h (100%) rename src/native/windows/{ => opengl}/extgl_wgl.c (100%) rename src/native/windows/{ => opengl}/extgl_wgl.h (100%) rename src/native/windows/{ => opengl}/org_lwjgl_opengl_Pbuffer.c (100%) rename src/native/windows/{ => opengl}/org_lwjgl_opengl_WindowsContextImplementation.c (100%) rename src/native/windows/{ => opengl}/org_lwjgl_opengl_WindowsPeerInfo.c (100%) create mode 100644 src/native/windows/opengles/context.c create mode 100644 src/native/windows/opengles/context.h create mode 100644 src/native/windows/opengles/extgl_wgl.c create mode 100644 src/native/windows/opengles/org_lwjgl_opengl_WindowsPeerInfo.c create mode 100644 src/templates/org/lwjgl/opengles/AMD_compressed_3DC_texture.java create mode 100644 src/templates/org/lwjgl/opengles/AMD_compressed_ATC_texture.java create mode 100644 src/templates/org/lwjgl/opengles/AMD_performance_monitor.java create mode 100644 src/templates/org/lwjgl/opengles/AMD_program_binary_Z400.java create mode 100644 src/templates/org/lwjgl/opengles/ANGLE_framebuffer_blit.java create mode 100644 src/templates/org/lwjgl/opengles/ANGLE_framebuffer_multisample.java create mode 100644 src/templates/org/lwjgl/opengles/APPLE_framebuffer_multisample.java create mode 100644 src/templates/org/lwjgl/opengles/APPLE_rgb_422.java create mode 100644 src/templates/org/lwjgl/opengles/APPLE_texture_format_BGRA8888.java create mode 100644 src/templates/org/lwjgl/opengles/APPLE_texture_max_level.java create mode 100644 src/templates/org/lwjgl/opengles/ARB_draw_buffers.java create mode 100644 src/templates/org/lwjgl/opengles/ARB_half_float_pixel.java create mode 100644 src/templates/org/lwjgl/opengles/ARB_texture_rectangle.java create mode 100644 src/templates/org/lwjgl/opengles/ARM_mali_shader_binary.java create mode 100644 src/templates/org/lwjgl/opengles/ARM_rgba8.java create mode 100644 src/templates/org/lwjgl/opengles/DMP_shader_binary.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_Cg_shader.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_bgra.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_blend_minmax.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_discard_framebuffer.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_frag_depth.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_multi_draw_arrays.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_packed_float.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_read_format_bgra.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_shader_texture_lod.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_array.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_compression_dxt1.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_compression_latc.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_compression_s3tc.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_filter_anisotropic.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_format_BGRA8888.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_lod_bias.java create mode 100644 src/templates/org/lwjgl/opengles/EXT_texture_type_2_10_10_10_REV.java create mode 100644 src/templates/org/lwjgl/opengles/GLES20.java create mode 100644 src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java create mode 100644 src/templates/org/lwjgl/opengles/IMG_program_binary.java create mode 100644 src/templates/org/lwjgl/opengles/IMG_shader_binary.java create mode 100644 src/templates/org/lwjgl/opengles/IMG_texture_compression_pvrtc.java create mode 100644 src/templates/org/lwjgl/opengles/NV_coverage_sample.java create mode 100644 src/templates/org/lwjgl/opengles/NV_depth_nonlinear.java create mode 100644 src/templates/org/lwjgl/opengles/NV_draw_path.java create mode 100644 src/templates/org/lwjgl/opengles/NV_fbo_color_attachments.java create mode 100644 src/templates/org/lwjgl/opengles/NV_fence.java create mode 100644 src/templates/org/lwjgl/opengles/NV_framebuffer_vertex_attrib_array.java create mode 100644 src/templates/org/lwjgl/opengles/NV_get_tex_image.java create mode 100644 src/templates/org/lwjgl/opengles/NV_read_buffer.java create mode 100644 src/templates/org/lwjgl/opengles/NV_shader_framebuffer_fetch.java create mode 100644 src/templates/org/lwjgl/opengles/NV_system_time.java create mode 100644 src/templates/org/lwjgl/opengles/OES_EGL_image.java create mode 100644 src/templates/org/lwjgl/opengles/OES_EGL_image_external.java create mode 100644 src/templates/org/lwjgl/opengles/OES_EGL_sync.java create mode 100644 src/templates/org/lwjgl/opengles/OES_blend_equation_separate.java create mode 100644 src/templates/org/lwjgl/opengles/OES_blend_func_separate.java create mode 100644 src/templates/org/lwjgl/opengles/OES_blend_subtract.java create mode 100644 src/templates/org/lwjgl/opengles/OES_compressed_ETC1_RGB8_texture.java create mode 100644 src/templates/org/lwjgl/opengles/OES_compressed_paletted_texture.java create mode 100644 src/templates/org/lwjgl/opengles/OES_depth24.java create mode 100644 src/templates/org/lwjgl/opengles/OES_depth32.java create mode 100644 src/templates/org/lwjgl/opengles/OES_depth_texture.java create mode 100644 src/templates/org/lwjgl/opengles/OES_element_index_uint.java create mode 100644 src/templates/org/lwjgl/opengles/OES_fbo_render_mipmap.java create mode 100644 src/templates/org/lwjgl/opengles/OES_framebuffer_object.java create mode 100644 src/templates/org/lwjgl/opengles/OES_get_program_binary.java create mode 100644 src/templates/org/lwjgl/opengles/OES_mapbuffer.java create mode 100644 src/templates/org/lwjgl/opengles/OES_packed_depth_stencil.java create mode 100644 src/templates/org/lwjgl/opengles/OES_rgb8_rgba8.java create mode 100644 src/templates/org/lwjgl/opengles/OES_standard_derivatives.java create mode 100644 src/templates/org/lwjgl/opengles/OES_stencil1.java create mode 100644 src/templates/org/lwjgl/opengles/OES_stencil4.java create mode 100644 src/templates/org/lwjgl/opengles/OES_stencil8.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_3D.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_float.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_float_linear.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_half_float.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_half_float_linear.java create mode 100644 src/templates/org/lwjgl/opengles/OES_texture_npot.java create mode 100644 src/templates/org/lwjgl/opengles/OES_vertex_array_object.java create mode 100644 src/templates/org/lwjgl/opengles/OES_vertex_half_float.java create mode 100644 src/templates/org/lwjgl/opengles/OES_vertex_type_10_10_10_2.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_driver_control.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_extended_get.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_extended_get2.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_performance_monitor_global_mode.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_tiled_rendering.java create mode 100644 src/templates/org/lwjgl/opengles/QCOM_writeonly_rendering.java create mode 100644 src/templates/org/lwjgl/opengles/VIV_shader_binary.java diff --git a/build.xml b/build.xml index 8d25e187..f9cbbad6 100644 --- a/build.xml +++ b/build.xml @@ -9,16 +9,17 @@ - - + + - + + @@ -111,6 +112,12 @@ + + + + + @@ -161,6 +168,22 @@ + + + + + + + + + + + + + + + + @@ -227,23 +250,33 @@ - - - - - + + + + + + + + + - - - - - - - + + + + + + + + + + + + + @@ -263,12 +296,23 @@ - - - - + - + + + + + + + + + + + + + + + @@ -364,6 +408,7 @@ + @@ -430,6 +475,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/libs/windows/libEGL.dll b/libs/windows/libEGL.dll new file mode 100644 index 0000000000000000000000000000000000000000..b3c91670e8921218c2c6b169a95c5b9b5edae87c GIT binary patch literal 3211264 zcmeEv33yY**LT{cB|w*;DHJGDBxs>56_70;EtFDZF>Rq`Z9zdw*&#ttK(G{>UaP36 zC@vr_xTCnBB9^TI1qA)GDJm-BEd^O+6Y2N+-J9gz+@vk|$M^MpzWT`Y%$zf4X3m^B zb7r}d{zDh(f^<5a9{<}b9<9D0sXc&8JII}dd!q* zlgCaQH8JL{QIjT3w#D2zCT5y_Qp~tXF-do%$4s0&dQ9uEuv%sp>(`ki}Zu{rj2Kh7qdY29wb17^goJ1YHc zE&WX!cUKO1R@4G(FP*MmK(KCdms$PYGzWFzO=<_!sHH2etJ6(sASEwd6rs}@0q#T^ zA;S1adGSB@UtPj2G9A(aB@Bp2%Ru@o|5;>iqx-cM)8lnB`KO});^TF1eo+xpN#7UU zN|&NUb%q-8xK zziuM@O~C)HWinmpCM3kS(dibs{^F1OzXX)hdYnu+xfxUArT=xspjZ8uK)PvTCQQCd zr)yyd01fDj_Ku7@gHHCQcyY6(PAUFp=p2>SKZ>q=jZ3euGZ4o9>R5#reZUFqY*KD=J1E8QOjk~5zo`0;Vj9a#dz z%Y}eqMgkHZ1j#E!!Mf5%n&FY2llV~0p)xMDDNo*zmG%Ed_Qt5ej0Rb zIsrTMPeg;~Ai9jD)xH@dby-jVqqA**UcHz6S^+BRfHK4w1S<-FT^9~$>ra5*Us_jJ zdOvGWNcNk*2ej-q1fRx(--j2FwyOXPT8;**-c6A9SbIR-0zi_3jg8XP*g7cvVH$#( za}g}A2gEzCfv(Fv2%0^OU|Asf)k0H~TL4N82DB{;hzHXU-1rQF?JVQ`!w6Q_0Ldg0 zcV=VE6z7loz&SS(i2Rla=FLLdcQt@L+!S?rHxSXa#}WKC9(1RgA#WIk7&RKfH+JNh zI}(UKA%OlOavlLhhXAPAVkU~ zoua#;1VQH_kSv}D==gCUhAu+17wa6~4Z+g8!0&Jpg5}pC+R}ik{dPT|pJxJU^#l-| za*?;`=LjCoL*C}Bfq68d?_5IgI$1@AqJFFHM^qSq=!e)nC>=$_fiVcqtp*~HbqSk| zy!$2sIvoS{4^s*E*Fau#Z_s`IAfjC|5%kIj_QZ#v`?Nlw8KJ=bl#gh?k%&4UMerU4 zJBNDEX(57*twC}_7D$?t{h1>mIc`UA@5jLYLA|n4rk~aY^yFedsqCZKjS>BbTGBQH zbkFHgmy|U?q*I8ktqA&zLexYdPHuvy0wqBoBK;uO1V#2*M^v5#5$cq<@&z|L7|DI4=2(!FCujw4Ng-Obt`tbrhoefi-m zAX2l*?@9FA*jY$RTY%^>4oL&;K~OTFhnpejQyYPvgXDM$7_@jE#P%3Ompu=eAsAGEU{wpG31(n# zs*Sw2P_x(003!1=%4kdF+CCZ3Ozcyao=yig{1Ad6G{`TtLeRJ)u+MNx*!?J?@!uft zusR49(!2%?Lbh!j)2{}BeIV6mB3W%2h~OKF=>`gC91Yn5%JlvTh<0JcBiTpRFA;oq zJrK#$0X<57mlm>ql*TkNeU3vdY6_}xx+9<;sQj~N@CH%_?^r-Qlp@*8YFIf8hLL>- z7P)*pg0)oddwL>xY(1iLI1hHZ4?#OBVHV{)D-Jmp(>(mR7*GoitCuqnjpsBGS0B*f zG$0jE?_j0({$$1J#+0u51 zhOqYUa!B^O8$l)w?E{Y>DCz@}l@md-;t@cT_JXed&)}Cd3ee{c1cl8Jed0zyMv{~z zBf6(0g2e8K9$+X$0(d zsfgB{jA#JI+oeK8pGpGpG*)9`ETC9cH;-m>?rH>%afmMX4bVIHgFyq1>0c=!-8=;M zv6US-rUSA84W~AJL_<669HK=XNY#E-MDxHoS(QIkdamE zdlrZi_SW)N2%fbg`rsWvJVqPw*|&fU91APH24VoGlg{Cw(=$h#TM^_^UxMj_jC=sq z7{(!M z_(OW7C)vpdINo~y1mX=J13Q9Ji=~!KC-m@Ru#WW;03}hgyB`NhAsfB(opfNj4D&~XQX+llQ(VISl~ zAkZ5Lp~0)u0cjIh-FkHqq?r(mIEuWn&4AeW5$NVJ+tvsWzr-cLI~4Je3_!hZK$?;B z;C(bahw0(%qM~1V3D8p<3xQO^5i~sKS<@9(WV_5EexV3VZEW;pV!Nau`awFPtLR^i zzX^27?Cw;Wk$xO+dmlvFbyULdxt>`wA9O27cR3o-nlwv`=_0nt2h@U<3@!&YVLhUj zDTv<0?ykd%hjM`ZM$f1%mEpO!0S%^tOlKdpei&)v7C~uDA0qGZSYQhsfP!yCa3UPR zpKSRn5#Tqq9K^#pz-n+sm39N55eoq=X#r^U6ToKS1hDkA14y&6_TA}{e9{oXZVs?1 zGZ6^v-@_b|k5X#S-Un_y`aeT7cO60D|McgXAKO%x=!? zt3CwQvKB$|ctqEK3FuNyKzq*tdhrhgbB-c7{~m&GIA!giy(%R_&!G`v192_3H#ibd z@jyUj^b|T!Sra)lqDuf}CL(X(_rP|`M6iUWd4(B>+tL7iJO&lgha$-4=&7|GX}f8f z6Yc=?C0*EzV+c~2w;u=M&0iyE%g&p~!dJcv>~yL{7AxL|^?Uy$uo2fIxc4lgA8@Wn zpiDnCgY%Q;k!?9`?AphW_9`3G<5xtt(`3w~6EpoZ(k9W&)ht7>n0deIkKiKJc2G2k zN4}3}UrxA(i8x8$;y?<5dhCU?2SN81n{fVDK#$X--SGe_G>&w7PU>yAq-`+`h-RF7 z=CPo-IY_&kR__*yX*ehFbDW8Pei6|yN@(yTK&R;r-u5MekEs!Q_GLL$`SutDo9iKM z3TyvqFGLs8y_|mwptYBfws#GJ8+#zyil$%*`}Z!cw+65s_3J}b+Oyn8j)48etw8)i z^-186{FIaHhpgYD7eRc9I=+{#--fy%dF~TLQ`qQl=q3;7g22JNXXr&{w@2P*P5~Q9 z13J(s(f3$JBaQ$u7tnMndiY-m_MbrT5=Gob0GAeYr-O+# z(!TVais)Ht;!pDdZDTi%tp_eY=O8*K0l|_jNXt73XaEh=R*u0lRL9R*@h`pxWG8fj z75bAa>$-c9HlIozy#a`GA`05j7!2OxGGisDv5i3p)^$T#%^MK3rx|{P_G)MpxQuxk z(N%XMTDuvdGnydS#kQ@TjI_NM!SBwo2EsT(UcBkj%+Tk@BIVV zUZ)XVR0>4xn-P6wEP|<7h(1KQI5|UXpp&|tMoZG?AkHo~aNlAUb@zRC+AelZ2*>2$U}R7;-I)~AH{4RWOw+gZD4_O)x{pNO ziwzL$rW3u48ulkwV^4B~Hkl1BYpE7bZ3gEa)HTWeEqMpgc67^r;6QXx5SwUj9-&j7 z%j))`Ug_vXe)%@i4zEDkuDg+A0$ctdXZExk5j5fk#9%7Yia&tOvH`ll>YlkDd9yh| z-g^t^22m#yxGyl?jOb0Yz`N+JZ{u2{BiA@L(hPr}1d>>8drf~6d9#`zsJ{S+#q8C0 zHUTk|RxgsShVDF~4bu=kOwk35BtP~?Z_byeXc#BbN^NO`==4VrgwrC;qOH?Y?05Wx z;0tQv%dGA)j=WD-BKiu;NaS*!(?Gq` z3(*Ec01cW1Vq+u_4Oz*Oo(SrU2cqR3i)!V}k_8au}zn?PeegH2t3JD|{Skd|o#m&Y~$>h>G5t!aq5JkDV{sW+e@oT3** z0Q(~g`l23!X7u$A(n>Ytw#X}-yq0shc_0{Rdq*Ie#vqKIbSJiB`rF9yJbQHvH#I`=E+@#@RL57x1GnWfe$gAz55gh);v_%~e+R$2sZBr82=?Pr|DHJr9@q&)e;TOsG(4-5kary= zUh_@_n>bv`djJ~BsrL_-wkQltm(l>-O$TE>=eMKGTW<-{HtYx8XY0w2(r8Mfki|K^ z^9e*3(||t0@z!7lxV+3tuIh=Pb~Nacxe;3DE=1Q-BQhDJ-3nH7jv-CthVFFAU>!H7 zY7RkghWxs-8V$HJHi+ZgdJ569MC8q&tFfLcFU?0|*C0m^8rnIN5yb9C^cyY(=Tc*9 zvKk9Gu#dM#K}U`v`ot+f^SBxtPY3)JN@EoLh-l8;=jgru%pTm%vA^Xcf~Ivr`~%H; z=^#W+rGO%6sS9a0o)``6q6>g5oDmmtsMVq23FS(CFKZuo3dH><0h&qE+-@95E^~@5 zrE6gR4RrT&o9Yv;d-9J1T6PIR9NoM<9H9X;^+&0gH`6@)Oa-1eAEPm)Bce^|mxTX} zpgB)C7Q757`y~XQ(8`ZtFT@{3a3B52yJ=c(p`u?Rm$5v0JH@$n;z2~W&||!wgXH&V zkbQl2lr0g6?p*8M0+Yt<1nN>^E;xwXgA{bAy~Q*L5E*}SUwOW{kWv9$84u8pqt30+ZvjY6%^P2 z_FGLFviD~o$B!=n8cG|{t2=_7XOKg<9*Dzi*1Mw-yvZ5%H+D*(9;{liMT2SU?xN@> zy$Hm|0YHpq*LJ7j`GmcY&*~l|t1k^eypn)u9oo*>vk?7_i{Qr?{hrQP&Tl9qh-3PO z`+yxn$579LeryQ3XLLXWbC68o2pvZMs>BGyRLQPbuU z`&~t1m8iUxv1;UJ8h>qeAn$2}`NA4t?Vk?ggM|36qzor!3 z+f@GjB7&EuBk0Zr68n|3qVt4)s} zxQ(9g$23}_x#@I&Ik*%K14%DV69;)*ST+~fv$Q#>v>RQi==IpY@6mistOIBtjY80M zfS%`2`#1nO4m|*<4V(H*8iHTxXwIt#XjpeZ86-)iW*?;$cvXkApE*nZ#kQsVg`nr7 z2zF#3$7?sD+yy}hj?Y2b>-`YiN*iJ19zYz2^DFde=5yAaO&Pq(sdCy;Kt(;lIft%f zQ+f(>k0EW=U_?g`LU5d#*npbYi#3=+zcY?Le}}I@x17BnIt|$#q{^S-nCZrO>-;&S zO{bbo`U%nI?3vNTezgKYt*^l9WzH!^4!U9VG8R(Ubv{9GU?{L1X|$$E=L>Ax8d}Ws zTp%v9y&vBTY!dSxr=OEM7(p)z_TWko$Gs2YWRB^nto=i40M%d(Hn7WDB?4Q((Rde) z>RgJcxe16f-2AzpYo;!Tf%ug|T*PV!taC{#q&@mHg6JV2&gA~z0~R3qv!i0W0oq7+ zdH~mIeOe%BPvK;9T(+12#2_loqHhtskLq~SRs^>YdXtLTF$^R>b1Xc!1SDIyKxo$m zP&i$UKAhzKa~Z*pG-SCy0BSY?!(K;gwv<}jfg}0RVaOIrT^n17;7(ekV~v2wVY7bu z4Z+-*NZWr1<(}b`nl0I@A&Bnge%%x*$fxX&vmET}MWlt^0qEv?G3*~32B<%4aQ-mp zdJ=KlSp@sJQeTjOpv_@mU#B~hPlsw5H<;e2fgqW6p4tQ0eyr(U?uAb~1jI4UE-TrX z)np$&9?;h9D0g%nV7t?pf6^6*UoRrB^$?(j-vhgl*g7{OSj)yZ*^c)(O#jM6bR`vJ zI>r7l6|=M((vp@Uc!71k_cH{MoPUkW0DU?HWz6Uc=oYrJD;L3IKSK1ep$NKB#3Dy> zQ?7fmNPK}N($o^s^4&ljIfv-W#}LGa0sF=|q}@~-*qvvdq?pjpsgI0i6Ed(UQ0D6TQn@DeNTRNgowF7b6_Q3XM5X)iT z^CLiS)80S557E)=nZ`6^xm=>$IvqKdnUS|ImFuiDU()kA_3BUxps%QU&#+dTS)miOITkjx!!!gZxx3Y`6@nTIfw=Q~1VuEjYgnN? z693L<{g)6d{s}qSP|n{{l6LMq9W)~PDSeBDPoc=EwCEECBRI#deQyu2+h+qZ&}6Kb z2&rY=4Z5e7B5I?Cb)SLYA_wg52oUf56?vD^fOZ&&U^%V8+9?Qn??Lp`ouKQ#7=eM> zbUGBob59{C4M#ALvqs}TfgO4?%82ZOG$VJ=J{^hRa2$g9wGf1k2DUd1Pa2)O&!`cG z7ZBXVdFJhR0M$GXR%R|A$~iY4;gZ|l0f=I%qvb0w2%#xh&R&hq1-2s{=C22U_%BLB zGy!T#_H$|ex890i@ie4$*MqK0XGAyCWawyzr288SX>I3o89tl6aE{itEvxq2FG$mMOg>$oP=-}>|2*i9&4zm*wt--C07pc?} zxjS9J38-Cn1eaO+{jVZeOb_(_UdVQlg$L7D(b12va0yUCnf~-5g0;UO>f8&c2RB2u z81*EOkBO1=JI*UVXK{}xOCjk0_#80pti=F}9pL-A-rb>-sh1PQGuLisOPWH_A zoM!iN4c2ZdqHj|fhRj5ebOLnu_ea_ntH5tFxvcsKK^Z-dDdY2ZE<)`2$(M zV>B62RK1OyNp{RfFpe`x674}bW%Y$*PdTydq)L6sHC;w)kj!UvHr+SpU_fac6-Cnd z7H91AkqCC2MOyQAz>cP)`Ob65_6!BltOwHKX=%R8LGUCUzSJRLwU%3sufB$~4F}1O zZeFJm$a{Sdg1NToq`YI2P{u1Bd~%T>EJ<7Tk#eCf%>Qy%gA&Iqm3J1A#;6FrC1uw0aY$v9HofeNAXi zZxD-50eYMjdY-%NojE16=UVrjNq~lOh8@G{eJ5w7nS;!JY<8w3~WKijE8t3Ck~M~!&$Nko6@gWxE&?i@9uEvMsd zwd7M4x{GB+U;%rsf@pW^=;0NSC1$KMKUdmw@g!8nO*9 zBJHz=fMO4#@aw6&&r?kGsla-U?lx?~7p)QPMO(L%P#Nve-ERR3V4b^O1pAMsK#?}k zZR{U{v{+iW$H#;2VS0FdsQm3|nzN~*EqWsQ0gFuN1E}^7fRf_@P2CCNmK=Wds6%(M z(fvu6@+pFJPLNq#71g&QI=Type`JS#k_o6;IS?cBkhd>2=kP>C1E_VEUIuYTs_1(& zK-a$?(gssj8<}kfTXf+O1ZIxL2tBZcoP~lZ-Gl6?@gE`YD_KaJ{|%tw9K*0@V_zmO!-xswGe@focg*0@V_zmO!-xswGe@focgxD(=@;2#(k}N!cqOPh0Zq4P!-GiuTs@tSf8g0Rh59Mi-GTym!lnq09Jo+Xl2#k zmNzTPI884k>NghQpHK53FYiQQy?3R3@Q|Ot{x(=@H7q{2&#Ura&-(K}H&-FR4asF! z-F_{-ChjReLulKs*s>$y+2Sl!C4B0uEx)S%sS>ZLPgVVSmHevgFSOq(-i1LiMAd4g zUpfBriX%OhWZV;B|44WxNscQ+N{%ZUCnPF3mI6)6D^?}>@Ym{(RNvJ#E3B_1KZn7s zbwWU1u~NER-%9K6x4fPem-o-hM_pY>-a?9@Fg0?)*Y%FH5AAObhId$*DhC5R9Znbvxt~7o; zvXjP>i+)W7^sx6rvfkzrkx7DzyIYCJfN$Z*?Y_ zjYQc(gn-6BYfIs_3UiUs(d_2_CwVk#MP~5d%fbU ze-8s15bu~~5aKJSf0$H%qpJFK?4hi$J4tGZJL0aapTDgA|ERnqc|?20=zrh8jsDsG z)%t&0`&t#gD*cf7x&7zDIt4!dv)aGDdVJoNa*wRp{nR)2jQvl{-)qXt%Nwgo6aosZ za1~&+5)6)jje;?~a41J)11NdnU_zm=7%td$#!+Y3Mj=5j<+0yDf1!@WNX>R9+J2XD zfsTM-s$%?Tww&ZD-`-!a8eBy;6awXv!^wZAD`xw{tLz3vFPUkjQNGpSRe@ubmh97h zx4av9`AdjZ?k`E?9)F4C{{1DE7oifw|8MeUdnp~Ye$gVx`bEgCUw~EmMfv*Z7a2jn zh`Sp7BE3t$SfHd|1Qh*Z*@}LV-oJja0+s6*SE{m4<1oN7ggR3A$B1P&*WRI+-U
QZ2?g{{P$j+Vx2lag}OH1Ja*=UZhW0e=yK0UVkW@I~QJAydtbW z##4T=jg2;-#Xc^SKl(z0v_n%^x4>8suJJOp^xC*jeXl`#tzz?Ed|T?WS6cpPuOy!! zt9bfn-&{WRtwKIN?NRZ6+zqlSJJ05OZ<@RxX)|b#fFM4fU>u+iIQ#5hzH&JID ziKc0_U=2&~Bo)doNy6Lb?mDRD2LBV=f6U<7vQeYC-yo#uA^xD zLzy0}t64Y%UW~1b%LuQWazvZTqTKeb>5tNQ_9F3$fQ5GaX*bDy=>6As&fl)Diy!B# zirUZF?TXu9mA_mCe$8b#JgR}<<8S>Bub;SH{$oXXIkwxSS}~seoD$dCM{Rwz{paJ) z`Lu_gh0l8Snym*}|BXwP`ZIoLxp(~Rhu-o0my|g5)hhNm;H%m4cz`_A#{-gnyXUv- z{p8Zhr>gN#8UNMa`PS<1@RR1ZyZtb`g7FHI#3DV`#y9S5jW8YR7Zj%t5+<09!hTzu zy!&we(LDc{&{LmTbf12PDMQ#U?82FoZ~~`JUr47;Syu77(^6Bj9pg>To>38)HA|A> z^tutlyrnPqi8^F`5?$*rj(39qduOG+OQ5~mBIu;G6UMu%8D71K^Qhnhn5hEn@j@hl zye|TBY;AQ$hZJ)L??f7R{+z-80mKECm~dXI>T)LJ7u(xrel$exuN2l``yd~9lD|vY}VP}?YnGBmGgn0{_`U* z*xM_Umv8^e@^{-?fAW{@t$+Drf70T+KY2FzC z^~&pKPfBw@CG(3t8=SR;En=6aVF9FG62h3na*}9R>T>m#CHjlV zEV?;YwF#=~Mh*nH^Cvq`GG$H=7WJr-kZi)1qbY8)#W_7tIG@jISU>?7jX&lLh3HSx!R&B$cEGuc3q+v;a>z2C_y4myrX4bbOp z(pxSFPW#d9N;F(Mzf`5atj{k`sOxi!_zmMYe|5yGPafrVk^YcoJ~+Edo&Thm|GW|( zBpihbT76V7?`Wvdi`$y}^1h77`}1-pcFf0|aM+K|&Tq5qjImr@TCex=rclf))e z$k3;W^S}lSa&^vR$sRkCO>9f9t|VEn6Z^wndn?j4iseR$Yyac6cOmjwwrul4oV*GE z18Cr(f*dJHFa>beK;>X*>H&TeJp5X7By*DZdwUUNt(~tkgj>XypQ%_M(=&J$Vl3<( zxu96sFPyVC7LpBC;Y)G*v&hsTQ;fohE=-Pus6lYq_EUCN1)jOwFtq2{Z?3I;`g!>M z1MSS5KmEzS?puFD{&92yA^#;uu1fx}FRnp?Q$cYUGNb3(6}tur zjB!D-UTywLTf$hWbh5NW@QTx3JwSUzcA+vmCq@|lQ?v1K(Av*I(pFL4<;z0pj9~HC zT^RelqAVrT>kGY1R`^=t#K+3ZaZjV9VR6>EeH`Y6*nV5E)ixZ*UDGqug%KvpX-q>u ztC&+NH96Zc!h~k`QhYT_$uLhD`Dg7-!O&qh zO*07-As?yyl3qHUT!*~PdPcnJ#rTU!!Z>f4#x@ zD*F%ZbB1gi($bhW*KC{?DkK}NqW!REl$*IUaU{nSBpZbtS*1}vLd=_mY;cK(7ke3`lAQuAKH&?ze*LY%zmUx2E)Wj$<+BC zldvC7>E!LO8k0?MsiNb4w`_(r5G_C28|Rh>{XPgYRS~*7BUc9~4^Vd22w~%}4WYWc zzb?EcY{o?4j;J+s&n;V~wGlG)Wv%j$*-L2`#+#-^ zU`3dn1<%CAE*n4fp^6q|>O1$0LK=kG310B|pi{1eqi5O3r6oDx%)Ue)tMgRsZ)mlW zh5hp*OlB4O&F<2yB$fV%D){^P(}m$!!}i3Dmy<9;nZjJXG`1gE1eU$^Lb}0`VSs-o z^w1ZkMB<8P60Rq4L(g8PXelQR?C{A6IKK&mrK0nmXpqk!Bj~ShaYt=uvK<2qlDFZw z4wTt6YL)sPij)+H@|q7%6`W!Qj(Q;y1dnC&m zV1Nc}5$-buU9eo9(Fn=XMU8%DQ)=9ajC5#ReaMHNlR?J?SCm^fcYop5&4xm{DUG^0 z0y+%c%#k)G+6ec_T6tWhl_RpDm047BgKh-MS4FXd0WG8l?(x6fT4+S&sfHu6U0IRS zE3U}wzkw+4v?pET{lHIEj(5^;hYN!KX;HaL<)y$nc3yJF#FF3={I3uA=?14{t2 zxA|cdqrH_&cf%l*WERZ~Kv(tA6&e$;(|RG!Y0VHn&1WZg?|`v<^8+e-7c1Algu$zu_o)zBexRwJc#Q{ z-Zk^z3&^g|u%gn27t70?A^R{BcvY3{>2a^BJ%bNQec(l;Vhwtq`J|bgg^Wsp$+kLp7jjhyomk|) zc7t_$|OVI1?`)PScldx>MF#mo7cF!A6>z8|dyR$jZ;$W%> zzAJWWVx?KwW;T~3nN2#eCrT;8et;F|SlnwHEcV63pOcW-ni*nKk)tI$QhW*rwpjk< z2(Y9!^XT+kU78i0{gt@+QK(C{0XC+$zNh7cqn~+#Bimr-4ML<~wV0`Q+-@jqirvl8 z@WjF#;YhZ`+plvN%EDnq8Jl9jHaAYUQ}y%iHR*7_OgOnZAR_-|80A4YvKglr2I(wc z*sWNblfWJ&7z&1%3Wk~lBd&9mB${*prs>N@S*9B7wSG<*h8S1|@r*-iYA7{Q+0U!oDtPpBAN3Q`F}dzg<{eELB$P^%aE7g4ZbNA3 z`?7|bsBbO}jfI9r>BQypBn=IvhPFhVhl{Ua&n;)4tf4Kbq46Br;vcY%>B7ED&`od* zHyg#@U^|5%sTf7Iv6cIaq_7zOg9xKnhH`)1wHA78VgfQs{^`x8IfO3kEXxgG7E}&f^d1K zY*R%3uLMIZ=j~&$nF3>;_yS>omk^oT75T$6NtK^dl%gYP0C3#rIQ#b>_z9EF4 zUz|N`hCT%whUliz9Inz(wPua*sPsVpuIWECLa!}bG)SI*2V;QvneRN~@%-PPFRq`X zoi7?fvHi>!V}Gb%zR06{@h_Y&f(og}70nkfEbup9IFMR#o_A?8{}0U<^c#eG^!aC< zHF$;I76UKjM!5WFp;dfyPq;3_wK^7GKqPOI!C8YJqE&cgA+5(;Of5gyO!;SRSow>o z_h3yd4wqQy9obmPR>Dg0*7_hbf{XGKnvNB^Ui{TK659awvKOse^) zKK9W3%tvEzYV0*1eGFgge_}rBjWu+Y^U*2nc>N!kj~+%_u5La`kTllceAENH{LM%B zwCNhnM+fDZ%`+9c=c6}aTRij8oj5c2|6)Gk_=g0rAwk0;IsKh1`|Ry;zncq(8XOK- zAz;tBx8B)XIvB+cF;fh}9sJG|?o2j5bKs7d<+N=Wj(Tv;v%{W9h2Twd-26R(>0bg{ z;`=mr#P&y7BN#0iQHQIGP~cow&27hp6R8-$QLKY$Zh5)owEbnND4dD1sJ}fabE%DD z1%s9RL%9uIa~9gjlf{WRUBGbTK7t-w30bOZkDl^UrJElvgXymSy8#8b`V0RED+j)l&zg4X*j`A_Qr#7!6FsSd=@4bD7|=~6WpTEK^dt<1I^|%WE;b5yrY6_4g)hv**tu3 zGAbo_T5xqh75cH6)93%Pew@M*;+pA)e7+Hn$w!`vlqEY3%RPtWV&wFSw?JVxc!nY0 zB5)sNbbTCx>VHPHG?PxH@u^e)qvFAdu0xAGILf`c{<#u;eD-hY<3xCo{`B$g`;hL@ z$2nSk?7(dQoId&)zkTc|k>mF*?9^8^e$j_~7vQAjoUNf^2e44uAqId?CjLH(&5{Z? zb@GlHq`}|YfLl0CFv_B726=Lrnv3uLzY=#tGngB$7wiB zKv)zrmepo)f(iU-|1{i8)zg&nZLPHO;#%R3&R#oTjo2j;v5# z#}mS&Y$t6uTE4_oZfhXcz8~%Ajb*_TI3>u06E8jl0NMrhTtQ-9{4xylEUWz;=T#}! zD#yc3m|d@6JQQii!|#~(DjW|*+VN1Vp_azOTxC4G%RZII!<-7n!yF9@X*}d;5-}d; zDC42U6q&1gJb<;|@o=Mti!>g>G>M+^AlwD6|6Ah$LX!6^oK?%G^drolsiV$1BIXP>k>lw^n zIX?3jjk@%LfE@yemt#Eb^UspIu9g{y&|jfuDWKw){>YXfbnT*3t~1gkG4HpeJmG3? ztO(0#Ma&tjo_$){hL~@G@wC*Pr!_If#Ath=Ju$CH+%zriNX$cOZf>pWK+H6M+-@ai zu*8kTIF^lGP#m!!4Pyl|jFv}RjMTqvWzNykD8ngCIocK@^>38SIa(TJZj96;m*EXL zbxcxmlg8{JV9;uBZWOTi1u+B7-rS@fS>=zLq(@Ks<0k3RY=7LO9=X#WH>pQb{Be_{ z+u9#DNxCL~+$8B<#A;8L0XI}&UOj%W$*<#~np3O6E0;iOk=|_OD3#PJpUYC6dS9&) ze{kv;*&htR{!WGdAm_^n%&*e@tcvf)qJRD0q38UL-3;mCs=*PS#tFU-Yl#Wo-vu~7 z^X;dYB4z*gv#R|SS9y4&@Fexl5rPDh1D~GY+MDEK48Wnq0Hauhg?J%$Sqd_uOOhMu zSRKvF0dgO({kw4b?m1ssxwcY&0fp*IzZ&WBF){xaR51U`mk-{PozIUsO&6p@V$a0y z1!Nc!1Fn@wJ6~>xnvN3gRh}=8j0ub9$J9ng4R)k5(){;{TD#c3KSrq9x8>7H+b8ee zz3Zn*q1eB}ePmqNx2$llsqIHy`*RMvn12>us|48EVEYbNl!ZY?^i3~K*Pv%`Ry`G6 zGsx33zMFbD9q)D2D&8R1RJx7)SMk+u?74&>_16h3_Em8)BD=iYWu!dkW&6-%WwTOs zzbK;0`$fNGNfUwUeo+~E&d+&qN3;Ti#rJ;EQ(UrM!}H?ks_qv>yY3f77YvQYCME9| zMftu2vnZ?MKLfiyk8XUb-$<6nc-&}#4{Ir&7{<-p@~!gD|(ZH#`)-sOU#-x}q7*|qQ#J0UG^ll16``>6S9 z#&-qh&w)dE{(RsgX{=Xv{!IH2g-Kqqe{vogOn(mma6F02px!PlHxLZcCrsE8HsXA0 zhxqO=oVu2TTF%)|`5v45?ziL1&?`CrX;jtu&s1ubpYxxO?nb(2zuo8jrwg zAEK7~9)|S8v^5fUn+sDKE!diYT}gxY9kD1(`SGqhVl7KJA&7I(rI;m*ydxHm-OQ0< zJ{(l{nS4C&h_#pQi0y*i9K;)9Qv^|L0M}jUrIX6R1+h82AT|iw*(la?L2Qa;J1>ak z7WQt0vq!t@f*9^$<#;ZLwN@^O4byjy2}zl z=)%P4g4F1OUeSfUqH!~9V?=&U%(t8|@%^Y}CT@qF#q?V=+N|r89UYNhiimVSY@Bq; z8jVv{6Kq^YNiyVoPd`X3SsIY?(@8UVLo6CM#CVG<+BQc1Yp=^2V$s%;1mvj;hrpdD zBf7vEU62)x!-oto6>kQ=vU>}yEaiGnDTgox2_dYZT!?%}EE;E^Qen6w21|=OqPTH+ z*>X|3BbJEu2JVPS_`1>^F<0rE`+9hJ3fDv>={*wB~?=NpcKl1y_zqskt0mmz=VI4EYM{$l&nA`{o47$s;uj}Lf`Ye5@c^9L^6uQj{$K!{9wcxtV77T#~G{#1dY~-n`PU*oC!Eyo12c; z0Umx@o&(^gYd&(XHykb8hqI6GgfQl??1u?4LdnW)UGul{45U3Z(8%pUYZ^=szV3^F zD=CDhiVwVtBN1l^OLg695GNxEN|Ti>Y+ONh!=N;J&s6re4oCdxPL<~+xfl#|l2Mhb zIzMcSd=;LT_?#c=HPqVk!yYsUN$T^%M$!?V>ils1?cN1S=Ou4y61~q4`*SB8T;1m- zIGW^n31(1Tvq@>x?z=8u!s_?e zbx!e|k(>~8od!3u9kbk{x8Xqmoh2DZ(~n_Pq{GtUQ|wGsu)huqyBPW7gW=|`;;GTn zPEbr*2F6qhZs=fsPYMt_4gqaEx;IwZ`$l$J>-d7<<|OfzLBI_($EJxj--d;TKLA5y zh1<{)|KbIMeAfr$F&M&09KzysW+4-C&s&lOKqNl9DA|}bLNVVh{rY%*hTRn>!KcX( zrsIC4t!XB%qr)i-hfDZ8oGh11h#TEjv8P<6>?~(b=~HHBPw8fqvu7wRN@WjWR&k%E z_gJ+0>h9Cf@VoC@@s$$SeJg^V`&Nk9-1n`B@VakBr24+qjnLm~cAus+E7?n5{p_Fg z=S;=r#j!V}j;{2)!cYD%cmB8jUjFUlUFA=_g8W=>OvM0@_M0mG9?<{Z2Ifn_XTHok z8jbO~ANv!-%~8%E{ysy|bbUK4MzBO{F9uXn9=slmLO4=M=1u|5pndp6L+lBU4UfQV zrwyNNj*%?xc@VS@v}JILU4q^=W`~3yjhb=z#fs+Cs z_k5t9_`1}cuC<4pPd8wv5<3V|^SJ|ZP2bDajCbvLX88@d$>J*Cvp=PMAFKw94&SFb z|H4(hPo;g&i2dUpFLymCjTg6Qq^{PE7wvkS^5NcrN~B&YqJ0mN?YmRezW?@pPVy_` zW~NJCh%5U8zw`p)>h=fle%kPbk{DnmuFd;$p&ow!!24-@U+y|?Ys_&?zL&pv ztHjCY`^4TT!Sj9MhG(#L{Qu#5`6~9y)+az%SGQkw&A(5a(&ZZNmwD`q;YIa+uIfHV z)$hez-%Wd;qamz@pZgqRpNAItyU(#2#{<{$KF76sFXo4~s8@yG|2IP`ecy}W?n1?R z9wNv8L*M`V+5a5LF~AL_x1N+H{>t}H|FQ2^M{~p8&;5lkY$sQ8f1wq#{d4yh{KzZ5 zyGveko~T-0Ri4*P#Oc%DIj_4F`L6uDu7-wMdtSGa`>WWKt>k;ZP3Q-8fzo;1JDNoA z^SW7>-^o>TUWc!`z0d2$X}Cz|bpthtp7XjItz13+FZtdt2If*4KNBCXS|8}I5AIZ@ zKk9bpz19+pT*3D^?zjE@eUDSw_e(EB;Q#gaIM}~R#LOd4L&|xg0q<(!L>$^<4VRpC zGKu%6Ko~eabi@iyoFXVkhRW8lPv2Zg0{j06CVbC+b*D$AdU3(v@4gx2nd48ME@>L7 zJ};P$(j@iVvFIN-FF^eSpZcYq4PL`;vg21H2=Mm_dYgE4gE43Dn+Um+iQh~D#3N6! zmOS??XM+6u1X1EQ_ei4g^ZNuDIK+1UJ^^!7`1=Gz{#Ud*Gw*yOAlco3UpbqjC8qB$Nd2 zfKmozO%Gnfs5K`R+8`E7u8Q(A*WQ&<#n4~pefkS;`Qeuy*k$<5W9s2@me=k(JPIq7 z35z+{U0!+Q3FxO~qa!)W-Xk|UM+7+ziWBTjJG+t zH8ZqK6%CK!l9kZy4EW{j1RHDlUh>t0Z-bmwGGFDQC@zD5Z?rgwdMRJyaMXJoxV2^imG>IQ#Y4pS5kMm2}FS`NYDQg04NXwK1!feHtcn!^bU8Lw7^h(o+Ntdu8&fpkBW z32va4A@SBJZMhBT}AG1NG3lX3*05CigO?-z=g5oz+Hzp2vX z)85B`%-w0U-#uEW?AgA8s_dCK2@bVqepp#Ky=3qCv!rO8K8S}`v`|G!b-aG{T4`b` z=p+H+WjI^|!-Z-~qG^UTT^M4rY#fw1Jt1zN<@7yWKH=vkR3sgT%WfrzsSULPYim{3PNw+2xr9?z}`RNQ(AqqODkKo#42R0+R8 zA>M>@3>bZX--@xk%ItqMjIelj9PNL5$^OS6ED8R~ZT}gy=9r-!V(}x?f-AHCQ7>!9 z8|^>d#h0Fwh3i4JT+R|dqwi+fyqpE$+R8}8bgKg}6EH#O#)$wnJHOZ=X|(*-Z*DDX zPQw1W#*d}i$KrOEu&;9~a+BD&GM6Mp)$He+tm1}ApkYol7{Sa(qwx09*8;Gu1y~!1 zRty2@QWCK3F$s(g5Qk%#=AK;Ir;2X~;X2;}SZ@Ee-w9802)d>oJqk&ant`dOJ$@T8 zKIhOrsoW@0z;>=zIf3FCSZ-B0JyDL#E@umJxfmI=jCyDp1&MEXGrEY=Tos2GYc&9g`cNIpn6-Guaqg7f)!D4-HMmY+j2?`^VmeE)(qY!Z?S81+^9(~bR zVKiJ}6s2W!gO*VZ@j-7!dmJ7aB`A!dwTyPR*T~2q-sa7yNMRJKFpAMKdPvKtruYYz zTdJldDU6H?BeRxKPc5Tb;+x)#{)An2b^nRI9zBZHGP(%g-K+a+i+6c5dQV|=P+`Op9?>$oK|BvLu4-Cug^^BS zG*incS<9%g_>MQD%MW;(ChqoV_G~Sqzu?Gwjs6(%Zf`~(D2#S`7%iL!XGhEHT`jLB zVgqkp;}l+RD!dl>;Wb9f>qc=0jJZlujTBx53aBe3eKHg;BcwN!X5_QUH|Ew7uz=e>Cyo9Ahx zQQ@`353f?J54?2ZW--m1*K&o|ng6(zYvHqgcs-}(6)T2#^BSb^+NbbZ=7(3RmRED} z6IghaylN`E-dA|NTCDKe;)mA|Ew6Us2H1a*~k<_~B*O^6DV|0JE)X zV=ILhcVS(;_W9w}T+6GY_?S1ZpYHRtk^8YOUI+Z}`u-+O8#{@~-n^brcyVXe#p|FS zUXN;dbrvteY^&PXN8!aiS{JWFet7lL^6DbK?ak}2d(p;z=E2;mRUJnDyY_1T&i+_+ zo@xnHOW^;G1h8wZkN8me0cyqtnkGYBz`1=5ixb=j5w0d-f88r36>kv+sUC34J8HxW zZy8o``Vd&Scy7N7yBuwWDS8Kf*>sA*G0h+(gy!MhlpdkNdc0~-#jg~K4Tgcw7FNq) zz;}z3$Nrd)o~Y7kpwVWS-Ju;o#E@OjD#hK>-R^kQ3}gb=^K>Y(%= z`MFsAI0E#^`n>by)Ab2Bwv?D0L!z36ivAs$KEHTIO({`W`;O+Qe_8DF8QbEox0K3SJ!rrPyNAKT!_Lw z=TnAC*>4j9%11`2Bm({7GXr>F_M~Xcgy{GiVRb3mQVr<9uOk*0%gMl-L(XEL zoZBZQ_PU6LIHhh)>^0?ZJ8D0+oibe>UD3 zuJiOy&V91=I$pQf$iuqf5&0GzMlLtu z$w7>{_|&^8uvi`cga`2DS7S4{aJXtf>Jn{A-AR(fHR0|8Bs) z#`qV5e@*c3M*M4ve`fq^hJQEV-_5u}5sQD)dlo38eGtmP#ive4>xzE~_?Lu#Dfrh9 z|M>RBK+p{~ep}aA9vOworsKa{V=n*Z=#ZL2RC;-2G;mh@9F6>nB5nlWOxh7r9$5gH z2zAj!L#j2cJaPe|I8Uu7gl$=kOHEraIK^Z2@Bm}ESUdw75n?URz>zJlU$|+WCCyfu z=2_5`1XGv+uvtRg)U@&pTwC(c=8*O|nRW_jv+zW^)vt!hi{^7wVPtEXsmzO?~U*|+Uer!Hb@9)sonW)#r>y-IXt8aq#`)94a(3YqDzFw-I zVmAvDy)PD&B!+sGAlqBjc=2hU#$HMIP*wZA`D?%LmnPao<;hzgdz9!s9%cGy6@S&> zN7u-BrG3tT7^tz*1H;ubwau$CB|VjD?Pae21)5X z)F&}UDV+7w+8=HIBzj%v^J$M(URwRo#)ZU7n5djdwJupztx$9r_Ba2m-Po?!T0YQB zKS`dz@q9*tKB&YyQOTu1&VYg7TdIRsAteflvEJ=XJTI4jez4#2Dc|8L4C5o!@x(L8 zUzB);k8jmFGa4v7Y>{{g_ic-D+dob3)CaOa;7Kf055{+ror_^YsaG#D3aKGIAMO`+@!t!X=k!LV&l+F>2vx_cY04VAv`R%WEbml8DNSra#D z;$}@eUg#4e=z?5UmHgmhIgCOoAI32_0uc?3+bJZ*!zJq)_W)UybqA7&;QyU)UJ3VG&OF+`tyO6 z(|cnjeL0()5P(;#l8tz0OLV~3qm{`pI%z54KE}xJ-wOlcoxH@Q6EaM0l-Z4H??NRf z*1zM+ zyjVcvYIPbc34R{IJIE-vMsrG!(%d6=*9YWP<(FK73iC_;ObJ(6K6@oBqtMHnggs3) zY1XqXy+lI$+hnj}z}X*GF&$ec{4q**t(Cv{p2=gMLjBmMLd?hQiqEbOum`Wv!)lye zAIO;^@a%en4Sy9!-NjPwf5m6j&d)yjqIrMCwLjtEt9>6s_@90+NYZCT#eM9%B;V7+ zE0nL)zv}lsyt+%Wuka!8R=t6rmL&yZI<^^#QuN}m46OPzyFrpar6DY}fY8I#SAHIp z)I&aaseVPKB2Ebbir??n5SiYon}RvtpNjJP5}*63+*Fg_OJX*xNB=$VCAr&UtGGQ| zDrpb1{VUruv*PxMm9&T1{*~>SU2%I1uW0W_EBeN4|H}5vtGGR}m9&T1{#EVadgo=V ztUT+Z^VrnQb1!?{Rzvwq`X|aSEA(5croV7XMZctK`m@+K_tYn+YWj>bD*l}+r!Pvy zUT#cLYP2KOT$G4c;f+P9v5wUEqQp=~qNymgr6aYy%gau5yW2>See*=43zZta@S=;<7eeRPssdpt{wlLGUKlDpIc@AhHJu^|m?~3!%bwo$-}0er(dR-u{Pb9J~8Vo5cPr3eBhY zl`7uZMY5%88sgRbGlaH|co%zr%Xf8Nmg!F)rT5kXt>Wp@!E&sRy$ z_UjYY9}L2)rGKM7+<%I83m1Pm-#pbd9J?C^o+$d*M4$R_zY+ULaqD40*B=bDrb61L zxGkyT&;2PKWhEmQqCG$7?x&nT0}P7VOFfAMV@9e~d_iUr_|2V51AJs zf!D8GuSw6}#GAVnO*0<(Rs}?S2%+b##~Ga1RZ>6C%2UqC_p7AuCqpf#ZS^yYW*H(r z49Ua~QOLvvA<1}Z{iyT>uiy2xivR3BY}*y`ze6Ujl0U96h@Sqt_;>lwY+m;3t2SCcja=jo^9jYCN>c{oV*GfbUIhZF!TU z6`nM7+$wb|wwKZGI5w3Iz-*luuUUxh8C@TE#xH59pNcP-Ja{E>baDd#C#HVhVn5KA!td zrNW*R_}CM!$0QrluG|?i1@+GviNJwRgE5{Rb4`x90HPgpV_c6FI33Am{K|}c@;%&5 zpOXSeEIlt({Ac;kcld*fzm2Yerf9w-*V=Y}b>}+@Lb5rtXfCd#d?jYpC@*jO9ZuF= zmlV)hwfGz6;%OgejZy9_CDJm_)nvtWcqtlf~9!283KLhal zOf_Dm`UpQ zg!kdvfc&2D0YLJ5!UqA#?+G6QB)=yt0+QboJ_<;FPxu5N`90w?faLdt&jXU*6TSpU zeot73GFRvkIKm7BLlHQGjR@uUgiV0t_k^PW$?pkA1CrkpjsYaUCu{~Jzb70ENPbVa zB_OZ&gxMhP_k`K7E71>sI-^eG`pX8rbS6mm4DgB(hP|@=Cix$YFRS`2u!f zS${ZnGdXDF^Kp;O_BjtvjKLKvcx-ixLd~hrVk3X5lMapEjLUi(+Z8iZT7djAeLZjb z&^XS6z8P?ErDO&~eQj|>)xPt+t7u;gERn(kehxOAZTy9=+8cz_SZ+SM4<7HmEnKIa zL{nj4@k1`1@Xk`uBFMuwAVcVgsim8AnaU_$#LR*#R25&^3+1J~bD%;dgHRXO=XR7| zmnkO7)y^vFs}~O>zzh!axk~2MZg&LtDZOl^Hm;SI_WmXOan)?Q?fx!-`eMqnaP zb>N%`E25ugWV0P?WLCF{n|6cQXM{#Z#xoOpp~qtb`TjAKqOsUeTsWUnP>hD2bw9>n z#hpNC|Ja668+?FYFBm$64b-Pgtq+OdqCS|Bkjq#24?b7waB;BKboplTsTkE$&Wg9t!tt>RWGSJfjY6&)$r~^dbrQB z^gQx@^_W>|0X>vjSb8Z~UC3kI8Y6^7wb5YHI}+eM=65({Hv#X2BLLo=Rh`ZIkExf} zq8#uKhO<$8emC=4T}dnR$p94mqQ^h{QcsURrK`}L6gV4;@jbXb5F=?GfV`lTuU=HuhEgTS z4~1Cg2PZto)qYcQ{tX2y&&V$|c9PDyaH}VNxo>qT96@0Uko!PKIt^O{RB=USPnA$>@u$fb{+C#?3 zYGl3&N&MfZ2K9e;AX*(n>&SRAhrwOswSY?GBQlX!7T_3}m)HF_5jho}Le zZZ?Fh9cst2^NCj1D{1wlT$ZDsbI{LzpVG(vx#*W$kk##aZQb&O{o*fI`oup= zB=6H7xzrcg><-#mRa&{ah zrzR0U9;xNVCHW}z!>IE1L8u8PULOI|3g#L7lh|$sm!zp|lxeqXYu)K_Zb!5V-w4YC z8Q0RDBo}id?)s8?mP+wm8h_tG-}l(t5~yc`Exjr>=Enc}`!OEH`Vcxmulg~9dg^3Yu*jcs zXQ(8P`woCQl-X;lBC$HYpAx+jnVLPgOfDvRq_LT?{nuyx0>%|_cciu9L-u-jy6oyT z-R-|Qcp#-9#ebu(vVwmx5kj*c$n%mc)OBk@P_rcygEcg}pliBYs;&y8v2rWi2;KMX@HQL{%5x zPxXB#edYtTH`$+I4}b40(W}wT-N(Kf&jVv3qXq-ujPNIv4m0pe4Z^U?3 z?EAq9$KSq~pB;VXXYioiS1IqN;YZIMVc6t=ECIRXvN@0>FiA6Ml0v^Q!}us}O5`v1 z#tK-Yww66WDanq_|Dwjg+{GD{|B;C)LS~;Dz_SFoe<@qQDV8}v^^r+-#qF@e?;Fg%HiMy(}S zu$Dj}^dFA0LksebNh1vWT}(b|VtL_)_fY%Kajx#I|N3q9ND@DOV=99enh#6&MB(qk zOT?fQ|DZGL{YoSkFOBl0Z>c;TIXj3Pjc7iKd+U z+y8?4LtH8aPn+CSYOc)f>1s_0*qA#L&i)-eW!W@vlmASfd?K1@Cx-V}7-L|H86H-Q zF)(BDkFsGCL8HZwkNEcPenq_VL$Yg^xfa^g(4Nq41GXnnyQm zVLLJYt@6MSD(HXz4LoQkAN~@4Ng?np>`vWRiXIHV??DIQVz{$qIdNr2KEpY9rv$A4Rv9^XrWVN!nQ-zpJmX5$M zXt+y)VyTB!I7!>8#Om`wAqs!0!4B7@zSbN52BvqVO* z3M-`;nl;R{6YXSSd)SUWox!6H1Y7HppLU>~uxSo!hdIxIW30m#yC8G?Glm*p^l-`h*-o4jYM(@_Px1Q3Q%Q% zxjCV6ogo@^6;_Jtpun7P5}Lsf@l#p(EKtB+&U(%CNeB;UEhihw0=BFj?8~e#jF(e8 z!p>uQ0jrEJXYE00rdO4+($zc_C-;h+&}k6|WiXQAknp(>(y@sG8Xlt2dZDo zxl})T3nwqbzvL+zPOia|sNZj(Kw$oCq7QQYth~;isD3Z*?5!WANLW7#{6_WbO0Gv1 zq9*h}HMuI6YC><}^tMMdiazI|o-9#TylVV@3h5vf2s0o0~uD3j*b`>RY z9rh2y{;U*ctTpynS^ER@aX^^S208kprf+}Hs7`z9SP%4MyYN<*ZI}ss)(I7``$gFY z(<@;>Pm70Jtz7ki=2xNA~8`O(1)O$%{}tv^DR8rX2-@m$g0 zf}Iqmvqnfx;4{s^)~{T9{AtL-oS)>k2Dh4Bdjdza9L0mKIp#%lM#dPmGm=6Ec#@;F zVZu>>9PQVr*M86j>3)z)gjB$aCc_P#1Zde6eK$#?W7sr6dyd)EF1)#gA{-dO+}Y^$ zA()d-ypAzDLO8KcA#sKl#W%Jz&X8y`yC%a9+`?*0%fHZvJW^NDFl&-Oxw8yK#0ezv z?Mow};M)DB$LmNXw@e`UUxk{w4d{H-fb6~wA&%-Y|AJvt|iI5ooT;SIZv^>`o_W(eN1hWH|!DbZC}@9D;O zJE=?BYT!X2MxWI{pOm{DCqUfYI&B}!yk+$_~7&h&Hv^Fv|_yf%?0Ftb6%~L4;>}C zIL`lOxbVH{*dF71L#n|beQ&4{M13&>TsuIs#c%V08%S(2d=y(@SCm{k0w2Z9Cd_Ad zv^+xZ(Q^4&9defTKx-}W~J9}4-~Um=B6v@ zs`2rVs)xysIr9A;+6VuU$Qjt?CkKwC-F_s3!~K^M`afoST(1Ux1!G8?J92Nr(a<;G zxa$YitbchgHWc>j1>h`SJdcTj#k&QO=*2tgFPzsAcH6~a?WMNH(r8~oqSi|ce411) zP)wYHV#gU0m*lU|Ag=dXD*&NuH`Eck|1_57nq|3hH0G>by+bZ!70aI(a~6EI#C`7D zGWuUShyFRH28roglg!*^tez#NZ}q95@A4O7=<9Utjd@Q@uPQPmruS5|=l?c($lfc< zJFSp+u=oJ?>7iJHBKK+dy0*kPH)4ojd_RKqnFUyw8PkR_zKh=gT>y(o^7>5e*@Dsa zyFMcT!avl*FOwsOONi$g6tN&&BAgRrm{!!#6!OJiQE&;iRemMg=amd}lf>gc@Q(Mv zJ8l1xV*cP?pE<%%-vW#J2=EI{{^4c2QE>E5L9&++09MIz+T`(oKZqo~(pH?b6jc%B zQFtuEJ^@b-3k$CtMLIm&SQSnnR%_2eJLX zd70Co-2cP^*v!vpWwI3J(#dvL+gh_LyjH@J?LJ@g+ykK{oKN@*6q4fi>s!LbUr_}D z!~RGEt#by99~zx`u9xe^VXd$S$6&$6(R`H=#*`(zF)8iImWTyU5*Ni_GfD9idH z_Q8??Crb37Ifc&{jF~!vv3I>=Xd2c#?3?BFjz;Lt-~oNtJKh_i#fn|;pp-%geqW6N zhJp2t|3S8T>m4;Mdg~qUofEU(@irJ~^m+%8#h0Q0@Br9Dwd40J{CfJhlRt{mV%9r+ z^!=Z)-r;4E69v(J3vvCsmG*mB%RJb}@GR9d_B1!}C(=T&s$(hRH<0q7N?YoRohE0Q77|H z;6a9Vw7SB91Flc89%QXMC-}UC`ph(-c&i7o>|XW~e*;o$exBckJrxw|#&>b^XY+I; zjw&;^(R{^qQG>ZdDXMxe#?`NR-zlh{10vs`>X(MnPjdahFKYVm3v!ASw*@|G1bpG7 zyl~1KEU`4==IyHF#*&oAk|B*HX1*UI9>-L<+E$MbcAHrHx^azFDUDT9)uO1e6om5v z+$EtmN8M2ut${_icHd{h^A{k(YwkWBrwa)!@p{}NyQBSueSFU!j`i>lXk4zqEq?e_ zT(9*Pr@TIXKN7SjyK$qHksG!l-9@`GN91u1?V1cP|AWaxW+8*CwJLBL{}JWxk)Af^ z;5w~6I9sk1XI{{aX8ijUQVNYcFp{q$LKX`G%(QNSE+?No7-5t*m_zA}jt=Bgl`QEn zIwecN1t{0Pt(5o+>a+VX-8#Gry*;W9ZKUz_t%GFXzornXgWtk`hUc*Cv(A5_r07ec zj$JYlgz*`{BUcv z(fT(2>QK|w_-nwQ!I&hS*ng%(-FC{p^Rs@B;czjjW@6fm<&)?c-9;lpn_O*twDLK+ z7ik_1Ac*m;zeE17ZdLQQ@Ev#-nMZ8vS39LeD8@gQZ>F!YEevxz{~0BW8#`30o+)0m z5$2xH3P6g5+j*Q`#P${DNqj(m5r@BXXbz&aC-~H{e9@N89PxTnb z54Oq#Q&qIqBhK`)5)j{h1MnAqJMt%?hTo~1vn`H0@iLhn>3*4>#k#2^gJ5ntt;k0q zJwHc>Sjw<(XY+R-LHsUAoqFBWH@>XD-O&dEg9n}D+H@GoTW$|DvVEbz!O$AcH=x&= zir=hn39b1mt)4DCfLb$CYA$}?W7^5bJ`HO#sbYK;_3oPY$ad+C_yt%xye;urjfhy>3H+7o7kUD=94$k2hq119G{ax(2?Gczk2 zD-N(V2iWLJQ@h98UcB4Dig$aO=kCVd0u-3kQd_=Zn?CB1PS2hi79#iOql50xKY^1b?#~%d zsr~sY;?TPNxy3k${(KUVzIlI2$Jw9P4Ml%Gb?x!>=Tsz$>d&jdkN<`J3Hc97AOs`W z+g=(eM8D&*xAod9#@*dC2Qf8?KGk0yC`@5{p8rI@y2!ir}4Ic(Nal?A(d$t?X z*mP-0HBRZPVr}Hj46Rg(dJTr9{OR`QatT)^Bt??gR@{IL+DxCbTWzLp;bTP}R>Hd~ zc&lAxnZ!o5OOp&ss+BBbdiBI#Fdn|@GahI?74vY8)0x}i>VRr(ratwL3#V*@M2h*i z0D}Ra=xlmPC^N#Yxd6+eSa}UgBRmKfI9Wz0Sp)w{QV209HA}N?0J%f05$MbQbzftv zLSJS)eY*vH=05b1pFv)c(;1e=ke?rBPhbpab%3l4HU@`y%#uLppUGa{htNb@=Ts77 zerbPyxjpy=ZUlf4W;z)yrc3BttLxB>Q}G#Z=yWqWy@NXYsO#9uGw>N#Sd%@==FK|f zE5{(KgiifEvItUFN6u>%zf258>}I)&T6sn_ja9h6q&*DhtMqf#V@d5>wE zlkq}IGOB89 zG3$XKN2={1vvei+PAsj|o|qrs)teu1_4L7#W6sCD1>~r+8YZ`l@DNV(V}|)n@nfNB zLdHcgg@<5iA}pne=}|4QN;Bp}^9*xXGK<-4Wj9KuL&D`YgH9_$>tyn$k{}CVS}7|p zp{i`YAKDLAUGl3ku^B|Hxs=nA%T5E%*r}3O8m$*&pogWgbhbG8`YeiK3c8qeJmUuP zVDSBJw95TDt+J36+t7Pm?QY2W@O8}yV0UgHgN^jDfE|ArRmHIK7F#?%2-BTg(Jo|= z^um04KGYKOD_Mc68~C%dCII(R^seGpvYd>t&rn193xpfLo&P&wht5`WMes)>%$oQK z-ypCD9#JXf*lAAP;ikoQ{EDqO?M2RPLsM}E6p+Qv<^IW_rwE=WeApH`*aG7MALvrt zRZ08<%=F-D=VEIkV%~T;W=UyTsK;@Plu1JMO}wNgZU>lbfGbA7!h_HOf=W-1x zL{<*Dmyp1VBQ?U)#nKZW{vf&omutWr559II)g&ADy$q3SGRL_rZt*7J>Ac4?(oRiW z;vaPWslQO!>33f2PQTOo?({Q@oqmzww9(JZj98@;3wfsY6eEd&{Tt_~Td+Nw2J^}? z+Q6Do$-3d}RDeTIXrrN%`KAJ@jBJ>x!_``s&bH#XfD$JTaDof8wQ*e9lWmdVEG6y9 z7hoq0Xjv>WFKwp5c-Be8312=_w`%4^drAFgciVFH+GuHh^L)I$Gq8+3tAd|Q9< z!5KPqID=ixSqtC)X{uqWbM6y0FT^3+Ur6z7{1`(+7}`>jSWkIgtWL+=-IHPW}!dZGFr5 zo8I-U;K5ZD>=EY%v|_`D{u_g9(3;DAIOl0ogxUoyKr&`SSJYM?e~AK{>X~BJ_IiO~{PI{2)fXRVyO5E8h!!A^?@$0zICch!T4bv za8k$L-_lf=8j}m=FW>vCsPzjoEIX)RqM3;Cn2DB>n@wF0)ciX{Rndd8&h=v~D4-^0 z<=iO^Hv3y$5%LID0e@n_Afi*M8tK7jE92|%5Zq>o(=ugyin|X<*g~h;$6y)bk6}SJ zcR%Y6RhdIo)=(8Tc6`O>e~8|kZw?i|Pv)_5Z>WOvonn>Lf?ZlX2f_H%T=9Ncd5!(A zkiv`K=f6|Kt=vlC#cwtjzv(Hju~K-&0sdn(+{O9*d&yYoxJoRba5ixooMV& zp1lJ#j+bYVvm!r^g#geO3^4v~(&=nPzjBa%MJIDvfYD~ZBb<_ret{vwA$}GpdX^nS zR4j3MuoIq+!+QH(R72GXp%2oAtunR?(K1Lx;&%~Xljm$SGqUMhEE4sM{9WTW_Yl89 zZEed!XQK#1@L(x6Vl|b*fz#)oQ+s-DSIy=Xv>yTb*_7!4>Cdm>=k@NnQ*;amb@(4pY+gFLN%OQ|i`GU=;iAfaWPiD88BjZ@P zS-6eDt+gA_h={Hi*v;m^^-VLZSdf`^TizfcM!hgM0E;rZhOQt0xCDYVwi zmPpLx!i*1$5%G~rdt_)OKYE`)ijavSpyl#sn*)A1#t_yXnr@C9&l<7{FxXr%)fRa#1=$Ove3`F4;4_W?RDVmfZulA6kG zO@+2budQ)9$#K@EQrqLkOJ7K9z%6%}Ym)0`DXsnxJ@@2Q+tM07pvM$fci_9w01z27 zW>n)sn~%NJUSc!wJQ^JoK+d%*nKkb!8@zK$&3RYa{NIs(u?5lEc$LkA6mClKA99L$ z@IbXSRzZlz0DTD&_`&~zH}WdEjFC}gq)>_!xrot-PG#Uo859v1M_IB8a$9A`T-|J? zl-5uTgp5pa?*;nDkVR7Hx!*}(HalN6q$i&y8Dmr1GK61f{n;IKqdjV zaFdEmS$MQ8NGq{vA-qgT&e8Wn^Am;qg}bc*ZjnJ)6|{;I`61=vByw zCWf`E)zNM^8>s4++LN-T(e)sBm^h7u44nJebmnbe&hbl)r$vUhC(WGJo^&z(rn1B9 z{{}mPVcPm*1}ty|EY*+wpsI0L`!u6rQ5(KNVeqFm%{NwSA6worb?v$B9Y^(T+ZSpd zkEdBN-Vf=F_o=AE0y^YLZl|=Lk*qhkUf>0;Paz@U*fI==IV6KWE9?WV zavF@-RSA|+0&kk=>tku}iR)!;?}?3nAF(ithOjXebPyei%Oq{y3&5hTXfhULg_b+# z_$L;e??1C3Cy?G$Xe?OemkJgJhM`z1jl;+=5N3@?h)8?P-LN;}l-g|81|=L&cw64O zwEEi+kG^Z)3~N{59WfBI$yBfo2fnRfNBpJmm`AzwIOq-iWKDang}s{f8jhg3FzXO| zKC9i`TrdJCI>K1#<+~w)L&9tylHD}jSd1jb>6BC8Im!V8VHsOtZ|GV(!gXZju&g5y zGZhi}JN9S_6Tt%2#2^!Q8F|eh(Nb&$oa0;^nS+`vCd&c7VFdz*xxqTH@*I4ziwMNWTk+f>{nk3fb+3t7a8fR@0!cov?S#(*8gAkQx_4vI7U7qMao7Q#=jHF~^dtip`cncgz~ z-cOJ`PwrQgiX?@lA(UR6(donVgyFBcDn!@ToVbUtjy;0bJrde4bop^XFF$T+j^@X+ zXzjT_e!PK9ddJ0&0kpw`ZozdIs+h10HuV}e5rN?iL%B;OLLk`lV8LkkWn%DS7Kl5r zYCOcZmt!LM_z*!vjtmO!tr`7kU#Lxj@{4-Qe`bTy2%`Mrfy)08Wb)v)!IclwM9AV~ z8^rt+mq)Klg$U8r?!ac?6wF!jUOf~%=B#|yiMMr0>?2$z{a5+ubJlt`xzl7F$=#pZ zbD6;b*RuwOSZ}5`g7~)&bZtvcYl`5*AB?Xb_-pbieBAdseJ;G^+~x-zDHy*^3Bvz%HX46!SFD| zTJuKzUVqZ-2hhH_F4+ukwhFJXanU?@yGa{V;5$Ln+A* z#;n4wtyX%NSlDj7ppeX%)^_8hLM-x|8pjo`f0ue`{TI|hivmOcaBbtr_Clkf4PUJ2 zGC1KZ7b*zS?Ul`J$r&16>#@hlK*P>!>M6%+D|F>Y@VTYQA1h<(B*7>Kx-x5;H`Gh*M;IjvU&-mKxtV6X% zIo}(RFWf^()|r78UKiLU^2Mr$D8-EuXh_@-BJuN}{6i#%>P59t0SZIAP#C*Ud~B9R z;=8EWMkgIKX=-J&?4~x?OKa0y9V>@tb%ZvEK8*}PrqsDupG5Q1fb12b9>$vxqWtHg zHAJip&U+~GM&}*)p}9}L;Qgq*(;NA>e2fa^U%8NRGNS0(OY|1T~7;7}?OM5CegP zt#quKLA1n?0rCN+5X`c|UN@vXd#R_gyrLOmF0`2rhTLW51@}N^@Yd#t+AW2f=Bpuu z&2cWosV{a`15s}(4wxvDJQd|2tq7z&K@oHk&q3m!QW%kq>J}l=n;;I5W9k-tL8K~8 zQbuF`yF#`T)Y2{~lqypz4`7wxQV={=CU_ggiY9m=$~>FO-018;Sko*k=_WujrS`SraM0VE3|mqYf&P4>}r1JKdw6j~-) zl2!$Md@c3UMyDXGR4QZE+8l2g8fqaLYC|K!6v>yU1Bdw&ez29`Dm&8brmWOop*1d| z1oDi0j#x`@+Z+ z8i@?*H$ihDm!DrF0fL}6HeWBnoo6nbd>eWKeodq;Mv) zVl0fY=ZP+uTC!d)GreGH^TJfd$A2J724|HcR#3!OsEsq&uI7T%L_3Rf-IWH8Xxa(JX{avT$UV zwZp>6k9~r^-XO$%FlXZTo+z=OSTR^M@$p{qAD{{gMi~!p>Ld0KvirVqG!id_zUpCz z0dAI>`v7;?R78~_d;4mVhRIk7y^`)`uA#RY$TZMPe*j5EQ;yyG#!ATdc{=iaQSGRj z`%w~##Ie#&hvK4>f#xxwld!+y$3W+1$w{)412H@l!tX+fHEwwo$w8|~&V96s^!7he z`_qY|8;SS{Rvi3J__Q9yil-|lkmuSLmzOyssU3~gy!+(UJo1>zR95qxG<6Kz1n~mIVIM9@KYr&zJ{(Gf+7Fr3580w0DmyW1 zFhuncyl zR2&j0x@HuX%|?XgnduEJCRWhA(rvfc49(ciarkj#TEj!=p$bS#*Ga6xfa7jFFi%kg zSg_2ESK6@fBzA1H7h;WyeC{GwyKXQChOxsw&~wS}p}qeYCUmyt6*v+9ld3vzt+i%LzjOAD2Aw(k z_Ah$JO4OXqf*~G9cVf*H>Zay;;W^$#8!t{Tq3LX4t(D69e;8|`_z$B}Oy71KF9L5> z#Xi*QuS)I#=Ye2C)r96m_(RPU?Bc}o-(Ek6{IQOEqV!)kVE*XUdvy4(1LJUNxi5D= z)&^->+p(fS>-afh=Bo>c@4-%pq2Xp*5u5`L4c3G6H!ghv{u=EbG6vZA@;ea4@61C! zO7mll5o>m|R`(#88CN^8k(}1*fGTrfYmsg8nP~K=rMkf@8K}>e6Ryu_st*isAXezw zs8s=MOT4|#5n&euBXy2-fZsfGXr3jIGNpz5ATJ}{ASCR(mB)H2n+qCf-c|C`pU2ehMn{L% z!chr_Pn)YBH70PJ)bMHDBfa>v{@_>02sh0f<=10;;f#Z}(2Rn#hDOO?$on~2Y|%oNzD3+`z)1dcw5y=758ovmk z&6RH0GT`~^fy-Mqz8d-3pCS?6hvz}w`;eO#L3s#D;wGdBZllGr)k5VK`Zl1ijDPn{ zRo`9;GvI2Bu~k^uu0cv0Qc6NCpX1?fC0g|g#9E42ixF#1T74T;M-VETuDs34S{J_q zvPtv&#a=os!da#enZjScMs^ z05XkEJ3djW#rPe`uR$vK51@~!QA8*1emzm6fa}94Rtu(4+uI_>vDj}Y&wHB<4C)2cGT|Akn1ow+4$6))Wg$>?iuCCL?gWo`<*QyhR2U8F|0Un$$S4Yz?8g{BZpo<6B zD#2QH^zfiij&x#p@HYrCdU$aCjS2DKaY~|t2QE2@9v<9AN%Zj`8L8s%V8u&`8b#oN zR}0p~gDG0DE*^|lg8RjTk6x51I6gesBBzSOg9l)PPlyK%T0w)sgGw#-;PBvFg`jWo z;FRLQ{NL;1!Lcj7l2fLMMgU160 z5!n|HuKS@zWQ=}r`1=VMsF@#x1{aM7MHnYkR>P4!-Ex+L>~{1e6J54EDfu}GQLp+9u#W9x_EGw7Oaa0CMCFEJb0`9MDXBO za;i8yxC?9{Asz&@f(C;JGql))!-KI3LEqxRDaC^;9@WKzk8V0Sc<|>MOrC^z@B~72 z@ZcCs_zCbJh!pyG@b@-#;`NIMElRY(gIGM6s*$XV z2kA<%#y~X|t0_Ibh8Dhcka$oC`gHK13F{1ccrYqab%yg)xjGsiT%(YX01rx(V68fO zcrZbZbYghW4)ebr9?ZKoAs*aCNp$ewbUBG09xSCK`gricHGS~F)2a?jT|Ahq1?%F$ zC@okQ4?b;CSv?uyqt#-uEbtl3HXgoHi*!8e5BJEa;_x5{wvZ4HuF(n_3?5vf#U30U z3{eRB77tD-9$fgCE*`vf!^y#e-~SsXPeMF+2%$Q7@DWV#3Gko}DfIE+wP)3d*DoGC zsze(+9vFzozIZURm&h1A*mHG4Jb3ZCSUhlQB*7I@7Oaa0@BMKQc<`JS>3Hyfpg!Fu^ClgYO`PJ|2XhQYT)&cyPZGZSZ(-Xpt@+SUj+4 zB;V)_#c?>_3+>V)FFX?QXM7H!GkZa6iM{(z)eZ?@!)x+id#R(c|skQ zx_B^B3)aPhPd2Nmb@AY3CAeRE(eJcK$Abr}~P@+|@f_kkv0QTpvdZ2>vU|GDs>Uq6H#^AwY zh@Jos9$6BL2a-mzE*^aFs9YmWpzcpU*rG(1-HPj7`Q5Y^ zyj&#FgM{-bi9RI!0jc63;S9M#v~m=;t|FEYj{Por;P$qN;iElO~|kZ`XS z>3AUF8aY)QBzV9XG)N$x5bd%$MJs49kRWNX2L}m%`K@TFZz192LjpDcn8hAt+EB-4 zOCE1I_LW@=_@|49*dcxuguhUoggs%^p()}9f*2w+|D+y$Jh>j4^U2UJuJB;yCB&19 z5UQhJtc4*X0iKwULLX1Q`*8HM)EvPzQJjt?p#2X@w885acgzQoeeF%J!!WOL-zfj2 zs}Vf`o-D46#gomyQAyUtle?ARLE%Y_5_v%VqIDisr;mOyEV?>T{z-Qtx^8u_{{h$@ z4JIG_TCGkz-=yQ%c)Jp;Ri~GA_AaArk|UiMn3Q1AKo3lI&K1Z&EKZ0n(fc1Li4K_D zD<{zdlLKI=3BcqUq>2NR-M>oIC<06#(}H#Ni#xSoT`;Lrg8K!Nd0M370Ta8NDh^Cc zU<(?UY>Wew4}K|Eb&&fXwAh0KlOM_PzXg*RK7O)ZG(7ltv#x$o1!j z;Daj3x_Ho_1ZxbmKmB5%5_v#8c&tUy7s2O!%VN$C<+pOfD{QJp%#E14GCL+rq)Oo5*|>3wHoO`!df}fi9y0ds)G(B zJY1L%5)MK1QK}sS39IBJdXVreCDFGxO+%_UNcio2i5f*f!jH9JT}b$W7OV>i9woS6 zNXXJ69S08GKHXTU6f*Y`N??E@L<=I zx_EFoG~bhf2WgjM<|M>}WQ6MA!8}^D(8q(9FH3|6m;6+nb^YRjRf#ruJXne%b@1TV zu;XjoGYStT%M|M2L3VL09@O8XlB|md*C@dn_v{Z3@|4H};=xY}65+vXu+eKZio%0x zq)31VR{_wY@!${tsn$pr5AITewHoQ+!S!;a6T^eiR0kbAxYv~s4-P=|(ZhopIf)(~ z{FajF_4Jp8zbk0vY_bzqT^@|4vCEDQez(Yj#U61}L)(JH38HEQEWD520AmfTyJn-MC zlB|md6-uziJ^RChOeOMwc(DHBM0gO!Qh`>ZC_I>t6bbNP763gO4}S3zwMM#l5LAM- z8tLIdl^p5B@W4cM(7^+CQ9?Y}4bevr4;IQv^zh(kltdp7&O)jW!Ei0o@!-KL|1Ri`!-JNRe(>NIa*{#ffnSR~I6Np)2>KQeVtDz< zc%l2&abP755tkbFGBe%EjoSxvTOzn+7{`gXb|>LTUmK3Tu73nOWg7M(Y&*i{nX`7Z z9!)BLMjZF~y6f#aIyn34b8t#_ToltTS8GLD@Kvliv5q~RYJz=rR7jGkRWE+sDDhPg zVHQM~!mS6AJUB()!9Vol&{&+liW}>2HFH~5D`;%a7DowIc+2P(D*jrC1~6Tz<|s2g zUrC2T-FrSA3T4iE0aUlXljJSO5oU;m!&}8Q2EEnlKm^lKT#+=?!(ZGWPXsg(4n@mY zvZ&dz#k9LR$PTyF2^(A+B}@kTQ}R(h8qp| zt(ZJG@t5t+dbyddaYM|kF9cypGGXWjyQzbYuBBs@9p0=%zH+{JD)AJ{l10^`qzd+R zR(C}uzW|w4RF>17u5;YTx5(*4RkO=bR5{NSY3yp6lQBlVNgg<2emMphIXmFeP31h} z$Bd0QIvV#u;sjogCGF1E`t9rxeZp;<2HZ;JHs7`?-Qa%@pI=3X+WooWcwaP(J#Z$R z;*4|ydkIWbIH4CO4p&#TyCvL)z2r)qP|t^e5u>;4Y?{SYY^Xa22hv$8e01=(6IY<} zG)iWclZDKbP$bjxF(~<*V5M1W?sl9~jH^3Cr52sj-Q@dy4O{wNVFS02CF0uG*;4La z*N)22HHUE1uQC^>o5eVHZ4LRPkk5<}=r8F#PP6kYfSh`o=1VtVSXY?KOx-^D+%uf2 z$!43`BJwo}7k@>AlYf0KjVwEc5Z&I3(>#?Eb))X@y#tfE)=+EUkAeH1U~ABQxrg}& zP>0#dg4`C|YfcBrW}r*#=pvl^ir%9u4ROmPy?V=fUaitU7hEMk=e)NMP#1CD+Zkfo zgRk^+-W$>L!g;;)oDLG`a(i)&8PQ`UdaSr9j!3cfsW_!~Lo-tAlZ0r|-Av*8ARMXT zLy)D}LwV`n15fdDFlCP?{>!l2s_`wz-vWwp{v8!!jwhJ%H$~Aq7<#^oo@XnI&|7_D zqc}-iM9tPpIN%)DiGaEO5)29MOFP*^8xT!}ljy0PtnuxnmP+LriA9L|PeKwW(mRko zgVJZv=nxmKMZd~z@6gMW@>?jz1GQ)TXnFBPWNa4PalVA3c`a;)Jkc9kF!8%^ea|OZ zhg**&Q8hfZM&e&4*rDlUdDNxZ_E>euTGj6b54e3mWIw}o=Zz>?kUV5y##3vquee-BD0D=C1u zl8RcJy){!EI8nK0H>fj1Xo%)aGGV>?KOjgw-#_a7(%P$D*r!Jg0<@C zDgRf?kxoqcPoX;KDE~hO5HxQTOIGpzgS5V&r~EIHljte`_frym<^OD?ic|jYxGhnm z2<86dF}1l@7Ue;Z6e3H=8jl9LQl`M*hvJvilm zhCclkbE;?;<27C0FKc=)W`2xBaa_k7p5oiVrQ)R>3HSG zTaIihaZ`*XoRas(7%NLHB6zE!i+t>mBn&v%|MT&nYz85nsT}wQnXWpV;y~o6dm*fS z@h-m2H2m8ID)jI#=Op2u1I!|^{Trcr_?NFSrTG0=ZAbxj3|x=DKj7TeDx>Ki|CDIQ zfqz7#4*un7M8@pLnjllCi+`DM_;;&HvOfMP!5U!ni+@Vwf${H5ef)#Kql*JpmtdD<6aR2zHMLI70TP5g@$3K$b65Sv0kep<&_@~7lB>pJ`eT#qby!>Rm z>)4a-P6yJ^{Q)nn6hon3dlDG3ge%Jq^9Qn!sxRo_>eiN2gj}@y@e8fEkHbP&e3(Oa9+9Q(EMXi+f_*%`!jYNLxo3g&y zOxEg>qK1|#*fMtWW8nF5#caVcK|j}8ki6hRQ^7>n?oKztB20JZ;a@Vvl&F*C0@>s71_z)&=S6P)*X>q4_iGx;d8ut3nR9ARh9d)B=aRP?&keN!r zGuof(0kavEfJ!iwk+4^K8;1-JFj3$xT30taoL0}!vgH-*%=KU9VJQ07P&qz{{Xhza zrC`ffxE(euxjOvA^T+vz23yUpj=&Mtfe+)^4*Wa%4t%#L-$ON0B$u_)Pc|CZ1_Krd zgZaq8KN7=|$hDQJ&5kX=4*m)PT)1R4t>I>@RKZ@OVw5V$cmVKfQFvC5Eh&iRR=FL9k+mXfqGwYx^JL1P?1>ZV#@x&3-Ny zsXeR{)Z6(|%ET_}(~9e6U%Kr*qxfEm?@b13QztBsFX1x#vEq9UeP7@lo!e5sKke?8 z-0k&yan&i?#}2zb_vhAZetV3S*PccKfmGiTIP3nS;C#7VcpNK(YE2%+Xobkoo=joJ z-0iu0LDf_&_2gmwvA}g0|CahQ$>KJ(=6nZT;M3!z49yj-w8}|D% z>C*72HAcks@R!xNJ9Ogqpz*RNp!)dDJWKv{PLzKgPWdbXUNyB6fn$n1E9ox=Nh6}?ae8grqz9NGWDAih4$tY zP1BSNVQ`u^zFq|TzhzFG-Y-&*^3^W7f+de;y{#91dTE~c%7V+BvXbZh?n>;X?Vv{ zmN7WWGBnCI)8vnCvyAkCD5D4(Wf>Y}wa7{4elPLVzLYrzN0~#T?6i2w9AgKfj3Q{1 zIW)?4lOb0u|GvcQV5^90Gw0wab83{`hWujM%sFl#$|!dn^)L}Gh0 zb8wVpYLxwrR_>yEGxPL;D5D4(Wtkdf_mQ=joC-kM6-3zraIw9Z0e&$9vK7kOv$nz! zMCFL7tewP%%a#1VXh9h*#}x26$Paw_j9MdJr`C)_sa`%w=-6QD6Xb`Q3_^wrY$|qK zS|ibiGqexq-QNwssBcMY_>%!vq0|n%)p&4m9>38}a6+NR&ig4$rWe!_pPwT0@$5o} z#y4XrA1Npgr%(iidaAriy)Yyr9}ik%GQqc*{0XL(@fxA{ngKr92t!dhlTj2;?Tu42 z4Oy1)E98hCezE*eYaqa?1zMf0hGgIY&ASkYhBnF}9bq2Y1rpU%*&XGwT3I#4jij{h zwnV*3F1W2g*Vd*Z&V2jn|MM2WXt9tEQfg_~Ug=L`ZYwLbLQb-V=365pFr;1@fgwfj zGpu;~^H4F(t-*GwOn5BW_!Ah0p*)OEaT_J1)}8#5G^DXo)&s6LlRnL>C1e2^6`4rL znbe0-Nyq|5+YkxqQW-+%)?fZxVlA|m3e7`TI}ILO>Z{~yj(tr;FK_4xOnQ2(!C-i< z1B{`0wbT6RL&(bPx%Q!+^!JD5SgVEli6z;km=Wdd4AQz8PE$#7wS%A){?qbTS^b3d zEBFW0?N)G`zU_d>LU{{y%7c0*nxCIeoe%EI@>%Ls*gOb5 zFy2U8uqeN>f#NV9K}??3-odnO{!wUXGs$RH5DBLOWf8uiW#u^yT^PF-S{%7`nasgq zia{ZEjbJB6E3|&ZxKfD$pA%~2m>9>=tXfnI56QzlUwsV&5tOw)IDz(9rPCg6MPIag z_)v5{YQKALa)uGy+?ANDbDa zn&IO}7Kt2Q33()ujVn}TuFY&mHI3mRc?ZT=L)G}-#%;6UxW}P2!*XGFMGzq;$v?gv z?djmb;m3LeYYP_}R^fu_&=N;zi8GSYglUlb;jfGo+325$-gYQgp$ZE{Cch619z)IH zzv;$eyg=O;v8o5;=7_!JM7{nQ-?IhA&*b zgaz$fKsNlY*rg=EuZB%)41FjibD-;}KM)zB*jHIGHK{ciMzOol?l%4zYJ(=fnC!Rc zAR1rIYo#)eaKqvoAWaCFKLcl*ttC){y)JYK+Bq~Cd@}=?W%7r>N%=!21fpcM(7;B_ z_3VZZ1Jg*B51qz;LRcAR(r@!qE{BiPF@H7_dX4L}HD_UX2)=|Nl`Twbvxru6XwJ_J?275GV}V!s$bQQA z+tv0#`FB@EmG9#}lwYeCRf!p_bVR}#^Un>ye9L+!-d^bKN;YqXCKbqG>GTlXVXWC! zV6cY7TR8bENL8!B?!w6igwh=0x5zAb6Mew=o#U&u^XbK+9WY9yh88rei0L2BI(Q3B zwL_7l+%A?%DO`ss7#7+d|1h{grZ8izvB%2VAD}>jN=XC4L9Fpdw;<|Q+P8k-O5|=p z9Kne(hj}#52@32~m2gS{@#M7*e)DJy0oZ4~m7%pcJ?VD}y!aq2DBQmD|dLI_`PW-bQGfeZZ$XhHLwIBXj)2F_Q6DX#qIXr}F$7W;_ z2Xty25S4d|eq2tokeJ}^MS=<1beJG{T|_a#ex$AFo{*nAy%4aXKCeHx4ds^edp`kB z{Cx@vFEwLsz7TNmP4pHoH!oVhjS`^MRW?}f+>H-pk1rxlcq`3PT2{lba|9;vMM^HQ z+^{#BX61@_%zlf9J7{2b1Y0G3z7;%aB)ww24xEt~;f}yrd^qwGQno4!S8YiJqm9ZC za$vC4S_T_7NsksXwezo#TbIEIDgA|Hq#ufJk>@HZ*`J&TK)mbAXDjgqxSx#_IX*n& zcj`j%Lw7Eehh7eeR#L{tB_SQq;W6X<#Ezk?ef4KNSRn7ni!W1`bEa zpim0vv++47o*I>;d39m1#2jolUq*QZS`aZCbXfT;LXkuA8jw|6RN?io#n49*^0bu} z$bI~KN&tx$Y5*#cL6zb25~aE*K`N>`w?DP8+Rp2bru2$J2UtWbOH4T z|A85+SYP_bR`PPAu#Gj_epE(4?%;C(Q#CYrL<%bu!hCz$kF5|~YN+MK*DtUbLtnoz zVZ1yb3k}Efe7Mb|heC*NC;Q8tMp<$rH4qlV?n8ID!F-fkm#+ zNNnd5;u3G5#3P{RLpXSLl2(eHcS8f!h(amf(J5uVT8am9U34kW#3epQDFqxnldZ67 z`9hengR|RsG9vWWiSr}lKvso;QEhD41wfS|Mf;+UF~w6$q3U^j{0F25A98(~*6;%O7A(78RyV1PPfLaGHkj5e=H!wfY`-yCBttGOSnw&o7} zL#5T!tj3d19!(APa4{;>S+;lI!V9uxt0%J2NA_(fA>lXB@nyZwS@<~(VO zn8F=c+b@w2lFiQpXKj{Gq2|B&^lRwd zr8rdJE3}=5|3iNF@OQL;_e8)R`JL~>Z*&FTAr`Guff}^FT7gdBf%<#}i0Yh=4q>U; z=qKKC1YOqc`ZAEl*C1=Tht3t@a}e(1uhD#ILvWQAO!s`TR6BJuUkTAx1Ye;AcVbYp z)JzJlFA(bM>O^c*jDk>`*qagn5iu_L^gEHw0m7t=U?2zCUab*iF~;;qD&U_N5L zSQ*(kMOvE|_Dd|9+xWv4IRmm_{+==*X)5w8keBCmfwFtaI1xM0WgGAD`!Z2i@+lno zK_elt?t%MXywDm-eGvchTq;L#yE<1XGsa>|4N%GNge^lh*n*>36g&1Vo(xXGa$Gk_ zaN6qpGOiiOkcZU#84^WTT75m~_dwbQhq3TyDXysTUj8_kW>cxTe!Ks4mbw_M2%`U+ zAAu_JxAG6EF@S}^=c)-w;u?f6`|Rr;#bEml4PNUHJ_>F{)-7)SJDUF&L^J1R6d;=& zSa);1lSFU@L3i?@#ER^$Dk-huuf!&0m~`{|AsC>M+%*S*B4xY{rbBYppq*`dv9k^C zPLgRin`K@9PS4Svp7q-eFsz1VS=mOBeHr-YM~BI@ARLz{{!Gc#!MxV>@AiC(_&W@M zw3-e=*O1rBm&w`l?~#R)##sgtSit>c#{k#}`CmrMAbd@%xNTXO#rQnI(t$M_Ks>+U zpuipR90nf29wt~LwaQkQ!Y!1&7$#}lfM;R0>HH%?p-6P#hlYgR(>!0|5mKcfY`Er| zfh8{=MPxF$bv7dw1pgQDgY^sxf0{yu)2Ls`WMu~3ZCjrwgnA4AFA65Ck5saNSy{=j z`ZJpEMFs}=yZJ9dMIo?Laggk2Jp)kHevzmbvbuzbVC7aQCEl`1H0xoA7m> zzn6)E|GiKAuUqX_@IQL)%m1)mqZ!_!_#d$fmH$Cc@5}$JWPP%uA4UfA41NpWL9s-C z?&FW4Coot^XOc%O7IijL6C#DYsB<617K=K+K`+~}paUhB^eUlNJ_G@^%aDXY%eU8eV2LxbhA<$Y0h$+fL?ENsl zsPjUS+M%(QvntuSlV*v$q6}kJ2EQK6J>R|v?A1?c2uM4>MCTAgl-Ho3_QPL`7ZVEP z@WKyK3I^5s)_uErdV)t6rTu6tqNhC>s+pW*?Qu32;fKw$vXMPyBq3ykjGffk$|rJ> z#iz)PGzh2B#&UXFCf;aui{5@i%jltUttG9sYLW??3SOApZVvbP;^YTNth-&@ScSI+kCG=QtmGtW04tOXpvS@#Mdt z6ihpvBGGD0C3>8Eam$Rhy_&JH_ym^cPW zkXXHXSVm5bXd(nAk#8bI5nWI#2=b zAI0DkWUlbah7cZrT;K3vTK!Ti%WyZSueHHKbbXd8Qj7*?Dq@Q)WpI%1;8#IgAc>;V zgMKL`^({gog-~E(Ckr~kjqMGfM(LG-=ET1;+{=w`V05RG9;V>iPY#*9W@w{rDO)9dT*Zl+Oa$I%hKnCBS(UGuv*Sb$Z1O6F~}FSHoJTXHZpi72e}aMJj$}v3jKpt*Wk!VW0s&`Cp0QZmLJIX3?bmD&@Ex((FrZ%b+%+mB9%Yb6F{$x7^Ut!e5 zR!dWEOB;4=ilZxICw+9de7J}mY=V#t zqf7KQ6*)~&8x*6%s9>T7dB~@p(HWoOIKZq9FCTR=Wfp&iBI09f^hz>k(NS=cO5e;t zmmYah`TJ1i=Ba{GB((ax9{zh_Bej?kZ8j$QT7w2DifA^nd71e$*T{#ViQ zmG=I8-{~!Gofc=(r?-5*PbWF(6D>HB+9d?LMaUz? zP^E-hKYtyko|^W6=GYN~fg02Q@$aCHyrgg{oM`FLu((#Hu;?6`QtyMymf-mH9cc}3 zV3ZC`rcX~_2EMSReh+z#<=~x=Bb+=HPk!+&4^Iy9tpHC;#Wy#e$SN03F2a*Xd@IG1 zQ+%6)C%5?K!P7+XZ2_LL@hz0P5Kj**#y_FdrS!NA|Adok@b3f>b2*;uBJ~P9T`s=) z@njI+R^cgMd|QpD_u=&!PQDFKmx^!oc-n?<)bzP6`IhIYLjIxdVE6DF57X3_o~MdM zw@XYTAIA%8jqR{O&2MwFtues}-2!FqiYUS;nl^v$JVVUi=o01emzZBfWhH7QMx*Y0 zo;D@%d?qR&6G!oz6PnL&PZmY=JD))t8`^AB`GAzQ1I)5_*Y!Z-J$TR}jz*OCghMuP zWF28IWW9t#8fjO3S0y^=n1A?BKks2-?3eo@aKzQR=GKOmwKp{{Xdp*rCriS=_Gal1 zt~Lax0N5Q7Gd^YF30`@w9sWFK3=L6EHg+9iN7tk_TOJb@Z}6>%?Yb7~LsNTmk;ssw z2^*ygbf6jOv`TyMA5v*3jS36=gw|pDve7}0KrFh6k)#3&6pz^VLV^paS!$F=O;l5= z;{p8oB=v94g=+sM^twbz;y6^|sw83HOj-Wy|6}i4;G-zAcM~$eD8U2_5H$))lxT2y z1SJ|2koU?X4@koDR8g{sD@Y=&B8VZ9v5laj#FbT06nw2HC~GNzCF~{{ALbcn`;swhg2kgMJZtdQ zflw(5)f090W^F5OgO0@c^x_1T8DY`bI7qz%>wBq-`r`1ly}4_GA8y9a1l3`sWSA7%#fl8^1<^Y=6J` zc9a6QG5EzjboScz!1tRUV&jSU_uszX{9IZw1k~d(-%vEDWUxL+zNM&9n(f8=81nbF=w2u0)G5tG6>>qH8)eU~I;9 ziurdc9TV4&Or^xpk|H^-QPz=!xpUF7aR{zQ#wIMT8FL@KV+Nf-m4xLKO3A6o%;LxZ zi(AcW>8i8QkDW$DN5>se0BO7uxJR)Wtv}nULe`Pu7K%xL6KTeHryl2Z=!MV++14Zh zzoh*~{18B5$q))ey>NTCw2ofVlz7`GRkTW=7UKV8bOv6!z13U^0Pl5j|5F5SZFDA+ zp9HoN6LVrkx7RF#cL;-Z<`hD7HWJ3+HTxd|v2M(L>sY_|Cyglnfc;ALiwae=>x*8Y zJ#ue8x&~XxADEBeUOc)6H`TxcbWRzrjn-v}CEl@J=?O6J`n*-K87B(xK)|w8^2Y+> z-o;iG=(XA4r8$gHnVesE{|T<EeDrJDZR_5d0x(ON1)&In>ePorxtiYllN2 zUP4}0jpy@A>K$%(&v_MaeK@?qSOX&wcAhjb(lFf5PoKdH3Oo(G%-Ec#IDliv??` zX2q9sZqr$XcKAQZ+=7G$j-LU5e)c!7jtI3Y$aMSo(`w8%e7w`ZxHJ-lU?xZm-KaY#f>S zF`C-W=XsO5%DD>mo7+PDK?ByCWhTs>k5Q6eQR1P~D@J)Z2DRgZQ*?=N{7J?}UG0^^I)!_?#REm4V?^?7k?sDTo; zoXEzm@#~;}>4qfKC>cW~>qto{9!VS%y6UnK0iP&J@cuL2Wj{$$T9-EK_Fj+Wm44MU zZXNd6;;36wE0W$t`(o(!WkK9_vF%pjIRkg9G0@wYw{8L3MyGZxsE9u=2TR?J_&uIc z^c~$B#tUo;a*UevAJW&2$Ts`Z*SH0bz2I!KJ1$B$^cpvI)R>X$X_|v1F?R&oelC;X zH(>M{M0|)R2PNfK6ra;5>nEyy5Biuf>wWQ0R*a#2?o`yO9h#Di=H?Zcx7D(a|81g(J_eG0fdM-qKIp_+ z60SaLqBVB~o*B;$O|5UNJh8%;{T_b?>~Vo=sN6S}BXwH{xy z13&zVZ!jLm`8toqdktO2+<@WvUw>rrkufJJ{ZvguBcoP?$FdW%QfQo@k5<(W9g$st zh;n>ABVyT!+24)9kPJph^flYxFtY3OjV^fOqpve1X8E}+c;F^bj`NSL-?)64OUUo%(JznCOJ1GV~rq;dQ+`0}m{K3NuZ%9J<*&k!U8=}T^9+o)9 zM{hf$Hhn!a(r(sF^jqqJvJ(jp&^tBJuC#3SEPq~(`7{CyT$5^SWW(Gz!v4h3(Xn>M zE@M;r$LX7?^S-R7A^-kebY~|mHy^(iHjR+~KG=e(%P$yVUQb_Oj9P{_B$n2-o9&}k zCcu|zIR$y<9oP!OvYqcNde@`CtS^kMFaiBPbN{3<|DbG574r|TZl2kHs}1^J)0O5| z+V8_VhUf!GLR}AD{B0u{Qn%po`&*^^>gF6ePSY>qVEfn6-n)`<*D=BD{JyvkeBiQ1 zSP=HZ!_qW~8JDGDGoLoTGU>3|*&hNSPN#GP>Ob#^d(8(L=(K7-da&aha~HgBWXEF< z(AS3D4Z-*@z8QmGl$sQ8Uebj2Z)n%C1-+)ie1loOD}CQnJY+>|$)F`EXgl8B*(;;^ zjjphbcP?cfd%?^m932|Dcmo~*MA!5x+J=-m$4tA#+M3G5`(5ajOdA`M3c8Jzgx`$H zH;>W=&U&veb50gD$-u*woe&t!XKL_$wFg>_&KdX(8r)=0Mo^`EI2He=nR8J9H>T-k zBwj4r9F0U@b*B6o_B-RuH@vf!JZ3%s6Gk$dA8x`=7e4R?bsE<9`MKsDjE|IV(l38? z#8D1f=g{Uly(B5^HEi(V?FH!6L>yroM$TYMhaS)fRlej|Q{EsG>05CSVJaiD_u%8^ z2{_Pk*wXKB8ck&^D?p19@z!08BE$YB(PqA`rR(UxQYzj7KNW+}3B zv$Pt`La+Ecp)8JO6!Z~n(8hl^<77_yG2DvC$H=QhC^Lp6VGtPW>F#6ujd*A2>DFhw z=(WZekxcK6_BFb_lTpH!akSh{|J;bDw?yGV$^LZP-iu9}Ud8j+IgHxl_`5Cy<^TI({{M^ykji5W!iyCeS{(=Z18=3VHaPF!6%``X z6dj=e)6i-!5LNV9P7X$ITGYm_HwMM0Z>oAYb6X4|-RvLx>!S>792 z`5Lf%~RWiVAxDAdk-Tyk=o&Zw+P+nXhN^^33!)BK)XW`j_$t<^{@m0 z@5KptS&45J9(hu#hxd8dZjX!m^|di?g>KKL-)IlPqN+XU4>RTMfcKMBwqXGv)cZ-O z{HQen<%@p1eAS?bQcnx;3m-p5;?3`+1Ub!s^BOe%5{=W+-w!faRQIs*H&>@*n~(k) zPjhmBDMkV3`IY;ccdSy*H_%ss=NqcmSmzry;1fUJunC{|`Gzg{#LqWu!zX^eVJANE z^9{T4iJx!y44?SB zJAS^wgHQZ?gBPFp`G$CW;^!L@@rj>rNWv%E`37o`{d@y8%-L6=#>{VhA3na=t#yuZi)Zm1M44i$UJ z43QK%aob$H*3K+^4s9KnT2ze=6Ily3E<(JXZ;P3SB(!0CqE%(H54(={UuUpuum8F| zyY~36&t%t0{_8k)o$S9phLuIb_!R&3*X+8T|9S_zPW4}}XV+=|>s9Q!qyPG8cHP;3 zO^cs~@!kB_rR+M>e?5&|_wZlez^;4wuk+Y-U;lL)%x>umq^ne2MF z|2mFc7y7S{y+idI?Z5t-U61!)?_k#x{MYN*b&>yi6}z77zkZrsPw`(r%&v?5*QM-w zhW~mRyPoO4zJacn+zqC&ugpAlP4^Y~bsu(J?!V4p*Yx~6m$zrv3;fq-vTJ%q`IiF(eZWOBVaDzh>7<{MS3!^)mnUdUn0Sf4z!bzv#bynq9B-Uq8&QSNpF^*>#ow zdK$Z?*NgM|-N3G^{nvTydV~ME54)x(|9SZgcD==a-JV@vfsKR>8`+FZh+UL0D=I#zrZ<*~_BoPNdmLI6rP zreqx}`98#E9$Luv2Wblr`<&YECy~X#_ zyaDYU**s`_)s7N)%nx1E`GGbYeDSFn)og<|zWD4(4ZhwiMpP%|+C6@Be^Haw@2zq|1C*rthU${RxhKE-Ewja1Q3txpNgCBTf z{35p{;>TJp$;;Ri(D(mt#`@l3+SsJ>vDoEK$vRo`X~+#rbfk5^Z_-m_)p5U%|K9za zAYJCgqo5`D4XeBGzCR!Pt$W{?`UP2c#TV!MO1xReHukHJEe1LBWPQL=RLPu4dpH|Y z%E#3EO0bcha`1hlUiG6Hd-C$k?-OwrO8KRGdukc3tC>6> zPdK9Y*smM$vuAiUbxG54{KVRv23oG%-V~#0ET+|)8&V3)tA31+__W%VEkXTR51NGV zC-2`^LiMi~{TpxV-&402_)0MNS@)iU?Mhn@W7CUz_-w4uhFM+g75(cC=-(dL_6zLa ziUi)j)?%7Aeq8jfzy0jK7wze?n_r2vqZ^Mcr_v41H|~Z#e?|Pn8Ov3Y%sLF|`36VyI!J7Wz%b;S#j5O?ryIdeSQeNGB;>QnsQ9JYSx6#*V2-xDhKCD2qcV4pJ4?XwIMA zLHLsfZeWKTLvvC?Mgv}$nq4tui?8HRZNGh#clz$yyRqN481wLI7#i!z`oectJ$qA6 zvN1G1eY0)#{eI1XwsG%+iP(&t`v5k)%J!gW^}%!Kr@+Q~(?8{<5610~8(aURk(9nI zYu7XyO^MI4{z2v*4i{IOwJD*rGi}A!Y&R_}+oyRl-aFVRZWB8l5|NT=&0x3rD%jl= zw-wtBIldu@=9C}sMAr~(iNe>rp({TxH`_PH^o@z9@njZZSU?P#=Hyq5*pge2?dunB zUi&n@9pN>G;Dj*uNG?^xi$_q5e%@@~5WJz9fOJ-qp6Nml2H(7kt7Fy2)-|din6nqR zAMkCq*_Pc@NHT^bBJ9L%jyr{uw7ywh-&oIqbEr2)#2Y21G2~EgzS#$JQNH;@V;1h| zPL25iLO;DyV2sz;p1#93B9VLKySNdF(j{57z9D8p>4We-HHX@g>+6@8AGaR2xy{M6 z-#ip;PfFih(Qiw(U;x_5_bWLG(tj>Mj6r9`nHOW0LMuSCxNScC{gHYs{YZXZZNGY$ zh%w`ypb-~;aGcRE9ulkUEC>bkw5i!GSIp7u6?w?8nP|N{M5txgrZgj{iP`kJ+qIMm1^L~^5bK5IP&D1H#YH#Q!_nvU+} z8#^!|oMx3A$V>W5mCjBfvJUg+n3pn<$2Tsyc0dZ-3mAtJuX^XUkk8gB!JnK&`{zZ4 zm&GJbikp;D(Z3fx?%R$H%Lbb3KQzyzkcC}zYn+q@x!bCa3fN12TiMU~O?&gXy{9R@ zxUrY1X|FA}m*Li4p{Bi;vBX1vuBUM2rhPLs?e*mL^4!|1)U>x1OFFdgYr1{wrhQeK z_Qr90)7;wIt!eLYJZm3qTYEZd-wteixw2QOX>S;}M;m#r>{V&n`{Fd#zGK+< za%FF~roCIay;8UK>LRf>Fkt?}5{>3RxAv0PMlk*Y?9J!)o_@<^e`adhYs>9rxV2ZP zY47ExtUuRd`_UC&W@y^$$?fI2wO6TWZz~pNH2?9p|XFV3yKI!$}CxxI&J`_xT;Ca=>Q ze+k@Pd$;y7HSIn53+vBSuefYqp{Bh~++H8I_GW0>TZ@xqH2+}}-j)9NM>&;Mf@2ccxo=$?NsT-+XTG>3_KF&rD5w zZMnS+xAqD(?Y;an>(BKsxoqDIO?y4Ly*#(}DmCqGtz+%``bC%RtJ1VLj@z5&*4}PS zdxuZ5_QkoiSEp%jHn;aM9Y}RG|83A4e+k@Pd$;y7HSIllg7xRB=Uuk1P}5!~Zm*A9 zdowict^J9$ZwH+_b>qKEO?$(*y&K%xtJ1Xh#c|fYW4Mdxs(rgP?cK`lmAbW8r)jU@ z7;E2|ZtW$%t2h4Ub9+xOciEqrn)cdqdl_!+6>8dh83)9WPpqdSE^fxd3{87IxxGBM z_9`{)Z9U4`_chK>xoTgProD08-ZZ!Nc5B)@e1x?x&aJ&VO?$Jsy@%<9mm9t$Z`2!q z3EWn)VtFvG$$m)?RY0-uRo(?LEE3Wq)RB+H1@0 zWw^ChsA=!zgRDQ-Kk2f4Gc@h>Rr?W@zYH=Emg7>74q*-PG}H~td1z4mVHWop`c(q#R)YO%}q6>8e+#O?KQ zYj1|8y|w#U`*u9;vVE1B_J(nLH@LM|rD^YrZ&~|}{mo_jc5B+ZmD?+IYp+hzUc)!6 zeP_D0m;9dI_?yq|J^h%={>;?0*OuGMaBHtn)85PbSbwgsbkjb5+<2UaJyCJuU^1P5 zwm*Eqk2mA(EWM3k&IdF2+32hz(=Mcw&WNUo#&mCX0nS0^n~&T^hvSp*l#g#Z9V^Bo zczDnSFX!~;(oekMy|i1+&;Nqoon|8Sq;K$VaQ^oRrGH8fwZlt)Gxp#i6Z$Qp^YY$i zPni5U**7w&X!K`z^9SB~Q$EsTKKECg-k+6P+rJ%NeA9rp17-Tg;rz4LH;!Hc)yt^C zOMp9W?31YSKuFRQ_;fSQzK z;o>t~7z2{trbp+q-bL}IC|;XwUP|RRnL}sOTar+=lhMCp>G~8rf|s?sGeYnQwbu|G*Wu+pnK4wO`+NkNx@*$MuL=c6ryk?AJwq zwqLg{wqGB=+kSn9&wl+)h5h=QdcK1nDMfbqRStX4IQVk0!~SuHKh7?<>uc@Me-!a0 zu>A)e*Iga_&vdk>m7~AoBtj|X8cf6N(X67=I??l48GG=A)?a%0W@U~*8Zp>6wukxVr^qR5 zkw|35mOnu++puyAe_k{&mc1Vl$9@qp`Cs$pkn9@((W+_3GG&L_v8D# z+IVr~|J^(T{_p?3b3KH7_&5CzN{93RZnyqN_)+|iAr;d9@44_lLX7Hv#97t? zztHaY|HkO?|F_!yzcIZ3vHo)x|B=2Z{zr-((*N(e@IT_0>VIrEsQwq)wfrx%+x;)J z`~ANmdi;O+X5ILILwNsxs|OC@k{kT5)ak?Lc5m#g?79Dg?7LH zv73O`0V1#Zzd!%qtL^{m!ux-lTmNJEr1&2hRY?EWxbQ#Xm+F5c9;*L^b}j!4?RNhQ z?SB7PN00wM(f0qi@c#eMt^X$k@jo)Ekp5rm!vBb0s{fIAsQwq)wfrx%+x;)J`~Ck; z^!WdxExPf4OnCoqaqIu9 zj|}gBtZ&`$NJWt|AzVG62s{e&{E&mJccK-|Qe*eE1J^nwT?f+|kq2EWO(~q-y_{R1!AL#=JW%HkK z!LKgTS-!yggLFDzpsznp2aN4&F2%~%&kXvR4dsUYKsqsLI~340n>&oU)H)P!5{W_( zQqWs;&4n)nl44BILjmFk=&if=*4cns#5Ur_@YIytilGzu*#HB!0=dCX9&{2$I5+Zx zo((V>EdAE$fQdpsJA3fJ-Dp2QAdn_ZfFSJT!S?5)gdhQDU+5#97uc$qFU%X{;LDA@ zBj?Lhtdw>6(rBp4ms%tiq4+Z4IoEtygjlHXWfW{Fd}&z0jp*^EyU_3COC7QdGGXy$ zsnGs^{f3gtmq&H^QZT^5m&`EnZqnv*Zxk<*0Y%g(1<^QEaUW#h|cBpnK0ZWTuK=A-5PgY%_Gn6UWL zLTHadzTB(Jm)c$qzC4o|IbUAE5>l5h*C3!d`O*|QO(?!BTjH88yZUldHoiQLq(k9L zPhmulFVls7XMD*NCM>>u`6O>b6!PU0UA`>3+QFBS%OmH@94t9?`O*^WFDGAiArT10 zm*OW}^JO_=Cz-PGv%u=<#KM(C_4nSD3K)^2*<%mM<4=*PM?g_Hgi}U$@Bl zl7nTaE?>SvKy&hCITDRfeCfN`HD9I+Q#QV2!Ir|8FCOPc^!U<7=y&pEH}V=XVew^- z&>n^H<#t`ZbVs^k+ka`*HFCb3kF~BYUtUE(bMj?65{*!NN&1^>z6=niYy#N1@f9ezT^n)QOK8#x_oJhbj8M(Z#qTJm!nuH>hk3t1T-gK1|X*i z#g~1HT=S)kFlFP*9wZ$KUuFv-4~>oNylUb{4M zzSLl$sLPjJ1T-gK+R&b|`p_5K-(CHPYrgEif}67O*#6ya`drmz#9?vOL4Vm$LN8`SKtZin@Hc00GU(m;FctLh)tp!>;+Vrh5>++zDF> zU)l;IdVDDm`kj197A7pd)I1cme0g1$FVnj?_%h<+$oX;|mZ7?Q`4Iul$(J=qG(z!Z z_=B$bGEbPY#g}VgOX17m1>A@pUpff=PQIAPYsiGfmj{LRD2y*nc4*E=1CXxR@|O!c zM9!BkScdBIWgP;VlP~j-XoTWR>U`IHDG;V?d^rcU6uzu|zzttcVrf84aq^`Kc}*Z+ zt`pj$kT3bVd})Jp#m1MPQX}U}EY`ZZe0c}~&B>Pn+EWgZzZ}2cHD5XiQ#QUFMAD(~ zWxgCoPQG-YJ>?L5 z*>In0zMT96H)Z3?n@BnozKjz_^!Tz!=y%4KLSe$d@*24;Y%lBM2{~Mg?=Yr(u4_%FWcwwCPX1$ z`tQ`tU*=up;LDBYMb4M0ScdBIr4iO&PQKJ4(Fnzt3HQ3@%Ob>1GG&V|qhL$nOG6nq zqQ{r+LcfzQb;xVTgvFPoLVFbQV_{(g?=YrHX*MGUv|!R&6lRal#MT&k#s10xm6g^ zn~#>a56+h&VZ!1|3!yy<`Esu=Uuw^F@a36Sk@MvhEEIM5at#8SlP^taPdNl%mfhu= zFT2j?rfht997%`5m!86i9$%&l{m%H3DNI;=`En+2LKO1l6J5S6I>*76k~1Uc%N#5e zb@|c~>n|r?b|Dc6#h2ncUGrr*Vkeoh@#SXNQuvY}jOg)YfY9&ci&vPi`0~mfQOlQ$ zKGB?yCZ6TsOTQM8^Cbt%P+h)!g@ESd%W@FHm)*!~$b`k0IYN6B#+Tc5`O+QfiY?!5l@K{!&c|9;moKj(pgH+6o%WPN%tuMn zUGrstFlFOQGuTr2^78F&__7~M18RzsFDsDO1o9KG{$|3l&uh=zT+6YrNzU)ELq3~t4FrpV<)+7h#%M4+{iZAC2?NP{= z*1I(4qg^c>e0lBk$oW!(g`zHBauLv+d}%{_$|3l&`Zm{m+25L*vhn2wBpnK0h6y8j ze3>WoJLAhhVZ!3e(W$%%QOK8@bosJ8(ZQE8Z{&P=5DP_JzFdHS=H$zMBm$xMGIxq= zzN|?K!k0T?OW{jfVMLEF1wy}*FUi7$#h02}qn0nP>+)s#84kXTXc9SJuER1^moGme zpgH-n28l)}z6}41Yrf1Arfl)$TG&$fa`+Z*M2{~WgnlPqOyo6W!s5$=LVFa(mnOS4 z=c55gS8Vyqg`UXy(gn*6W&e2K+cSC=mjA)q<=Qb2pkA@Y~we|F86 z4#Jd;F9(ryD14bOjOfLe+UCLeQZ7tb@uiE<9))~)R+lgPn>zUNZbN;<@AKG>g`zHB zu17#~@}&dqDTm<8hKa8Ean?+c~qA#1xQzH`O9TLN6wetScdBI zA8RwcW-GwO|Urr(EQ26rXST}sx)rdF6 z$(KrD!iq1wh4v`q%jKVH&PONf9enxtc;tNf5(`CLzTAd@=HyFv+EWg}mz|?s^QEaU zW#h|cBpnK0ZWTuK=A-2?!TC}oOjvwrA+$#!U+&fAOYMIge0k=_$ocXL7K*xjxds8v z$(N?IryPPW%l_n=FS~x_rfht997%`5m!86i9$%&l{m%H3DNI;=`En$0LKO1l6J5S6 zs&nwA_)=WxnlH-{JIR!dFE_)M!j}YLM2{~6gnlPq zyuyUVmsbj+mM<6W(VUMao^bG`-w%=VB?rq;UA}yUfac`OawHm|_|iAuHD9I+Q#QV2 z!Ir|8FGg@9dVFak^gH>o8+i?xu=p}ZXph49a=R{Hx+7h&<-4s8Mb4M=vDVe)%c}@z zPQFa1J>?MdQPObNd>J52+4#~7wiLd+oacrw`>`~jra1Ys0(ng!Uvh-@DCEmVUA{C$ zx?$xaLb6VamprJxDqfzRVUz^y15!pMvvc zhA?5pm-B`8DCA4)&ot+wU56cfd2N5>e5t`gQI{{d2xv~ew4pua5PVrZ%r#&3ALFKM ze0c#$hr*X(!iXMU<_Z1I_%cwKu=sLxC~ra(^5rI7zAXRV!I!dcBInD4SSaf95eUVXxkFs@WzEqbe7O_06uz_-M)denAoM%=k}OPEe5n~6wS0M9moL)~I`}f; z>&W?X9hRZGeEAUp&B>QFNHjw6W%#wO`7%$Kvc;EcVN2o5;XiUCdVJ|1^gH=tBCjD6 z7GE9|+M_VOH2JsYd^7;*iY`4Wq@t}b65LO^r! zrGWO7L*y^V`@7~#2Vu&_mxD+;6u!(CM)cxK?RUZXQZ7tb@uiE<9))~)R+lgP_c{3T z?q`wnWjhv%x_r4F0nN#m4z#Bnf-f8Ty5`GClbf>fI8>3SSy}awB?t=`Qp;`BI0xhD=y|St_(gAzvQVREw5J>*fAREi&6n=Nl#MT^kaQ?~ zc{0llUv_=Lo8sh4r7&T|m)=5q6!PWrFEr<)lmBw?<>T#<^W{q{6m|J>8v>e>FWqTR zIRsyJUg4TAO@%2NUp6D@Q227IFrqgfE&q3Lz7z=)7GGKj?NP{=dv*CzyUW3sXSPPp zmshY*)aA=H2xv~eG^IV|5PVtI-8El!?ct_ue0dy6hr*Yh!iXMUrVIVf_>w71SbX{N za^8d}IQY_UbL4!`Ir*|2iAE^C z^v!V1m+8WkjW1cSrSRp8uH1+oU)l)$PQL6$UPC4+165RRlCAU#8QZa)|jTsf%mA3=pPld}#(-3SVCC?1nGL@TILVqQ{p4q2I}uWMRVMOU=bm z%a_-6`7(WzgD)ehBj?L?ScdBIT~*mvsnePQJ`Tq7jNO zsTaBCOMx(DLwA5=#SWijyx@$ZG=ma-Gl~g?!1^lCT^k(FI ziN#u1moEyC5jkJBW1*X5(5{*!NnQ*RazAQrQBvZEdG77d7zBHt8BYJ%4F7!M3Qir^TOjvwbDzrx- zUmn%vO99dqTmEv{s>u1$8_Q5#zI=p$=H$yFBpRXk((N4Ae3>Xr+4zzUTMA#cp6!M& zO@)3ZUp67H3FOOEp*;%u@~tjkIv`!K@ul%Ak@KYm*1EcUc?to|$(M<=ryL@G@tozF zFWrSH8(&T#=}`FcWU?E+?0Sng#mSdSVZw?py@mEDRv z>hk3_1T-gKy3?L=2)^uW?V2x5g((|fHY4d!_;RZ-qBkEc|7UQ%6bTa+Us?$5QOK8j zb@@`e+QFA+UW}YCuVA65%a>~q(42f}N_)y7__8d?HD7jBaZ@(FJdUJ8;Y&|pM2|1i zg??vz$rL6mzI=HmZ$cFEd zuMp6jd|8e}BNSiyCc5U!bYaTImn_&)`0_;pH=@UvHbTFXFT0V~kO_+~bAe9nUDVm?Yb!!=(92vat`G=nXLFE2ND!VLVFbQWuq=%nj&4X@#UMRBj?LeEEIM5at{KUlP?2kPdNl%_BC_O zmo~zbjW2tUbSQk8EsW^Jmo+a3=gSOX!iq2F3+++Jm)75E&PThRbMWQ0rIGWc1`9=9 zzT_gHIr-9t_LM{LW%X&U`Lh2dZpy}&7m#!)d>JN;=<#Kq(C>^d1BD5TFGsz+2~o(G zn{@fIe7S=!Wlu)Vmj|&>)aA_;LHiZ64Uy5`H87lQERPS{fT(pDJJ<4b|i z@8nCeFk$hfrb*QD<#k=YOn=6~ml1!DoG;g58LG>d9}&=;d|87;BNShTH+IdJdBT(} zzFZ4i3SSO;xDh?RbP)QTd@+&NkO_+~4+`y37+;#~*PM?AAYHNLFBd)@IbXV98LG>d zbqHuqzRW|S5sELVajyANAWYf#at>@Md|BJb4PQ=TX+TYJ@}&xSO(0*c6WXJYFZsHB zX@hjd#+RQeBj-yj*1EcUc?bc`$(I7!Qx1{89FK9$mkz>|jV}k0bSQk8FO2BLm)d2) z`BE-SSn;Kc&>n?+c~+M%`=4;|<=sak=gW316m|J>Jp!7OFCA!4IRsxe{Msz0bc4s3 znc6q&RPh+2wiX2wVq#)^qf^t$N2exNWXD!4OT`y4_j!9=xw+)$^mW+d?^$rEWX4F?NP{=6S{m^v)I9xM;1oTm!()J>hh&40-BRA zCy@w*;>*H%*L?BjR_%aH%6uvb4%#G;rrMuAYGU;m8o)WMmxnLE62}w#HXY+8__WlWTx4%AB;meOj?Dm&04_|(7p#H+}<@+JW@asS%2%L|+;miLqke|E1 z58FSL_XgB|Mfmcq0{Ji_eECCx{WCCp`CftJJvn^&1Em4=HxGqvZ`;85Tou0jp9AOX z^6=%a2&{i$`0|4u38;Ts`0{-M$9vtuunnfxqVVO< z3ao!-`10462k7^PFQ4oSD8Ku=u>G?Vx6AzXUlG21av z!qQC7ltoi9mt=w@a5ZLede!!of)>h zW%mS>-xR+5roi}68NU3df$^;K>t>SFTW-*pD7Pter{kq zDGXo!gTVDyTKMuUW(D+T-8W&|dsbjP-xR+5J%RPF3}61G!1Y&A`0{53@-s7h`9p#8 zg*SZpKL+w)_r9?Gvox?jSA;L$InZA-!k0fiaJ&o*Uw&R$fPa(2m+unTpXS$L+xueR z`mQQ``3ZsXtvr1B9)auk!tmvf2IiA#;mdCiY;WCHVcYve;C!?xeEFon@|EGsZx5`0 zQTXzg&kXQyX87`b?hYvL{q6GDGK@Edr+Tn2WeiS@&(6s;J~W48!ZEOc6|Zh!1ufqQ z3oM=Tb8r(%r~F)Wuul0#7@#`k=V8LsDSsw9Sf~6AGxW-*V#7v9|4_PLuHi2e8wNV% zX#uTM{`EWb%HMapUioSSNS*q;s#zaX(_jC>hM7)%4r9TgQ+}u>Kd;oR&nitm+=B(E zPW^Ln6G5l^1)Af1DxF`{;QuL1I6CET)a;*sXx66z8$3Goc}8uNe=^Z`G^MSDOBPL^I#3)tq1YOx3G@iDrKCC7rL*h@ZPO^S8sA@ok-^{)3wF z`A?ehXPV~x^^#`)57C_OmT1Pe^kO~#F4OGK8#MiUTyuY5re=KjTyuTbLX!^}n&bUe z&GG(%CjYDC4Y^UX|6_Fa|? zb!KsZ0xwgL6e|_%{gf$q7F|aQ0>CK*?yiCxN$_zFUi=pY+>XHic}-SbSdNq6&b;c) zZ&tvm1b$ludnCB>7^`*}W++Fs(+GUG3T`aHGdb7;`Z~ZJ3EW2oH<92JUhM%lD&Wop zZlZ#lO7M7Y`2_?zhvjYres8tXVO|OD%fav5rGR@8_d;E zD$S;GEr#`Q4sK(SOoAywm`hb~3ke>`!Jkf0ERQDe1Qpy;g1d3>-&OE<0(VfsXG(Ai z2ai|56A1j>D@vP_BsiXf`_5LXT}0rQRB$T^u0P61HpKGQ5{P(jPbTmb72H~a4{>m! z3Z6pX3>Dl)f_HN8^;R&EmWv5|Vx`jNWC`BD!M!oDGm=U03O_;Oe-C-A#3 zD;;*O1Q&5|q7?(B<@*U-u7b~#;6e_*)0%N4cmaX0Rl#i~xGx94jXfMkwHFfj3>Dl? zg3~zoN-G9R%asJ){tuWF37)~hld`1vgYzo>#Q zk>DZ@?s%^Pt|suUDmYz&M|1Fsu?lztfxD{UjuPC9gKt*Bn+W{V3rd?WmEg`CTs~c~ zyoJD3D)7!O0x_6m|z3 zu1Y5G@n@AbUn9Zs9DKT(KDHz98Wr3}f@3&%s_Lp#0^gy6`%3VU9~eEKR~IO01infI z_mkkyICz_yK6WH$c#s4y;o!I;#c~e<$E)B!O7H>>?x$9}7lF4fQ`&s31kd2$DL8N9=&-&7 zen;z}KnZ90^Y5;0M)-ZZv^YRdB8ZdpNj{x^f>+ z;Qdc2ZO)V6RRxcf;Kdw# zy&AV?61ay7{*wgX&%q^misicr+^|Gx^C$_P$-%2eDB!sSUZ;XbOYme4KBcy~oWNx& zc#H&(=HRKr6wCJ$c%TX%E5Us^_@C;iT0r1tDtMd(XL9iQ>U6V^z#l%Tbl7+a?#RLW z)KOJQ;0IOkbrPJy!Plz06^jWxTm@e*!SNh?rkd$5A#fWNe1innA7bNq!YHM;ml62W zCzLi%kYJO8`>J!*3IhLK1>Y#aJ2`l?nlisg;PEQ>CJC)8)k*@lSHTk{_(cx> zx4Lp)P2g|;uC%#Gf){e|Girxb5%@V3{AUR+=HUOR+0a`Ao~(i=N$_Y6zDTWhHGw;+ z;F~3QFb5w{S2r67{NrM!&66d#2M53MCxs-N2>hA~zD0u5IJjD!tF{n$h6?_R1SfOw z-oc9HZ3NCz!M94Vhl5{IcPn-h_}9mkHcye@;|JNm*smt*y9r#Qf~QLGXB>Qv>gUf0 zJXZzZCczsxxUCv`_Y!!33Z5px%Q*N-bx7_b@aZbJSc1zrc&3{5ngssfZ%T)iNbnR6 z?x}(g5qN89+cp(Qb`=eqxiNJqQ z!FNmW-5mU(8n=@Pd~}i0<~b5Po`Ww@EvFE8wFpQx*w2?U;`f)`5g3J#7}(~2SjU#fy1k>E-W z{z+Y+OeXM=hm4B4DKfIS{3}b1ZQ&and)>im%#U^;KdT0#=*T* zhLsbzp9=oF1SfOw4s{#vegb<{@Dmd3<=~BKvc7=8n-?e@_M`;Y?Po)Bq-uE~fge!8 zOC;Fj;K8cpN&@Go;H470n}ff|R|4Q-0w<~9rzCh22Y;k4zLyYq*L&C4Zt zJO`)rR(g9ifuB{uD(x>97J)me;O8Z{9S7H`k))cy zhbxpezaYW!96Uh{1{(cufI?-(-@TvQiHoq*vD>?X46}*$c@2KFF5?sl_BUSKj0?$#wuSoDr4*o{n)BlXX zeO2(Q52|D^6d?j>+j6}(D<$8&JaP^Gu`5%_&W>9ExjJe-5O6)Iqpz!fU^H3{y^ z!GqOh!XW}@tKioqxElwbu2%a9fzMRIYa}?8gFjLS#&H6Fa-Y)XDhW>H;DoD`HrEmO zF%|rV1jlgjYBdbi6L_=={-*?+->^}&Rn7Ec)&tyD1-~i5+c@|k73?AKS3af9Z%Oc5 z9Nbi`wwJ)qsNlCHco_!|>Zx>CJb{Z;@H-M*&cWUx3OJF#=_+`w1W)GRnj8h3MBpFF zl{QyPa5e|ur^c{k0>7eyYb3ZM2QO5!-V_2CtKfAK9M8cys^xYB?yiE@OYot6j3m#h zCmd1<{GWMBn>R@CCJw&1uhL;@1b$luzbnBDIe2~#1>BLqcdOuy5JcOZd3E>qh4fdp4^@KiOD3?^`; z3jUD5bP9VJphXKgzKe>_CVZia-ztsIp;eo*TyHK!>iaE1!rEx{%S z@5)pLv>}%MzRP9;G#0P4@l5bFM>+g{N8)+E)5B%N(zxTlZKRsYHPsTGeW$)qrpT%dGw_r0S-~1Sx z_4IRx%~P0&NeZw-o^QTsN!m$C`K2UTYDrS1+K^38dcBuz^0!;VqDd5b0KC?&Ua zAxWMk=`1DlvDcGtUSUbPNy&p5Bx!3&GNoiz2a+_lBt4|0Ye$kC#4bB)X)h@mgd0Zr z=5|ZcS4uiwMv^s_WT2G%fW5bT^Y4~qu$0_}8zT8;sU^vll8SVa{MnKWmy#)eAjvRG zQYa;DE+@%lmSnV){KD#XjwKl{C0{d1tR7&CQHey zj3KKm$rLH6WRk}$NwJiCl1kcUTap=4vb7IMZnPvbrDX6WB)Qg-+$|;7UqF&BmSnD! z{M?NsZ7fN-l+4FYbiVlu_S#uX@0XGxtOj3Ok_A#y&)EB(C0QsXnb(lEmn})9lyt@p zSHAg(C0Q&be`Jim(~>NalCK!%I!m%lO2%|2Z38UH3MoloExpu|yeK6B?7g!-SS=-oE+RW$SduC!SO7^n8e$bL^kdl#1+jL8^ zNlJP$$rwwrMM^$mb?akEwn<46>w}9e$xbOb+LhXqU`cjM$u1`O348IZ4?dHU&e)R8 zH}_bQy;9PeNop*~J}IfZmN3gLi76#@=aZzuk{ptf(M&SUk{pqeELOLXmgKmUe2mTc ze6yz|sgsg*tamQ7B=u6#@j}8hvm`M%=vnq2i{uB-Bgs*0ud_bzNJ)3xHqJM9SrV_5 zEb2rOx|6^#@ltXZv-7kiNtBXuHe>iKNs^R|XOZGoOOhfb)$Pd62uqSIB_leMB+HVt zlad?RXguGNq)JIQ7Acxqk~As#5cl=-&F`_@&f3#aO43-}c36_mQc}-2`i3RxCM9!N z-JY~0nNso|n@h?pNe?NhWIVXplJt_245lr|lJu357ObV+Ey+MB8PDo=t|b{PCHd{C zrE!)dTS_iqQTYJ&-dP_Emy#Q?bDVE(wIqd7vX#wDuUV4OQZkc8vBxdRcqzGu#nCyI zWP+5ug-zysbD||Fl9H#GWQZl1EG1jcB}|4TnIa{nEW(~;Ns6T;iOsru4a6rI|)qNi&8RyX?xg`tdx?suO@AOwIr*hB##xdoDQV5L^|K^zNy)Wr zl%!jdYALyzX=`CgHb_Y-lbpnj1Xk-!Qt}Trvi@yJwn)ieQ>fPKEy*@1sb@X>XuE_Dac%%nQ9O$v!D5Jd5hq!IGF#^5_*LX>Lgl zNy$tmIW|Z1!4WArooV}*B{?o7@33gO){@joNdjx>GnS-YN^W6e!LTGTI4B|JpD9e+ zR7>KKlDnC=3oMCON_sHNRhA@PO8PRNwznjSQc}#~+i8|0NlLb}-16|v@(WO-gQHl3OfEM=9|#Z|7N(&Qj8Z)$IyP z(oIS}XH0BsNiwD6G&ajLwj@2Ir0Qy7$idm74|+*S0-Lk8Tavy~@*n1fHI`(clr&~5 ziN9Nt!BX-d^J%Fi$(E8^+EESuY)OVo$#fQbhgp(BDH+2gmsyh0Qu0e0X*4o_S&}JI@-?g5W0s^?O0H)$m~BaB zNXgS|l-y`ZW=hEfmiu38N$!@CW{d}2EXiCcInMmk#*&mvNfGnUFL#NS-Y+E|x1siY zZAlhLNjHXh&yp;ZlBEpuvL&gMk{E`0#F8wQl3N(&PD`>xO17{({yIytOiHd`m;sh# zg_L~G^3h8z$%|65fl1D^BrB!lc_#UJrs#v!Qc}a$KbE9QN|rOpyO!iFDOt?C@PZ|& zmXg7Y*AH5f4N~&OxzyLwEy*S+>CSSbF_vVDl>DO=Vft8-ZBnw3NiMb|JEi0fCP}a) zyQO42ll*k2=!4Is~Ne)R#Up50y zvm{5PgwAmZ$(M`=Z&(sKq$MOzus(RwlF$h(A$f@Tw9Jyw@hTzlvXF+)8dk;iw4~#GlmF}yXb7*v8p9d}&>5K|)zdY)ni> zbx|R{dxIW_teBY^f9wULpSS49>Q0H-4XyT`-Z?R&x?)0V%zfqbRrz3#x7XbFN{&_) z0CV?Dk9Tx&{Kmc>Z_L25>e+`6UR_o_>q= zmvEEOd=q^r@Z8txefluKdy{Wie0jkc6@62^+2(s#%3`A>z(jj#qGEWeH`jc&1uug7 z$BZ++8G~OOgyrtcas@r77$fbkfC;13i}-ixO0q`wSJQ_AkFd;j<_6PQ(%9UJxw|UB z(ElC}=a{W=2eV>eVot?CkNIcZe>7r@UfznN)Ldf|-Z}5-)fw-i{~qfKBW7Ung{5X( zNl&u?Rl`x$B>WI#Vh%ne=CV(@4cVTN>k?zkFR;lGRK9@D3{#Pa8aQfv+8?Ri2D8=>j3J{^HJa8CK=Tu*Lh>iSYB)Tc}s5&`ZAt<`!Et|RMGl& z!Dp;q-bm|}V_qImA0M-;_Fr>RpA=S~uBeYE#+-`97c6_xV~OkwFI9!cLBoQ*tQMZ| zwa77F$6m74AE$+|UxB?Z>W_Bhzst;%Nz8I0jK!1x;&V}lq>&hH=3K0k@O2{lmdR0@ zeXKS?e*IH*UXFQDKz;to?5h3o3sxdjp9=!~!+uE=-I1Ns&}ubeQt1Zp$Qwg-fXJJR zu(eWtty&KLO^*2}GFPjA4luiFeQpu;IXA#RWE3{vVm2}EJTcr^t*YcV!EFY9i}4>| z|IZ=pe~+t6wQvk1P%$0)LDDGRh4>T`~HFHSmG{qZkmSM856 zqCOW9U#^DDB($B;B^wv0nCa#@w98=J-H_pZI$f!Q{Y)P|mW2+wgLrmf*kY(*?E^I-f#ymFzf96&v%sm|$=GtBya#mpLcefY%Qn-)}D~mX3R_p6N zVO@P*ATsGSQ4-4uY&|Erf%) zuw5WOK5ip~9eD$7(c-czg)or|TLmJ=SUrAxCu^rI0{^qSKrUa{p8e1c%I6!Fi?Xz8l&1^2Taq>J1nZkt^2eP?^aO7GK7uq;ER?IY$&Nctg zn0fg&{K5LMCB8}F-@Js36EU}NZRJNcpMwdov-Z$2_H7%{eF<~vS^Blxcv%+C(T0S% zkFjrgS*ybm=F%(4CZ(9KdYJ7K_`__cm`nIKUAXOnwR5>X+X!D~`F;u)+Gg^F=Zg*- z&V{UgR&UM}%pW&4qndI7qywqU!^9u}Y=9D(H!P&ip(uU;X(@Pu9DsEiba9&A^qJ_s>;|}_N$=$qFmG2^|mk7l(r?(T)pS((KNy-TY-S?|w0KCWx^SYqkQSo-tZZm{fM0Q<1o z9#*%JRiEGLRizE7_;xjYJI()XU|j|W)Mem*Q5UMIQBxap2&Sw%5;(VReveUo0;{*! z;?wfY|GUu_As@&6kbhw)+z8X<(B)JZ>j2($o9$RZb~To6an?L#`M)2 zS7GC-YVP*diM5T#<2ntOwT&m>Q!)Fl2%p-q?FN9NkFWUx`nVAP)Hbffzvr`(i}5L$p_ky()$F@v z_!PswTY*nku2eo-6K09B#v(uSVzC{ARkblx*+vQ%^Q)i2eI#fZ**!B^me8S;d96G z(Wxmc?&6}CSsGX0P~JDSjnU5vyyX;lOE-8j8nQOey4h&p(YL}=WyF-$wLu84qYz$4 zA-wLqk|vp>Q_n2!Y$UM>z*tu?CH6jVuPZl~{G7fqJC_<|W?@A;DYoc1D8#PQaqTcS zAnWIui;UvbzLOgAct`Y4X7wGLWPDgY)?;3aRJ(L$YUjk;nqyZaCD%MQl9Oz3YPWIV z(hS4;w|yh{mu41p^4Vr9T;anx0nMkWrF4Ur z_4Z%r{)TZk%`l?BFQ8s-&w9CKaaL(vY9t;0KGv;)9sW;R&PxB1Me6WJf2+ekMXGD- z@OujX4|TYKV1SsC@m^MqZ>YyN)ax4>U($q6_*c=~b9+<#%l+w2Z&+-|!$z5xa+bubFN(Y6qmz_dzRTE?^*+AtIBW93xQapGOE$hl49hfn zRAz0h@KlyuRd%9chNt*^eA&)em%cIm!5gzQu}Eqjp^2Fl=X!vW`yB zxI}*yy6&&h!TPK4zwfV}i9!2|%mwMMLD)v){ncZ{|MvbO{>Bq+t|P<|zJR_uPE(sb%kB zDvGC>ulRHfljLmk6WVFidC3i6UIJw2nE5|bExdN7;r=qJ@QPA}(nH?7e4`|>z_`ns zvB!7g5nst6-=*`eE<>L$m%rry7i*o*Z+0Ub7hASdVY47f=MFtdk`l=jEB*FjE;rj?*k9 z=BQD)PaLf0f)5Jbo-hBa_DsbL5NUflTJ2eo8?-$WFcJJW?Gb!pw_j}cKFm8{xpYIa zqicBkTbxj*VCGNw>#lg4KTq90-d6%fGj}#KxR-9lx^9@&1zzD#@F38iL%ccgXGf6A z$oJ%$3vzchedTi0h(jZ$)OkEs@uLPgT;hzb>+MdQW>LGqe%e`W^pCuW{R z+^sT>VsK_x4EYQL)Lhd9;bE)?*}%ViL+XoL8AIdKH_L_Q`!xsJ#=Q>)lr<#Gy&e1X zWqV4nAUfE}$oHo2;N`yaua5so=|lRqtX;9 zPeW}EHj3L67CWsOtn5Lj8=K;`^5t%hZ%Cr~{pG|UuQ3Ad+>Kz8pO>5M8)N#$#1m!B znOICg3{U0cSB&^9w;j3@fzFJ-p{H<;}c3BM8(h$Y68~y zzJ7`MaqF{l^2{>KNB|Rm`hAuiOhI~G0R|}gD9+qS^Y1J#2oqQ5o8<*rjFUO(NAmMT z!_9S!>+uI~#1SJ@*U0hmHDcVhTo{jAmu=48f2x7i`eDTFiXO9#8sw7cwZ4AjnB4pv z^yrVL$PR(5 z%{BWEVIc!^!nnYw5psw)hjdh5^L(Sg_}Q55L6UQhG0dC(p&X%nU&_}vH33kX z`2|>A)v~aHkRsy4wL!)O7&;4U2rrfq#r@=3<3bSKT55F3fGfd|xVn74(m+|`TCXt* z`G}uxzQrQGU=ZR){v-9DG0`q^d_criR6<7cGZgvwE*tiRBV3jDbu0F9r zjU+0NpbG>D7+^PVixLRc)UJ`X2pftPG3h3l&1ESnsI62JL5r0tTGUWc5`sw(L=>yk zmx`6PgTab|5ME?|-!pUX-McU0t+vn8|6lmz?%a7hXU?3Nb7tnuxyNbox7h~82gJZs z4wT8JWgJXeu=25S{c+E+5KlQJ?oh@8aXN>upRq(Xm1ceJ!EbtCmSYHhGqGQZEnq3T zZYHVe*X108#+XZ1Z@&3_y+a!Wss45&y9!j!IflKJ+=PWGr4-9NI!p_bjsAAilz^$K z3+8loTHmCzEhI*;8zV2?QfU*$fui|(mir|*j${~nYy$fBI?~*Z0g+VvrB&T00WDf6 zqb?Z0ZD(r^Bl`kJI>*aOcws{&*Ec5T8{aj-pBb@Vk`x9q`8fLsnzD3`n~g^0feSH@ zLJ0|$9w#V&s@h34d)TE&Ljm}L~BSUUJ#L(GDR zQhz{~|kTNbGlaBP8~_ zk0T`ZyLG5v>~|Xx68qgIgjSmI2qar6Xv3o;(T=Cs?@mQX?02UjB=)-<2#NjfbcDoy z_Yj1{es?B9V!t~Zp@{u%YEa~UH#IDhG7)4t?UyjWi}7H(IF{eVcoE~lG%+^)yYYYn zZZRIhqk+b)rS|I+G$t`hIzcx+D*r8`B;4Jx<7FF|Df)Z}QQGk`6Yui*5JK|#5JK|# z5JF1QJE zA4IHHKE;4HQ0iP%(%RkUMEtwF?^D3+Ulak={WH(b{}Sb#gjSWzgaSeW%RchiX-naxTEDgqO|kZOuWnT9wAxYBP7dvgv9(c z8zEWVBP7dvgk*V-keI)!5t8LSLbAL^Xysx&Anz%-3=hbAJY{*0kSy;JlI1-@V*Xl< zkSy;JlI1-@vb;wqV*a8AMb2Lpi21hWFCovBY2yy2M_)XJgJNfAFT&>QH)|Z$=8D$v@umF-bTE$$Nx%uF~-`Ka?5fo#Za(1 zqN+b5W+ugO`&*!df=()UTTDSaWebn*3?ap%##V}mjT&1aK4$+TV@tNL>PLMPuuA;` zE@Q+28QGuFKc&wU`r0Q0sfY-g&6UJwg!5K8J`*@-c3>O z;gk7zC@1!KAJupzwpr}!Iw-8 z?v&cMtInbG_E!1L_qB?%cK*Wtm9}|e|0G|j0Q*C&lKkd77_S0J-{1l)UlJ}k1z_f9 zEo!(arS^lW^QF?bh?uLWz1Tl_IYvHElvY0M#^fpM zw=}T|{T3lvzePyMhy4i2`Yl4Tev6Q--y$UBgAVn}`Yl4Tev8mbGak@yDQLq3`YoQa zev6Q--y$UIw+IROkdBb7-y$UIw+PAlEkY6Uff^JkANC+7f^bBfv-lThekmr4o}oCy zYquV1U=55m5}l-p#+-fxG#nKe zWeUH@UtPnv z6hA3h(h1)uup^2fKpc8b*%hWI(f6)Dhu z!Z)Ck<{1O?Og)?fxFxqy8f`4%y~t^8uNo*_JAAg<#XHn41|#I`fa#vycfMrFnP^^c zF3#iZk`+B~E63=WMk*1`TFrc;D@tJs@= zLj5qO31rTQ!G_>@PYn;#K}=EJl8Pqkbewvw#;K>PB5(=4!af{bd!*(b6BYu4=M+?) zn{~*$0%`=#A+0#zOy}0lK7J+%PZa*QaN-R7=$JAcrl3=q^v`3eop?Igi4Wm+;_nT` zk!7*Niz9O!B~}zw>Iz+@E}Wxp`4}xMH(`vAH;&2KA1H9l3Y43wtWdxZ1MY{>wh7ZXv_H48`YxL;2s!xWAM}qr!n{tK@ve{>Rm(8yJJB)>%3+mN49yQS1u zP&o)3vQBUa+3ydLIV2sY)^;8H!JC{z%)}u>z#(PqHkdPccZr(>Lx@8%_s~s(7ce^) zNxMAAHw!1)R<`qP(96KV_!6a`o4U@EicAd?0o7-ey1V*MQZx7qBn=iZr2Fd^~ zAAWFye!9j0Ri8ap+^vgj$a9YHPA4J)@<>i$N-q@3=mA3?YwGdv6R2fvj{Z?uoYc)XnE3rYZ$s^&@7VK>>TOjyPZ zyV2&mMf_HQ>%nF&lyIWNVDt}_m~5-hx7FhsgUf`s7VEFl_5)jP+!jJ;bPCH zW9AqOb1N*4%BRgU=9A%5fun+k3m+=38PnA}6~*zVx_@C5{O5|w^0fqp93aG3d@+nM zWYSkTU^=Q>nls;QS+S}1ZE1f!j9kFIvWVl0@V}OW9;T8~7tBA>3R&|9pe!vGtdM2x zPNRN${5=S5>&QL|fPD^F9v=~t?690&@R{N?(nNjRtEdt)GBk$q#*Xod#y~M9X$tLA z2+;`_9cCRYx~D;|@k15ry_2X=HE{G!6luqJn)e3rc08Q(wt8fm3e4CQm`=eAE_R6$NL2#o zDuF&qK(7S4F|F}ZUnqgUD}j%cz&lD{s}k6x1lB8owMyW(O5jl?uv`f&Rswz{aF-Ie zLkW15K)DhqRRWWgK%NrFQ36Aiz-3AxO$iKC0_P}!L?v*1r`+}fO5igk@QD)Gr3BtY zK;{9?6Cj$*+=-mCX_&X}P2jVx&*oHtbK~&k*|lIftXKDAeq;W8^i?eC0}OQR&OHc+EOg+vce%?tKBpt#{!O zSmzjm6!!I&W1*GBh^U{M(nPjX%cNb_rx~SqRExDtrB9sFzUM+`(lI8_+9MlQG?- zh6v%`QWkI$X`tEejXyypY9=zDWQ!;R;1mXH9edFBFbJxH<~4SU3Z~eR_cBdA0uVCT zv*4JC*K?f;Xt84*O1U?VKvE>E^Ho@Rj^Z#NUjD=%!)-CDZ6Oe=s{w+V`vI~b!uk{< zlr~ieLh|&NsS3F%n}Nc{m5ZX=qhE~nJfMOqcK9M`W}x)Bl+J0k*m01WqPBuaqN6M> z4JeQ_ifRdz<#H9uGRHf}5(%gRGcN0+0kn(&ZA`?IL!*X24)g;H(D1*mR~nY*a0t3l zI>`mX=#y&H^(y6&d0~|bjgCe98j3hv2SsEB+VHhP;2leB*8W^*}FiPb*=yacbfq@~KQ|wsqD(PEcU>>ES z*C~_SQ6Rb8QPdunT$hpRT1nYtzF2{XFvvL&b{wT@72Gn%nh0Pdig}jl8ekhDfRUV~ z#yb(quF(M7hKMjQlB}Zr8ektHOSokum8qs`s%hU#;nwX#M3|B!u6a#cD2v>(x!O%^7N8`-x4US;Z!uQZsLxukidxM7LJs84K_B9lxJwKg~cX58YfW|vN zKdnYcoS)VrB+gIk5fbO8ixCp%r%MqM=cmgM66dE6BP7mGS0E(LPa6?hxeAX!@@fjM z!2>>1@D%5#>kty>r_Bh7^V1CoiSyGIgv9yjW`xA~X(vMB{B#>a5$C7WAYX5-zZGg& z&!-TlKSEV~@`|4H$=w@c^+}3bzXK0NpL}8?^vQP+LHZ>9k{-x^b@Hppo5}UbT}WgL zQpI9Yqfb(1u1`|6to8TMCnM^)nhHXnq(~AKQTilDM$sqldM+$0gg&VxlThONq=&M| z`h%iRDw()2xrQ>xB54m7NlG%+!S%^=RWQ&eHwt}{G9iP|CrJ_c=UN4jtWUno^+{e? z8T4Pu^E&0>u(&=Mk@gIw$#PHVlM0B{)v{=mkOeTK^+{e0=_$9X)z>;UqbaWneNs-h zQ+v2RIYtG=^+|0y*C#KgbXiRi`lL1s*C%xvP!P)ygZY*8mf$q>?2< zmF&V`R)&&LC6#QdD%puF=sPPZjtaL6l~T?sRLLf)NoEY8N-8y}s^mfqFri8+SyWYW z8fA%4C6z2(m820l3|S&oNy@_Y!iS;tlPXCQk#DY|O76#e9IZ;KMb>SORwXamNCn7# zN~=viNmVP_BxR7k(M*d^xtW>&LJ~3QY;PRJPZe<#$aB*7|Sz(o;w6{04QFH z%>uTg>kd`nV-qeUkRJ~^=|v^5$1@t*BO~KAP`-~GBfS0l?6{AN%fdEjt9P5EUi@rw zggxs}PP^=lWYV66eREpp^~z`sjAb~@s$w2oCub8|j)fY=?yhYKR2{D}cZ}U<#5A&Z zA+%*wfs;nqu9@aFG!a-SFF(pXm4GVcayAP$Uz=3xz^GNlRWlH1`Qq4QlV-H|Qz zm##5FO=@!;dReX!Li7sxIP2kLq~^`wgq%uS5Y(W$B`J8m|&h_eY&Aj8fEf#(#e1UKiK7G6O4Uz&F|fAw6=*Z z1ocby8Q!dWTXDEB5JmcKlHBP^A)SlaPzdP;Kw-;GeRc5YS}aZfQ0fbEH58n0J=B^I zG@kEsHsqVK4jpPu!cn3#9Y^P#p~4~51BtIvhf4u7A4G<#^_7CjmO0|w= zA{$&X6g$!ju~WJZuk?={eUa~`2W4k`tUoQipsJF0IoJlf+48VWKb7KgDGiWt?67K3s@CsRykWI|w1*KtN@Z*KA&kmw$DQfc8tLY(F-W z<@VFQ3k*gyt^WizN;ndr54s>NjoC20D6L21TZsPQ)_u#ZM|+<>ReKM2 zs_muzMvKv4A~yYF16Kh@rL~u0T@=yUr+S}$Yg2w3)!ILX`h44cjrMLmReO7B+DqD* zgF0AgZ)gXEmfGHHaK0ST-u0M)D8uRS_9ah7wfFTC|Bm){ovOV9$#n|;L-QO(}@&9~lcRdqmr_w9~7If|Ii29jCfnYDjIbo(IzPPf~y zpaCQJLriHqkN^AHAEY_Q&F;oDidjj~!c_9``x8k22&@=4T`pfm4USh{PM7$;T%7vl z^m}PuI7#{6&@34*9sQSas{ZrPazjkP-p0T{tGDcf0sP=BlLjs=)aV}@&$j?^E`B2x z?EvOtE)h^ivlr(&{`nA8u>Li68DNS~>b2?gI`2}{>Z;U*Qq0MjR%t(2Kb53e9&89% z2lNkgz5hfKWK^mw%(&76VP?|J@b#(;u{W&nf<%3;5p9<~9>oV+kE(nSA=6@eE!=-+ z8iM{EDz)JoH`To|txy0hFzO@oihOhcxfFpX&!F0}GPeJbeqeEF&De?cWH4`dXrxY;pu79- zoD;sm4dX*HMmNhC-6UgF2#h8-^csQh1Hte4=ko>umTyF;AvI})y((#xGv|#t2VhIY zeRSr$Q8l>1I9#sDCf8(^Ycl4R!x$3?h;PqX>gGdHDW5J{fZw%xH0(_KrKkMS6`ksR zZ}5d6ro_y}$ zXuhjmY=i3APar+z!MfP73#Hsh8ioQ1>;Qy>f3pKaY{9Fv`IytreG_{NnFk6W#@lco zEa_%B7GU#oK70guQIfVkjeJ-ZxLBr~t$aRm%|xy;e9t1VxDrsdMO+j2yc0OSlq=%`A)B zpaZ`Vqs=G2Av=#`_VP-!dYNMf6(V<9UZr{GFkQIW1&*myBo9R_tX>qMojP75pNhDU zWMyx_@WHzce#fbc?TDgMW%%vK3Q@|xIUn6jM8TcCLiP&OxA;VXxv+~pswNZThABd; zq5?O&M@?RUWR+uiJG4(M&DY}C|soYLq*%7)R- z@B=`Ui38Yx0Qg_cy$2^g4CeL87&WH zz`&vhdGP6DJ;{Ud$COcbQhAUjXDgqr9bG4r2eSb(IHfFF9;}Deg*tm`9^}iJA6rb_RQocX@#R6&qtu-F(Zb*}?AEBw(FlV% z$lil6_%UR?Jnxa!3485`(ww-$;7K`IZBBUV3k!o9k?HJ&!KKuOIKtqW-}ER94nXgb zn;jtxelCj8{1hz=TBt~TVK5e@qJ+WP?w*Lkg~5Gla$I3BM@^0^42tCBlL~_?)J$h0 z47v|9_7KO(0k&^gWE-s zc=BK^6^Snou12XSdC>S(PekGJphiuOD-Ui~ljF*RF>>-r<-vt&rZbTT>`RV!lswpp zgNYvH!3(0uY086p)!e5i4?HqL-^qisnC?$mgzjh0#m1yGFE6VFr=h+0CTHl~NUtK{ zYAAm#&!2nR`G19(QJN?6C!lKWijKS?nCNo@d!S@gUk{D;0|bgn*{>I&P_nrdMj~Ib zw=jW9lL^BuzFuAfyherI^0?Tw*rjOLg{|G%4=i=GWhf;VV@b>I1cJD!Roj55Cg)V# z<7%n8SxU~Nw6tYZFJ*JF>GvVLAKQ^5*v$m4lda%TDI-2CWn~8*2xrdZnL!>D%oe$S zfaKEkLjZu4pj!XPJOr&xnRw1kY^EO|dH>TiH<%iB&1h(wR*ntVa&7y=ls&r;`Fk<` zE?u>iY%bm&VK_e~R(l^Y;)X=kYLx*ar^307Yq3*q0MwERBl%!U*Vt z8^c4?U1Mofaa8%K5$`pvw4J#3iR<;k+Y8}qzfZ60NUC@x-5PsMsCiFp`@B~qgxiPKNfvnM3cej7NX(<_P`*{c_^a&r6$TtZ*j|IQC=Z z3tHkkB5<65(c`n=_~B{|2vEzU*inEsVO)5Fq8_mJf%_D6&w4_HjXYnkgJY8v)Ipzs zF}pqRDj#x@n|-qmJz}G-aM6b@SYbv2KE!*nZyyjSv}bCZ_TX~|Xo4V0M`9j8gK9cy z2`!EISD5%aW>0;kKIF1XOGxC>WF_@OL?I#?l?WvVO?VMGK2#!<9PcO*N*%kD2$6%W zhmIzVE0&U-K*;6IeFSG=nRu`#w@AyGZBmsG&Vx`WLdU)vFU!RIQ;)cJ;}$h9kibD`NPeW}nFf$ztrh(h7e3QtEWN zSJDgipKab^&;!R2e7Rx9W;Jg8fd^UEP)rj`Xa^d{4JI<6Nktv>kD30Qp!2^;XT+w! z28SKd?1=`wdUejs4qt^gq`E}~a#?B(TZ6LNg0oOCltOKgQe5B)X@AD1kqpLCO#t z-3gZ3B`D|b)>q|;8NY+4ATAD*3Krr_^B`xMBsUkmnWCj6emS>_I%KlQjIOYuhHn)v z9^lpTZDF{!v!ssKhmK`>p#()Y9(7Xtm#jexEA<_V@(E4+V}CyaQMF_(g7^;CpYftL zDjJP&d2k$+rz+T!;qrR+tCN-I^MeO6YBp92UKbuPyMPXM0py2-kFeVCv7sONU*$Cm zM15CPYC+{_L0y5DNSX-^%M`SL5VG z+TWFsbqHqUs(ul2rAh-ZZHeg%5d1! zrf2;7%;=V^54?QRJA%g9*u3`e+QtTA%AL<7_qXvbUn5nNF~9AE0^1wzkZ;# zl5Pp57IN1W_%3RD9xO{xE}cEJI809Jjx?24X7)%mXazP0dlRMD_!Y>DPLheEoR#}G z+s}$Pl_4Ray)UEHu4bc?^r}nH89G*jjkh9c1-~y}0?aY?_DXFTI~z>(<^(d?IwZAa zy)8ab&JDQQNynU@_qT(2Hd}+aSM`xTRf+Aow627DlhigEg@VFgs$%@r zp0i`&&T<$wqyYoclg`igS@M1Kk-GuX3;Tf&T$8=9kA9P+7Z`q}U^hMQqxF2vUB^ks zy?Yt}a|;nGYr9m>{qWGI%^k9#gVD zs7&L-azk4z=T3qg8sY*yY^>oDJ`1GN9AO2II*21lQPQ!WA_ zVz9E0mL}*hF}Gk^SV`PZ%&eUl%)r3JI_}o%X3)%l?G&xjD%PvVS`$d>Tp=eMq=azlM;mym)!T`9_Qy}TOd8tKCUTd0 zHd20%rog@zf%ksgnxh+>^u-5qldpk)s-TQUcqu@7^mfFVvN-h^( z>0d0$4N}X6lj?an-|cdl@Fu_)ExffC$_ZX{x;LEa7R9pV)bJKTvnY0%464E#PP#zQ z?;JtDyZ*}QCsQw?E!jjjX!wXEMB#9q?;(gj8c2!I#`$uFV-!fxrXR+)#ZcH>DL_XS zexDM-w1I>(>4#JGQ%~u9&c}9hfA1;?U2ob7u+6Z0_ztj)u?`!G zHxeXv-Z~JFSQ$Ghf z3q%STt12lp389Qrq?j}*Gy@?eH?}sa8J_3Rx{X7Sy1p;o@m;lLE#)&{4Sp63L+$Z* zC;se`kfZLM$BouzYFS$|HKeVXkZx-x1lyVkTw61t)V3D+Uc}!9{B6SDcKmhXFCO89 z{^;K~OQ?n(XogS<}Du$;oZdO zbUhn=(sUjBUPO8muf7Ev$JMl^YK#8OfUt`cI*j_%)f1=NVze)A9=Q6?f{)DPQ z_t@Dks@2!C8a`QD1sgob1vHe&g@p|;af z_db}lcOpe;{im4lF8rsM5fc7WtOyDJDK>vLc)JaCPFK-@dzXjqhKx`9f?jnh5wX1goOW;e1wGmlmdi={}dNO!hcFJLc)K_ zRD^{8lrn@O{HIWZBK@aO!xWlD^Te6FV`a`BpLZ;zo*#C;#pR2*#vNM|^v{b81FT|E z5#H~!6_sG8d@q(z@(RfgtIV{l5Y#~%vk%hiJRT1Qq!T~%&#Tj&(0e>kGxM<(`34T( zyzHxfe0SLfm2^k~tDTE8s7aTHzQL77{7=AtL#080c928vPBt1B!%3C((gFjSGZO-Je3`u`=l_Nn5y5Q^IYQknF(Smj|(%FL>L|YEEnF4j| zkW~xxunP2x*$U99u|WF+C{uu5LO^*N1yD#Ymw&4j+wKJPTn_Xi6{s~(*Bk}(3l->H z04fD3oi@5F1Ox1PA*RtOV1V5U{3iy6;pd{!0)Cnde*lNy^fJ*mP21FuRj5X4DrbNn z15^Y9*kuN2{aY*p&;|<2iAC-_Fu*$sawbA3bFvhqj5!_9NnGsbf5qtwN5~P2(4|1A zQ9yKudzMZNF`>XMAS_Gee~qRN*gYxHUueaOiyCLBKKqlZ^+}@s3%Pk^gOIV z{};0q2Jd<<2I%Er@Wl$y=5wi`1k_V`y*$IAE3FFU@~!~DboSg!1dz6D!mRU!24Ft| z$mwzy07h_lrc9UZpTyE-HQ=)RSQM`UU1}8+QwYU6$|@~iN{G5>BIX>Irl9E@%IVUu zmCy`NOT^(HYtXE`U7^d)wJ~(b23-~?KpXp0XAn?NO}$= zo@NN(Mh(Ctl?uR{V*y?ZfU^~VR}w(pN>62hI@9Q?m7dQV#sQ`SU@f_e;{8A~O$bws zI*9IBLq8gvzHBwO2*!)Zsj=9k_rY#jU_KmIaL#nZe*GR!IX-P96(jKG?LwN=Y3Xo%? zL5_?DIrRYn@?qS)BF$4nmOWJC?q`WC6byIPeZ;qQs==5>DR*9uHT$p?b?Iw_ZmjrxeHyUm$Zs3!!U{u3(hU3V!0q5*PKp9`K0t z0^Ub!Vn+RF-z2YB48mdTcjwTkr-4Cgzf?ysC?vNcEdg2}Ik~AQ#9RRRDkkNMF&LWp z>^Gkaad)_lk^*&RkX9L}J{qVHwiu|{$ZTc1Z^gtwh_MN=IF0q);4M~g8o+U)LDmya zxf-0Xufpf2ig6sL-oT0QNr=Man=mG&DkdABj-gJzZ@l;5L4HCwj4e*au?f*-c`RK> zQN%Y*NDTmw2sNN$0>`0lpP&o*St5E&L{p%Q5?b)@qev7Bk%owLEX3M=s1RpJEJ`unH0ndIAZ&{1aVApus9rIBULP({9O!TCIbtHg2h}J z3qGLZVsV`Y3#)>~6pqEMG8Wc2SbPy;FI9jRG(cGzun>|}o;%$ULsKsg%_o1V4$W04 zCK!LuQ&D9LeP%Ht2d)vl!`BA#&>~AT_FQz4BBjWlr{y9vXUavKRAgavkzz3cVEE7) z*nEybo;2vt5(S4O2=gXyszS-j`qBWT8O!6Lf#wvPlv~0=Q}~%&HZR7SZUI%)QV05w z?4)VU8KV-)OH*Y5w;)N|cqx8T}VC&rGY1 zhF2LMUTHG_l-&gWak9TB8~G4Vi^D%3huF_7N%4VMkir><6dOZq)(;d?{OQRkQv3jVh|~6aLTvU-8X}Y|1qm*cXtwP}82Dtf z&L?6pxD^=eRxnuJOJIO;MHuMxLIckI5yxPz1_PZwP>0QnI2eRZuz!}*aHC`ygF+9R z2n@vJHU>yUOm4UN1}Q8_zeGzuiTpM}?uRwuejwvWrjM?n5*`?XloUs!p#Jz~j9ind z9|Y>ssHT@z#Sr9nO!x071gTBpLTCAhzyQK0NQJ^}=%aA? z>}P)yLPwVnEBZp;u+ACaQLYzU6^q4BfW-y{ixY_g3*yK4Sd7A9iZxRqH0X<&?vd=HdXjgan9)MN6~f6k+)VgQx4Y- zw?ZMnW?^=h5xctC905_oC29@wM&exG_q6coKtcQ`Rk0S;;QM+BSy)Y|Nc{D2O{dl! zLcK$LzOml5f}E-BS-6*=m6I~@DiwO+`vY}z`M}v92W3RavMLbL$?~6<2^n6D6Cv%S z$%GEGBV`~YA;E5rh5s|(7{&Z574wTwt~h+TF$!#wgB&(KY{p^F=dico6ipfYI_v{F z&?^y4C9wE{%~i4ZuqlQLcYzA46e>JrI87>~$yE3`$7D1xp(#k076<;v?7%dI3T3hI z?+#O87`qJcd+LE=N1334Q>MZ~4!eD=h6>I=UAmSEWK)*S<^sN$3RHt?v7EhcGcp%S zZ?JxT7NRg&qrj(y@Fzcxk#6m55v=4xVI5e8>xQQwv0~I#ff(dPP|8m`U1SZaA_KaYRz@L zt{~NgkA>372#mD5JQ|bPH`pVy6*>sike3^k3uH+AQFSzMWlJa7Vq8Sy&xXE>`HlkLQQ$iY zd`E%rDDa=6fPWvp7W*Yj`3h1osnSTM<{KdUpfccIo?^;M`w3PzyL2+P(_uq|y8_sf zU^UO947vP7_z4QbtOyzr+d^R~itslS9*3`Q+XIV8EC-g5h=wK6=^9_aUgBkAw7rBI zmUzu1p}%C7hoQ{j9tdg6CS0NIhVE?hrE@bN7pt2~^7;Ih6D`tq7aI)xUF_3oc+$tg zSC^tWRv3-bj+`B;YAAI74yqOHknQMH>)O-19Dz;)z8}Qk3nDj8g7rmhONWsZRMJpQ zP8b{D*E|frmb#A-Td9YJ&A+j2l1-SmFNO^f*$GEkOeO(!+?i)j%sCdS#YO&KqqMkE z9C}b$tB7kMcBJ51h?gv)u`CD{9}96!MQJiS_7Kz*VfB^{OuVUhu%ritS(`|}4UTZq z?e{@1ldYA!YoXS|Xz7J()x`EhYP=qF{npKuV}?nzJ(L?9 z3hHt5nj_#5>%1wF#|8_x)SR#8=1EiND{lTH);UJ0S6716fnYE-L3uOm&p9x6Fh1pM zM=fcVSI=>|OV~ti&|yZ8SjXiYnDe*t8Polpp=mebdI530|1S8;O^~ja+B4w(emakj z!LsKFvdcr&`nC+PNE`#DX!|blJ>hmwaK66F0ROKIRwusEd?cfTf9u^<%6|C6V;R^=H$uk9` zBVqu{5g?gS!Y9@XO{EyUujAyx=P(by%GVcQoG?l}2-^0HJ>5@(8v+l^Q?1}Rv>%^M z;BIR$_uO8ALDC)a4IIAEKBqUn@Z4_Hr*-`$Cq$awFKt0H$gKtA8~>rHzM`-q^q ztLu)4cq7GQpTgaBV?_Kr;D@eJ5mD<9C91e0BK~2D=T!`di1$%^F}_F2#>3JH;!g4% zFs`qM(P2ZHoxVV3q3V zg+X|Q9lhv5ozPp-j)*!oMb;sGrPjh>Oc7q1tGaJ(nhhiylIP%gYoJ&Cl!VB1DP<;7 znkw*+lD&8a1~#P3qF;P1eu}ByV~)(f{!3t7bc%dlXq?cO~&PcXGchr%}Fn^%^xY0Ak3aQkQQiwc_f;t1egp9WUG4rJC|F#fK^-$eY~jK90^7k|Y3cgMO*ARaNIF=b%LqJyMKri{+!2OJabKfKrQR_jrt zw5gR1Hf-|a{`4>2K?b55DoXF|4 z_`x+g|AH*cm`Rc^%h+WM;#t`T<0;kUZ%-;^pS}#G5L+(|{rsEF)klX^xul-~08~RO zfV|yhl02r2cUzApz@gK{(iC&X_SPc_Id9D!C`~a1^d#V>m_n${-sf%UZfGxyc z&H&Gg?-Ef^TflXi>?cGU;EpPxU!;ahDjljCn z;GLxu-;__q?O82_{1z~TLovVMQS9|1i;J~klmhWGaD&#LJ}qmC3GY;vh-xbnycJ4~ zUqerp=7yOP4T;B;P@ANJ%;Tgr=4I}|XA)dMJ?Ijs3w=y>-rp|czk(`8zv0ZOSPJh$ zTd^B2Iw!$*JwB%}gp@A3AU9uqv2#BsRh#~Exq?0LS_iGA4Crnres%0~q5`)^LC+6^ zL3$=#E#@7LWFKtaJM!Tbv(-mVhBAj+Ew#^!3}bMAg!CP=f4+^> zV(u!%#>VXf+Z8*8AthTmWB_z*sMix;l56%n{3fyKzzhjig>%^&#DjijsC}6nFO$C` z6$8OM&fjqyt3O0r>TaVkJIM^BAqp;%CiKXK7XPmRhSPiREGQ?qwr#1MM5S@XN4Ye# zf&1fzBpPk?cUR24Xnh6RmeDD_1qt1phJQgd$Ll1mf2Rx?xWtk=YT0NuYX9L!8`N~{YLQ>hJxzrP+y0aIfkGwH4N)yH-8qlj|-yuIFa3%%lkN2 z?c>hTdfnbZu*xMuqO)a0c1992XXk0sa?&`owZAt{Y3s5)w6(-E{3bhErk!hoxQ{KX zQW?s4-RFweIvcCqi`LoRIqdf;gON@ zeAdL%lILTQO)Jl@#`{^y^P|wkDz-QTs-F8jVDq9+iSJ44Lckn4e-h+!zLEgV(0K2@|9KFN8AttkzvP0Q%o1~ERd0r-! zmucf=Y^7{d{4xp|7xFSjUgnodnI-Yd(B3_fZXz$U3k+P!rYU7^ieE+{_W)jI126MG zN|{Shrj-2(B=^I6%8cpliNvbjn3=k--Tj)R%@=ySN{U6?n*;K?50=a?hKw5doMcPTfYU~kVO z#sj&rZ5HW&{Dq-}vH*b@$rSd?s;yjurxL{RBM#Zg|2QGSUU>xr;q?5E&%u4b)ABz) z-4xv(|32YA<4gF@s9wcSuV(zXbnaTKqj)MCQR# zbUS?ojXeV#uspG2+XX%}oY?H-2H1iUfoJG|G4RX^{%qt=>YTtctNC*cp6s3~&cE0g z&CYp^sxkO3sPZiBV>Ebif*mSA~aT1^8uE?7LcmT+6dt?57Yp}S>UnY5g52)jfW9(x7F^4VH= zzlIe()^Wo8SYS)0-($&3;B4V;qfmMiC1;YqjXZYu^Wy#hoYe&uEdwY>M}8~UN3Ol| z;C+J~y#gyd>`@D6@FgyG=Q`X+Bn(-h1|g?F$mDZ+T?#^jdqSv$uD8#I8;S%O8*<5! z$G*T#TQUZRTaLh@rE#$NhRqV#ivu~t#n9`;j{=^p=s*Sx$WO5-nOE~c$0+*2!4=3CA z3w*0UoKm)23J$Oj<2aBr z4+nb(2Iivctnm6qEX#)(PC^t;`hu;+S%yG@(q#V#(^MRcu{fjvhy5%0gpkkP+NscC zl!8N=i~~9Ja4?sOLt0=_V;nks%q~|^pmex`=5%-u1QdNyeMbx(?7-n21&2v04x<$u zoH7pQaU8Zis?fn1SVXf+bYE;_Ph}`%p!A&AI10ro3g66*L17SFt87qEc>QgK3}XZe z!k34PMJmT)oQy^72Z2R2xhY88N%uPPgl7+Sk%|Xp@pl_JB3nU3K?`3jA{PRYMg@^k zDk6CbB0A_xG9rUHBCq^LCPxS67vgpW6Q7I;IqzT(eP5vnWg%M-@|-b>FyRy5XFm;- zBwNfg7h&RCAu!2hFTF(*AD{YCX|fh$5*H3DN0!n|<8|Za3Aj?AR`ETcmd~EYor^;q z2@wbl!<85K^k7LqNPzxnENBNnFH=D0Dxk5hBFPj6oeR+Py4A_cGIOuCR zXrl_6j`oJJ`^Y`9a6s@2YBt$rj&uW&Y6aMvJGf=%FmZ1s^MBaFLhkQ)7^;T6a|!>( z4*C{L#EpgT4j2^m=Ku4*m|u-puz8n8x?6vSZ&%r%%6+e)o;2LrEk3)q5!1VOF+C6i z{eQ}zjXJFT`9?+$Uy|w2lTx|&Pernp%kyeHGjsSJAkZ9%z~w+d_V;e7eGuRzE{U)x z>zi}LvTRc!D|`fosY^&QD3O>0M)F9SCzVL#Oy`k}nn>h4mq*e}rpb8%7n_7vc_k7# z_af5kd?K>x#k+XZ!#?HDl2a7>xmiVIiN~dJU5f{vrf`CPZ9_e^1f;)QT0|NL=3MS& z*q4YouL}JUh1ACPI8qXqrRcl36_B*;se*+{1)PE{zHAkP?+XmFJ^&6qm3Atn8v&vx z@R;#?1Rr`=#-Ddfi_fBhPvjJlxJW?F+5~bethL2cj`4Ah9QOU0D*OI?3OgG`Y*{+3 z&FysbZo^kEXz~<3I#1k!{^yz`fb>&1zp9s)+#2KCJ`aQ7a{jPSlf?)L|C3V@68 zA>n`WVT6SL$rT6*|C5af3ICI;5Q^|WNeznhKS>SKEYr`5_Ed=IAG%ya|NMJSN`I*} z5-QENfl;ZdWwUq>Us9y{SAUN-16Ds9cfUcmEutaVZ|I6ypJTsaGlm1Z`BqHgarYa> zYCxRjegh%GCjFkzG^g{uvpE;x+etl0sc?6oJ*M8#`wjFx4%#viM3J4mLL0N9kvdOotrM&#bu+(sYeh~` zr<3MVyZ4>7@Yuxi0>qMJ4-L=wWP~=pov71@nxNsDT(DA01!xjP?05q|UNg~W2M`BS ztPpFy5G|i#lv0iZ2lr^QU$=WVqiV?FdQmk@#JE3xw(m8ndKFboUYg~qv5T!^O`>Z4 zMFXYk>8KhPbQe3Q?ecazK8J;uHt#w>0JcnUvbO|;3$0mt7jfkT{9Npfi z)4NJ3JPn0W3tSIytmMMPAIuu3@U{!k*2NAu@ld~pB;%v$#Q$Ir+z_0c#!@zetTCI7 zz(eJypA$c+tVHWDT!dhiWIWQzRy%N}oJcHW;l2%}dr3S(#aZXrfj}vjylgkbJ%(cJ5P%Jj)ekH>^Enhh!2c{ylvJ8(v@=OX=;L(xj#Z%}5vk(&cz-)wsKHx)0 z=mYZ+68gXbgoHj&jgZg>Y7vUi2dF`j`T#X7QZj3ZdImwv?3TXK@(TA4`2{%IA7Azy zpVjP;U$oa_V}Ar|6crUgwB+K4{$VvY6j7M$$h-7*q`seGrvhMj`+1a>K05Lc!P z@mJ4BS>RDrqYFGrT*vO3!TTJW;F&pXRKftm;K@eRoVG@|@cZGFiF~^+z}GPw>AMDj z`Ke+}QAt+oLlOe>)7Vwf6&aO^>Yox7rK%N?DCKofK=GR*s`+es6h4W*|IzO1dU58W z;}2>)gavJ_kH*r9b|f`b@s$8u5nWpn_K6={3aHvTIVB5G&-oW)4q>S2^U6%#Fg7i^ zf?n`+IGHI57tM%e0u5TYTfZ`3mr-abiU+UqSsT9FRq{+$pyl-nQj-(J*UNu7G|4<5q5Mf?~*wX@HZwz%dm^23DEmv{mk8C6x-vt?D*) z1n@6dg4*ueV}aYz?rxzXWwT)%xb$F8BpdsIxzBQInotg z`Gk;K{y}BY$;kr^f->FR(6O_ac z&@hhW(L=(KdFG*dex@c4weSs*Do`5Dfd4-LQ_g?nk(G)K-#toWZ+Mx!hw|wHd%cmg z<{R>5AhvuaP)44$^O*f1RhFl6JlWxhG!%B^LE+n%|Al2i-RvM zY`y5`JjYaQHdmv5vDrM8K8NLGm0r=+%2@ybztavaEt3rfWbwt@_FvGFN8e@Uiy^T9 zq6^>ryWX0;xuOGmjI%X443jtMGm@Y_RC%(^d z$)(uN2?4%hEp@Yhi0BIkBYHo-+gw$wEYHkr!%KX528U+BRj3-uKP^SU%Q|+)g4m_# z<-l`Bd_<*WTAtQzx!aVrCBVY~meaW)DSss;c;GH-^7+7luVSUV2TizPBROrj@PoUA z-uchda`ybYFnKJh2XrZUHezs*7SF_^e-B}Q61R_xmU|B&5tp2Ios($AJvWY42~90^^=` z7Abi@{d$ZIDF-Pq-V~T(uJ>5G7V_#N=`ZTvjC@po*R+wh_<@rxqD8!oUCxNOrqw7S zC9k1p%31=`t7#qmV1FdJnF1b@l(K;Wv5IiYw+L`MP$s>ezR3LA$HE{F~;MR81lyB{D!mlx& z1&HCFYq?dLh&5*ZWc7{KnE5X8X%)C=6N^lIz-EIZ9Uw#fF$K^*3e3OMl{VjuS-P)p zqBX^wXdQ>YS@`=k{{Hu7#s6N&SuKH@7W7@9hP0IspCp;R_puOPg2%4%qw@1Pm@(7o z=I8SuYd-D#i8NKR`kwQ%S&?ZC$&NQ-_75mZyMNG(#kJT!*gy;Kw+3Kk--3|XKiG_r z*gxn*NbDbMLrCl&>_ABDAH0K**gx2Xkk~)?5FxRDup6P3d+-P(GYam*qa$%Yo)=}( zdBQ=2#Qs4yLSp~mI6`9oKnIM){(%u8v43DfNbDb&5sKJ9pawjWs@Q`@WAkq-KF5&vYI} zKDG_2()b)(b)K|cYQ;5K_#io^x}n%R9J#YXb)VzfZn|YjE#9QBf)n-Fkr)C1c6{DB zwX0W9eE$|Yq!X?~mb?d%3~OcRoj=wYjskotvSm{$YDo*gD;3@y5}8lu)f^!_s;2M> zzUupymy-OuEw{DMp0?E49H_6a7p@5mvTFj=X4^Xq0ECpNgL$RS^3pl}PxQBKp+bSa zd(#kAbEFrlwbaqoX3@OwSzer|x4f88)2c(h)=x}^PRom&|DcRCuUqPNBZw-c zBduQ~`u}k~E+`|S*`H?m#o;du@3kIHgwvRR43<6<39X+GHhk7R#&l7wNHw>z9GJHm@BF_u2p*M58%4&`z5mEXH%!@29 zT3SD`2l{qRs5#P`63!P1Bam?07QJ4ttHBLdI5Y0s^*=R7`cRI+B8T1b;yIQV$ALDK zt97^C&>ApMryF2n7A&}2XZSK`#xV@8rvDke;V^tNfp-se6J9NKH`2}CGF;zA_XEiS zT;;YSW2(QM>`?7^9WvhEp5Sjab5M* zMk%YbGvi(SI)k|!JZ>vb&{tnd>1Kyx6-k|dgZ%(da90A-~$0ha&Kr6rMMWEtB zZFKRz82)$8pAHv1{>|x|Qgr}1k%PniU>V-`dxF_<)S0Kb3$fb>t42t#SMXCfrzeKtZu z-VZ}a$opJ`guHhmB;BP8T~0YXCFyAWDgj7K1ODh12%=t!K2r;zs*2nl)b zMM%i|SqKSvKN}$-?|ldfc|RW^A@3I;6d~`aL6P#F8WzqWn(=RyM zh!04ks{__JPH(`^@aP6E$l8+AZdu;i&>HDAEoOYtcV;yX<@k6o1#R^`K!_PXT7FL$ z$N615kWMweqG=fB&lvv4E+!nvL=_PHPsq-*YRBi<@xK6ZGX94bK28~v+(2 ziwW)kzHyB*k}i^kl%o6>=Z&hrx=A=!@NYJDoQc0W@*jv*E!|o%OC9qF37fRNNIE}Y zC)J?p(6pfOrIVP6XyLzs{rxkCAI3j;7Ugl?w=2$hUmhHuG=9XtSw!aoY5dwF_L)d7 zU?%lF0+z&CVT%nWS+-UqDaV>fpv_4OB3w8pfnY}3~qF~G1JI#Dg`Lx@*0_Lmm1CH={c(mZ`yIfqmteUs5$;$b_Jj)h7*Md(+y z>>x^mt_!qToD*0PO87TB(98v|T9J~|&ixyC3)xGYxsAhpj+t0QEx-zYetnt4 zi<0Dp%!q98H|AnXRUnC4Yhr5>V4eg=dcXz8T5e`kQBDUkc|gVq zWHNb+Y=!J^C48PAzRvM5YC(>4LA_s&&*N(Z!nO%#YE@p{15SHW|M;{ir#= ztVTL-kyB|=Z|1=ek;x8=3Z+GT*vChDXi;DGzMi)zowvy5W0=!Z7wz;DE8^NDYW zrIOhov;l>7P$A+ruhP78*i0%SxQ&jWQG`5dSs3f)MYbtL@~MamNmh0_71;*4M_p`3 z6qPE&Z$I`tO8GbEqnn8+kn)A>0?{Dq`6!|gnc0aV(anN!!xSMVDR8ro)#L>zt#T}{ z9BkhrC$Dqh<5k2YD(BB3k{%@Lut(HPoTO_+-W3ibih#0|2@RleaxO|O=CpOQABs}g z@5dql#CwM*!CaUbz>@o@%)QhZdJbq8LM}E`1w@oa7g9Eic7`7SqD&mX1_Z$WYVLJ- zpMmT|Y-I1m53)DoXFBpPvhu+svDH%a{iR_L^WQ6{ccQ_Lt+A$*#$;Acle zJ?L9dwb;miLWIrBgR@jx;+w(#CYL+(Zd|wALVh(QuLWyDH~l9`F?qEv8;4dodM8pU zEUTQ)4zR9lM0n*YdaTBS{XopUlG)L`0`IB|jCjI04iy1&KytMGn_D)~#)-A17N0+c zY3c$8j592Yr{l#RvRHmujDVD^YrWD+7jM|a&(UP=QCA zkTFoAa;5#CeW7DFP-J zW1_EgFcW|SG*mbzcOsaInsl%VOW{uW;a|NNJNZSG358_a(uq@cIKvjvP=~4$KK{wk*94kTWfO`}!Rp+%cO!UWA^2%=((mRh{q zRxPy_u_^|n5S3~`R8-W6vF97MdhF|81JXBQjGXE8_$^t4+wpfSuVn6Eza{DRJColq zERH-ynHbE)d0s;w8;K2W_zUds0gBIIjUNl zlt-EWG2MuxeBwCF((`c*#i`>Oj{;2FM+tnwrw5@JEb`_DHTUa-rD4%C^MlcA^7K2S zu|gGdC*n*Cp;)d_%MFbJGt=x#O3Q=1N^Jt>-uYF5BV1p1}iMj=8V&M0Ul3c=@eWJBEO$^@9b*Of1rH=)W#3p?*P;@-g z_!3rv66@n=)oX!x2e;wX_m}ko#X8NAu>}m8oMN5QP=!Mj>+e~t{|)B|fB8HeyX9d0 zQ*jS&Xx1N?y+5pM{eB!ke(^$_7&1cr*e<9sx*;%Jcv@VlaAIhxn-u4|>*JmuS z;t$f?dnak`>)$5+4#tfe@RsyNXtpW-F%SFY^OH^fpA+}shQCyEE38K*oIe<(Aykf@R`^&Wykd1;lnN7r@zIw=9PM zs;~t2Wl{DsJa|x5H(tucj!dp1KP;W*BSOK-HJav+m$A#6MwC(?#1!XOm4%ykmQ~)x z^j_}Dt(u5U_NbkYwt(A}?--vWkG6Q@XAmQwJp1JqHymW)#Uc3;(Gx%;UK2(XEoawy z5WZEEMe(Mi3n8aev_5TbHkIpLTT2;*GLE<+ zb<_Z&5sJa&%gFYQ%;OUN|K@KaSsg8c90)C438$P7*!8-Jp8O8_6^zp&?cfU&QmtTqL0fZrV zGGqN)vIw{10jxXb`l&wmxNNHLuNmuWch-mT#4o*O{EhwCBxJF@Fy;Q7k=;t&DJ`Yi z59INiO!6RaCN>`1lRWOgxz$?a|DilcG2+py_gfwtPs!fD{pss6@FVx9Ls-+$3MNqe zJpp9n?H=gWDy&OA|175yDCU7_OgJgN8xX2dw}ehO55jVZKjSqGl`dB;dIRzAb5Rs_ z0yDNUHolF;-`(3oKRbKmM^S>Ua;MG&8Tm{`RW@E=nA#>kuv}7Nqa%|YXp2C7iM0B{ zaW~po6YsStgH5@`DK~QLI3o3CD-)@qOM?97@snexw@TpLG*Brd0tG(#H2g?Bn~nV#KA^ z_`Wz>{P|t<2;}Wy2Jnd@Z=@dAj^jahaZc#)Sycy6s(}8h%tA7nHgewC!AJGwO+!6-kG=kawIY#dS(a?lgUjR*reyT^>KxzPz4kQap z_F$ASwohn+&Tb4BLCp7BL&5<>oh#etqL6WN#nb3}u$hJ;#<_H=;$*SsWW9$HN2wzm zrW|BG4SFAYM~OfjY>{3lNq6InNZUb$OuB0<0k?>QiFA(VY$U&SBuG}LK^F2B(6RkP zr&q?;vBHLnd+Ti^BbKE9(cF1UAkvK3g_u249!f?VKPQW+OmsHv*Fp3*V(%^x&HnYr z=~a3{Q!5|QRi4;Ol^By_V;t5N@HuF5J{ z^HekNPQIpP)Q3adfQzvZiGZs|S2ynB#%NEZ%N9 z!e#+Hlo&fWbXv*+&IcGN1&6#TQNjQ?1Sh_*p_BDLMC!ko^zXJavqwDsw$}YHRE3ZM zW3xg|=#0&CnysvWw59dmNr@+ZxxaUD&-y2`MIvC9BwB6>oytVh zINhQDPsQH1Ed8ffnGgLJ=qgX_rAldX1*%Hg06JNG^I=N=1!?+!Pb{LEE%a@5Qq|=t z{SOnzgE&Zb^hyDxprTh@pTv;L_u%9Ms`k2G$aEGB{O z`nUD)b}XM3nXgWZ{9>oJf{W5C9*K&d(G?$uis=}{lo?B>Lq;c45UNr-3~{nZd|(*? z4vECh1wI-Q)pB;A8r5RpJuTV~vmKL>t}NrcW;xpR=*mh|Stbr?rYuGttf0VV8pn#0 z8bEQWq^eZhzKD%s8oY-#hC*=wir~3vWIe|UpT*)0hoy``<`u>sm)eM1D$W2HcYtz( zdA8{krj5Lc&V7VOlSehq9mTA^hog1nk&|POg+sE=z@#H5Z+}C}H#t15^3kZ=r8#+F zAu2~eX!S?zk5bN^j-j=uG3Fl6mH(J4r})HKIpr=6qRQu?9}|mExwK8Z&5FcwV(2)F z)10cDswvw2ok8x85*;n#qknUTgeJ-SE-N8Dy;2~wr*zY_V?_uHCn(W)5M`6eRZb}G zzKv#^Q{ulBYqpS_z~mmX6Ld>(JrGDA&?2k9+E)Dp?iY&3rc7a)D52WvXlh-%(Ld0V2x!Bn zO<~R{T>FkuRJ+en@u#SGDYEx6PxS9YO}>jy4Nb3nM6x|WY^-Ls3n*#;0R?pWsMX|h z=eRso6D!a^srn0a{gvZT|1|N$h1tyYrI&oUrQkwN4~-UHR1T4<`Is!4NI(tH9D69ZMk*qZLqDUb2S;VxdE-vZ}JwDKE9>4fD~+;^ExBaz1_#!C-Oy zP=W}*(p^=I_MIO&R2;`>6!8_5JP!{{D}r1Ota%3<&R7>Yv9P+D!4%Sua>cs`X$P&K zC~S5>6<>ZRLk%{du&ar4AyOef*fdf z(G_u-35dbJ6R@&P03XQ-=LMw!+!^Jy!hJ5;)2s^LE zb{yEHPb08hY8nc}Z%l*%Cc^3uBo{AdDY4jfG&NsbU?L1O5$27PTrAZHgKS!!GF%*N zB4CtmND?~&iHox}f`f(v@!Elg9C+5%-aackBo}Ut;E=;eal46dfJsB^M9IZwmzD#y zaIK3%QEnp8;$4S4d`-B1Oy6Bgoopji>VsHA%~ITA43c|(B!Oxh6R%) z7kDAB@>6zQ6pE;cz>~OkNsjxa_AvvD!B-01V_6VE4qCK7x^YaWms}?vPN*wFit#cB4F>YlZMIz3bSic7^M*$ za+o0gY9btFBCNhtav_ph4)%62SzK=-9Bv|%J}9|(P$M{Km?lm#5k{B@#m7l5=4u3o z97@Hf2N-fFFcHL+l8YlXf zMsUcXR2*j_9AzT3T`jq|NFzAf#dPt}AVUr#O@sxHOD+!82o4%>#FvS1w24sst>j|o zSDEB6LtJhm9AhFB_>bb2^(&3w(8X+Vgo(gu0K2E1bHUM!Fhe6a?BOEup2v_wp-IET zSw}F!5RKrF!wm6T6X7@$VREVDqIIv9gS}nM78jZbqf7+fMUsnU8o@!sMdA<>p~ys- zcbU}1bdBJU!yNI(Ktm3rO@uYeq(u$T2o7D$6?d2j$D0UZtF)+=gqDN7T~vzmO@tFn zgxa~1i<>lpLk@GqU=!g)6QT50$;C8{;Aj_f#VZ30ITV`+55FS0$kqrB8Y)GTiExsM zu=;puQO$cY$>Az-j)`!xiQu|cTGT>~;Lyc9(ceTEV?awyQiC`|u|Ry;&tRm)L}-{P897cPIMh)so-h$6mlwjV=C03gtlTDD~TO>QLevwHg%+7@-$P^PKf45|3nFg_|rjFS;$OM^c zg1C>7?3|@R>=v?^+1b{|kjW2Ckj}-Dom>s#kjZis7fVf$X(mYP8)Qn;>VHAnuzaJEv$6hfJ8AXLAjioN0p8z9re|{7kXq z&>ZYqJgE+Lq>`X90W|$zp4$00n8pNR;W@nGfU?*sTh?k`+7^OiRGI;{U#p5Q( zOcUhcVXWnwe?I%em`Cdd^g$eM#CJ9lUh2PMqTVJ65= zOpukANJm|!L0Be{x+DrZCuQi0*!s00pGp&O_5~6U^ZK^VJyJ*8VVr<;Mf}nP{HY0; zxKIKz#lUS9){u83(S;5-wswLk*?!T_WrHk=gF z74b#FVEI}TaNOY%@E8MdWEvn{5%-#a*O`FLzm=ZkwGZtqs|l~VLISzi1i9V>nfI0S zB+E63!!gpiAtK)d37H^e#nO|Uqd^>wv6w(!-DAjSz6nx%k7TE>264C}W@niR@^cfU z<@nZKO^~v;<@n-J4dS3=0)d=jg8b41@!c%hsnj42nJ_z@ z|2EjEHbGXuD%m+ogE)c;X6KJ42$pO)TYBlclAU*VYnj+oyqMX!!US1pg1Fz5jqy$m z;*iN?lF1P!2-XogDM=h8*_ok19NL*iAiKH@nbevf>n2Ecyc)zoNhyK++61XHL3Zwv z?7aAXCYdlh6(-1H6XfATB|A$rh(kNf&L9&cY=X?0B-xp)K^%6%?6iDg$fVu`>AYRC z^L3kU#kP@7-E@*k*aTT(f~KQm+!H9;o7EZND|AP((ZL?Ek8kfkO_!X?>x^<6C!yPeD- zkPA(aCKF^{lVoR^264!Q**VArS!ROl+$PyMOM^Jt4zshZ(~!w6CP-(FWG7dHI4EIu zmYN{TO^}A?WjFfVJDFrMmt=CL3396mvSzqs=SB_U&`u?RWSbzjnIM(t$!_!%4dSqq zs|e)TPYs#eZh|b|BH8KOrPy)EgxOhOf~+t>iVGw=f7Boj?JzrIOprTFkmd@>&J`NO zK?$?-$tMOozcN9_{Yx6#5gNoHlX)bQ-O}vr}e*tTI7bu8~1bSc5oZQcW@$XoCFK1X=z^$}YwW`f*jf~?Guu3)tWacE~L zffSk`_nRPPKaj5ALJi`uljQ{R!N-P79xy>l{~*~pNP{?J!tC5_f;?z~Ea)rQ+4hE( ziOuZmn4JqukcUi=((#g=r5eOR3A2-Df;?=3lpQ3E?Mw~gkjV;?$txX(Onz^IEclT$ zwrmaJ(9TK%X*5CpkOp$4G`447*D|rW$GTMn;x|G5XoC3iB|8f=h(jjKj>`mj#01H| zNU}3VgE-m_v-7ktWb&v9Qt&g$&L^)ab{v#2J3lu;9y37_{UkfT*B}nL24h6>`c%g4w*1J zn?5vTvd#o)`9!j_XS;62cF)G_EHXi!GC^ARNOm6AAP!2HozqN^znLH{8zehF(;yC+ z>>!!^yWL>t=`@gj(#IBR5J%hDNg!)XkY`Mgf&-4>4*i2|S|&CX*X<&ZD@~ARO%V6< zlAXIXh(jjK&M_v)`ZSRKlAQ}Qh@_Fjl*ZPmK^)pyLm)#;kc}ot%WKlu{2IhzCr=Q_KXw~3dENvm zTO`?WX%L4@n4Ja_WRnTfx>d6C^eb8>_O`?9{LlpXy9ttbL$dR84dS4L+4=T;gPqML zNd7v>&Pf`?A(Ix8$x|lC789iTTgguRWyOv|J6j1PWP-GqAnW={V|z%0I4Ef)kP}Ui z7fg_qPfK=wtU(+yVRk-lGi36j2_mv&+c`{wINA=g^MDERk_oc9zhr0UKeSA2DqhU& z%rQZ>njqpF$#37S5lF2X=W#CM)#XVcb9GGTV6n;@+wNNJN~XORYRXouP9XM$`qL26e?c23hE4m)9X zHoj}fWV;Ene1>G_-!JJ_Z1?tYl1YsT@~R2aaGPXjjRtXOr;|X&nIJn%kml8rohvnn zLpxmr^2Iv_JFl4_J7-CDj?o|vnJ_z#nINy5AZzZB?7aV?mWj>m>zJLNnjmkOAj|KQ z?5xrt4oaAvktWDa6QuNF$<8bd;*d##Wb)oFLnd#UAgy;vc7|vWhjx+#a+eA6mI>1K zkYwi{FKC(A?Su|C5J3~2v_f3$_zesjI-jYcs%>;6t39{P+nbRfNc|e0Ww8QKi zZ-RVaf;@brWM_^Bao7p7Bi=M*(r$w2wlhqFIAlWIl(^3X`OpN>ZRhpPS|&ELUrc^o zTw;R!(*)6N=T;5kpoAQuIK%|`$OO@CXSxP)$b{M1vD1)=FhO+N>8C*)+F^EXF+n;^ z5Z!h*{$0z&<{lR_J7=39ADbY$->K0c4w;Z66n#vPmVs+X@dOA1kwG@V;aPv9cJeTCdelyi0*fOszDsuVRk-y-C*Za6GZnr zBQ=PFk~S08Rg(K9fvx$=mi~#w#7} zp}LLx@{+tC-jZ9_?E_%-UvXlK=Td##AYM+ppYPrHKX^pP_f>r_f$t^oy#&6O!1ogP zUIO1s;Cl&tFM;nR@Vx}Sm%#TD_+A3vOQ2T?%pCKjN|yA+`@8!^2UlfvSLCbwi2YJ{ zb8g+YoDzA3A1D)_AUPl999y~A&53&VC8>i#d#DwM-{w}z0F_xpV) z6(e%?<9#TQ_gEa}JbEU*^Q1WX8HnRIrxw#&Pm1{>z4av1&(UT4)|0bQ51#czZdwT$ zSaRGrcE4U`0(rJ%kf(efivn9lz)N1hIj%l@als04CTw?EzU?h0e;u4fXD9E!T(zjl zehT~JVWu9h@^nXAqFI-8&l#TCR-<)9%$V&cnG-F`i`K2c&zaFbH{efG?io3CWV<;V zGe3+xj1;wJ5Z`?J z-2A3ISJ8{nnR!L6k=bk8wU63mF5*`kg&Elu0(q&26%zP$pThXgUtrfwX z=T(UUE{+xu{YOxpMKzAh?% zj=lW4Oy#?eP7WycbsycupPl>}=TE_(?fluspS$>TCw~?UqNj%QXFh-C@u!bJJ^bnB z&s_ej?MLP7`LlsPm-6Rw{#?PIEBTY&o<%++7>!5$Zd&ey^Y&{zuFzr8fTvu1E4LU# zgYHN+?uW;@=A%Q1^>x=_=m1sdV!3hzSEGSs#LWaoKeR}6(&ux9#xs{=q5-_|Ge0wz z!{}x-=&2x3ce#+8d*q9mEMVn;iT-en+ZFl&3ggY{ayMVN8E;wto7&eP$;UgE18$%u zD?}x4Z*xceNj_F4MXaR{$Q!;(N}*aV0|C6$l9K||ACBim0-aHRCmx7E;P~o^OwEnr zTF@6MM?JWc7b*4dt^CMTAKw}tDbKs744pEFy^sDz2hr!Y_s0*Kj=$F*7oJFeU7$k;E%VbPEIjq+8J z%&!N+0JgH5XdvNTJ2(>Tiu$|oJ-h*RCD6YOhOjs6?voQtjtO=}g2~wH1niJD+kZIj zQLK9FsS995u7LYe%mk9#-VeV(pi&UwkF!u28yaf401V^=5=RBPBH$#Lyhrk~oOqdN zXRbRmnvkta(cDHdt{Cs@bK@YJwJC%79c)2nIIhR86MjYme*ry#9Cyjo++Xy;#Te|X3zu@r^CH1StcCf|M6mvR%3i_#XuQ%@$vK$Z zwmbYH&=dENy@dtrr|T)UnHNGwKsY(U#8Irtl!4^cl>|H4YFN2!H8i)0|Dr?LxIr#| zVN>7MHogyGUpH9V<+hG;F+iHFk_FS34{kQJWtTMt;^pE{yzm5J{1$%~3c4WhU{`n} zSpXzd!f4n3oET;!hEgN`&TvhqD|8V)yF)Wo8)G)b}y+onbWOqd_j#xhyN=eB}+LN^G!B&~`!7$2by(@P~{S87w*AZz$ z5VS(PLoV`Posodh4cqTSbMe4w;uYF{K?I2IArXIj)ZZTS!4VP7>-zn%kMDVK4;`qt zj?l|#QL~2vcul{iq=( zjDEwqylc^hlXW%8X0YI0OrtOMR(<(iY1Wu+b)VN3<3%$;D&%szT-W{5ULczbATU)0 z5bR#}BYS}ySzxkNpulzAczc0dS-?fEgQ`GGdtJW0Kp$0r5XkgW{1A;#D*9bJL0SO; z>~guTKbQdqaDme7rWFHRBUdNQ=Oz2z^>wo$FK2Hi^(FD^_7ZmWLD0VU$?S=QU(+9! zfj-AY7E4R{V6mDor4h)NI(YB0X1?pr@q4`M-F5HN&$_*}`1CHJZE)z`*^_x>>D%a% zKSSyH5WB79!mBcu3OY-jk-5}~&Qb-LOToja8qtwwkPlJ3@Oa!qfA4)VZ%W-)B%A7C z_AA|3NVup!uCNzHf2n~WAFEcXhdh~Q$qU|kKxCGHcgY5pmpdm2QD&n-au4fS((J8& z$bRSOX8f91ix2M-+MEvZasqf{Fp<#=XYN7Yzrea$x4RjI>b|PQ=lshu5fwVex@uS8 z{IM{JG-5)BTUS$r%t!aA$W{uMd6$HtX=Hd|LUoR@Wh1h_EmX%#OksoD%pvubBb z8JgCC&CoKHhN0O@!q7673OY-jk-5}~&Qb-LOZ8|UHvSeC*@VJ&cBt)wGBe1S0z8|U z+5IDw2zMtNUroO?Sslky_kmWuHhUtOKuy1sn>!AnYq00FLN>h{v! zorP4Eme;B0+xU54(z0gxe75a*+S($Y&$c~J+Z)yMw6u+By3=|-$M$^KdOk-zpL=q1 zY@T|U`pg=Nv@Vr3=c*^E%ye08uI(|nU*L_)<4{j^{F1^g#Ea-6q<<+Bd8i8U4*G8dd1vB2LMUPb_w{&>;~95&LLFsS z5Ll8cO2#^zF1=@dy-j2gl4tLexo304)C1Gr#q5ymEKrwPZLvV2pq^~3?#YS}z?K9( zHAjJ*4Q&H-HJ-DZR=BNBEx~e3&@)nMS|WUfrKW>LzQR(|M0A{zlA6_ANIozDLwH*+a2ZBzfCK>z4E*LtmlaoGjNqv`0=mfwBr$gKu3t=jagIM}7h>#< z%<*74eZO|-m+#lh?Rz%Ml{{*FrqknXqLXhdnmE8#EY;O?HRB#4oIsKd6%k8U8(k^2 z3fJ^MZylJ0HMrJwiwwP58z`OVlRGu8h|0S6xH;4g!nz7jkjtyPG6_MPtEx!!~ z*S+7JgOFnD*aKJHuhVl#^w(Rx<{23)EfZiaVHs(X=; zz?So7#{x82rKamIWgJi4i*1>T%1U~M>b)MHuBX6t{UU}MQuiV`rZkcy5xv#}W_!Kg z^UaP1=!W@q<$A-vqxwm9`E@UnOUz8mke=cGcWK>4sRAPJ@VXbtKW8Q{e;?%iUnBo8 zB40*7dVGNX8*hb0{NrdZZQO?T-=7UdW0md2jBk2xFwgx@G?-r~L*9x0(uj(Dj;P4v zeX_Tx2(1krT!*Lbg*LWAYTymX5U4JJZ}ttpKdJ78+8*xre6wS_wsLN5RL_vQ7r3>t zBQfjo^bGaiqvLE%ht=AMmi)RGxV2@ZWyn5g`Cp^;ZZcOQ@9?@8xV2>@FMl88{a+*h zJv1V#wWZoydsljUTb;SRsr+};9W76mU`SR^hnvwH&cdp7BV`J2eAfIC=!?P|ec|1m z;f=W!;$Pc2eHw1YY)3MZ6+6apn<8$ca&ybYZLd-}H7?tjwz{ZV+0 zG$>9zZ_O_-<=(ZqgAp*or8GlK-o_sFvpQ$bmp!Zjps@NU7!RLdWeQFPRn!mFi_hn2Wn&~%#X(RX2wrohUmNE zYmq7Y(&meo7qbwo8DUGFszd@M0&cNn264)BR13jTvI6oI^SCJ|DMx_$L*fCsf`Q!7 zkV>KvnA7%Y1dsurr(a9R5Z7m8LhdBMm5b14>IXHI=Qh4~V6fwV`sCeO8SEc!SCfE$RDBkJ<5 zCr1?Yl)Q+?{CS+$&%6(1k!Wm$byxsI@u${ydZ_INy1i#oH*nEb~ z2dtN1!8~Vl;=m8YivkH)I3STMAwMH_krxOEp3fIb9C;~mr2LE3ALQXVxg11{U?W5l zNVgp{{HGE6L2oQyq*XG?m*(qDynsi{I}aTMk~89tpU@Zb9ssN&K)6a;K9LRxeW~~b zPCRsyjugfZz;Xu^mqEx`PjeVSO`BG*L86PTifWs>g$0p;TN+N&C_M7JNJpS{v3_8}vsG?U^og(cl6L!Iy_ zH^tZh*^N$8^w~OHwqKGjBTi(*Q?-7?%YtJYTQ89OH?gQ)ANK-hv8(mSN)qBNF2Q~q z9;$czOFB&aRq6PLe9m4;SNwT6pbQO6ZJ7CawqE6lsEHTXOHHT&v>H$ zNunQ9ouK~&mXDqOYQkV&%d(%yVY^ksC22KS_J)4N9rcwA=5JQjAl$r{K;w`7Xnp{0Z)S`I|g$~ z7HN~o(eek$O*7m8+Wh+z5ER$w_cY{^mro0C?d`#bS#~=a}=W(1Nz`U?R;jdA`^S%)05)U_BhylezT=g*t^9h z^GEBu$WwajTP^?TyJXZM z7CdChUeZLj#cuWmp4c2V(FE2jSgS1g!9=-uP8FGms-(5@9a=WoMO`?Oy2&zeh=O-M zj*h2RJ}$EZisgOs8#{A9_}xrhgj8_`ej6Ul#P5-D5?rtRcE@Cq-uXRF!Kd-tEFa$& zzt92qDc<^xO2>Q7kUS#@7U#4R4bnv?NWP@s*C}V9Oqv2HNT04p2XhNt`G7JlDokyc zZi|Xdd=>howoCfuP?SuXA55S>QAJ?V3E6b{4n+=9(G;|b@e1DgI83^evm+Qj&`h%$ zb{qO-4zZ469BfQ12VB} zn0sY+Y&KkFNib1;uw~_#!mAK_*$mw=bcVffdAmi_}fGpgg&W{O>uav zKc&y7Qyls&efCXp$N{lapDp((eJWj5hzHqri9_m6h(oPsilfEN>h^fJ{vz&7Wb@Rj zMvfPb`dR~)e6*M@AGJ6He;m&u3chR__n97u7=q=2>eV#Hvvf^vn&m<94D~uE;t6Me zc^KeRU7s6WpYroMiDo^|ks|u0gy{I8M!{k+u#gaMpkdjfTJ)}Ln5_<%D$_nTJS+m| z#pMgp51{``L#3r}GS+?P) z51=Yl3FSkfzS-R5o$W|>fy_^)`ktREZA{m9`MVkFyBjSdy}ta9sOWyx2YZw8?^NRP zJXI$d&VBC@h~cMBp!%$6Sa%~W&nc0zpU|3@96I@FQGci8_=JwuYeAbEwvETCLaiQ0w?qt)m|G-kAF5y))PQ*p;Usy#!*F;3M^ouG_39^_6P$=)=N=B%G$Yw2&80_uzU`SuxONop4)@r=|U`bM*x^yh}BqFIY%4Nim>~F z77=?&f_XJGLe25#6{)DA4kIa9q)3l=c}T-C2Zh!MoAN5eX?L;gW79xDi9c`Qg#CD? zuYAT?-(apUk8*P~w&Z{VUE6^5O1JDVZK>dN{k(G8|E4^yMRVQ{-bUT|-R1G+O2wmH z{#jgK9$K?q9KU(8H*uu;bL8A%o5(EOxWjT}XylKK=SI#ZdSwYHbydr~wgPf1A{?N6zE z>vrxm(#lt=NY5^Y1X93{kc@1h=O z!mNlos?+XJ4U!U2NJHbIGoPi~Jf{`$X9Xph;n62CX@z8$6Zbr7Ad) z1sn^6N7_49NRz;>5z8B>G$fpInRr6pC%0+If*hnn9)CK;@{iS%Bo#HMf(rBkmi%6lWpR6 zW4W;-VGEarWeq$-swci^IYXl6=+r!D9{SEM?9jn}N!lIM3F_qHZkoj7Ex!;3%UiE! zm;`({Lf-nT768+V4;UX!wk|q}#_Ui(oMWdNT@UioHU#WdLOptYD@t>P$=DVZP}w-L z+8=D7c$;od7?Gi6%rgfs(jKh%XAHF`%rS1}PwlvH$U;wEd3=iqwWiv?Odi z?G%s0cp*EiSVqL*E2m4{$TV{ezaqm9#(B~)z8Tx+>2BSrBnd*LO^&`Udx0-_83`-*yLNB$n)kNSR`Uf+3|zcVt` zcT&&wy|W+nRixK9N!Rx}wI-9l4X5H28nU5F)ve%-D5Iv$YHhh!TyZakC4B-=0x(BSlU7UvXdslYzqZ~Se)2ZgLNQS z%z;$8cYW^Q5`X9Xd^|`iFfg;1Kzh@=Ht1Wjo!5a_Zfz4iqk1i_&&q#X1$NkB!lQqF z0z1?3{^TOsR7hOu9srXpSOcRRCzi12n3)P;RECFN!@MM_&gZHRlH(3U2C)ZIPW(5j zyRfgWu;QCWJ-xK`CFNsPszE%hFAzEKp(VjBaTZpAR6R(G|~6Hs+n& zkcU-u*1ja&DgGrR9lL(g10CEac2#G`uwN6$a{zF2Zgv55$9-&~V+P3;(-pWYK0;s$ z5-y<*!?INQh2=&0U?r|D64zZRaZ#e<;nCdfhiek9g~xJOjA|OO%&9_5)Z~FzhzYgR zM$rU%coJ%Ygo>=K7OGd5HiZi6i{#XloPy$~%7r&7!xWk=loOMOF(;HIQH*4uKlC%J z6?BPs5!0TLoZ2gTlx;?GY8y>*mLVdSF@~0_)gJZw$njaBY1E=FXF}u(NeGc6$D|Zu z;=dFfN{C6h$clx?@#C>v4MnQd->32`UWu6&AM-<>V|1aKs4eKk^Ayj>^)|0?5n5KE z$(QjM*@J2)9F~qJE4X(QNfIlLFwUiv2nFLRgGjSx6c}Cl2HTuGFypb&C#y#@0AKTEtoFW3OedHPr~x>&NOo z#N1ut@#Ad#*35zv!omZD;Q zdnPp}1F7(dOdrL^YD+LR=X|D2uQ=oNi0DRmJ>qEP4A7m}mlMjvR%jI>+NgFoThSCNXwVoXIZLln+T}Wg$z3D?XWyrCB%{)$@u)tdcv~M-SoCm$RP-D2Fll1wm7a!UrH|ng zdsr%CSSsjQ*)u~J)3dQAR4?u{v_T#-8T$uJn7y2xm;-tz22?>li2r|+A>Kg{(niCE zQE22=-^WL)#JmU~(3!T0$6o11n?|hCCZ0d$tM2jscnvnK$6*g`Vmt1YiP2T;n<9RJ zxG5+q2(c82$JjGX{!Yd?n;LzfjhC1v(dl$kk=I61q|^>;m>U_y5sC6KlHNyqq4!3N z%6g*r+m|hR4>ajLlIflB({y@QA~Bev_bzIKCcQ`ZLNC_yqdD*Zmf|<`_1MNso-okK zeQhT+$5*f;R`tGoRugr52rNP`qd63DW*=S_{KHeIDR6N&#Dz)Sl>1fpDbk@CnT0*v zm(SCxjEjsCvc1^pWrL&$WuH{TUGZ95U+4hE06CSe5KiAA2GS2RllG^U67ix6cbT}6 zDbl;(m|wZn2qSl*_(wh5m(NoUXq>GC^Mh##nl`R`zZRwxx*Qo0EIdA%e_$R2Pu#Rl zMwy~UMi`_W$~9g66kq2&KR~e0^&(yJd|eVN4X|)znl6d#gC}+xo^AxK%Py5Y^ZFJv zQC#Eg*96pvO0U&7TXCcnu5r=<=gr`lE)RShvLW93AA%K@9(UeSUg*C`C*EbWIBQ>= zJ@TaD>^>Q+XwFthK5U#V)+KMyB_(H7x}<}%CobuQvtR3*4$hFJ;K0Ne8lsrw7|&Zj z&SEm%M4a}10z&oP?EQcq?x*ZM{*4nMWnbF$@ zvuZ=*2Ak{QKF(R+w_h>0w$gTaRET$by-)Q$V=Hm@KI>bSR@zzL)xF-Q`mk=8EQ~4s z-9GC(Jgu~|zHj%MX!iS5-!5B;-|n-%$I?pM@hZf!O!rg!$wrKzKm)-Unlge4nv2A` z_#{raQ5`1vl|?wCFB!vrBOcWvGDEHuKV*I(G2dr3+lJZXGIf%JJ? zAI5|}SM^VMq;)xTi!sEa3(>84*W=JjbS&t5W#58`!>1+@5k2FFcRl6U6Z4P6Q{;kV zSWPRmMb{p(TuO|CG9M<$;k@bKOkeD84jF@gIe#Sq#PGk-bC|=TG&|BW)5*81u^O@9 zEH9ddtF+AHNZo^kq!{LWfaRD#ZrG#J;$7JJ6QcuF5m{-1L4Kf%dP8vnyI|8jC5DF!+pVE%PJ z@KThPYp+=fwuUR?g__Aos;XUNd6?qqgmkFAVKp}m61o-)g<7z`9?=h_3fbm-u{J!c zCRWy^vFOxSxtO5hAFW@CAA8a7qlYT~wqrXU>$k}H0Q0BkZx*4n=^y?l+NYM^2*yW~ zP@B=v@Zfkb^yfCm-e$5rpQ>YaoR!kWWk`ZFT?Pqa4YN&xJXc5U*4a8tdoLHswNCrk zhx~qah?3uJC+&y)CZV(`zYPBMzwLjtJYUJ*hdoZ+hdmB)*kg9AU+e?weBf=gMXoh0 z(zM4%{`#Hdc^D`rPba1p?}t1;Jvd#S`(uxxee@Svez!1wul6`~ANDxJVUIQmS{CVS z)295cdg43D@128`{IW4MvCsDWCzSrr>`_b5;-c67Q2UQbT%S(tq)y~b9VXI+CSQYH zL+apXl~*@bv<3-^plkf z)%~4*Xr6uucq^WT-;_HTD7Xi}br}KJKT`i^MQB(yN~?P1GUzkN4~vH$XC-pikm!S# z58wzdS^y8+E-{L0((5-U!Jx8dqL!BhDPPECzkP;=o4kln&3Ti(G--c{2Y~}xuYeO* z1Q|RV_5~Ix%6Dt*2c>nV7LG!BIpU#_?6 zXVy9q?y>Ob=5e4xt$k?XJephl6XmU4$8x?tF18(2G*N4+B51psw_v~p!ptNTjk`Li+ zFq=*aEp@BIQl>jAU~FBm@Xm5E2TQ_mud#MAlJYo#OWqB1fwRsEu^kJd=y^*1b`JD+ z&0oiL9jxl|l27MUB_K9u9}k*~xG~X$pt+Oe>vkV`+rn1$!@r)8 z!M}~$;%_Ho)vhZbgcpN7bOUk;l1DTjKvMvn-lh+51x_I1$Izk;&D$gXdLYgQS`W_z z?$vUxa83Lo?~;e8C<@f;XMe>P;D&ZZgS+6VJ>mv_7VQu73@T%eXXksDTuDXQoqNO# z6l%mvwU(a6&79}mz4bqkB_hF{QU6Zp&?81uId?`72@zSximp*ve;9jU=9_; zPUI2|h{;uN{f7_$N<;#!(O@f6_x2E~xWWHQW8jr?@sBeY5Ml3z-MKkPf2ITffgS+x z?ovf5125IUEzw{L120y3P5b&2Qqng2n&VOSwVH&*(?=e0B?bV{UtLYS7FVzPuSyTvIFY## zbfXu+(Q@JUy^Xh$qha#j+Jfu;_y*w)w|N^I=sNSck*-5;ALoX5dm9(ib*!@!;tzB^ z5C@2NJ)=OWjp(=O-ZH+2t{n#RxeqVKBBSr@I1j-KO?HuR27(97WO1Bf3Fk{JJIo*) z+5XY~>NChE-;_^W+=9WRO+J$cD*2p8X76Z!r+_$af5K+yLN>DS$NeI~UE!KtLGR7a zuw-|6*ET#jsIRYkWYdlKQ|V)oVm%UR{$D6knWwH?Ojq8fEBWfmIdtU(x-wi{8BbT9 zq$>sL%CU5XPT8*_%{vzZp6R4@oy&nZNtAd{M(3spW>e@D?2B* zPu~F<{_98A+!=1{^HTqmKmSt(dm5W=Pm>UJ+w7^+t?cQ~bTF&Ko<78+tYJ?OI{f*3 zDvH+dgno7|U$Fc0-}AHZ=fd*mkh}EJVR2-{zcXC3bEfy^L-@&^-nF;R8BDf#$7uYi z8bBfRL7SkKKDb{sh<^5?pI^f0tK9T6@jQNhL_Y`8&kp*zlYaK2pKsC67wD&le!fIM z>HR8I{psg3^z)DO^CJ5BDE(YTKaZrJchk=%`gttfaH80|bSW2*zU|9_tnTnvr!HE+oNS5)HZdo=Iu5Hevq%Bo>LbUIyxVX$zQ#H=FsijKKSUX3iiWax2L~nfM*~zUH*^aweHHd zGPGaaUy_-e(dVmfdLfaxqL#u%?BeSrQC+jfYR~-2p#YUV6lK|NCSmpfgS*Z$G3!1G zhLI|U0SY;qn*r@(9t?U#*-jSxpV8Zp0>yx9xe`5iJr1=P-G5xcO9Ygm!tcSrN;IL5-u#-{4B zlrFB1;eloN^TJ895PG!_ZgW! z-Y?kV$Jw{kh&*C*4$J?_<{@R`gN1e##2<60z+3;AdgOLIa%J;iu-QaBv=PiATw~ST z&(i|_Hq3wCqg1m?r5BXfhN4OWyRe&tT1Z>evpf>mA(xBo075(T)Rfy;CTdU{G@IjZ zr`IB(xzikuh;2X@MoYKK#8v3qNY8Fcw;q?i=>w?zVmb_nsm6|9iOSU^hklu@SdV^`{SiIKyB^^*SzS%y{vw<$egls| zpPG(NWzT1QT!>!D2x(lZu0=QE>u><#_GNq+k49qMw$2Jr))NH(twwgzfSfYSbo_hEl$WTouy@@l*N zUG<1ze;ZII+1i14#I(O|m$JW+JncaCH{o~xE&KZhj<{F*Q|lqL{fUb}9_&%R#LIF$ zKR|+$UC%97Ib6?Uf5i2`P9Aw!CV40FpP5{b_NU=^{!B`Tc$ej&>$YB%5=YJW#W_5@ z#mz5xJq~%q61=6TiLP^FbHgUf#f~Ye&&JE#1fU)#x@+RJbSD_cJLkMjtLXvqsN|$z zzOYjMCiZd<4HkJZZwT-8;aixdq<0z0Y7_M0K4sKs3G}8B%se5d3!B0!Z~*-(GNUdT zdkdD#Ng%8kLSIge8$|NHDYadQUWmy=pm>EiOp_h&IFwotUPLz^yORYsA_QsijvQPD zs9x*M{<;8fX?Ct)qgmsAW12hW%ixDb)TAI8XMj+;u!m;W=%p=K-8R2F{7LbicZYp> zMx!6A0{=NqhckQL9QMMVH*-FV%oo@%fIS2LJw-HZp8sR-+CVpg9lW(nM04*bezXt? zPcYKiIJhB5{)yFtZX!V!_MlF_;H)dqjs3W~uGT$o4corwt(?yX&KIaIc1v`=*ziy6 zkf_-c{`3lKt|y5Oh_<#$ z+>p;_9=l=>qha&ChY?c z!})@00SC&Qg^U%I;Tas``Ja{V`}sG|&-6UrPl&~Wj=GgR<@yJl$BB-NP6PL@uchO# zWl^jCo}b72acEgALWHNTq8C=)8KsPlbdK1Z;zMAfX0ITqK%%<>uCptKL$$1Bp%}X) z#BFzwm7q`N=_|Dzi1dy4xiqc+1kt2qF?_VOvj;w9i)-#Oz!*RTk@=%pete>jF37RC!<}MD$634}>3;RIa?ewNaPTL{J zg?1xR@pNaTyp%hhv60dR3_LC}wVHuPM{cbJ`+T=J(!ir*s(C_WG0BO`Ope@2VzNX8 z$8QtS#tGJmyi&g_{{#7C_bi`N(O?bvj71!kQ9gH1$t<70)cn69ANDsh$gU9vOL_ev zgS-l91QFOFPD2_l>faGwFwX_wglpyV@H1LEFFK^VVmRLk={q656XHAGC;O~G^F=>4 zq4MFsP!4vdxcXj>KA}nMK;8*k+aWGM+!<{Vb8pCYU2z{hpma>d-@|gsXmCgPMml=( zE4GClqEJ3?{c-TbYdKfmrtZw6F(x2|`a8$XzoX@|K~_##KAHijpTR%!sQcmGyPqV#>$U;maQ2J{bq!hf-~ ziQbV+WmOk$m4|xfhTqQ$oy_3?6)T&8&uIDF@a}J+y-3+y{0!d!VR*?DlTr&io#L?5 zciB};A8R!wza7p8P=8%~IjD>TYNLT#@d&STSw&x0W4a~c-%4N4`(!V^E~T#%59Ea~ zI7=cYbb6D2IWmgvXiaTsU$tWWNvN_#oH>VTZsT~pjYB33;oCV{YUe1utAo8hp4fFX zYXz;TRE9L=B{*E@$)kt6^Sr^?3;#OG`rr?_VyUL=0m0|`li@y)x z#C{F}SBl$*5T!fOc6n5^3x{v=lE_w`No>st?8I6JxhtuA=;-TcK}Acrro|QVR~1%a zO~vXm@ok8lJ63kAE`*4h0;|zfTVRBRC>`}b5kZR$tcwKdqrqp2f=@((E2949BLBLG zzae%4AdpO}@>Lag4{ar(lZV&=#}M(?OWzR*tU$C_6pTlL4K%)5vVg*YCi_ouR>8y8inFc+slny!s+xHIwN@OBLQu?O zmyncd#T8dj!$xvCGzxku@vo}JO4#<2z}D(Rv5FxlxU?kLwh*fYw&K9o5`Vk*mR)Se zwc_}ZDRmuz?~x^xJCo|#aH9SlZKA7C7ir|cxTTS-!K@KY`EoqqP~t6BAdj~4F1@p8 z<2Ia5x+~&eg_+wTe^On5?qHB@C4p5n@Vaf`kMRomRTK-Z%JDBP@wY9)IJm7Sur#~@ zYwT9R=t_cHQ4+3LS!yrRW%Pf-6d1B;oAH@vi`>VS(FdFoYWo*5?Epn0Aw&8nZ$vjJdwI}G`(I&d81i1ZUOMuN@hXBvR0}cV6`_ugs;Hr`UF^jHt z;{XT{iZ1aJvw?c%eycPB$zn+>m<{a639KNwb|~TC1XqX#EXv#UIe~^E8o=T9){eW$ zT39$rZ97 z!$Ltes+YG({-jm9y)}kWAy*x!2U*eJib!y2)ZZX8kZ8(F5e?8B3ffJumex(zb}#1; zl-=`h3;X)sI=ZiK>9Ku%H{g3W{*iyh`W>L@v9NzDcfhA145q%_%F@R10~+5-z4FwN zJfxK0X+<{q%0tRIRBfZMt<4^` z#o-U4Q}dzDwrF`C1uXF4o#@0V$m5HZb-U?ZrU)kdam+#1V*C=1!C}Pl-plSqXl@ds z65UX?D}*j6UiX5_)r_u@iUs3!ySuxe>*j6@HCNWXPd8BxcV5JMrI7rMV}GC2J(mjq!eZ29HD@8FIHMuEj1~{ns#z_s9hH7fCUM)qxjjM1!JS3H7V5NNTDywKx%lulHh*gosKPNVS#VTEc(05< zFXF=sz_U+orjQRuzj6I;&UYkO#@*dn-(tv4rul8wz!!Nb8r{K0olqeK+X(%pQc%v6 zxG8E*Aa6i-;IIO8#qyEGGfH1dge z4?zM;W`KD&VZs#}g0}@}^DN89D1e%=pq7|WI?C*wc$uTH!6VffMfe|$LF}Y8h zjMVyXIbO|N{*jF3>HSrR0gRAdEE-BORcLWMJph3Wz?3{ z;(Ki$qZR!$LM)h%5FPZpOQz<56{6i!Ql9Uv?*seAs4Q!to7|GWjfCDtj*ZK-Mar=( z%ENaN4A|T*A?%8jBUEaqp`y3`8TCv#5-7xb9#S9ZOWBJn#_4h@VM2^+4m9I5^Z{R3 zG01(eOqh_%R|ylGFW7}8KbC`+E?;#GcxeFUqIS^D9mIk3{_y+==g_IJRjbt4HWczZ;uUN}(#{8qT{ANR{0Kt~QQj#hOIImW1UMv4>>3D~5c-uK$1&*>^k-vxI-19CHfX|zxWavL@csAEo9{snxvM;G`dqnFbw z9N)m~sgufb(b-S!V#LqMM`1FlUEF^VeNB+NN{C;`AGDI)TaP{m8cB$IXOa7cm-5#C zSzS8uOnL~}XMye%ilej4c~l$|E~zJe@h5%a*KSUk;)kr?8UX{l^@d(QHD@R37nyE@@>O9F8+G5l(ap+ck$+9>2nrM@_z$tYj= zp*YQNP@{x=Yat1i?|Jhr`A!41mV6JEKb-QNIx|haulQ~9Mei-;TZ9CyQ@&JT2Ki3b z^7SeC7D)M?`qf^$d@TuS`OatgevSp%=pdzh<2gKy!a;VNwX|c&w|oHD4Yl~fOJ*@F-5NbRuZZU^(2k-= zAWU7r*&qahTccC*i>6jHZ5WC1s6$%#Rx$BeAS0RIZgC>0o`pgoJn}L8jk@xHR0B?XAC* zomngDRmv0MYGiuJ4#qPN%2*I(wxKgeiwU-(C1JD&A}OPd!E}O>J%Sp$=&qQI-vB>a zH#Q-TeoHnsywAeMJGvyy4kcrS(E!z+%YYO@@1iD%2!bYhHRv=p6Hx4f5d~Vq=<=`{ zs5QL1AcVCHL`9K5kxDFd#SUTqd?ZMu+7rm?p}_=q@J=MaMQtN{YD2l1%(b*_7#G3;9eqa8QlW=T^i@ISmakiX2KY?&|mviI*j& ze2)+Zy(z^p-qJWZI~X6bp~=`$EITO;suL*WkT4mB&|Y+xO(03I#4LTS|3>O-VkUhR zX4KaZ&A)H4#Z0^J!xqY zmnQKB<3*H;g;_#`iJS%=!Qdh`V8&I-27LfpQX+?E0dq)~$efaq5GP&eg*sCPa~r9k z;}sedQL{pf^d5v0IeRYoO0;Jl@9<=CQsBK2F1^l*Pq4;)%&$I^VLr@<9!j236&FA7 zaVvyU z&qAfBAd+Rft@HbcuwfcL$fNtVW)Nd9A_uzaQ{mamZ~BhqTfSrYt@|j?@jE(NIflXp z6`JA4pwAlVoJS)aQZz13$G508(h2oP1`LhMMWJB=f8m&&2XJfo=@D8wdRY(X6p(9? z_RIqCQ|DPP!umqm6%->vXuU0dW2p6$FSyaOPUtp(nVC!DK?#}df!kH{mcU-&h@B4Jklxp;m3HqY!^PbQ+)L~Rfctu2ow^r zzwmB9TA4+a(h`YEm#c(`gE&>j08_M~0Zbh4!5|5t&?Ju5Nu02%ME8(Xp;|^l*p}=# z4n`ikmZ;BVf_ZacXby!x2U-MAqve{iT0bq0!P)8>QLS(~NfCxRO~O{>fv;BX~Ax?trKS}nVbn(i>4EB#@ zR^%`<+y6u*f8_$w>_34>mZ}^8XaSA%C%_SNUuEciZh>{z%Dx+Sv~I-vLN+IV}GM{J`lsQvSc>%KrQE zpYR>!&jj1#fBRXQ;Qg0B>g-ki{d$l;#AYz9NDeIJcbpB|C0CnlMOKJ|wnVv}C(>DN=RA?M2!m1} zGU>|x(xNw%MsKJ$dgT;Trg<%*H)Nw1-!s#z*Mg{7hy9^f#z$_70WhIdE)Ky49xO?f z^VJ2AvbrNy-$Vmwxh4W5g`~LjLtL;}PmPZq`SwNMB6&{v_S!6$m2bzCaA_rlrm1|p z?6q!NO3FoNG-fLPIQup(^M2|7$K3nC*I88g|7nxL1=3A`6blB4 zP^8iV1*#TXC9REy(r8i}M5u^bFji1j6Dde(LK5xmB~p+IE~ucmB8vhmLQ#|yu_;)k zU}cL|C~VbOV=sr-& zN+9-}A@q@V56>UfN22}uON#1WGP?d1yRE;bouR0S!vhGHDPeRgrzBfR^l!V}qWWE9 z*57Bm`fEn^uY}S4KUkZ&^(eZMpQJmK8|=FNg63C$ zflqpf{aBRL>XYt{lRA4>LVd)4+2%=a<0Vb{JWZd?`HuVB0g+un$}Ln%U4D{KWHnCo zH99tG&{pa7Q6&w-Dpe?@n8xDqd-%UH0{*X9xG}-s*?WQdX>vygVCCA-%1$ZO=w1_& zw4hd6-@j8taFw{kI)2Oogy$!fsI3oyXuo7jgek=5&q#W`!h}u-B&X2Hhd|e7%lWf{*5xlC_g_s zf5V+RTS@FkY453zs(h+*=LC!Q+T^}+oVk+vrVIRA{BXmTG3tL}MEwu!roKF@NA&+8 zT>XpsKXm;1z_hmgY^)GA=mL9-#}7Jc72hYp`m9uhALZBVK0kFLr>*&timQ7Q<&yPh zCekAilKInipHH|;PAEsyru4OVCGdA3~s`Wahe z$@n8-(xbugH#xr6vD=T}ubn-1zC7#2l5U(asbsAAiSqB5Id(qlH#^4qEnjh-yOC?2 zcHNXnM5gU@>IxKA_W}1sR!j2e55qdUU5eRytILgEY7xC8?gLy8)w=YVxI)3;bXfTc z?gJctz8tVIG7W+jv-PM0@X2^y95o)02uL}%m|F2vaUWpI55s+cv)$|4G+%i9S2Hve zKJEk5*e~4&m}b9}JKcUMcV?VBE6$xA=gy0BYvbI7ac+H_yEx8mjB~O7YVFhS>2dC| zICuH-D7Pifougkbi~R^cha5TjzAOAXw_<_}NfJdl_u=yjm}1-$5}11K(~1lrg;S4R;nZVNBlp-$N{{+K58z^ z*IUM5)D4oijRm^AjqR+9L5Y zSK~q4v^~sRn9zNE@@-1iJhS@)EI*-YYxMGwQ_g~=0$n!5rF|ADPG{QZ9(8d+wI zEMK0oRVE{BeakqD=l<&WE=qyFEFE_~!yO&iaU*>)xjA?6#|o1Q>=P3U>APqy{vt}w z)lfcONUWt4j@3HEl2&B0OB3KxnO;<*-;1i<`S1Pz?}WbRVMF?}kMT!KF-+(jpZtW9 z_jE$JwB#q0OG`GP&-}vLuKihPB$`kyRiO(nk8vk-YH~u67vX*cd%!DjPt=i&aX{>o zE!^UiRMG_kzf)MX#BUx@?-uyN+25i&G0$k`XNOESnG5QD(&R)^txq~6k+je!?VU(k z?33_<-Q%2N%{A+DgeoQSmwff|J7!ZU>JPb_K5F&d87#3t#hmf*){C*G z!E|L$gu);Akr`q?B3+mhJ#h!nK9pVnTghvezF>NK{w#j?&G#G#z%QOI_eTua^_+v{ z(@isVi<_e^Zro3cHulrwZr1D5`H?qsn5c6d`X`+9TEPe z_jsETESs}NL+AdWvvXy&4j^^DIYj7ZJ3dJ$?FD+b*Jvo$c@Y&9c_Xu+TGmK5ZGP)h zm~T`AW``~GQnu%--)v=BkNML1RVUS@^rk13PbbdDYV4irmkvX&N5BYb@uB$ z3uoEb==0t5=^jS#c{A7B3h1;8K^}WY8DL8ddsQbjr&b*_5}g)!xGeh(e`10gS&|+y z_0s?}EKD5~wN}|unrVa*MO^;9x{fz;F+If9m%V1D& zlIT@{|Ml$^_Omg*4IZ1?Rb?mkW{UR` z@+0Mnq4u8J9?cNrXFv0?QTj&5Krf^iob+?)p4qa1=n&j~HTCq&Bf(wz+0s~_TyI4d zENcvThySFs#Fx&<6R_K|BWFNgeYl6}-E(Luq3?$3ovWyBd5N7K+RjzA=E)yz$RhgE zQZt|0G0ualN)RFc_<69=8+63&`Aw(;we{j595CkH&-w1F^|~UTKUQ}AVmz;X_IE8i z>~keV@@^9;nZ|nF%J$>Fi|+(lzNPHi#WB{dvFxB%^E$b*>lX@Z`>VB;`eyYm zs!rE0RKiD<&{!Kc|30f<3wffiu*`7S_zM-}uz~fgwp%<2S$x;|CqP9sl0{;P_`1k6+#FZv3f#aQp>+_QAMEEi|LFxnoh< zKD+B__bjTwpCReLaADI^`0o2V@}Jb->OJgl!au3MiaqRa;y92?~q2}*xhYEp=*e(C5gDZ4Mpy5WAt9EFCaQQ zo)QjPd1qxe`pKypp0?p5?j*fZ{lxkchF_+?#jmcvNS+?|Bk3IrXVm3Qh4vb6g#X>? ziwph<^tZeA-|;VQzwTe${=$E8`|o^p?ML&!k((j@eqOamSIXt^RoB{*kNh+*=c{;` zMEViZsw1l3ny7#M%hxZ+*OTKG%p~9;Pz%AEGfPaq2owPpk_(CB!pB9rlrGYF)1bzd z8a{x;iK7x3wYwYhJD6x}IY8OoP$plt)Np0-=#4)_`f;TYw&arH5)po4xZ8m{QN-34 zuFnPgQM5s}TYbS(O}F}T^1;nfJ6Sz>Ug`TkJJGn`FBikNd{lk`|ErG*6o6qNqJSmK zBjg_t<9W&1A+5MAsmx)#uMFRN`+i>mzW2QS5g@JxT`|?Ie>OG7 zS$MS$uZZx(Wtp}}+;q;NFubnH<-FJU%`t#LvAhxKWQog*uH(>#0W z5g%1=%+gwo2UxULF$?$A+NoMBPqiM+geuEcgg>xdyPPXH#nz^xe2nt*XU`~-&dGck znk%|4gFhH?R6|mj5L#RPm(d*;cVuRRa>5Vj4ZUk=_Q3EhLac^6a-F=9B(K6$hfGS! zkW2&aotOcP_l%)qvJ@hLm;IuGaGmL*Q32PhEhWZJaquv!Qi6ydb zyR9gDo}7HIwhV0bc-w=f9^xJaFIwBM^u!`SM$j+gl0S-EI*JUQzzcswo%70=?ge4< zO=US;uYV?lpk`F|DZ?a{{S{^ zaDK#-K|J{L@@JXp^O}2kFLCc^(ems&Lz=$_2kK0Bx6WeS{d>Px%YPc#GDohF3|uyH zZZw4jdSd+?sXmKWkjF3Mk3kTM4~myzD9Izz3gJXtp`;zv^9d5M#D?dQSie5){VjcxKzEJdvtbZynCaNO9a2q-hs}( z*=>3}tjCJ3ZyDORXBJhvt)vnjkVA{@?tzm)Z;K;NpgZ_b1;d4=X{)BBl{?wnGpE$J zuO~`>$x6?d#0(D z&rE%7h-pa9!YBui5ONk;PG8*sWOrJKUZA_dn^{6IXdtY1B|wNCWW9LXeCzTSbF^cC zrNHD_5(XApd3dkvER}>cY#(l%?Xw7es180y2krdL{+oUG>brw)%6DE2N;uU7q#Ad{ zcHbcpuP>TvaR(V6?7eVTo5njY;`X`j>SY#GaU)b(nh!~60T{Qt?YGGsTSgQWPQu}+ z+u&GRk=*paQL(D&0GU`Z>OO!whZINLgX+l^`Xs%eobsCawi8=!1?@czJKW*eJ1tJu zmUP4B==7HuDHFL~+cN!uV=1(=$=y_r`QL8x)1M5|+ugeW$Qz{J(;(#l2m&^bC#cdS z;X%>qDS0R*EAC#`1xfjc8x?oo4`fWILfG7_;0YQA24%wPt|+sn6rVw{JF<$J7Zp{4 zFRBnGwdz#n=TY9Dww|H?ua80hRf;MHMJQ%M_bIYFAmcyF3*Dms$71?FPB~n@6#bLx z>EF2r-YojxERsF=kU;;m<>}uU{U=I)$x2s#U-W-)pnn(9zjGH__EKeU@!56=c4Eur zBq^l-=deZEwc}k(Ml?4KJ2N~Go%3@8DY(>r%ngHT0yj>}2MNov0W804$YI%#6D=EZ z{IVg3WkZf%Hu@>)RnEYnEYda8&VArJ(M+Fns%F}-@`GQ2iBM>G%1xS?$?V)9|4N^15h*r1JvhuK*<46atu(PqnH=ljmq-whqv1N?FCGJg&u5u$bmBN zzDlMi)HjGwNx59b>+9naqf7WsoSdAm?8e3M$;SsQdog`k?RP7?cA*Yd_E&3f*SBd5 z=|&k?-7!|6Ha>Yd)auuU`WU=ApZ*J@@u4AQ|FQs8aZ2C(ax0op9~1J)2)FAfBiy{Z z|G(&avzxpv8hA@$;NK+E5B!+LHgM}p3#WCyVH1gEx5T-qpLZ8hdW=;H>a|L*x24An zD1OKdHrsi(P`xKkpl0)(z~hn1PMknZvFsR+dnr3{0`>P>_=Ys%6R6)QA#norE57?` zJsw32MJG^R{u1bmCW_9aOkqyQcN;;CIAQ|9aelD3X~@@VltJ`{{0%p=GF30B4`@bO z-|FL=tSA|ta$ZXJe)20OfmJwj%3hjPoYm|1w%A>!;tqLCUY+P8sFL=_+DG3SwA1Nw zmZdudzjx1u2Ho3E5F5Hvoa3q~fej5B9Log3N;*PiRILN4#VQ!0`*ox$>4f`iLz8l| z{zE?qW9KlqBFhOdlZV@y!p`PII57CIu?|nUM73i@#Ngv;vq2P=l95AqfmNBa1a5>h z3o7RFaDC5@=qNI`*!u_-J>Mh=od-9QRod`@u_2gGiY_mp%eSe6Hjdlz!6AnGP>*Ao0}4Xi-G574(UK9V(8N*SKg$}f8wuK!rm z&RjhI@%-QvlImPJ&D5Gfcf%}A&Q49vvj_UgVICEy>x|^&nBqTTYOcX{N>a+Lzc!kh zt4vXR1yd8zPq5b*RqXF$?}W7+h%V_75$Ic7LHcjy82Y5zi?;94{rr*Nst?+*U(GAf ziU3Nq@AGTN&6fmPDn4Mlu@Q07Y;eWxsr>1CSYE4X6`B?P7$Q2qSu>}V-E~&zZ_N5~ zLD?;^zP{PV{QiLuBJDZt6u8f}x}v0TpUuaQdkrKGa6W#VjEqCW{;pZP{F3)>4zh93jA}o?JwS4`)IAkmfahUh+0h0Q+=&2m#s3@Nsd*n<`}KN)LpE< zw#uM&VK8I;y+=!H!p|cJeb49fuGxxSucEhvq5yP7 zRb*c^fMz8CLJd(&w1pAgBZ^4iOVQMpdDDnsU#1~W)(zwWbs7Bxd#=cQ4$CrnYivN$bZ|=1+XlqDk<)dy=n7DfB(XggD4F&@CiMa(Lb#qo})wr1;81 z-rb@~E7@>0a-L#V78SZ$h1xG6+15BImyx25E4tT_q%s$f!e8-VzCNt4#-)n-!q-y1 zVo+XV#pjd6HegU}e^7Sg@<(<8THZ}pSr5Tqj__`=4dstKC4~q_<-AL&<#u1-&j(t( zZYBTq26bPaULz=PR}@V1DK&hWzZGSEt}?YtrC)zib$+Dp`lYhY@O2wsF_0c#*OMeg zM_hVnSOUnUNlM`BVpa0MG);@~wOoZ_e8o`^;j;yJ#$O+Ad3E&lvg>cozqtLAUS0dq z`Z(-snyu5vSRdHK&HuKrK8D;!j?(&=dN=E1!@gmC47uNYRb+a4N$Wc#jDF4+E$WsS zU-$79&-Ys(N~9G@5Fu{ro+wHBGD&^m+Lg}qkp|~b)N8qyz{_E|d!NwT|23Au@RW8E z#!+I+KaJJcGyaOZ%NtP;yC|If_3)H6{2iWhIsZaxa~G7imYvX>h1Q2$HJuCmwgvk7 zH@^5Qt%a`=eKnpgm6or+eI+rNIX0LlNn(ZNw8C=32Nc#s#M||^K#$P&cc=k=v_8%k zt$#(|^{0pRaYeEV;VbVhu`Y_%$Hz#D@Fi;h*)6A#Eet9 z4jnY7a@aOa4u9*s>t&mRSMx}HGQ>}+8_;}KbZs$t!QH^r+@`8khjCAh>6=?WbrtG# zsuFZ6${MNaQWS@V#!pMYVLUB%UeI{Ql)j2 z9hf`6>QcyJAhV!qhFri&D=%%JlYzO5rjkRy^;2iaA)El7l_i(Hg)p8ammV)QNV`Nf zPH>4-Db!@tQOW~J&3T@WFe7TXt==LMLDGcammYud{7gk=fut%6VJZaug)Lbzdi?ss zv^W4f9zTz~GW>k~{}q1b8Gg9zu{-><=)}zjVrL3GlYAhFq$K_BA%0?fVz#M488Y2@ z?t-P-PoT9D4fpicrK0e71E_1J@JP>nPHLHgMqvBc@U9qaSZh>fiXp$oZ7tO(n0mA! zGp#1*5PoIF>&x#);7^3gWhoG!E+eBn5~tLvF+WD2HTq`{im&Bg$}VD*E;>k^Y={5P?F zTHkMr`MpN0+y$9x_e82?xD@Zm8J`EIViKk&izhIPD<-N(1wHl)yc#GJ4;dyQ!)1v# z``ur3S5Op@q-UK&v>jz@etG9+oyf~CP(Bw3!3xeN#CO%&cE2J)^;ki0*pI>P$FdU zkGq`$2^;K|pLhBRD{<1fs?9()`3qM}of@Sqet!V2zC!IhzHZ)fbCe@I zw{ioO-Vs-_={_8Ca}VDe?Z}7RPpoLIicSqhy*k-uMQ^gA9+YdX=y@vor{OZ4m4>%b zIpqsm5z$2u%0Z-qCN5;j=A&EKlG8KOi)LmCpF5OUAXAK71RAH2)46hHRB)yhoRwZQ ztEk|tbmMeGQ;qUEZ#WylR5_d7Jfazrmrjy-y5n#bs zfnpY)x(bf&;PWxt0#^0h<`nw5nVs$CCq2O-YOFGIHC>e#RlANK3Y)DskubPw_bEPM zc|jA`IT9iDRX`S8zrkJ7sIpLZ!VXplwQdAEV*O4mtY58+qV>y_`mlbNjk$icig0GJ zQm_Kz?@BfYcChosqUQYiWg!(c$tpbhs&STcCy|RH>k;K9Qf{})`Kc?5mh+>0CYSU5 zmTk+qNFzz$L+f|q80$BzZ)4ikEe8hS8W?twVD;x6yD4v8O9eq3osW3?xIgV5bm@b& z$gb9Mcp`7hArcvQPglAX_ZV5!X2i$QQk`roYn&l;ouKW-SW|HMARZ!9X^k0|_d{U`7hV$FfnQx>`o z>&RP!+NKI8LxSm{7d%d+YKr6f0!yvHw0kJf9|}ZMvy{OPPdVLCpy%@7nyM?jC<|n$ zw*x(-X03$YuDSyHVXx6xUqmhm`DgT?8>{YI$_7aiB$Aq}b-j1n;H}AMlMvAx)s9ma zwe>Sb+QSm~Xq_kMq)LThp8p!*pG`hu=dt(T&WjtfjK!mqHxmJgC2Z@*~zA#Zq(n=gKl8iOCi`miu6 z>Kk;AP0_TpYFcJI@5ytFT{bQ?-}%0ggl)B{H?!yY;d5D)=cd@4 zd?_UDe`U>%;l=sP(`W#P!gJZm4$UEj6Z^o`+)}Ct%9y+C_sn)qbB;=)h`V& z-(T|y>eVNF!6&FspRmd&s7LE_lzq?RgBzDs!iQ6juZ?=tB-=U368@dgdNlt| zUKf%f0YGFasB}kj#H_MzeuddXWBZN~dPLuxf7lB2-0D9M6n?6I0DfNhdxBo}7(dUf zwb8$%(T|OvM|_F$!^XwWZN9`>+|#_ROlXPmp`ksz+5$ZbbdG~Yn3$%)C7g=9TFIR~ZvfZ8+MOYDh$q3EsOIJLIPiskmFlJygP6 z#obknb02Eki>7#CEBh;L)ZC78BeJ!1&xw#zlHX0IX;%)xKd}bB-rj1f(;Jbv7e@Lf z(la^zx>vuxZ~-OKYgCS%h#qJs=j+PB)Ui&)+^2F&`c2_ACKvbGyrdNsj|o(Tj= zyqsu4y@QvNHZR%tML$qJ}U*L+-V} zl)k-PW8!NvU!5EDRnq!iuW-u!V#p1Cj-jnl2D|I6)Q;?u$FL~H1kW`iade8L^*gcA z-Tr*EJgK!!ebUsoX{xXNa`nM~O1Z{TA~I4+Hz}Li*Qty?KVzR)MV}w#Ga*QZ+-W`` z5+p;e&L>2IWXR3-2|l485-BU|8)jh+C$IhocpLfDB z?lnARA(VH!VL|t!12Rc^`lpxl4KXniVbFr_V z{juu4ox1SBxod>&imqo3oz5Laa_0t{0ru%Q4chW)DQy?FolB{fRbkfr%5mS+=RYhNi_Nr@-TxsCQ2Ce6A3<`apVLV>tCH1Rb{YKC^!dCkMQ%azpEu8G5C zfkr>;6Etx?VFd{h@J9tNM@;Dx1MsJkoiQN8vIo^{f}A^{P_LrvNie}?_8Hj9r<6H` z%!>OAu#*~6mz<@v36^G%5m)CDLJ&Cjr%si-JsQ9h_G!?T=H|AgF2&W_xy`;%G^Bg% z)3m12zs_wdU(M;3bKg+vUF$^RxTzygyice6PV_t-ez<5S{!ze+yC2#3bme|H=GIkC zDr1~z0nUAx21dPO&1Ga2{bx;#9k7OF+UH>ggUI=ET))NN;+TV-e1iq~w%svY|<^iLhakIDSF zko0Zt1C$LUmpz)C3FNe4B=uboDx1*kZr?e<&^6fU@OT?+>r~al3sv=bU=gI<_X4Ss z^Btl#V@-J8E73n>55@f(eW}Rf6e*gBsQa--c#3L#iyAm~`w?!@2)FnVN_c(hAjVO} zj|+KKb;mJEfk}egzRg|a6Cz%|&9(T1h?j43?<1kF_H1A>b5E>FMD{2A&F>q- z-#i3y_aRAH4bUtTy3?g-E<{w@!3%RlRQn^AsT~UTxYPW3`I~8~*V9*eM9ha$whLl8 z&1G(Q35ON_DL4-jq21@{!9m?hvxlebK}S|RE%N45eBU6Hj_izdf}N4dW@p5gjez&q z*vduM@uo_urJQaPNkroQL+c8EzT&Zhj|fmpKl53u$G!;^E!E( z4$liMhf87{^6YfaT?#SO;x)ZfepWl(ANY>Eefiw3Z23~{ly!m|+1^?}_C?CBZ&dTv`^PN1F{*urvKyDijW4q7rBU`= zW$VN})ShA4KI|xsS1Y^z?6~oA%RW1*{o*P$zASG1Pki^)E{n3CP*stcDgb=k~Tso-58z$u9 z*2*vC;+4iP<+7;^x%2Foa%=6Eau>$A^>OZE{USJ~7D4C6v)$J}6Ticxv2gs(e!L^*WN342{Jva1JGvA` z+T`2_#fkacUu_q5Mt%bJG(V~rmDhZaFm+mk$^7b3y%pf0e*0qN)5s#!hu{BZ41TZp z+Vk%j>rS!7*Y3Pgcfkrz>!Omu+>r~mK=ATOUZRP1hhe{fJx7{+<2{N>@7`EqQBA!E zE(Qzqb$@2eUWx6@@DiLQ2D1cTtVF}{r?J}QEV)V5I655}U)#^G#T;+azWCeU)N0T7 zO)SL4kHb60^A!g=)*);0(Y4z6)qjdR(ad?w@Wyfc@4sR!~@E?XQbe_mhy_!gYo}U!ze=u3^gt6<@P>(LA z{fw?g);}y+|8F-GrYX_yv``=4-MD@w`$3U{XZ$($KUOt7rh1G2FjLx_)%E*P;k}nK z`+*^Mi_Gqj4;d}I%b82J;rGI&i@{YqsyN7DO7%cNfRqovhFO9#LT(H*;qR9ZF}! zdH0ErO2-|vH$=S)z8+s>;5@?`4Lq0qn!M*C&Jgnx@6VKgrzHu`+>!A7ac4AqgXgnb z6Y#(wJUst{ZFU4awR;XvbYAe}R}+Z&Z~tM4!TT}qJ`@9j&s*Ltr%OZFhtCZ^wBfas zYcR0uhxA2au&jZuvbX9eRW1ro$}SPRoUxt?^gsM-zkc4AgyZN092^Me-Q!P22qDS} zZ_!P*7she!jn>uy*}kz4M?AkT^!FEm(sHBLAVp6Kds>d=&p~ycX;D zw19QAQ{ML=^qM3>uUJF%i zzt0TTS9_C%1l@wEojV&g?yTHzGt8x9)j%_5jSD{!epGb*44UU-iBeArKPtL@;Zti~ zlD+C?|FMtkAzhdGk0$$goR9v!fR~EzwUnJcd#QcgsO&%Zlxs=3@OaAUM@82LpL!Y} zttXKBB}+~F)N7Rb?tVE4k@aPLy`LZZ5RJ9! zDK9v*XEAxjuR(hJS5jj5fNVpkp(g{2YRnEb^nPAZjn{@6dStDrMj?1+w0_Y?&@?#l zy)K%{ygP#5;?wa|iXlV;C`@I>M#+tWcqK2OrSXGq?lyE^Sm|#SETw-pSZ3JMQJ8k=e*Z3zP?EhrQvRs;{lAFwj@td0{s%n!yNSn<5SHW%b9D`_?Cd z7;GHBnTWl6dp!ISmN@8cvkJH~T0{mpLEeXgfb;Sf3Fj4sY;qRk9`Oq(5ruLp9 zn`_9EgHw@$6XQqz0%HWwiR78B-%nm+q|5n2-hG7MwtmB!jU1uixGymq-mO497%v1O zHAG$piT>a`C>!$aOvuuxKQRWwT2k-~x$pRWLdAVei{KV%bC={}v3+12%JcDVKIS%7 z$vmUaM*EzKTUnf&ZbXHM^3sh{!MRi)yv77gkuGBJ*nSF8^hwr;-s8NQQWSR|-0_Kbu7_KUe2Tb5_$Bz$5C}B#_y8;-=hkL^cDZzXh6X&Vn; zrq9R1N7vrC-}HA|YoQs4xUyqq^5}?xs~7deLED7Xz=x##dwE2 zh9;Yk(8={ys6+qn@M_l{_5ZF{)j#s;&{6UVBZC;HXX!zDio4~S_@5hO=L#Vmwsrys zINl;c>IHzzLRg-b)hSqF7$5D=9o0TgOf6dM?#JI6S0pY*FuYQcSfGE|Uv^0ze*4e= zkUYHq!y=k-?Ju>=);yTS98{Ir{GP?{nf#v4?`iz5;rD2n8A;6UkANyk%;i7gKpqm| zlwzJ7sDR(>J1~wr&apB&j>F1N!li7Y!TN(7`^Q2gDj&B+IoDGt;PHRvSomKt+s*&a zagqO#^L5hnD)o`P*}n+#6)lZdppX2G+dE_8zjJ`2nq8T?T{u5?K9$1%xOrDbZ>Q|U zorR1hULo0u(HrRDPwtO4kmvzDPUA$J!T%*TDpYoEoXAb5&Q-2NLEN4D(P^T+oPPe- zXY~_-SUsa|=*u(ie`JWeQn&%idB-u^UKV7f^Q(KMAoXwo~n#Skx$V1 z-c;ohi{-y78%OwwqzPMdt%-U70sw~MtmG++Sfq%f>LvO zdDv>3nD+0C9-|w-@;K(}n`jPnS z$ojf#P*ne=S5{vKB}Mh0du8<{1B&YVxKq>j5dNoM7*YQrU4Ej$J*@vw?TGqM-?#hv z-lY&X%c<_-eNEaF{Piq!tK_CFo%c&WZkpclbUPE;daAZ&df6z|dMpHxS)hl1P`8*8 z)0oE(f*duodRS6%P-CNEoThY=?YladYdhrxqu<|Jo-V%-7V}_wzM&y;e>jfs%Bqdw zGh?-fuciQB%`1h^c3(yC)fjwqH4;AcI0k%U(I;&b)5nu9H$Qm$;vIlMVLgB$8RJ5{ zIdTBT=crvGANm|^Obhx1(zW9$n>3sYxKl@KV}y<6f)fo;($MEi(z-8MqrDUti_Em> zUk@&{KQ?>3(+JbUw=Plee#+Hc-9W?ba?`>(v3h1(uR_ehv zRjkb71L57Ik*!#{%1WeNFb3ptKKs8y=KOMlBQi)BJbwRxEtMZe$K3W*du2M+qrECM zqlwU!=Hdt5lJz4c$%3Ibp+O+=_xOD@R^&MKhhFx5wW)>UtYZBL#%|Mur6gzauR#)z zWtWTMX7aLVjaz5Q;Czrfr;XDa(hlSxDS{mjSgx08m1k4y{L^m0ikqJfyt89vbuqvN^Vk7p|acZ~7eW66xi z`o5=2FiX`z!l&GSd_+JF=%zdR(7=7LqhSP6GSrd#NSvthbuCJwt(g_@w=qL5n6UzTuOGK#))B?A7)s<-T-X znf8Ck1m?r`Gj^Xd?_T_0gTHg5>;`o3rw@DhHHrR2+xn9{`1B}#i@QsPn_f-Q^f%P#}mNT_==~8B=tC*&40@M=Qk7ZvwvMV#{P-d>ojkD zC0GAsIw2Awf3bqBJCLml`HYCUg5+VrQSJ?)yuM zoPECZw5F|iXYV;6^9z1@#=uW`i*#%E#5Ln?F}44HrCUr}-)0Zg{=VvA_V*7y@el1U zPauxinEOk{^TSc&frxXmd@Q3@kT@{MzLG&EpY)E6+E2K%hF*%^6Ykikn5S;BPhrj| zqj`33C512Ds*~E9v*@C^z7C!G>OYuk-({Ek-zDm!U3k)e)avVy?Nk3*v1|QrU+ntm zL&a{0KGfPxeE3PHH65erKWpt)|J%2Ad-S1B?~FdwnvTizpLKe#|Lr^NjXqTDf#^e> zZssG!|7-|bq8t_58hte9HeI$;ACVDByXRsm^Yr!H*z-|0jRh;+ti7b_KLaD4bPXwT*VH+$wCMmN`x{HcqaEE4 zE!H$TiL)}=L8Fs$rz;oP?;)o%R~mBB9@p3pi_ctiT;tE5#)9V~W59!*;-3wV*McML z#P-6Zf0fBw%z%&JJHR^?47O6(S+Y!uEBK7^KZHjF*LlXx-$>ZIB3)O#M)eWc8*JuV z-$3IL;_?N=Nh>0!;x^+7S*a-QF#oD`!CS7-9=UhirJWs9!--Wb6BB|1x5q0Zu|LsO zr=s|vYXpq8ZHH(|(S9q~#nAC_Cs;!4O9g<${}g_o2j=W?EK z=d_$!gK2q!JE%P}h}A>E#VL!;Vwo!?y}`{jSS}?t1$G$~Os^Ag@Y+%-r|9zo3U=PQ zP|(#A^t7a;wnXQ518(sdGB2XAw{pA2TR&q+OShK7Q<`%!RB9_W(7y;NV~w%i=91jG zlJ$mNlE_4CXBa~g=*4C}O0>ohXWS3=ve>H>%ZM8N2up~<0cv_puVDh5aWVQn>Ww-~ zEuv4+(Nned6t_FgABkozvtcJ!bb+3e<=+sMw=Tyj54|>3u|Bj8#Fa`~PlL`7KlzNw z0#ROC89eZ_gh$Lp*B7`a7Exu~V)b9XXJ2YO_dFtn=-TJG+kA2N8qRmDryI!DQ_5O# z`i5B;4Uf5Y8%oGu&gem(}I zzi5ml&vq5!AgSRcw%Ipk5{J1h+7oGem-vXTU5VyLyVuFhPp+zR^e$>{TWvO za@B7y)St9;Pw|`Grt#ly;}7+j@-k=H|fmbp82-l5Cl7xvi~xp}6s}#&@cs{!_Rv50(GBhbg4S3Q%hbeg?}`z0dzUy2 z5&Hgp7VJg)>%bKjm*%?vekpc*roqY(R&WslDnGaWl2t&b=JroKGSL8R@UP9wb+!0YD0OsIDrb88pA}dPvth z&Ctpt8U!+_6_1F@NjKNmns$C@hevmpX$;yJ>RB-YCwabM61FJCB&=fEVqok^W#+G(v0&y5*?@9NX=>?sx}>Ci0&iC<1btaa8#c8l8Troxrl?4{Qbm4p zGuBEG=!I6Uq$W z2?!}Oc{90U(nOib^?%Zo87!S%nW0s$%&>JwnUU6m;EL|}MaoRv8uTw^CNE`%8YnZl z{zGZe`&z|3*6@doXjixj?w7%kVF24t`HVoCO~0%6-cU-%SlF8@ zXV~iv}NOS6FetX?7#4p>$>~eR+@@#!Wpp>>l_0(U~Wi5*a2=Wfsj6^7rgw#vG>-DX< z*8UA@e_f&dH%0BY9t!Uo-TtKAv_DdwJ^piz-~sh;Y@vtmEe<27=>E1Q9F@^8hFK+0 zO~)!otfu5b?oZo~)@nOHnQosfp2^uy+s|1gtyS5UwWc9NTPf{xw6Bc#|Lh1UjcCo` z2#)ul*=#Si_n-}9Mejksahx|O3&B~6*M~n=iR5?x7L9k8#{2f$;~D$OsnObAJz}h_ zRne&Si^eoDdm3mTJ%TU1xQ8Q{zNaIw^<51A8x8){{lI_eZLxUue38lF;!K#FBg2o@ zV>LMyU9E_*Fcg1zzW=a^A!QcX&1CmaCIxzOcPcW{Ky<)=gp;q)X!h)1w= zPkS1V_Qx4P{{LR(2u6e-8Xd z3s$$d;}c#<$3~B1bgYg};*t-D=>I=6jetsYEbb5HB3$I%YkUc2fKZKVo0qu?n< z9koBHi5tpxt*whSlTrG@ew!rSrb{}U{q0z~bsKSsrP}mG`pBF}^!^HOVRP+b*_0@tMTq1x3rYmLM!7XY__g!d4%c}&+Z|rXYI*QM$f;&f4R;7w_^PM zbYWP&72O7ZLMMHt@ZU1HhwvZw3g9pDc!x)=|14(B(|-5J_C-jUmu>&7vD$}TUN?$fItB)S z^~MXXIF3`vo#`IAXfVihx4bbj{_{#xu-3~{BV*}}KBK9pXC`TGR(4{1roG-8xa=kx zZ4B9ul$Vx7Ewz)LUO&xRvXW+*OZQAyimw};JXJ?^%oNkDI(GilqhFmr5;Q1*os+=y zdI4K;AD4xD{I90Q()&;9R-+X?A5w{Kbq3frhW-8D;UyT)a^qxS&2fIP755=3*Q>44 zW;getiYwkw7B!fuUl!qD;CKcp^MUom3kglW4i6XvG(41_D0PD6FvrJdr3M zNi-lUBOt4zCe1+AKB1!Pn;0xIHXS-QZktk6poDniT`CYcMR!l7)i8kd`i;L=s9~s_ zu|^2iJ%b+k-Go`VY(ruOD>OJy3r)+Ggz;RgL_b=aL>@f|L+~~>LQprZNQJ@;Z!Wap zEso6H|F9s#Xw7DtSuX(6>*e&bqBPVz@WfJdqJfgubA4yvFFIWewyi*<8b#^WOt)%d z;j+J!wU>tu)6}pwjU*rgm5FBVgcq0>HU#pe9N-3B7^gv50=D(=jGqg4_uC_7wIZaP zy3p)Vm-x@li?9Wh7pA6lI&SVWtkX_c)(8Mb=%7ghjSzXq{{etax?QQ6;R}^ExEb8j z=r3!cTJtXRIqO!nXjxrMwf@h?z>Vtr@Qls;c)iXo?zNh|gzpIgOm=f1j?60d@cWwg`&{1}si`hp<@DwS_|Q#2-R43crV32?!Go z0#&R^c9@$*$9zDww6GA1 z#|3yFo*OiCtZ;FBQ@`(B{4xbivh<$jGZ(kc2p}nq2U#GBD%D(#HJo`5vNOqeV!!agROz z(g->2wXbkKWImL-kIbPA26jn(Z-D2_zT>IY>K&7T9+)3+|Mk^KA=&%H-u@l?z*NMX z*sq017#u;2jD(@1Ba#;zds^(>)f160uAvc~Ou%xA4mtew1=q2P3wIFe6*8jmnpT`Ror#iS6);yoEi<`awZ7n!RjGA83;vOt?$EJ z6Cr{lC~U@@qmeQeB69A|HzyE5aS)O7h@gr`1gSbF?EfvxHqpaa1IfANBidsiISs@g ze=!h${KY`R@s|cd4-6#N|Jl$(Mc3z90=9~Dw#1~>Qr@MkZJjM0ug}M$u5{GIt>Jkl z+7A+c&p{wT>+ol|JO%Dg^L)pZEPJ3*nxPjTsf!pa$Co+ND{{J{5uLXE4p?m5twnTX zAho?ILZ5;3P6J817z63Ib7PSFUd&VdI_+%eesr$~SQyhh zG}dvszNoJG=4q~RXZNw$5qOY!G`qaSX0svE511z``^4-Wftd~jW}3!>Ks{7+{e|wN z)o_^0N`e6l3}2-OYN?+<^ma-WFvLkh_uWciYOXjTfKkzFariek`WD)RI z*{8Uz2dkkVAeO+j4%fH}BbDK~bAzNua7s(-xBK?-5wbbBWFSgxqBc8e+l2?r9bg;D z{9^KJe;e#={xa%QshdnmmYAG@PYmtn8WUn)|mH>sY^&uf-ID`6d9`J0!_hBn~3 zk1`wDPN=F;k!Osi-6wtOf6OQH3=Alud$K2OV=_ed?ikoG%*Ytdr$^F*v4WxnYOEkZ ztZgTXn%5jF{76?8ZIHb`{|sL>9&JQaF#n)`hzbs|-gIEF2g}iW3VdsDugVF}>{a;< z{`bbe?^XHib9+_({rSBrOD0S#owSGlmA#gVUwd}1$~qd`hrc5mee`dIM$0Dcwf8>% zg#S|fr)E;AB7Ildfs8{s*%@+=6TPHBDqq$*leU9K`xb8|L$zr1apF53!k1WPTOCZ0 zyx5cte*(eu1@qne&H9N_jpOfN#~+`PN(k|-8r3X}(hX;lO)D=kwZ49( z1x%MZn$e8_TQe#yp;Z!!=jJwD5{h49#igQwZW*Aa-wk<1}{h^gqq1Rxj_w3fsJ!hd;Q^C*uXgzHFxlc;m!rZSEU<0o8 z^)_v{&5%Ig7{m*NvwUiLu8u)i{aRMqQUPb!x2+R#3U7AcqU6g&EP8;P3(tf8n4%4$ zcchl+YN7*I4A(_2S<(7sH|N(c+BS>NXe-=hi(_1AxKVIO$&pF|*O(ls=z5DRrzEXf zC(D7_=u`}Ya2YPST}RVRY}ZRgiN4)>w(IEHi$`tOf2%#8H00pX8y&~|ROz<5nK97A zMX?CHFmbkMk$G`tmL#tIwvb3nimFY`dM*!+1*D zxTeI?Cvn9u0~SpGYA|O@?Jsh}et%(VTQXJ7tiGpGdJ+uDTrb22-A~?N7+uq`Qxhi4 zh@SB$svD5LiFzh|^JLnx59ymH@X>!3{}?(@39-U<+jQrGGe|4iVlIhgD}2*s1{<8w|8@mDl0L>~gOB-+<{F0ih`}HT7gw zFSF{>K@O)_#a&nKqzv9oriWTpX(hSgqQ>rl!y%ZgHJ zY&s+6Rgkh?W3cteW_{4sBl-f$=W;W547wXK@p|(JM)eTR+*MV=Gd=FliA(@v5h z?xT&kL(xIf_y)0lC#3FeNJgdEQ}~Ydqi<6wzaKr=K$8ND!70(S-~kG|L&{nSQ3tQG zaYo}x!0C1QxN9c;_I-r`;!!M|&~{h>susUd7S)F~56B|CRBqyka_pyUb;RYc#i(3q z+o476O&d`zG0+oK&<}Lh;Sv3#=|_kL8g0Bs&HqTk4+^upEr=C?Y8t7ieF*;(S6Q4J|78| zPtlHh)P~}Zj&?$q$5zQ~!EQDrz9@{biO#I^O>q{VAfAWisFxQAT&(%s^=((TYkWa`#mVL=@t6PsTfKe2Df0pE$(0H`SN{ zBIRc4hx`5Sv5-BG^6`b_PCLctbN|osHx=iXyJrsz^#}CBeW`y${a^X~a<|3uKazT+)M|fnM2E-eu&OsF&|MHFK2OHGJjG^vKY=d$}Ri z%+YCHFC*sr=BEUTQ39LIJdc6mG>72ldF)(YtIAA)lsG1)9t!Vg-HV|0i%o`z$wZc>>6HI z03BPFK}6y7BHw5c_*4;w$ySH+%hMCHUyd3|WweVb!US?(Eg{VWo(eXWYx+2&)Lb=! z9%>=U(oLWT%nqhg{dFQB$Y5eT$AHwgz(y~=#7PpJ=z?OQD=FU`FWZ#%v|oVYpT2OaSz z3?(oXrkdqvm& zViPprRY|+)?M_@4N!uCPlkb7E*zxe~wf+U^aLAz5B5p9eF0Uz&@K2>pRb*U|W~h7R z?x$x)JYTMFR5LA5HB6O~xSOTr=npSc<0lV|- zJzW_t!5?$2ypwO0ckgANHSb<|Rf z47d`kV978J42!8u*Qc^LVO2&f1r`O>kywbr7N|taPlj& zp9tN+*TA#ngZh&ZRRY3SNM(wSs_?77^jjtevS29A@ekFiXhX!$` zW+khLIFi6t;W~=?Xsrtkp?~>?W~?N4&t7i z+Nh4=yCniG;E5^z^NiR(MMii4h4s94%-Gl?`b+UpshYYuG^L=v(fYC*2|5W!AeqyJ zsXO6{($LzXl`KPU-hFsXfcCV#YN$j(<&s}II%>bV#E*a4XK;YW4j@S||L zpdcBo=g8vIP~JJOLvCwc>nmU99|~R4gVDF+*4WpZqJ(DVkYa5^F%=Q?5V~4#F3I?`3t-s90T5(bijJ-_QCmU8nOyIM^&c)cC585 zD`Lh-`k*!wpwM1B+&v;bPV$9-f$U{6XA|JghoM(5&zCBHCpt*vkd_!`pg--X{QcbP zt`bKc6syg(B{{MvtBjk?;>dZ|YQ?4!?ae*ti;3+trz*Nu+8)AlIhI`Da#C&=m1o~b zDf7oM#no7x^yB%JK2k9pmM;taMon{}-JcpH`i5ZJG$9tsF^F#*Yn`}udQlZkND|uD zTJc&Vqew>Vo_QZ;9JZWFtT4EHd1gUXr2Zog@b?*uZ4+KydULv|AS1-PQ?}WVurR<7 z5T4IVMu>g;ZUhhtiU748i9k=A$grWCjL^`%7?X^!(WOH;9RZncV)W6fQ$rekF^{qJ ztow~RvoMBhmlSzhol_Y_m^g*apB8~Um(aJcljE&}&dy#-{#kZx2U{UUd#LQ8=EsJE z5ejKOO@vrx#sQfZU8aOmT6R~7-el>)^n$8TdN7iOZ0*WC&T}zZa(xR@O0%AcnM(X9 zf1i@bp?Oqo5B4n@tuA4%f1)^A~M5&8JX%sue)1TfeOlqx0f3QmI54$4z z3zYXJ&b+ilE4pUr^h=ARJhP~5ZatnjG9c{#1#zM|Vln6byK$l)z*_7v^#hD(%cDrb zrqMN*X9oylu7}d!LUl9a5jIrnD=#A?%y=`Ulqfa?$>5a04~rSlW(;HkAgluzfL{l+ zt#x4F8?7~z6M03!C!i=L7@b0WJYWr7`xI{f(%3E$Y*5j6dF-LlDsBs9p;VzW)K*y{ zdifNqtse3b&F+e5R<%_&&}^u!vV(pDU@Oo=!ki7@c>Bk-K5j?G_6aNn1d-;iNp(*N zbW_ap1zxxs-eIDq(hgX^?`PMTJU5V89I{+%6ugHEb{dB{vw8sAbsPL)sK3g(9&%TI z!`~f#$b>vc{`5DoO}=C1kAV2Hp~=Ho&c<$bxx7%=4Gp)%k0_bCsKrbq4U=n>~&0urY*FD5PH;7pX265Smy*fMtT;bms zjlopZ1)pU=(pL9o9zP zZMo5004|MZ;hR9SCt)KkB952) zM&>0O0cm-+Z)oK40@5Pm3V*|Tl9J)|;mqeHh0c={+PT7{kgb-RfM4M?Iq&w?7bVcV z7Ht$>lg`dx4u@j7#&*5XKDt9A1;eG$ciqfBz?X{iy}j*LTIGG&(1*S>gx3^W9Z~-F zqVoDu`9FLlhGIndJB!NeOXcq#xBP~p^7>Nw&yQK&?)M2taR}1QzI+l#N!(}}fG@nS z8#elISeXHJ{~}kq-$R;S%bDAd=Qc)ALt8|SV4nTGEzLr!iSgFT0VG!nq7wmE<9wSB zx9V6hMHjXj;ftw8_tr_sH6Kzw;+CXNOQcHX`?ADyjmri}L)js8+^7XfWM39PsyJ1| z<5O?t3W_h=u~E|vM^3r-y-i*a`HuTFp>W2Ot5XU$iZx>pQp(L%f(S};VwDb$D%~4Z zs`eDm@TYdhuCO)RU&lddey#y1PtIP44~p;R-}U@(BE$@A22MQJly4 zxH}|_lQuLrg0{&`3W@5ffWE&-BQ#WZY!v!@1CNJP8W8q;0}q5mHBi9b7xpSN5M!_Z zog=aLKT1hrZ<7*=uyp4`)6T+V&cC;nQAj0XQQLW!u2 zc1;G77ift>tx2#CMWGh%?L)KwZF^U(!=LysOC(6Hu1P%tCL@NTIm&w0#?0j^0tyyb7TL7L|0M8huMdt7zr9Xavzz?(t9Or|_Dgo3 zUwgss$Me*@YPn0-F`&BcPtv4exv-2r;eQuzneULjCd;H9h4O{?v@k7868p8 zbu!96+m*B~w%b0k6koVL@ZP!|7B6~7$l2*WKn`^fAq3zfQsUdc1TRENYN%#;Ug&kIFdFMGhUR2bSZ}5sGSzcc3&?Pu!y(Dnf zkOf;ElP5wi7JrKU3GbE6)O#fdU;GcfS27V!E=wi<56wo$Dzpzij~<0jlc&g!nbZPo z8!NoMt|@8`-_aLrHU4aqvJjl#?n%43APNZ%{x6!qvyyp9RS&tb_@VESLPAQzbj^6_B8;1xyU1}A0 zcAcWveU}w$;MG0D-M?;K2ydBb(Cl#cbAmwQWj%!FaYw$Stre!zJ2TC9rkigkV^UAu z4rugtoQ<|Eaf8PMFmKJ&-I}hunF82@Z*Ef8DG%nPo`!9%+=Hf8T}ce)4mbEm4`%-0 zF|ep>ih$WN&p_Mij`E=G-P5p@-nT4qpZP!A`K9Y_%GBMIuDgNWQ!TS8ooTp%5}TK} zY2TAt2O6)>)LoyhyOt814qR*Swfu*TG}Y6v*_{U*fTA1nfOhd1`n5F66-7Ig#gchK;oU<)QC#aUQw(glVb$x+mg{K@| zVQcI9#$1;XL-*_FrBU?TF(5@a-2mdDS)}>*2&i5DrJLI+Q`U02TB&QN#I`0^6I$uM1g@A_uYc3)S9(o(5@YYyZ%F!P zciI6OzE1ie)NSs4&WNH^M0=|L&6?ZcPWHbiX#JhY?-*UX+%!H}^;ul3ZL)35RqoK& z1oE!vJ{457v>JRV;M>yV+QSICTMa(_n_hnb|I#iSCs@(V_O5J?(mYxJ_BKE0?(Ego_vhak9`@^LxZOR? z?|8g-x?l3i@yQRd+eO@?h*1O~XYyOY5cCW{56y#n?b)>J}Zi)HY3mE%t8`e@KbRs$`y04%>5ALF&)lgv4^FvH4okfkewb%|< z45EKXdFFGPbBZwMeMlHXXury(to>e0$VVA^yr{q3D#|q#z|I*7Se}7YGmz{_21Awm z$$??cX~Z@(rZ0Tl_s$g`8mSr4y8*05!b1r%#)H3(f$K3!hR|pEbkA~PLH2adBdTVE zOe~>h`iO>G(S07c?CY)>BK8>n^>t6z2h~ zD;BIC`_sy(%y1=~iKe zA^0465#5aLkSIN5^DcMVepo1x%z8Bp+?s*{$~<1=Enx`izek5i5t39iMBQeGdD@3Z zMeXtOvHp#t_4P=r z_h#zu<&A54EN!{gR_X>y>{#N?yCq1qJ2Q26rt745m6_6ozHs}MkyzT{?tIFAn<{v- z|BYDM<*w(qiTp2~DFux?{90%4Ytii_bdDzX*>jbi@|x@0q=vlZSypVztw7;^@m_;( zQ{8V$B4nIOg9&8J<8y7@Z~7lb_-7lX_PUEc5PFibX)XS4P%Um%i^ssqPOIF+YC}Iz}az9Bdgdv?AEAiI8+_ruo)%vy@K`C2nriXkPHj z9mv?`uApff^ykh9AWB^i$PnnCI42+@2K{IQJtxpNE(yr^Weob;i$OomK>ua`{U8@) zNYgrRS?EbLF?T+(t4l9xCWw3wtj|g_zjY_xE1_%lTIsBz|H}8v_U)1 zy38$cFA`0+^MT49yDiY`{><%1uj_tBqgApy<828X&Td(#fqt$@sDtPC#RDxZ9_S#C zVxs%{z;(^NoA9gLRJSQ!g1;g=L3Nv~^rq~x?3`G;{xFo`W!JP#bw7=3URPZ6a;y2% z?BSd09*AMNu((W%m3g2@yhcY7CSUO=ABg4aUS7VQZFo=0*Nq}oVtFA1-!M56P8SGA zx`Kh^JQm(YJCRYdCxinmVYPJf9Xo+N!&{8*^h4HmutB@=(E2=Hg1X14nA!4w#(6NyQvF* z^$E(`%Uao9(PJTUo41=zay*GPCly_nF^SBcQGP#3DI|`;I@r;3V>ce z#lXG{&qHfbOd0<9elsp00nw?pQ#j{-uM8jb(8H#SKv2pKP>_mHFsXk5Ga)cq_r)3% zC;%#M3Vqjj%=E*uIYbirlHzom+xtu}PLoav%(vNhWeJjbEqtTUxz{u3BKz*2=KO!O zT@8Fx#kJpj04px;qQORu8Wj}{Dn(QS|wG}P4Xj9axZKBvFlCVk5W=RDL zt+uws*4NsquePNYKTx2QfDc==yq3PAf<~Q~R9BmpRikv?|uZKAMk^{_s+*T zbLPyMGiT16$!Xt(z2(bU^D*r`=y@~)%r9Ez+t_&FBqOgy=4HIv5l;$?FJ;E`y$G&} zEk1sKUgGxKljJT)&+O!u&n~|VI^E+ne?C$3I)4glZ|I!bLIl17n zdFjFRyD(AX@M2-SkQHUxyHn|%v+{XIyJpB$epY_kec_6q?uWt&j3)7vNq8U1qd($V z{Q;xj!XmT#C~L^1i4j$Usrzxc3MB+hSI$d>DdHA1+~I;0Re+Dro;Zv4#4T619+^7;PFG3^aXeA*R41 zEoluWS}_nKdWzbH75r_Z#V{?OrqDZ@8 z0*L+*B21y}T|0bx%PV`rZL8R!VrA_yPfObq?Bks6yTy;Sw(m1&-;YXM`#jcx4Lo-f zZ-JVX-9*=n>O@v68zI<8(5&X!{mAEXv=5751H2A$cxAKnwgp7PcV4El2Xlc#Bh!ei zE+WFus2X-{_#e_=$@#>{ZRhqxKnI)Wvm?;O`KO;f{9wvCfd$#UG&D>a0l z)cT|Ej>e_40z6f4Oyh`N#N$OnS$C@R<>7X2mt^3exne5^h)-DSl658vYu@teoz0Uo zYr6ujN`i~m)SE}AnhK}K)v3aV zk_Iz38Nr;7yI5k@kaR{0=sd*i1KEl@g5_m_O7;7KY2B-IkBFg@l zoJrPm&|slxry^Bj+7GY|rUuCdd!3opCoF8y`s=G~aDr&HRceE2^|WYVM$8nVpLc6`aVW@}N-2sF}T&45oSy zm3C|I;ZVkY)Y0Ip0|fEvV4LcCqOW64z;v+-(iIJ=?g8hpL32!#uN+|i0co4sWB>*9 ztl_SVu73bSu|}!WWqTvu#qKwGAQ(0cW74g?WrHwBw!evQc~*i^NL(>vM4(f?_LXdE ze*>v*lZ>h7Nh-hkBrDd*AJlk?AmmjoP7&dNc|1}+wz-tgI4}_kKUp{$r^@4FL2vxV z#zvE)(Vp!%g^p9{@zLeM@X}v$2=W+(yrXPgF}y0{qs!X82pogCf!SGoW&xZ`aZ!AChjy8d3M2g~()7O=c4d1gam;Ufh4*5L@ zysZ3A#JVVWRem2K^1F+sH}l2`DG{z;`saI6Tx5Y1G=Dq}GgEsAMR058O8(A?Ysx%0 zwrPs}a4oKPnI>7oU4NFr#q3ya5CiiJQe*8Dshipl#QzvId@+pzfNTT+!cJTyFy%cj z#eNtq0GKu0C8KvGpMj5LpNLeu2s#PS!;f?k41`2ueNi{;6f4>8Ip)8RCRQdcVMp}V z645Rq3b2Cc#sL~0ZSGsrb03G-`eN25G^;hAbm=tTjOe9JQk#cJ{zQ(8E&P}pq*7bx z*z`ib17p>fuu`>!ntYc|5jUduzsY!MO}$ELYp1Q$k@rbh_i7wg>ruk9q~-VBSYPU^ z{XUnd0`!vJuVE1ueq^Ok3!x+H$NMthlAig5-Xy%|H?$V?9&WmOQ$6C9lfdj z17z^Vw`Q0p8JOT7;t6v^wGMI5@zpM1bi9XZ%-=4u`Wzfx>G3VcjOpZ#n=DJpDhK!M zIAUEz`q*Fpj<{GMZranUl3-q3;&)f{^Jz1YIwgbIK>2rwBblFB( zSmp!0+(^OmJU;V!H#{H9=Qs5EL_WWy&x`Pb=68;rW8Tj9%|chm$Bw!_7?x|yw*rzR zgh`RAGrz{Hb%nr24HMAz&iszb*E_3UuQi|5Lhug7>Z4$rMn9l>gX2!0M;}IeCn>q4 zD<(A|Dg#J3Hu~;ai>s8HDB3ma*=-qMZT9i0?1$|od$O}~umj>aDLtI*Jxpv3$xR5m zuZ|#vfd!u!6}b`r_Tb-T_%{XrO7O1&{|fOhf`7B|Zvy@`;op_$vOoxb^7tSB=^HfzEj$C0J|gl?&8}n&4t<`uLSe2e+R4W!Oqr-pH7I7wQaXZ z4KMLdug*?Mf;h9?(FgTnu(NtkN9t4WALIZOy6IT2hQ28fs~o`Kp6We#7M2QOWJ71b zxs2qO4?*6}x;-7NPkX;_D?V*v^iy&04hAO885McGc2wkM{N9J(G5Ea%|GM$~1b$z{ zzq|2o2>%#g7@>ei=lC;<--0<3KJ?Q8&h#a}BL8tt1&d=&9Gzo3>fXb)^?P2Uv433) z(!B@bH_v1WVo^6u0|DNPzH@BDBuzT8;Y3ZE*Km|3l{Oxxl73pYVm|e}fsUlV-I@M@sppb0PM#j|7W8x28Vo?B}mh#gw z{Up1+@Tj>8f*;bM3%Y3?E)^XBM`CKi@uG>)RBIse%+ZoV!>J;W6Q@naWWuJ%D^my> z?neWd99U4L;cs-l#JL)T^2CW^pv-AaP=10ajB!}uz&%h#dlcma6BB1idmxx$uO2Y# zF=2t~a>frwI_MxbXqL)HJq9HQli)li=1A+1r}TpS%Yt9J86dh8gr#Q+{#+*B=!c&$ zGkoyB;^2pT@UO?Dg++y08dUOx%N1-WKyx?+t0u`}x7yx#3ho60oO^Qu(Z9z}$U<%{cUTy1|z zC7{F^^>bZS8&U}8MKo{ar@v3Oq7RNZ5X~pNie+vt(Oiz10;0JH_hSHuE-?(vG2c3mV-E44 z2jJ2vCPn1I>0XHN2VcQTsV<29XRfqBOOe#o3G+J2WG{DAeshhJJ^ua&cvdT(S^PAW ziIZF-D8G~DDu8zUeI(4j5-E{KGZ4RqSXC#nqmgI5UmS&Hd`+~(g)Mq}79Q6T)NenU zTMn#Z;{BSae7)WLxhI7Oq7Nfn`8MS0!d9gD_DLeFKsA~)?GU^b`4KT?Q-y~d8uR$M zy1sON-%d&RaD2BDrE$aH8`_G*KC}s8YA|_V(@m+0h1$@`fXF+D-JmvExjp@Jxw&|d5aeOgmua2)rb_4a{$5+nry^JVbe`;nOK?h4IYea-v&JB#r@4JuInd&H&4-lV1o+4odk6aYF(7U zFz(p$6e9OVWPj94mQC8>>Mz9}s<|V*{`r{WX!hB&!&Z(#E&Yl4J-a{WvW9A{A!}T8 zFmaNtUi8pNkez$^9_!2meENE-Qf8B;siUj6KkHQdSObl{_Jt87yG&bvMT5lSEI z1m`;M#*OAd^M1(Zdq4=TKI@zC{D-8EIdJdg|2jH59rP*7q7OFd>uIAjFMKeHNW(&5 zsg!a7Scdfdbpi1BgG24nd9wds`A_Zt=ht$#7W=L_&J%q+t3A@+=+KEM<+_{QKlk?{ z0b19yG3Lt8sNWm9UQaZe+4zFDIAcy@=am;cIQGcc5LV7me!Dd%{Dt}WTZq5n)&!5B zKnVvZdp=i^dM zZOHDF-b-V0PcCWIK80eUi~qyJdOUvSbanBJfXTZtbzQbxsj8Rj#&0YxyQxXDmi}Z1PB4%ZBoh-Jlv47=*JJ^lECHQpBioku(M~O6SaPxZ# zKGC;XEkS>UYW7;VUTZFBCDsnRx9-Rf^j)6|@6Z3r;hm0dwZQRnkRlwDkpPon3Q0CH zE+fhjX$inNmMV7G))t8qCyq;`8fB7Lk$1~&y_~|WsIWbF-3_Qk(tOh{#LibI2Lo4P zgk?$)j5iy91p4ohkBTfaBSdjfE1aIp;CiaHgx-*dR)b49xd=>}H~S$2HyeZVuj;j2 zN}(K>4e3KaQyZy|cQM&W_J=|>8?k~kX7N>c;2CtT107zT{GbJJ&@^XeQTebcOFl?^ z-+mfY=v;Tcw7^K@r5-n3F$P+7#5{eK=Lp#a!u$^ou_+RMHN~Nmp+6`;)tXo1vf39X z|8Uy_Y=SBnmf@}e3{SK@`w~e}Rb2KomUxiL6nD?=VsdR!**2k*L`6)cO4BEU-2ZAF z2OWtU-YI0w%wJ2_HuosCy=_X5-l9L*FeGN=@a<#onXk?N*V{J-=X?Lv_MHkEY5P9= zh_vs!FXwI_^?i+R^uW1{Z!`gOya~Y13pN{X&P*v*Vk%@6--6U%VU*ay)MZ&fBde)w16J&pszx!|dO-E}GTc|_2m4g`h` z&M{}Nkg)(Nx{-}|H^^CPyLkw^%PLaJBc43^!vA_!R;pc(a=q@PC-(Rxm$Mw;}s0T;3{)6kI2Ck2OGWDNYAHDRk;nzn8l;vCxqc20V z($`1*+x+XJbLaS$A@{TS6ZH$WLBTE$^2_1)f;U+)bbM!L_x^7qwQ?TPkJgaco^atbX&?b;SL`_>WcY#QBX_-41wmW8;eFJRIyDpVAt5{%R-A zc%lA0)L(5d{zK-cVB%OM9PPHp>b9XULhx?W!h+^^yu!wOUkm56u!g$6UJ7rG*KLi} zZARfy@yg9wSXy+YSGdP~7KMQm48Zn^2hi-npUJFs!5YeoT`>_JcrYvU`wje#)=EFJ z!RDcIwNNoLyPZTb_0v-y+5IS@_c}_yJbi$itHxpbgn0qy*F0X>mBtGjCdnhUSucJ&BDi8;+Mdvl?hra+6OPZ&#O`zWVOXqrA#pUnvqkq&{7ey85V5EkOLJ z#t5LBAE_>3-oT;dbRm|Rzd`apV)H+lE5E3ciPUK-w1*QEZ6%m4%72&~!T~5a!SWyw zKAa7jhM$bkpPF%_#jRkVZ###ujYo^C5;~c3% zngj*@dS9;HAh&2Cs~ocmng^tGg7`32TG0IT$9{ZloOr>fOz%37Ij#-4Y7j-;^)7A# z6&%G{P!F>qT3lW^aGM699)L6vX9_sz2hCIk8D4s`%s^s4a!3olzWE~BT!aHJ;vxWp zv4+_}GbKW73%qzzSM)MkVIDrLC#m4$rWdAT|7sfPVvP^U0*Q1E;}@;~q9YtGODig~ zA;Obo66~!E8)mp3Bfqba1vM5ed;xIN32sN=0uKcXB&TF!Ce&0@RAz6ZNS29RqYSRB zFv^VWLr`UVw}ljx8W2zvvKeSmnMZm-r+kLe7wmmoJe6z%q>cA7lZOkMgs|}0xJZ?_ zuc@HAr~o4hO&HzBE$~zmau!2NA%a;fBE>=|c4{u%EXl;&g7kuAN{e7@Z0~tQ87R$k zov=~KlvSb+*QTkgZnO$BvD;t?H;MS9;$BN^KK?*oU{fW`zD5pW@Z6UIa9Vi_E` zPwgp6Z^=JdOT?>%2tr}TzL{U%N)+gP4CzfI4VD7JUbs%VO@bh!r?qQJ0}Z&;9s*tL zg8l)HQ7{;vQC#M1g&70V!Dp&_WG+{nS8{Kr9iq{mon-&K%MmL;3?V6kgX8;A^ zMod#m*ujE}nv|bltO7qdq}eV;??|D5X26Xi0|m$07}PqVKb0x~oU;q~hBHwa-8X>+ z(vXpXZ0)80DE5*0NnuHcG4MN$b>${U`Y6^R%>K|$1FEO7Al`FyNBR)f zc4GVv2g;3K&N1Q`!s)PO zmqvPFE%0?I8u>4S@C{XpiHP`*kaBjMDm#5R-Welwzsu(un|3`3ed1C$I1M-X&n>9L z!4K#^gCGvsTNIy=nfdKB#V2HDeBZBV_!OUh9oH>^05zf_=sUepA+$}vG~X~a-dI%7 zSOP_;OpJ-}?Sn4<#`ma|@LFpK|DT4KN1w4$-?HrQ)zv` z=7qQ{hRj5*vft@`PQiliSC33o#{ins92QTE#S=2`e0OiE7!*d7v#8CPI$Wbmf0t%L zIkpY!d)n79`wvFlmdcL#*q3Z|O3OEY&vlY0S zf#VA5GmqjW3)no2b#%*M0cWN}L2HZPpV$lju$SDDV?7R~8g=tN(uBErrmW*oRRFKj zFQ>!T-Y)H!V*p`V_F~rdY(U<8t@if6j?6I0BOUm}a^M4}6VKlM5AjMhIqmJAzQ|j1 z60ytoj#vsG-nfaS-L+_!Zczf3!+z}-H7CF65Zo_JRW@F-#Xg8s1yEML9S9>v%Y%9zmZzEe5GlOmfIH#+< zl<8e|FIExihqzE6ZdA>;4at`nE|4%dchkj^sAnqcu~d|S=LlK(HSEQm5MRlB$iRG# zoO;EHCHNJc8PpuyWT_c$=kX*AQvnF6VvdY{wEe+>M;V0gg1f zu?viRq=_$I#WLCqHI^!Nt_v3>am(#G`&fNY3@800zB!tG+2HM$4` zM_4SM#+ML`rGoMfdWzLx?^alaM+F^AHaJQ?a2G&mhv^n7Y9I*I%K9zZdV`LIWLeDH zgp|sE$s=&eRJFyfR8Le80q?N79<0lR0HK)*J5tZ-iw?o~2K)bD9hiwqEtWbzZW)g#FTHUJfXV!hBziy5?AAY=_nbJ9R zUku+kW?!S_+G|h7{VI!La+mv6T1Evj?pGNrHYMEqRS%J1?oHK_HQw2V3K+{!N4f$E z{4(GT-EQFp7G=Ua+7FLZb@#ad`f<6Sr?sE(QD+u>`csl|Nr~sDX6@H@-t6{EwTC%Q z=a?z$Q(xH?`t_h6=!PxEHW?08V!!lH*d3(=SS8u;Wz8~jn|Cn@zI>B;oIpUKT2o}9 zG8=~}ms>UFgGPnwxX0H%#s8UX{6~BE`}TWRuG5Or_j_-+SJ6+~?|piA=6>%~;ty=e zKGMV=Gm8^)N{JN~Q)Ck|g+BQc@}xgYo_PDk+!liv!8urfz!m}Nicz01OA^Fl zxNAwUx8&O+JoFB?n}!vPNa8~M!aA+|cpKLV+64it|J&}gIo9n1+wru9JEi0#H@?6- zALXp<-(S9>U$$z=`(B56{O&}fe}DLfGteYBTkm~;SoszARfu?Th}j|M@UhI4&g?1= zK<@)5X70ywf0-R+uKdG)aDRCz_m?j`Jf(%;KI#Y<2ENuDfY2#0q~~C7a-i=c)v82g5WldAx7=fE zilx`n2&wtbl5_wXY!yWt>4u>5JvaXbMX?2vCj(iH5$*z$&2>o44NB;P1pEL&{wR$P zWVfVw2Q$68PtK9T3yu$zLOHBN4@7S*DQy_fx%De0Eig7T6oU;~7nO|RGwfu8t+$qR z;kmI`OO9bl)Cos+0iCULr|9FsztzDHw`qhSG(d3(xBY+&$N-cw$w1dz zdX4El0gx5?FW#1-*Yl*CMh~-R=p?C<)+{X_{7%N98Vf!-F*yIA2CXkeF5RZ z*_5}LBu4$1UnXbGFRlFstm5oz@Xr@>Qoq^tw;jH+v+#av>>%nU=OUey&i5qhZWiqO}1v0(sSbp zS1Aq%NbL~f;u2x)Eb-dnvTgAVx}}ha{b~}>_KG+YOVw30u}E>fLfT?9iAXz)fHVuk zs{+Ooww^W~oAHyMa~bW-a;C$+@zYwd^Pg0=e(otK!EY*xz7fgDB8XtxOK;G1Wr^sf zyh|;_S3V1fLeJ=$7IXv72>b&7gGsdB<@{*vN+f4{J2yXmHjY|1Hb1l{I+)2CxtM7_ zGo`?4O-ku{l#%AIL&!2e2uw`!%JQXB-u7}P{&3kR)w<^9>r2-kYufQ$ zS|8nT9jHyffXd=7%PZ_M0c;lLc=Y*(V5^4*AE?K@q)9|py_ynmP zotp_q(mXmdFxIeiKC+E;zMyEYbWTS1fzBR_Xjl5_yhh4<7^m||y*<}q8Rfc9xa`-h9hEJJ zQJ!L^_i%fRJxsNQ%%s95V}$;j1pg;4_mC5pG$+r`BGOK*S;23mzRR+}<3r0D9}~Q} zn3$_XPZRl0XzrK1cS0yR59sU%d)&2{?6D!dSN8ZaGyMzfak`Y>H}-h#B4`dWX^w#K zv^-K#95n~X#H@$il;Gw&Z(Cu4MVXas-hsXE8b5 zsDe;<4X&*b!NVymy1w9=SQn0m3|-SL`*ryNJRF60*bQVWExG|YWY5gawyfb;Ey3-j zLY6oI59CjQu^u^OSI?;@BT>W2T4JJPL=Tq2tf_**W1L$ACBR|#)AJ1AZ&_1^s2%9IL z`VZRY?vwK$BmXJ;+%KMyrK(zIyd|LPKXAoc$bdyycVPN8P|8>)9;hmQ7zM z_O;KXmnG&dUF6Pr!=|UR#h`fwHzmOe3U=}OBd?*1P5TREmuj_ewzIq7cgpUe_qNn> zt#)Kf0A71uH)I+?T>H}4a?t#0qxQq~xXWu8dimIR(2V=7=09g2^H;9b{Lj4ZCY$MK z9PKq~aX|=G*TK(@&ob|^$7vR_JflU zaA72;_>7nZn7-6CQjC}&nloai`~YU=r1IS~YLUtdtod;eW` z!S2goap~6*+Vq6@$E(fNM|={(BR<41Co$CT=xy!KK88vPL&4rHG6QRmaN9Q0mnLn; zP){kr{fv}u4bLMZ<+O&UNVynoi7tX|`*dIk8@AZCPb4`@#9s?`mj*h@=Q4HAK<$V> zO<5jI+M%8_Mel+RG!J_gT-z9YiN5q6dd3-a({18H5AIKaCvZ{cKdfuM@JN&s1 zHgwdX;sJBXt5))a+s0Ba;)aryKH)Z)P{Ef2()ns| z9HAVL9#+(aU*wD3?KlH9r1m(lRpt{9vd6&yU-*nY4rz!OMl%h>Y0}i2&(N1*5EsEE z262wT+!D?h%=)?^a)D)Sj`hZ~!7HwF-t}bs5p1B;9^L&OvcuMHfo)+a{jyhi@5X~S zxG8^**fN7|6yV5D3pV6Pa4lHfik^m>GWk%%!BU9~Pd*fSrsHzHP6_0P+ivmf_a+QAOAUK%BRGb10r`br zd+hxtifE-)(DIJl|KrEZrF+i}T(auIo%#!cY*^cY#M!WmOG(*f^J%mV%_XNuoGnr! za@5#WW&CWfV)68@z<$m|uWnalrhlu!`E{0#84>6^*`b={@9Sc?5NR_vI3m#dNzY z*#YI&(&n!oFQi0WxcyK3s?1P(qvO*J*8^E!Z$G=+>zT6k&VH6bpCZO+@$pVtHdpZ% z#I_);CmOSIh-J{d_xkq`ehwUBQQf=S?As%ecdFw&&j8wY9hx;9Fmg~DRM99Mt6c&LrVx@QvG?lncKC-Gi zb87H%6U+|35O8;GrdT0yae z()^RR6oTD&OSI-osdy=iq357|{k5=NjdQhoq`4HI|2?EhBcdb9o-@4aJ&xNOQRsr5 zCT&hY*uuRMCCh2M0Yq_h%e`siq~6&DARk@3l`7`s=dH{FUkSH-m?%GNAzJsJ5asKp zcopxjxT=E)+E-B?%Lf5?)4MhzrJ{g;bhuRA=xm>-d_nlf^0Q}%J`|t-BP3XRx>xc3 zlHl$AAi?=0f#{|>Z=LWLCtGHx$rdQ=P~$Qsb#XnAw3N!tYlu$`x=nQ@y>a)#=RdUM z<0z@+tY75oD=cmZnlJs3eu5_cB+Pz#zD7{8(QdR|FTft;jto&GMIWWlVxZwvE1~op zP3t`Gc#XD7&yant)jM9(MWqWfjU4g7E%A7R{!uI+71C;;5noA-4C0H*8q(#EOqV^o zq1n1NAe#X3Mp=U;xmZ1*l{MfP5o_kB;#)x{o~tc?WhezuD5JgkX?g*|w^=4e z1h?qx`EH64wbFk?hYG0AvEz%M!puCula-ErQU{xa6C4`kEjI2QyeR|l*@HYsupz*x4+YV6hUO~@2uD@4*8zB-f!=~+6@}T(9mL7 z%Y(2R23o><_y2zeHW#;V<6CdZ{s~r`;(y-~&S~FX!<`4FIC~CEaL1szY5Ox{bnAo5 zRS%3W|IeQVZ8NrCoP8K&!jH7jPLYvA*Msq_^&s|J7M7UW9}T!NtAB-480X*w( z$#}%ux!*GFukU-Ovi8FtIzPc;IpPuHC=Sl6C%BdNJwXz_#By5Mb16|Pqsyfl8Bd(9s)}?X|x#5Xk%w(#e7#Y%vvQPKkAA_QdAa+`db~55my)D zeo1JkrU7On?C8c2y#yzazk>GQsC!9SWzrpA2Yf=o0puXeFb;G4Uv~iW$nnTqbKuAbX-9OJ9Ry+1jbsp|xi69|{<_8hc4DyU^o2 zw(gIgVe3#p>GpY)&&(%uJ4h1J2r6gbd0rlE8${dUiDy43Xv7}k0LeGN7^w+dBIP6K zo!khP# zXkYP*f@a&TeCtOVS!LT&ODme16v`5hS9WtIKv z$AHscd`s9jI=+`zhZY|nuj?tVi!4483|&yUb6RDn`CuIMDyZ(CRvl@!hZj#nmF0EJ zT!~Za%v`;rpxR8UW@ZE|s!L3(V`eM}13r_el|P8~k4se=&{S-)M50e4J`Z*qBDm01 zKfLt5en<%}D9Gs*OZ9GfQlSG(SCLzokD~C)jBRvh_eL6_w4+X6g3XNOX6k zp#&CF5kH66Lfl+H?4kJPp*iC-CL5Lic0SAvuQa2G&`<2`7^AaKZ+Q(;$WB^q7<5Q^kC$M>a5GT!tUixuYY6X5;npoa9)=0i5~*bT%^bkjKb$ zmJxj9zCz%0p5Wt-s(7K+(x;bu8vWDDJsl3M%;`mLoTD5Vw80^g_PWA#g+3I#{tDJ0 zr+LP_4;fCrgZUT7@}57JPFJ@7^iwAYp`W7bC?$ht!m5;mNJf2K8TCEm)fZhyh&Y+| zXDZQsVuo}b%Ia}9L z5itJ^k2MgGz8$UW*YV5N_unT;p=037Hhy^wU+^Y76cFpYkpZvWt)vD!0P07#xUI_z z4wuSSm3v_}ss~=S`|-j*Qrm<24DA=$9(FIRjV?g^BiYvIvu1n3y)fHG z_d?t@yBF5B)xA_FHnnc&%P{^dsqbc;}%FqI~TWvIaa@)!|%+`E@S@D`hA4U&)$=6^m>l{A|?E@R%YuHSDVu?XtL*j(HDTv`X|Jv0XwSEEfwC*t%freZl{E| z_%ohBGY(7!Q8)Mxa0!K)7H;NLXH9+}YE*e_z;&9#Nt%1G6*micw4^W2?syPVJBFNOX9Ywf@*S&;O2(eka=B+yIz3FL;cCf+w}F~5CQa;UsAxcE?lIpKx( z5fo$k9}yJetMC^VbuI+_e}nnhS{L_H{lqUFO9C*_awJ zo4|hZchz3~=l#={Cm#GP`g~phTl$O?z)K1EatBxxWZUFdK@`yD4gdzSwEU!vdvy-A zc^{L!AWx@v0i;_OOdwHwhdWd28Oj@f?`@gs>%ID&B+F`IxArMZ7C(0NirrhEP^!Do z$RdP%^2}fV7yR`HrT(3){|Z-sCU^9p>7c+v7KTUVVd_7?U;q7oA^wGbLjCVQnFIg( zweFkt1OK1Q@X@DA>YvE^zniQ6Dy@Hcb#D6j#t%d%1Owu{tN;f$j@(rF92Z0eiQyDP;=X(y=d)nAE5y%Gju2M1V-V_Jj9?uNwZwVXI_j{h^Pb#p!seIhzW~xHw2%{ zI7TwkK2=*Rp^gWp)ifX#}5I>eHYzRLp>MqM~nFRY4H_$B+)~qU`;f;ouUq3$A#}4Q3AjjQL zcKFWYIoRQRBA_DM&koa-r&HRB?JwlaV!yNe@c#HG!rMl8Wx3$}adu946~n+IzoQ2+ z$%e{=!(!E;l%7pP0rViBp8dc%s^`{&CDEB~dYCUzab%iy$P3cbW?772=wcL9SL76a zo&?b3395212v-!GUrZb42-MIQ>}^7aL^o?Z(_ld6Gum&gwMN-`6?zh@7t7WmK@V&l z<7aRmo7IA6Gz%IUjLjPT8%J7{(Okjre;oNE@tFu=OECoAa4GFJ1x5^x5?{)-k|L%a zL=7K6J3?Sk=qd>?SwF{p|InOL(bOc`fBN*3!C%*5VzZ67V7iRW=1-*yjKPb5Vm2p1 zAp*)(i^ODgugiV>e(C>`|B~dt z2iD}^_cH}c^V9`)+n{lZ4oKIyLj^Aog?{^Pc6Mrxf&ceV>YCabyP6h&{fm@EW4-H34Xqz&5#hn9@-cFQ}w@HYZ z*0;D*juqMSHp>QBVVVNkN}$x8X|;1ZXBeBJ>X=J#w!vDZ;WrGEF=M0H#I&FlCyDNi zagY(TBGsdw^5Xa{7ric+=A+lE&#^ymB)!TX$w9A8=t%VEX_by%Z7Z|r)llRpbD$$i zKCb&qBf)K~M@S&E9tJPukw=0W9DLX(5=_{45(qz+BMn$d1N8$2+|T5XUsl=?~~@;5c1yj>$&4jYn15;^KTU+t3u-lg|39b&^!;u_Ah#>d$= zzq5~=J>1~VZ2lR74on+teh-`9<7@sX0r#P_9lKWer4>^DF_t%NK2sUZU@!-uELnSAI)>9a7TFIDsx1vIV*!Y>7gIZ61w6)cZrUm`$lpmP>2G?aTQ^6g-E=M8$LEc~+F* z7=_qoU3!S=5FER}DBjk(hvy6b*bh8K>gK}pURt9n`_)>^K<(IXlN;=?h^kA3@2DcB zxs4A>bK#ke;ldgC5;T7}mn~p`7)E>Y^~6Pz9;@C-v9gn_zEfD87HDHiycRfiH+p1D zfPlL)M2mrF!AFP|yq4y|b|< z@k|o_@)4>s{*t_onw3K8tM1o09Dg{%Lpi?u#=E$(A|TG z2aAluP^u!(2-OpF(mlu%Xu3*f5I&J zw`D`X-WGB&_AVgG+>R*AJde9DA^ODOClzqrX9e}>;cv*Gsndp7-=Zp#R1U(SdK(XX z9RQiHBT}LYMTrN_Z~GsQTi2WEq#QIaV-Mj&`yZsqTBc?8e`evQ4?QQ2`ep@gRB2J={g}cUq zvYu-*-E=LB_n%EBh>63scSS%caf+xHHtZ$TL&W_SchAp;wh3Ra@~6XhtVV-;-^B+Q zSJKxMY@SB_LRLt6U%B33E}Qe^GZ)=fq+Y!7<*XsLlD_L`h_&6`Nt8@osJD%z%{8VCuSRag6;WCn2z#zZeUo!yyhxUjGN~Ij_Z8Uh| z^yy+C1nVRZx?=iz{3p(7an$MSde@Bt$zj~R6|3>-ddwe%eCK%Obau{jyeT>LRaOGn zRal26TALF*UL3yT>*y-?(pEY`UgjcYaV@^`A>4Ka=!BOVem%)PgxlueYqU908g2_i z)5d2;FAcXnUx>BlRa(y+`Em#{_I?6iFiW?-UWae$I8+wC9al&Ir34N+T>r+X$k6z% zPvJ+ht@N_hg>OID%l4>dyIZnh4#)BJ0DNlUl`7XloDLXDg$T$sbg*x0($gOS&21GqJ|6#@(uHxwfElHgIA=8QtiGa@U5>j^DA@OeC9XB z$Wcz~Ty1gmrNTy5?yOdK4&3aj_fkW|y zT*g`$aR6OwV=+K+MyO}}XV2j@eJqs`Uv1ZZ1Qu zDDdoSqaufyQIRG1SMmC&$bJ2zB7wa8!hQTxa4X7v4*$N0fBw3Dh2sc@eh~=^6)2+>3@j*#(t-t`L27w?TA+-;5v;&2@OMq;~1`EASR%2RQFTQj-O~0KxD;(fULnEz6q^sQ_croeQa_qsUc0C%B!w2?bi0rQ z*+Wvk2L5c-r zB~T3toanvP{fH(7%K{a4-bOh|WX&JB=}JTxoF!1okO9<}`{Ng3r*|u=1LgHSSk|#w z-cdO4PJva}UJ!{UP()2+OGO0qo3Elr)$Piz;(x)sd+XHY%;51rVW8m>@N4*ysw&JK zRkkfdL+@cSU|Xo9gFik>{8PPfFt}ZL0Y(X;gmTU((K|^nu&pfx*Nl}~)s7Hu;|LSm z4yN6H^Z1(?_`i*089+2s@N7p4s_lDWohDp`i@t}6QTqM@_PuWl`$PLa;j1>)_lt;F zzgc~%blaO#tPIMzeVuPqK2Hq0$=z! zVYb%uEA+dz8Ge|xez+Xj${OaMgx+1p9_460Z-IaSbJ>_ME%wrsw=2*Vls!h)Eq$>XPiJB3uH~L ztYMqs0uRj01>Oeqxx8?J_ba^gj^?1^s%{0|pih4f|FgWeG_pPaZFD)t?s4PUW9<1w zB6YDWENnO#6?jbBFwC0EpyIxdxk7o3Q_~9V&!X|kv6g8N=!0s+eEAvqG8c8Y zv{v#JG^Sew#9RuG-+y9dgJK_WF~xC`%R7~XzHmTi+Gh$W2211!r+_#Msd`r>djFj0q(p} zW7YeQW5`gGgWgjL4o=#Let=RFEE9_{GQ^f`78C|q$&8RX@BwtJmFnJJ<%K(c(kg*q zNXsul-7r6prf5vrp`jPK*&yWL7ZDQn)!#U1C%(o7Ma{&(#b-25JVG)XcR&Ve);>&y zGPQAp__*Ja-40P`hhBV+hb=4_cv_~=z5?qfUb8x^Rd7Te(jQLPPS#iwj?(Y5GTc=^ zpafK>B;p-{fFxx|F6}Lel-7kw3sx4W-A}e ztAB$5c4JV_Ghsj6{7Tb9=0Qo{l%5_kD_!}elK#zqWR!1o<*$?UoBiq0{u21__Sl0< zn<|IUi9OLZ8`+)Vwr51w>TzNg_J|%&%;M_V4rDU7mr~eZQRcWIgi&_wa|Pn}i>cM+ z`{mf=(A|$7fFgU|nO2!xoZt7SJ{*Hi-u)<4ReZw+hPa)5ol^v=kn#!owj{)iok&$x zkE*6YTQwcLnodFDBB=W513@fsUfZN1qeTP#~BUBQP zBw!|A%PfMQAc8@&<8Y@+m2}D_o1Uiv%0z(7knC|#VyF4SSbGTPCwQ)<_1=XC`FhX% zn7!A}-a9Am>%Ewm>>YvcB7p%S%U>G%-Ji?a@0RXo_9%O93LL16`d1g%8= z1N=R(Ibl-@BLG7HeC|7_?>l2<=R11l`ML88V|?ukO8bibjP_m8Y1_v|sdMuPmY`*} zZNl$*o+T7$#HqCbv*kx5&r}vaN{c&aPK|soqj(G_)}Y7%_Y|Fh~N%7X}c{ z@Zx+yf@TaZSs}(r1y}J);4(}#G1To8T8aZ?vZ{b6e3sswmBlDp1d$j)OK3oFo=DqJ z25VQLufd%|att7KgR7G##85}FaHrBbX|DJ$(s~hz_lpi8o};xp(Q(ItLhEKZPQ!D@OEq(C!m)BPl!i!!Xob&tdpvDi>V&i|z}YY;b3`$FsCn+KM2;v?7Qwi#@t8U8NQg zmQ$rpVIE$3FR=6K5FgSz^ov<|wUg`cc=LdG-SO386vR;HDF7^pz?N`HEAT*@AXq?5qa_|R3eLu{a0xTUAzdLf^heP>0t2D zpwpJsU$by@S9K2n22JvD23*;J09UcP?Go;!a=UoMy}2G+teZ`62041O1aa@E?qft5 z6qWn!Fs}MAK#%LJOwqTiGJ(F`X>k1=*0TMgr}g)B(&ApX%g$)T=w4)?PjcGKmeIZ5 z{uk^~*3_c2d7x>c9JNOD1Sh~7M~Y;;4Tq}Sr_ahKIek4~@>YqGMqznrRHwnZ5QlEt zy{W{Rk(LU#&b=LeIUvaB+T`1gzMK*H44vs^%6stIE zNxKUlak9D@QWHiHk-e0f12ONQC(4UcI|{I+Dv4Qu#rY6MFHX^4XI-R*DS0IkT2HB6u~Q`dm<>nwo>9zu~t&?4c2qK1-dJ{EZ=LQ7|Sg@(@A{IHVAD=+T0ekDy4A?u?1rEw!;)P%c%Qz+o=8 zv*(*{)cG0njWd3+x-6ABrw18xMo`d3-$++PRDA3BPBw`lj-JjYQ3^c?dbIHXHk zmyeyRx`AmjLa3V9Y>r7-L_P{1p_hGS+gw?u*|L0eWu+@wp|DhX*(z6-X|}BJnq^Kt z3*1$BAb0uThFn>u*|L0eaQV#PSvk0PhCKlSAl7mSOdKUQ=n}6y23J+O+#90r-F`X^9Z!5n#IBy=r=BeKU77cQ~Q(~&Qcmh~1 z^mDn;kJhnE!RxN_M|LABv9JnrW5FWlF-ky+2^q2@``ml+EqX2bvBgxi0ZU_5S1bUNb(W#Bv6kGdHvvO)ri2ZI_MrW|K2M5goTYKAxZlhD!I^D|P z__?3E`yyzdpFr!ekaoYnM_ovhuvvk_=y$3%yrnH5s0|B>m2tmY8FS?UR|KC;Wg=I` zaL?dpn8D#y;daJU6>+eRkydeN!N>)11NRnL{9?3%K3HXdn~m(@12QhOpkcv7bTxID z%6@-rw0?gKyZ&xrR<%YT+bUGS7wlOMHJk$}7sO)Z3}9z3Jc4GI-U?Y(4buwe|KjND zGqE`OCQ^OhHMj?6yYSavrsWlPXYMMbnZ1Ah-$z7btnPYy1lrp#!&>5qVoizjWf0n~ z{lI%M*hc)p5u_7ahwE}x2m<4PzTGaPw?~|@!kYeBupvId;EdU#K!oi;c_zdsHd)Lq)%2dXZ zaLK#TA~fuxG*}Wu;xm0emyXD99D!E#)i_`3jH7^|;cC8JYfg;vw?b+j(f0&u^ci4; zA4J9QR@BY!DnDH7_yPU7)-@ab=?o!t$Y=Z0M*|@;cix-m4UT5J>~Eu;Xzt@c3Zhbb z@Idz97Jm=Ik_nP}W!@RS2PZ&1gamV0zoFI7^H={MD(ma+uo-*8+&_ zv*XiiKSOK(V5A~1w5;uW3g)WlOSYG0rg{ksZL7u6*bwSUiy_hr6hVkz`0EEO{@8tA7h12&goD|kbs~YBx;pX7Rq4w+hgpke(AdufG9nM8DA$ z{V)5Cv=-lwBCG=^i?t4ZAk4E;rTqCx-n9Ju!2F|f=YKdeKR+=4pT6i}<*T3eo1vjQ zpw3D({2K!YJ`IkFRn_|&;L9)Z?r)^sHMQN~=%=~{Y$@vi(tQ3GScfYWyzS(^cD)DZr(W<(+FbnvZ{4b z6%;LV`fIX9=cgTcETjGBWVQd=Et&2AiN(rm|6L9%ul-+BtbFYsn3K`|m-!*B{m=4C zTKmtlki7Pv>L7XTFL98_@0dBz(!*@~SvlJ;bBg)$tHZS)_Nf2KviD$6P^H!Ywiwym zFoattPl>_QvI2IH_+~S73_hL-^?*{{EY^>&^COy;Fq3%K9)pY$H%{*9fo|Wz^{-+b z;*3B<&5Qblg{{6b29^|S;$e-q{hmbg?OZT^Ch#}8@kfc~Lz35AgtlIk71GGN|ztssyMHQSFU3@>!(lG<-^kl^!(^1jLeMcee_|x z)67)gc*p%9+=xk0R!Qum501rGg^(p}ht8K?!Nk3kZ=rz5%;GE0{tf2nKk#$#)SU5; z!Ost2o7hgYK7OY4PwNV+0%?#ojCg@l#7f1Wg(Yh(<@CCi!T0@l{_o=V` z3&xNztr!25uT^k+33e4OPa~Nt|6%E<{}|eL)B68YIr|^^3O^$qsVdMw?BbVRn7f^AjR8HgErd6+V?aqnn|E@2u~TlwIaAq@WBcfvDLT-I5Qx zcUK)u?v=YRaTx0RD@J4n@x&M`Rl%A zp43c9$eMAii%B04ombvPzvU7spr7ylmIULO-+KE$70-NT=P>uTfS$7_W%65Ve*<*W zSXYvp2knFSU)n0~W&(D*9TT=ojzFOSPe^KXeaQUdo&p=^oIcA~(b$wy(;w1l05gPq zYh6z%WB&KQr9grE7zA+ht+)1Yf+%z!SFmG`!p2@)fmV>>wjN0Fd(eULm4eR93Q4iq zX32|y>z+|1FE-n3f3_Nbwz>Xnm-(~J_h*~u&$hsyt=^yQI)An%U$&MOzTl6xv0Kiq z%DZB?q(f4Xu5D>q>fW_EV*2str_AA>`gQnE3yoL+V%C^1wW+mj| zX#w4ZH2!gj-J`Ewe%@4hFDY*G&%^tDe7E&4LVe9FZ|lDi@BHKPlfC5K=C9#^!ylJ_ zu6wuj@5;#EPxDQ?2wCU(vUa!3mp3SXvrMeq zO5c8r-w{!qa&0(bVJU2Df*&TUe)Ge3alJzO00c|l=x+HHq*n3^%*!(F1qaMxv8o1C zI>lAmgT#^1<{quoq5~DQ$6PFxCTykrl}g+B1Y=D~m>_;ftaj1D3FgJKEv7q>I7;sO zIShCTWQhBn=7`scXTPnIzfxrvpAg|&sua>;>oK;(fCi{F=4$2kXE55lJr*cf>mSwbs*Jty__PK(u))Yc0^;K=Zen8>Cj;hb^`8 zSDVkLSmidUReB&^w=K3jp|w6g%~D_^(nm*|HwGF`T6iG-mM$!<>CK(Q2B7wbqWl(7!VYNUsv&8yR(TuCSZ%WZE{ z3ZzG(%_|5cgul`jG^2jk=X?}fVMYj)%@zuOm12B~Ro^90EXD4MEeR=)Y;mYVOsN{Vf?Q2479<5R3|nLx1=TNdjmQYa6dX(`r*^n;_#ZE0;m zGwOE%l*eOjW|}}*XQA*{DaNN*Wrskq6zhmBk0_K2ER^;pT{j;RUCSrL@C4Oti_kIk zyTERa)4G_$JpBqA^@Ih-UnL!%V%04I&XTSrwxn3W?Kndl)!v}silS@zL~!{F3$&ZA zAvo}zBVZSEn9Bv+8VioUN<%)yRxZ-&3Khk87vEzYB?|O&4(N57Yg}|KpVENV6X@qt z^z32|^J)*_;@?tV@t*>&|4kQd7A4Z(Y1Uc&@leWDEI<_qPZS< znZpde%$7cAf$~?$%ct1N`C6SvUcSdVCMeKC2XwCHDvqw@6M+_hi6RRl^?`*13doLK zyO_h=E4fW}fX`5x=Qt<{vz|25gRbh_p`BD$7O3RGLVjzCuts0=tP zgP6li5TN&1p!`+x@+sC{q1Ach<$G*716Ba&BnNbg<|>J<x|UA_nzwMI0==Fz(o&_Dg9C>?Y(fFav3;x|g)zeHs3_X0_p&CI>|T&BFU-sL17Cigzl{ zEa+Rp$2;6}0t=^` zr%$oNAf%jlOmr=u0u8h3AEcG6D@g8JeutRQj*WK>f(TJuDkBeFE18<&RF*WyKSoY% zLq4u|_zOrtjZZPTsvGvC<2>y2R_xf4RrrDg+IcJ#7|jlj{ucp$VA1#~Hg@cIl9t3f zSSr?eAO2q$G9OH|Z3zGm42SX2wR{TTVk#jVgfibv!Ow|di^Y(?C=X)tDb`-7g*~Cn z_t^5;>@G{b2SGmkLF_@YM0e}Mc;CJad(8qRzJ%{J=9Eu!%hFa8Yh8_x=^5r-o|a*a zmjU;-;Td3^^{Zta-u)0ax^&ABoAEw+{6a7P){OkyB>!%UVfT{luDos04p&}U6dThI z<0CpFg+kf}NGiUw?x)IrB5i@McVW-Qv!XkDCjD=5e0@GB2uF`H7zyQ+1p=eM+l6Nn zlXHf~%?eFI5D3_sBUp;#yf{E-o|%>U?Ebx3{56_p^_T`+kp|5R<0QT(95x2cb9hE# z-)qivEe3xnKP6VZHD0;Z!zbKc29`6E@L#-cYiwp={S#pOp>gX*Pl{ljeN9YcXZ^<1 z$2xozu~olKK28MYnv-(0KCp8Ff;-@EaA9z0+;yXnhnf&|W~Z^- zeN3B_oyKzaGp!;!jpZI>T1|Eu%RS7r`PpeKx0-1;W~Z^-8m6^mr?K104ZU@r>=+qqjw-agI zmD?s^6n0l`r^z3C0+H*27$!S8G`lOIC4h%2w_7I5s}Bux4o76d65+8y}5O^^vqN;C+R%2(@@&o)!W7*A@ccR4F0@ zsBxrtG~q(*+*tM#%j#{lnOIVY=cYp4R^Wv*Y2IDnLIn@8=>i)^S~JK|_(E<#1+ZTK zTLG1%0a}ASio|G&s>8k9( z1sG=sAvK<0EfV1dn}tZX{w67D(>52?W9R>x_!8=5=(;r`Xz*b~KlJ}DZIU*4IY;=rGuBEX-Y!``2tL*1XB!`q*qL)xF8!`PpnL)V|5 z!_}XkL)4$2!_uFhL(!j~!_S|eLoSuSdj`iBx&^Kd_v69*b%pp)*zExC7EayU<^Puc zUW)YB1Q>F0l)7SO7#t;Bi7Dq%zV6u#voUWOsM{6Y&;&0?To}(I&hX8LZ?d~L8CUti zQM3@gK#d>a?(0mr*g1E8cz(w6`p)Uwj7#XFk9H7U-r>C~E?YY|K8WuulOJnkV&5SP zi_JyjRcFB!lhr-yfElkWayz=Xc)ZZu_w9l}L8UnasKGvtql>u4((e1hxnNgxeG~i@ zamy#X?(-Gh=(K=ddrnVOY&ob#0hpJoYLsD3a=c1Rxjvt@eLvde$9;^m9uFf9+EhL zd2muq0N?~8+`vf#3oaQG65(X^e-o^C-pj?uzzH`r5?4-HNILH$95Et72qeZgN7N)j zD#UFzg?)dVOizfkL%o7O)Hpyy}sRqnTHQ*De2Fx-gcNakApnt6692|h; zt)4gpKR~h`-E<&>h2y${nUOCaEVV?+&{H#tj=&idc!B2keN#0O!AtOA{42BJF4oM; zCQvxKs0pzF?g4SQsb33D6bE4(5CMoVLEt?}5cz$#x-9H6<ie8xUL&T16msGkj&Lr(%TIRfBheE6tKFF~lW`k3@t?1nx~|<4ijSl2sqXFZ*}=jT z+Ghf7Nu=vj29$VVB(3N9f5zlW!=uQ1m&c$L^DOhov9ECk@A^i*|VoorN zs;!?P4x0WycW(n9cTw$)Z?Y*}+LTR8DpjfkDOgQ`0_8PD(wN17UD#Ciidwjcl^Y9c z#f`SuK+;Vv*)Gu(8?9QkV%1!!QZE$(q%^6u30O5q)v8s}8g)XV28}l8+Wf!YGc&)J z&87k6|9qa$QzbjUnK@_9oH_G$=FAy3L7?`ungDlNG`=L#YBhJ2-uuNvxBs}1@*x+l zXogWR!w_L_z|th+h7hcNgkIk0B#Q7OmHBXj5N@iMk7zMg#jrxoY`ZEXR>+xp1R&_z z#B1wK93Vo;v2hwjj;W8npTx#U>`X(fW}Gc_e`V-o&@0UJ#D#bnS3C5xw{Ato&`Hdd zOz?;Em7hBqHBAbvXMyipZn&fCgE`1spT?c256!_~nD;xecd}GxR96kDZYPqsL1Ora ziHk^j3b;YV)Tp^?V=HItQQsfEzj8L+@cFVL4%Mc4Agd);4>Hy_9b5(I#+;4rH;u)` z)ED2&W~AMaHTn_xzY~pWSVS*TOeIq#+}pL0RpDpc7&5TAU=|OT#oQD2cY*f zGc30PfuG~xMn+%`C{kCy&ddS0pN4Tl?srG={J0EDxLAh%iKgSrSxC96V~q~kKj@zJz-!3m-=`{aHqdXClQAJTSK^m zj|R@Q(=Y5A$I-X!>)=}Rt@soWiI;otWgBY{x&Gr4%^)sJ-u~1)?qwVHuEO^Ub>1y9 zOst-V9>GC^xsU}pf*YBmTHP0Cv+E&*sV&7V6n1p`F{5UB{y+6l!;UMZnCtQkdnpA( zs+H6^ks=i+)z%VH1Z%BmAuW-x1JB(4<9R|ADZv6rhOUezFTFt`-}ZCfwcyXKEl%V4}sT<@vnw0I%PG$xbaoDhD=y;l-)S*~NNQ?OSf>^>v8vUpfu` zJ&>E#;Pe4HMT6_AT2|-=&mTH@=ovKbM}%v_mvgg7bA}`z!9C89gj(ifndPr#55{&h zBADu94WbKmH27HnC_g`YDnpoZ*?vAYBf2<8baH84Al&rm#Qe$iA-uBH^o5)$a81{g zloT|V2n)qhxPm~v1Zp$s!cD2dom>xXU>v52uw=z5JE4)f^ZFbBuvALO~kY!ohPJPtBiFyQB>Cu z4RUhE<%OrvIGw(7d{u9l&Q=Mj@tXx8wX7224GWBr`U7HEo~qQ#A>Uflv;W}G6mI;Q zsn4T;Vtqc%Z&RO*k_PiRVEv56`XsT&Gd&wfp(t;;$73Z~r}PF^QmR|MhIO6BI`X@r zo0Sw?5583!%ySB-H1AhgF=;6=NV>(&Rzn=Vy`r>WBM zE;G4?8+%a?>k}DcFE$CVw&Z29@^H%zspBYDc=0a1ybC|FJalr?Q{l!m)8eDDoa)lc z0W+KX;*v{e1QNF*BkDWK1t18M1xUIwzu;`HZgI2k5;CC+Eb@V-i)XknDJ}rgg(102 zh<1jldzZRuS|EVo;9QKrgUi5rsDOCN#x}wpv>XZxUFw6R6HsK5%+p1>gp@2q*lc&Lf?R$Bg{_9xD^Nnp z$UFGhW6r8o;LjW#QVp=yNBwaxyeoapDs?A5fgx3~YN*oWc<$Yze!bY_SZo2%*w?O7 zXA&UVm0GrH=v1~pqP_(H6V=Hm6nX8cvZ|T{r`)f}{z;1o3;Uo*~Ib zr=D;lfrlYwIj{zwleXL2iIU84+YM#v&DOm@$g~fySC_(zQ~J81(%$sd#i#GZ+(*FTv1$N9C7T zLq4OgC8(HqACheM=Xab691f_9sVBN~y?V46s({+VsmMXt2BN0vs^YTfp?hX?-+ver zYgy#r#|SuI4^OKD^u*#NXej@}F71a7^w{&6@wp2y6uGKPQIa|7@Q7|tXHFWQTSI-L zyDO5czWkW-&invcy;nVb3Hq?32ypQw*RBfC#f2z_D%POe+wiK?GTv#Es}#a7InRlV zxfEQ5<)rGqL-5al6+Jg$GXbuC1-p5CP^c5Hsj0`NT*halyca3xQTtHEp`TdnqW^=v z`^^*V-IK%cZ*x!&?g#bNwiZ}_egI{fg(U7IkKozbLRg1J52}NZhasp1;e+N7GGKBT zXZ{w_2$fo{t3j4uD1XgME&mUi}E+T z)bc+tq5MrJfDln^9mj zS^SID9+t#MFw7g0mI+Dp7b_%1N5sL9pDTX=a5hPHt8d#!M4^8pie@)r7lg*Ne>}E8 zd&oMKmqE~DIYRW0ub7X1hu&p7hpx}pCaDkP3;qQ>@-@p_8LxaLAW%8v>)agl`>r7A z@;fFeKNmkYzCW9vMzmhQXa^Gb9@o32nSY(V> zmBvsK=%NdiYmspf-3+JpnP$9r1eEkO~Vi9nd!b^#0Is$YgLK__4nnMdEeTWx7bR7<KZy`D_^8hmqa9Z#nQE zu+T%jd&E|mEoo0>n|cwgBNTto!IPKet%tcd3da(u5T`!1uTBfJioKos*2C1de)SSj z+SdFHAFBhZ^9Io;*NpMAKz&nx_B53PJIH{I3PZ9X38h;YE(?WQ_&!xl1|T{aoP>kA zYIS*qAcL2RyL18cX%$PZw;AsV~cwKvA-PoplmQ=uJ)nkV1{8 zEZ?E+456)@wC%cB7zWy2PudI!5vQ6KTiRL}s#XcH-A2z*S@p+WA^*;k8?a*l=RRsV z@K`lDa0g4d&MBo6W=n&g06N*O6&hw>{Z#zvRB;0$Wgk6~Rf)lsgphNOX!R_$-=DXav8Sn>{=5emJ5PPi zpSKUOJxvEdC6y^H62iK2C$>5$?gM@lTot0Yclc4zkP4D3Eii36KCts!T{Awn4{KBG z7`LM3YuZIz$qcr^PyY^ECF$(R-TM$n50EVkRJXJ&#gCecqZ2bpwX`t?_IA>ux%wz%T1>gVy4*3A;JpjyP z0U8BhfB+*tfa^T~%wz$Y1t3F!P(Qn|<;&|l0L)|o?h}Aw2k=`@9hk`iaEz#~879D(4`7!EfSD}7E&(Vw0)Qg?aYZBP0bnKzz>%f8W#PU?vODCjcD;==A|C@&GWC1<-XkNC4#n_=iU{ z4tfA|9YzTdI_hn>r#%3NJOFEjq+;Z)De(ck`j{)N%p^Da@!s`i7zS}cKh?}gGr?_G ziMb8O_{4IV56egX3M^)pU?#bwis!!t3-&w$sWYTE5hDzRnWnB-3GBV<)Ck~v)$;EZ zU>_|0$geiJshQPTzw{HXRk0(jeba=r?_R@MzY;X58_(t10^1z5ABI03-9dCfy%%>r zMV(|0Y_Y$p<}Pl0Zi&_-qwq}l(P*ao#ZdT>XS$DuX70uEwtKKhzKUk$#&Tf z_=e#E)YmL6Gd)cK)M^wJgxW~Lu^Rb$qn@Bz#HbtF;Lr;7&`tX2F%sHe{t@IKpSu=% zp;S`_TcOqOf`vAIp?BJh$k^(tbXz|srt!HuFjwB*^*8M5Zc8moq}!Mc(d(&GlB>C& zeQXAZJoX|Axh+-k(eNX3AD9}2WPdQ(HBCdVWpYo&dayr&K>1w=0AJNX4Mg#Ylz2YwrmkBB@o1X_o3E7n;^bCsgdPIQ+>>}2BqV$A| zSkG)Ld7HO$_GN+uWE$29hbf;-kboya*#rrA5{7Mp1Uv~NHbDZO1U8|RApuXqm`#v? zCm~}KB;ZL1aCt~_CE!V*7)gQzJP9G2AOTN8p-qs0C!xqDNWha&Y!f8lNtkC7B;ZMy zZxbZoNhq-i67VD}un7|IBrLQE67VD}vI!FKBrLWG67VD}u?Z6JBwS__B;ZL{Y7->j zNhr4o67VEc+5`!B5~^&11l)uwsG%XwYpgh9knqaCFSUg7pG(+vLJncq2|0vaC*%-z zosdJ=bwUnd*9kd^dQbu&0<$RYna zA&30ygdFm(6LQGEPRJquIw4@WCjsG}PAISm67VF1Y=Q(l2|46nqsk%wIw6Pr>x3Ng zuM={}zfLHzR7t=?)dHI!0Z+n0n;-#CLJs-YW#o{5osdKRbwUpL*9ke~Uni7XswCi{ zs?sJ%z>`pA6C~g!_~l=)`{jRuk^khdem{FSxwZ=S3E$*0hW>;rVHvPZ)-*g6NMBo7 zR<$PF_zA?cz;d_+2iPs*(j7@_ROPFW^MqO)zrxQu9KPf~4MmSpaN|`oxE-#Pb=bAf zLl=Sd^w2-GUbprtBx(znnJf)O(a3n7EKg7}j0)#79K|c%v~q#HcBK^X%rD2sFX|dP z4Jwsh0Kzkhd4zgi9}~FNE9ChXOzBau=dBQJnLJxtD37lw@tU|Jf5Y$+lxNnr4)~$-dkM`n_xdA&-KJbGZV0WI6i*2H* zz6Z+r4AEhH0R#I`m5@5=M)0JKN~h%0(48_s-6_=HZ$Hn!$OV1SAD?u=ME_mnfgyS% zCHMOEzF`%p#Et}q8pT2l)V5#;53n;x8Jzz{kRmR-Zommf}9Y@a}yV?zh8}EO$C8FVZj(8I> ze%_1mM_UBrqxjKSg7v_7n;Q-{HkQ~b=P~VKoyKsuvFse176v7F02?n?>Gaw19mn_J zn^2&R%om^w&Oqc`QX$N0c)kG9-nN+$zV~lH?6l2~KPyD;$4|PA@}c`F&sWk-{N7(r z4^eq7(H*j5go(i{Zt|FPTROVywp25nPiffO(vc3_n!JG#(azH7E)$*FNEcMF_$ZBZ zq(yLX;qpcYtYL2mVZO;;WD14&wqpq!Z6BZ064_ydIRs(8sB17vzCdgNl9-DCg(Xqg z)3h8EAsFCwWQNf|hOD%Fr^Li=d~PAoXd+S#g#Z|zTZEWYWLrAEOZh8kSkAw%Q zh7zX7i!r1Wp^k;sYUG`wH_$NfHNtd3m+T;m@@jAK_VJb$I_juaZ~6zi;6Ciy>CGZ7 zJ}y#iG*`6aP!m65y3~g5g(TyWcR8L5H5#?#8~+?1n(fPUqFr*uTN ze#7G=?+DJSYD-L=n^_@T8#nZC4Fv4^U` z98}>j%tO_(EUKQ*K~=~{RXB^PdvZ`^1kCX2SCn!ORlm(a72K40sCv-p7n)ba6R2u< zs^7_z5_aJRl80AAgm|q+nl>%ymj2RX1f(l|$l=9P?3CnnhI(i97lyA64Sd-a}OmiR=HTkE$L=nmiJBmPVSEF{9zg z8R-5#!tN)~iG|M3uA%pOd6h%x`uBLL8d{=@Gh~RE&upf|dCAbJt|vr|L0;lmq4Sx^ z%hra&WcLv)MMd0khR2?l#;Y7!{LRB0v^$@vaj6}LxRxFK=oz-YcC4SHGg!#-)G{-K zC)dTW9(cjws(CaP&&cc2#Hc~cA#O9k8)#FJT#Gm8&NfJ^W0p3_oxUcdKJ^^e>v#*c z_IyirOx^u!nB$2DBOFY#DwrYoJAVHzpwtheJ2ML_Z)%>F*|xhM6Pw72jjk}?>1$$m zZpX`q?LQMfe2}l&N-MLbo4&V<1O)K%)L~--{C9@(s8(KldXwnCNhdSzS@30CT=~2$QBkP~92TCr%QkHT&bkkp#?ocBawk=~sa%() zt1uxY)kbenC~cDTW53WjY&vt7HM6w!vvjSr15z_>%dWDqoARiO+C(B8`C|Q@=C5*u zg{vVG-LRJ{B@0lsM%{QCk8;>`l8-Sdus&|Md2N;2yajJ3N#f-VOsu zGZopa6M7oBI^n-`e6vG6wyr{)I`s#T1SSC1MD;OBr+()kf_SNGR$<@yMYVGvoMm%E z3{Hn|zaMLRT?@_IZ?O!4OaI%v&A@Al#-(r8oJ`yz*FCb}l=_HZOk;nJVOfqFmr}Uf ziiVhLs z8AVpKa7|-Ik8mLaGZMYsHT2XI<8)>;fW#;z2w?aTadr#^$6B4iFjzKkr5h@dS;v<( z)Fb>6GcTJ~*+^t%%~kkYdzpdUupD2ow$fm!27a0(&AMjp3sW13dT^Vk2F!^6o2naX zHnDM1txNFNlxaFDTPD?d*@SpDN~)Fffj>V7%~Wgogm~5<)yf+9^9zx!Qh!5s3Gy@? zAur(;w4tt^#3tr20DdQ6rdA&)03Uo~cwp$`XpsB~4T6lm1_3IzTu5j1$ihhuL$oX) z12az389lNPVn&ZFxI&}{xlb|O!#ig%AcNhZ=R^|-hKSel%~;`w9=o=y9+anN&;1cbvVM{z$o}n-?BbvLMzV8$!jWvTjAZf`BN>0aBiU7&b~6@P z;gyPb)>ZL#TC=y0^X8geD&6=)Oz-EQ6{KfF0(8%Y1n913^YvpKG7OT2NpBEgZde3n z`Qt^H8x|uT!`IWrHd*)bv%w}aoCzBE?^oyitMegw{aWmJk5)1qO|GpYDi z(*)72dZh)0s$QpQ3Q`U10P5_kvzK26%v_c<^b@yfTy^Wij;0gJJ0!?B2^o2HFDx}+ z>cB;xh9g<5x~X)0Yibi~Y}%e$^Ty^^L_F_4#V?+iVa_(Cx*~3*fa>3)yl(Td;^}X*yBsqVo z&z~hrt-(uy55iP82R6s$NAqxzqUOI@BP^H3=MJ!KkoovCpoH4$!cgr^hA-9SW%2gf z>viMk>0_4DI4(W2a?)c(|6)H>R=j_ktb;FE{`qzsbL{m>m-#P8TCCW~nPIrK}UxA+K8F3-fvrkC<<4;M$H)fTB zHLt0H-O#?paL?V)USRsGyPejL&%3?oyx@7i~HsNB;+r zQZ1`dH^ZqW4mm}qE_+%{-EFDX8=WD{C2j5rNjp!IHg<}?j+(S$eUH+Tu~BG~<1dGZ z8(1R99pC67S13c|ZyxegOlXq|xs3tZgt56L^!^@U+e*@wTTquVNg6A;?#4jkLpdfP zPs3fBqv0-fxFZ?URW}+5tGE%Wj$YrAARqJ?K`6fwxF{TZF!Hz*gd4xZGH}=iV>pap z<8$lrw?|yQ6Cf=i3~$AVPRWP$0>4gU(Y^U{P+=T5E#H*bCE6h({vHF8ks-EN^B{iqN(f|~Ty zVSK6&z_1+*YtgE_yHt;f6ejn2Q!wq99%tgn^HbzW z$ChGwxdt2s!MBJV*8xrL0lzlA_NvN2839&yL+Rk z+JbCp@##NU3G%?eD@mnrOv}#oq%lh>u6LxunF-`}=OF!R7?GB3SPZ~2Kb@sfy2D7! z=_t5ZO=7}F#d)D0XLtNYeD}MPp4!*p#S*DRB*Ol{Xw$PNWD5q-WOg-ZV^o+0D z`0pB|=JNYC*t|-i;l|e^$|2@DAqF!+xN(Nb`rw!U zIgS-;d7$>AP&w$ubFADQf>tc$k$<42=@vG{_}pQ(3``bypgw{yQ%7{8$)}TXlx-u= z29&lCmOK7y=cSwOK)AGN6=UE!XBqt2wX1V95%vFPh$xvr!~(Qh5UL;DLh91<5$sj< zySdtG+P{tZNMevVO06%Fe*J zl4qHG!_e2g=a-tL((j;}o~%pWgrtVLVy+Mqu&m%JeX{A`LSz-eqA`dTEg6bMo^sD1 zLpMLG)pe&)2WZX`U9agiYhd;bxhNQ)+Ya04RAf7! zchUa+C`?RBN47(n`k36b62f3#jQDW6g`eR^XFqe)Y)_}Lu$ZczD+)*Sq;h{A0q@E; z8y$F!LiQDE?=*I5zibj?(1Q16SF}BUhitao7oO%p%@1gP0Hh%ISULm z{EDgWVl9kj^mllp>sO(fYZynA{HIG*mpmzJs{j;qmJa49i|fY6^G3PY5-)O&RWwve zPB$j(*s01w1%-~Z7kW|AO5Mrgx;h|oh2^^g0 z5)0P5o0-#}!lIEv-~T%0wx0Se_{cN$#4`!>{EtsfU8J?FVr97TCk|^w+M~97YFqv- zY5zfImbA-w`hE_U8}QPv-ldq%m5#KgDonr8lX(Tn5<=ZYbA_pxWoh+F!-A@nSxdZX zr|jg~l^BhF>{L>7FcsfoKt+inCt_R75R|T3sa|-*)stvpr8SJ`Ni@@`vJpLrmN+@{ zi?9$$cE*N?;r-NO!`|PS1 zgLaZ0h%>X;9zq!O5RFljWkoky1SOcpeOqdy$ZYm5kCnpI1dW&j${K0p`ZWw=Z?k_x zD-yUI)Bb-N@nM*gTzd6)MWVFH}?pL&QK{{+wXJ zw3FscpEG^>oY2WL=1iYCr*O`!IdkTmGG|V>2$8e@igJjDxJU6{!5RZQ?O*tpm!Cgv zT0Z{;ry-Q{9};uMzfzF}1=pb(tj-*;qj$Y!ML|KJ!2HY0%d^4%H-Gbk!2JV*Nf;eY@C7Z@z4-V`eO^5#&{Yg@HT%m5@IFE1aL{LFm~ zEFW+^2}{+?_=?Lq*w?kWw@pW?>rD!#q9L`c?HIRfi!c%o1#i>l;c(zD_TEK6VDCq! zT1H@f?RlY8ZY;XU?hHQ~FKqaGpbNGHk?^CD!Yk>J*~LGUPWSLD#G9UnkQZ5e&SPBuvrOuJ zy{vcrx5#}0Tmcv_!R(9|#3Q4~3e5pL(KX%o*PZ1E^vQx9SA> zbF;FL4-om_2$3%$>NkTX?APS2nhOyIbKs;>9Po_}9;QGb(~H23^K5ug%&3+b;!zRi z4H?ydFah9AQyHI{d9|}@ihqMLnxu>ZIJH5>4j@3r!88$OHKFN0;wl-g#51atG}p`{ zl6pZxhrW=;6fTQQxGn4SKNo(eknl?hU+#l%-i9`xfP&@2JDxZgr!Vu2`i3A_Nd)76 zBBz7^nEA{WJ|rYllVoaSreBy$=rH$8hgyvyl)h$-x)UE|BRczkNcNq~{-DW@i;r}H zx<)Qn^W_fx&+x-HUfhiKOg=8^#@Z{%jb_m`=IxMn5qkbQleIp~0AZ^RQuH;yrmax&2S@8ob z<{DiLT`*}94oTV=)6TUdWH8=@)ZIVL=inz7neh1`ezGm#?ggK>@RJvG*GlGUlX(+6 zl6V`w%H)@;<^poA0gaVP;aqN^DNW_ z7K)bwrK~e7REdR}WuX>WsDB(Z^;&451{uTq?u#tc&lp2)EVfYJvrtPc)Wa6)G7I%( z3&qQQ!i`T_sB#NcXQ3)B)a@3k%0j(Up!6jzH9v^cg?%CIwG*?ul~;(%w_ihf%-8a` zYC7ey@^>Pd4$m$y`lq0KiEtDgx zK?~)`>I*;CHIk>XMSh-R3?;#l)gLg1lHkbd6Bf#m)&H?j#kNg9W1$>bZL&~~tbW8o zIkNg53+2e_^%lyJ)hjKOBdetr%8}JqTc{;g>ZV&LM^^v(jH#C+tG{6k`@18n&oGAE zaAb9lg>q!|n*wEIbp)p@oW9|I4K_!3yJEfx7N@F8Y;3xEVJfzmzT-kY%NAi|Lm5TM zyA}o#@J(Hmu39J=Q_B|dn4!pgEO3Jh{jUVr{$QMZymlH^$n<|+Z%3`qcSJ3nz1^SQ$ zI%t7zvOtF{(AyZ}&X8IB|7I|o|3lw16?FLjbH;f2-^&Oe{~xhH4*$0sAcy~-vOo_1 z8!V8+|37^si~l!UAcz0UEs(?iD;VSD{~Ilk!~fGPki-9J2FT(6=sr^?hyO-a`0c)?9J=ZOwwl=h}CSxxL(taKVWaNyF}gmFc!=% zFqXhh`)T-k3(r8TW*6bRT=>^b1Z|8{)0QGpntoCXCPM7 zO!&<%{CQKsw_A7yVl~?czte^P<3m%Fzr(^a5Uc4Ve6I`tB24;om$Je6NLPAXZaD__Z$l@u}MXfQ4ruR?|rM z%`W_tQ^EIHcm^PUgx~4H-#r!lK?~0SjOB4i4Kgfn3rlg z1UTN9=dUc)1QXn%$zzg-@FYaC?yv^KD+Q3!!vc2DfbrK0mPkeW((yjL|B$T1dkics zVqacBX?+HazaB8zL8PL+cq0O@NF?hH7)blj10d-zgLLxO3#rHhyt#pAO5*$EwFxP6 zA4$c#5`d&XWkOoN%4uE0=3#;CNXI);@y=vjrzx|Okevca_pF2zf2}CgLXHUJ&UAcd zD!waOx6458BIGWC>@tx2^-?=3knOODNyT?0>vkB(9faH=kevpSzh1~Of!qck1*y2$ zmT2B?C**d4>@bl0^+IL@61N|>z|=ljx7C!nm5^Hna+iVRuNRX0s8qBy9dAv=Hz(^h z8_3Os+$@mj?7|`bdLau0vYB@&xJaL43}5Z@%mJ}FU8~>)-7U6GlH~$)33=$WA1=o6mi@#o6)E=Z-N|?Qke^YG>@He@ee+@1M ziHpC2Ypub>UoWnuf@>bLxAAYPZ9e`cck{2o#UOFRE5zUAZvHj67$h$K3a&d0F8+FPQA?6) z2{3yb|EAgs@He@ee+@1MiHpC2tH$8suNT*H!8L~1bQ}Ms+A{c?+|9oR7lXvbU%|Bs z0nSkTb#YBwg&{wtzVgS6m@3K&p`p7U_^Z_?Ok~?(fHdso8)+-lIuof^5%pV%3jfju zat+W`s~fzKJsT2;luQCNZ7s0J)M9^;HB#j1UcltzVwQsYFJ>C%Cmw4~3qk1({M6;9 zi&C593$AMqfH$NCCi!?P>2NXf(}R(pE=Ktx#u3y%EhoX%>Tg|s zjCZXMB(5+7^66-0sH<4-AgW%E2cc6tJO|}<#9__v!5=0y13*eYzLjZzbqJ) zVC3Iwb#oS7kJtM#@{M6jKuAT}SvEw*fKFZh1hh*wmmXHsfZNoN{;>lUR-G1xL4Tm9W z-uztidGm86C*LMN*Js}RTy=T#b1mh~&lQq4Ki56p{9Mg=^K*^j&CivGH$P{5Z+@;O zy!kncd-HQ9_U7ko>dns?(VL&Mnm0dZCU1VuF5di{A-wrH%6s#3r1s|LXzR_-5!0KW zqaMF|rtuMPG*)1LBoowfqRqh6*L5U356L*w-HvZ{=iDH3;@&kQsjb@9czhf&M#gxV z>=U6N-|BITSNHuX1BLJCs?;o&1l?Aa!Gh6mb&T*qaim&(7Y?4g{|xcN`zif-i9+nJ ztJSRCBCJr!xjHg8KPfuzKcP_cm0{BXQ(o>*k^^RM`kE7`Gx4v}XXPX%>Hn#-1ZB$neNep0`*pJyX$pnHO-vd3m~g z`4s7~DbgpwkNxb&C+ugF!-X}Rj@0YEB8`L>8IAukapXRW9w&eK_G7SnP<;MKi8Npg zj*M7&iHziu6YvA5<$b2Y*keU-v7t_WK11^f{l*;c3V{1^zlJRm9UET(A0MMbc=TJl zW#e5BM61_-I3ETrqcG1vwc&X(%f4VqEFE18REvOWA;Jp~EaUfjAWRK_qpT4 zcb|mXqJaU+Co4zr4YP;%$Y2Z|pM^Bb%pV^JZse@VnAXh*1fwG@1=YIxWzpfgLBa_1 z8$&>cH_iIf_`k33l7-U#C8_9%_*ajb3jfBRclejs=;7a6^@rx)gN9ju{=UOM@m+w5 z-t&Zqe;6h;|9%NGBh=l)KNgsSf8~~cMTUPRnt#9lkdJ@l7x_0b^g8p%0aQBi;ov5& zZc=c>8W|RD4-b};pGf3#Wgys!V$t#g=>}nDe7L2sLZoQ8EItBe3KPN1C}hiFrtmM8 zitg-*bO0Qq^8x+SuYV5fpHBXyBRlmIXwZ!WH?j?>4?<*gXF66~x{1Z&v$R##Lh)Y4 z+sI&SJ)aXrOnhg0*}PJ@;)~DHhI--=p)8H>_k z4>JBRgI{fCaDd%mK&{mu)QE)}pCD0)JnLzvIlp3}c0NX+E@+pMM~g6rMDTn;Nw`Ub z6EDCX;Yxu`JfOxBY~s^(u4_(*CQ3lDqRIX>i*H^gl0TZ>aL)Vp*n4UkN7GAF<_X?I=T?2A;&yVzLc@`!V z2)pCGrBwXMcrd{6018Gu9)M{DiMdkikmlAr=@7$1mkMV?FmQZ?tNw~ z80q8S04pW|MU(ZGVh)TBLpE6kF5?ZTXYU|sBbIX-@rOU6n*qnkhF;17B>ONM2cwNu zeM&nJJ)2e9BiwWss%_rY>xmqK2w?g(Eo4SW+e+(_bsd4bVdFF!ekgh{1xKfmU7tNx z*TKfspc}XD@ zN%28};!Zq=C=G@AMVMEVfZVIn_-HBKe&=Il3h2-Tr48IOltvD5(tce!zAtFf_XQ$lcw$64{;K4W=g`Sg*RIlIJ;o=jCqAEZ zJ+Tvz>W6s$3;V@f>xnhEk^k?lCl+!&@z{}nX+5#Go#vj9m{)2&@#X));Q`kZy9O76 zb(tPvKl(QYU0LyRaRGjD{U}BjTuPg7|6(Vj;t$BldRpEQf942RMiui)aTA8NGHlgn zjuL5Aap}`&F4&MT&P~OFDWi_yl5Ph&6<6&O*Gt~TRYujm0_A;plJe|(nEn!zo5e2i zouu^lJz}5?%U#-9s!I8%T?L`V&`)o?~xd%!INg!GAGk zH$(Ulf%X#q6!#*i$AreR>nFW_riXJZ=Ri=y(R*a-855eu)Ytc$xifJ$-tbJ`wLFlx zR7(_c$Mn^whNn4skdF`(L@y^t;TaQe4Hkm&({)WSp5YhgjE=NNf0W_V%yoRNoIO)D%y zI>yhP6UNVmVTGRS`kSZTmD^SA7D#l-xV**K6?noBKPn$L?9G;~r)dFV0FRdzxk%9= z>UnjDifV?^O@g*+WwpU^cQtQjE<$p6Pem-Ib=KiM)z{%RnU1Ymj$%!QYhwoNt@8n< z6~ua#QV);xRNppey)Gp0W9PZya3g&)8=Y^saSc{5HnAShjt|yM^F-u@8^4J$bnxwn zwDhjA^!_jg$3>u6s!>r4yM4L`$Twtl716B`{+ADb0-8zRWE4IvweynC7p!nnKZ#UZ zM#7e{nq>fsEoEL(1@VZsLAd;Mrdo8x$>)P$mFDWaGV;`H{50bt8;`cR3# z42)HNGV?8&$6n<^ueFst`Zg4p?_-Rwd^UjZ%Qo>D7QQ~y>-#{g+g$XaPFlqp*KcOkyNR^Jwz1@@h$TiH(3S0JQ zH@u)qv&WRMjWD_@x?RB-t`IC^2C?xmoVa-lOQo}*_u0Ce&4ulZrB8D}x8z7-zsXu% zT-wLM-?k(Z@%*ob*-FPu*3JyI&KUW%s#k_}-}?G-TwUcMH(J!5l$hRhG@rF#nnw?g3zIK=?B5H3a+5qrMO*h%J~IWv1fh`oO1T7*jrF}YuBsXSu?`Y%lyRbJbPW`0u;wlMewu?&E2cW5>=PgJg|@z_!w1+8mYbd+Zbhe?;+w^JK=7@EMc2=(XG z%#IA+z|ImM4YCHAK`f9_r(w_pw%|Zv0Qy3nhCB7UMaVSuy9ghs-y$8S>qpZG(svpn zSwGzul$tJ?pioe%^I==R5AZYkm8|+fovhT(%c;jaOwF-VIZ=!-G|vx$Q|SQ!z$GnAY-yMYX3 zg4#wSdMMaH#T+ALW^E~`vi&zXJW*cG@bET1EJ{LPhB^UyT}9a`_%InUK-n2kKU*Wb z?Zc0;T(!qm1L_GxlDBE$^?-U%GJ)~|b<6*fw@_=t<2*iJfRi zf-C4$hx9of4)L6E8RKzs_?A?(y(h8@dB6oxz4t^0z*Ib8rH2@bAr6Py)vrFt3iS3w zNXajMzQfuxzsrF-;Pf*#lD9FFv=nU_$Kc;Erk<=OaS4?K{GtVK`mRnNVPnZ~@C zAW57w%Od+INsxc&zQ=e12ay=Vk;b4bL*c0rU2_wQCn@^CizDw@^k)X2dUEiaA4r@A zw%Aj&_F!ux0AM3LG=E|=Orl$Em~kAb@I{x3^!akc)~DiKi~;Ip#igc~x0jk;-mZK3 zGe=6hOC$S|T^M_DMAc5xuANuPMs6=Pjohvq`I)1oSS;)WO11C<-bRztn1j0M{&(R?TWU>{g`dod`DA z8PjsKh}+)brtgyNXuj(-eQy;C5{sqA2ZI|p&Ii$o(VfY`SCw_&jkCO+r8t>`?(=yZ zX0@kUnPccY;pf5NCdtn(u@il&tPlBdI1)Wr8Xd#p7D!VYnS%x1q)S>L;)i2B#wTBV zRo(2zUxg6LaIr%Zh}JULlYh^zo85t`2)~VA>mj>J9v?pe2l<>yJvy49;qxpk)UqAT{jdvN0+8972VW*ZzXlYSa**-th_c1ZWYDdlhwI$0b_N4i>WC^}yD^xarxp+n#+?>J;d zj_SLR`SQqc-N`&j>&}<+c(-%E2}3BV%;Se)WCRD$>-t(MXHeg3MjbgI8+ro<55!TG zjA;p*A~{b@c0uFe%ZQ^^&S)5{);p8i{UR%o9T4eMWXB+V<)g9PdVPXU=TB6xFsc}& zbdAZJfvU4Emq%GG9G>sZm#W%P41?C2Fyw(m)?yer*}@>WWqA?lH%%iAjCy5rps$p7 z9WjOYGP<=yYk^oZZ)a8QQKm(AXsZWw4bvW#dB@Q!!<1=uO!i7^7|~USVYv&ZhvbM> zE`xqAw^5G{NG2NB%$w zrG2IG5s{0X99E|PmkcXr9Kke@iXPAt#1C$h(PTerG2xthLngaS+utoH#uFb26~?!bhAjz1SNQW`l>isK>$FD7Pq z#stAB^njgEupI7y=;;Ziqcnb?6b@Z{LvycMs!NhNEq*{xEy=%Qg6NP5B67gR{(3KV zIFhKF{g_M;(E~^@Qw|E}I`n{^Afg?m(F1x)x?H9tOb|l2o;2*F(w=0j`}CXE~x+X%BrcxBhjRDL%)bg|KNQS=7#UGN|Am`n$lv=(Ol1Ym>c?n z6e5T|R*j&(Pv!>JNGd0rB+t0?26t|Nxl@;!>{QlxKLqaEsj-U_kIZ!0xtvk)ei?uq z(a;l~t(2Y>`i0%xy_f;rnHBni>=+rD70@E8EZ)aip-*aa!nQaLs;6!X&ejv#!p>k5 zX9W=0uV;n+3A4iICYu%Hrs7Q41#$YvJ;n9Ox!4fS=< z^cxQxPhcY@);|!Q4EH^m@%uX=1CyLEYkgb)1bth>@IC;!=gXqF=lL=f+>V-?u~rfO zz>vE~)_Q*T-1zE?p!<}2S?1iBSj@Sx4$8T)4punl#^K|TU40R&dLDGTLPS-uKDD$u zYeuSzug}L>HkHEY0Nko0G;S2H@Bag^=m+UsLv<)#*Y5NxUX2!1_PemBz)&`-!tde8 zlo3nh2so*J4f}HwAuj>;qAFnq*vdA8z_GDB&relpQ zn;?HHb2lI!n)Wh=FNSVJ>jkjt$*A9LH)AT_O@Ms?a$*f1^PtBPZfxjbLAHd#F!l^r zHlq}PQ7r&8_^8na4WkhI3>VliXb`z@tzrE2zs0F;LR{e8tV?7uQh%x$o%&;I#H}<| zgrh2+mGMDl9>61QiTPsY5(q3q?a60r+A+un@A0XABJ_tF+wpA`M~HqB z(af&qV*AC553dJ&S}PCo19)c=NuSdd`pZpHp&`-XTV;Y|Sf?|r&>5u3E5#N{8dope zIc8+!c@$&rf~BrB|5YT<)BLV!Pi}*l6W70d()xoqt`D;7k7!+gY$zwxKcVZ7JZR9r ztejYX&7gHU!wQ|@W!C@AuSET8r*3}`m#hAW*7bjXj{2MSM;_My-4pAt8MIDkSfMk# z%=%yXiq?Pf_6Kpf>W^q$|C${2H|>u+tpB?v*59t z&y>O0bHD1F_nr{{CQO;R@Z&u09~0IGIFDPsUd{f{q=#|5bMbNyBD+y}am z=W#E7=U+OH`|}%CB)MwU(uPR#gWl$K1txDmP6*p*kl7vOU`v3SRwAvX)K@r&# z$PCj~cO=<;huZWbUUeJkS++(}<0Cy436pPs`C7Z^02C&S~>&UHqp$8{s6$wTz)sbJ9XM2!y zC6e}6Oj?({^8!Y`vh98dqceN?Q$+5~E@`F@e}%I|k_Diwdnf)WbNT#A1avh7z}74(3&b=t%g<**Khnh8Uqx z^2HfgoKOt{{piS0KVnPuWRK}{nDpa@*EMVKe9DR%t~_{Tz++AB3t;K`DI1~{3Qm(PJ-veu9VwTwtJm)TT zv=NYJ{r?88{|Rc=|2imkqdF+-f0Myo|Nj}ns*A2ptT5&L{T$j+(EJD0tu~Rrg?2#O z1f?rryGCme$wBkOJQ`jFOvbI)rRX%WdB$MFeP=1uxO3E-jM7H znq3etTg#S2wkW!B&d|FQ(>}Ac0||{j8Zj!Ey#ET;03_rWz0j=Nf?7 z4H@~o1s#H==wZ>F=NI9? zH(A#oNJLgIM4RB?K+Sl7b4VfXuPp@ITSQgVkK7B98@H@dxSYkU{B|70Li+_xD-JA6 zdC#bQ=scjn&U|&z>c#N(&gXcd3RelyJ>?J${S_BbcR=h*qr*7D1bxYF==d|AeG-bP zz_H_{(BkgG?b77l;uOyTc9lg2pgEvf0it)7#kW(BfU~%r*piFlWFQ#d0evCvnhgXa zJ4)FxcVR(|%+P~e2xmXRXgl;og+N-$t;h_)Yn9B@gzbufhuoHJ8y6+C_``PH#>;rc z@t`F#8f%GWs$00A$58#OUiGa^%OD3NSj8iHB@d1~ivod{{R*}cH!YNjU}3FsT<*PL zF{ZkKN>)!FTOFtg1m1=TPY5M(dhc*EV#1G9t;O)Q96Kw_3~*01rncN~He|JE07m@v z4N^`$jE-ZgaYurrjj88!?2L+Wea&R(&5S)AlCJlh=Oe3BZcOdcSKR; zV{BYb2qsZp*!4mP@+li{bm`M$hPZH3irpAR!r}`Pp~a{5HJ)A9`LfM6A=r?GNC6q;qc1p@W`GwiJ(?<&R_7#w;+qz9a+R)a6nlSxQh zb}TY_DDr5HESRhkN{nqH8Qr)U^>zxfV;1HeZ^#eV!}-i_W#Cx(AeIyAmQDGtd-}3y zi1uxmcSG;YXWdG$^Y|BxYM2SP*5@?rbQ3ebr4^9-4adnz)J< zpbuG(`B)bq>iP4v7hdR%x)NYgNNsr^HU_4uS@^DehacaS4!&g98Un+Ghrx%lhP?^2 zSV+xVkHmi6VPiP_}Y(8z8^vR)E@xR z-m#5BV(~G(Z;JFSQ>1Urov!aA*6l``(t`Sd(eJy z2iidW`aP3wnYQ7*+?Ts$0zW+d6V`CQ^i=!5v|p;Y@`Uz_mw^XMAmNKKhb=;QA;Jp~ zEee#A|WtwCBtB&ye?KYai+2&TSt#4@U>aRLO1w zuv+n6Qina{H}rN9=6&<7WzhI$7`jG2v~PjmpanTwd>Vt7jCbM2@0+NzKF)l@oJv1* zKAg_J^ZX*r2AEORpT%Oe7>_Kx4ypYgbW<@=s)IHawq7{!=KL})Ru4l^1P{9=6JzR% z+4@L~mw6q(5+QU!h$GJ#yucXgaR!wwAAbH` zf?+s|zu#Rq8Gr9ju}4kD--J!|@)v8?jODMfD}hDyk}Up`_8j~ru*2U(7Jq5;_mcPv zZ>+7iGXyX%gn@@h&-BiTmZSxIT<$!bOPTYU@xN_*Ut{jFLFB)g`Y!;!Ao+jc^zU};{j8?{q?@as(IXTeo9 z$s_sU#+6uU0JS=JHB)dJH;i*~*cTbQK{|L)>N7e~8|D6t)j?!Mvt76~$}Ipy{Rmei za0Z>#r?8h$UldhVt~SSco~pO0Xmij|1oUDdI)*ln^qy@^iInOWE2J?VR(h%y!ucKh zKP(3oR}}_WKtsCfhhRDc3lKPeh#xMcsnB6z{^3&N=;82SvGk)(oSz3bh)~ecMW^bF z2w!?4U8r_Iv!hwZX?DB{@&C>uqYvC^fSiHj4Dt=@doK!%IUe(8^od@&l!5xB z4|Z(W8yRmAaDFgC%az{b(E@;r;S-}U;((Hotkz|9x|&W@od;|xtz*3nl-;`d7qCh% zw{Ohk|rp+hsn|Fp21rSZp4lTahr6S-&DINh8Ch)F(k-gAO*P zy}mGVFP&!0gZYW5haebZS}=kU_-sITw5R2xm{74wv#b>}tHGbZzrx^+rf;o%i|$*d zE&Y9~Oebn#I%N9R?;4%)lyb-R{zxL1Fi~788YkmEd)@+@%JJ0O{2Whv-T6wXjWe9_ z)E!SSo?>?`^OYA^gKGJLJu)qn*|{QzWsA+8!;U7N4bayHPnD%4M!UmyMw8CagoY zY^rzYT&kx_*2x(!c7$~6x=`-&cy+R(^mu+A-LfT()G&0m(aPSWmYARK8N9tUK6ZJ#jH;^`kakr)U=Cb zU8_E@6`P=5bq;Pvpxb8Dxg4s!dNc>V80kgm*2a|?@-`S8Z`3%B;-ZA$7-SCxjv}s; zo%J!^?xJcSkf>uhU%d#n=A0dBKgiFkF=-_G^Am-lfDr$FLo;xx6G`Gu4BKR}6GlWj zMKsh}m&d@Sw3sk+53DnYPJZd6DT_U-3A_H|eqEOv7OLcZ!)YNn=3sSDX5-$WCqK;_XwxBCA3lG= z{>we@yuqAErj=TeZcNOqw70-0&J08rrzouZTyH^O(T>gag zGVI^+PuR@;_4_~jFYT`%*d9bPleYdFH)DN+u_KTR6SB@^s&oyR7ecI&zVy^t6YQ=JIRPDK3td_8z z9#sz`%vCNr_ozDO3i)6Q@mk6#1~IdZT7uI#JZ{SxHa(R%8BKjMfCa z4_ych;YZ|71CA?S>(2`OAQ|2s%Q+9j6{jH7eGEMr^>gVBd*}^%>HVnwn3CSCvVAHD zr|c|xC#$26a6i2mFmVpSAr3!M@3Ot&#z#ab#?&>JS+0+%D-q_32wWdiJM{-R3|7cV z$2s9gqBxA@($(0%>6<`Uu2}ssTLNqIjnPoEw2GrwY1Owy$JA%Bat5A4;JE~;;!f#Y zl827q_osB`Bp!-5+?gXEX%E(q1mAP1Ta%9mzm6DFFJkc_wOdb7{l{9f zZ{&3-uuHl>th`>20`@nUo;0Qo^7^lBFR9wll?3m!;I%M*cfo5*9B?@TYMTI_y)cl~ zfoFdAo;_t$({;K7&RS1u>0kf_VD5zLsz3>*xfu`uJzk->j5-I!XgivBwP>_IDE zn?;_mQuS5^jC+n6W7b9tkIig$?B}m}>Ug&t1Yh>|9D?E>AH>rQ`qC_$l|v*CN}c}A z_tDKPc^Y=LGqJtEAdY4ValQ+U&l#GF=oyUG52#Xehv+O3GWbxQ2-z22G^CxNyxLcw zyzKt)RU9$6rnglfS$b+cnlo`3MiH~VyY2$hnQNhd%S_{%FIF>`b)2}d^7cZ*T>Lov zV}H!3f6nxsF1zVS%PXW`7@P=qd^?k)=V_dt{s%!`!w#-@cdgq&99A3n8-V79XT#Xh zWYEKs&riENo~b*J3rARl@KRw&H_nQJ)zet@Xd!Or!Iz6|%M}GfPl~YNUFMgJ|3die z%86?=bRnh;-sCXyf-)Yrjqb8buaC@lJ5~LH{`xtkz~Bf~b;>cdMpfNFLPFmqBilj03 z^y<|Z9E?Q7Fw;1>(asKGHup(cxt&d*zda_UcXh$)lkgvv3r3!bR!{TM#dJ@>NcGZz zPj4!vANevf{KEcxV8Z_K<=-b-foor8Jh3-_=-YlVCh^7# zc}OBwck27HP!V6*a90N7Hd^FiuHZ_h>8WsI9wWv04r^hF?1E1QbE(L2G4)m4G#Z*~ z%W?c&eu5W}1Xz2}eWu?+&MWP+7m}i&<$}gT=^`PGO{{MyiF7D3dR){k0TiOVM24N zo0BB<{vNPxl|jA($1fWBYbfAq}I=6ta;DJG*8*GNZ#_*1m z)nLB_&}26sKeUU&ORH*Vj8>T|2~aBD{V~Vd*T0^lKe>Cjnh$C9RF*%v*;wXd;?n-) z)TZ}hOOQPWIO|RAzpfqx_*A%_blBg?@PoUO(8fTCF6ZQ!0oA20W+%Vc8>-iSDaf_2 z@mq+AOqIPE#&CSrn~P)4u`$(gSPT*+A3Fs$AtCi$yrVRMTF?Bh@qb_f{s-}%QWpL# zx$s}~))V3HpyrsIu=PPL&!pgb_2IK_$f*y9t&U$Yss6o44l4c~ z{rfiR-v=B1CH;H;$*=JHK+Av-y`d+N7;$Xda@(KbkjeMH%`hyx9QJ*iFWo>OUV%sV#neE{jxm)#^f$zM-?z~x zwJ-U7pwJxO`!??TKzQF~1pZAxFAf^?VXSr?C*BA~ocC?aOM!UerkOI2?B1?GLAkoSEc(?tf0l7G4-v@%x0?ZJ0!XcQoV)4HZ#KVP@ejn(wu)uffdWZh-zYla8 z{1O=RNc%p}c3gX4UCkRfl+*!ebSSB#v^&Z1-p&HJWO40I@IDM)Z{jOFkTC4?@jejb z7sr+I3eQ}+jDq|M+G7PoJ7V4k5~CEnD6_9LGHQ%c;G=~WUm6rmsY+?2N{cU+F+$RI z%_5Frq1S1K8-Hg~f(PhEQg&iqrYpMG#{&h?YUf9r4mmUY0;(o%m**mSYMatvDfe5dgj&Z{-yQIoHtHluaEUvJV$+&^9Eej z4Pz?7Ls%ZSs|CPj*OTxnn190y3yYF;y0Nh&hTF{0j6( zAB)o5FQ#r(&wEr5|o zk=|1m?93a=zp%@!Rf$99H<=&@^Bac8TY;|2j6o z5lw4p2s0m_VhB^hh2+}#f!hCMOmzvab|h|~i738e#o>pl=XDfNe z-DM%asPAWT)R&8LtR0eT3vtSNjEuuH|I0r}#m;$^vpD;euoN2~be)0pHAS>UoIgId zVAkTI*!bKM{D36EGcWIMuHtbd!F4SxS^Cjo&_XDp*e2oL?qMb!)=B*sIu5gUuNa@Z za{6Kxky?h!xcoLHY~eLwO=j&yHTA+ArM?HXGN;|>AuPgd3&EQ!_%mG7CHxt#R`0+B z<1Plvg*dcCUM;NJ?V_pD$2Mob57DVAp*<1iQH*gV$^L($kENEC;4`^*{tEReX)>M* z^ptD4^Y7OI52*lX5zac`Hvs~HBWMiJGk~XO8P4v&o9y1|9j_$wx$M|i4@;wLDmIOR zRUHu*g8vC&+KKVm^XW0lBTp-F{do*diNg=c)q7bd;Z%M;2n;{6d_%C|MXKoPICirj zT*$|bf_1-?VVwMdJUuo+o*IT50hEe1rz6cGQjOoC&Oh3mTvwd89@j3KlXuO_t6P9% zJ#jSaiKAKl;v>8;x&;lZ&VL6lj6w4D-$D z^5WaOf^Z(7?-F;9<#+c32}G_LM@YB-7$5)n=Wd(9p0+(%w>?mM zRm~x(?q*eYE~?wKo-;)Y|E5~j;xFng{i}^1tojyH^)1!vEto`zZ!IJTJ(rjI+cDE_ zM^8k>=0P7X6`&~yd*OCu!?1K!&4`qEpL&~=m>}XN{!KOU-YH5%a|hBb{7BDE#aneR zjI_qoGgotz8er9=jQQegU^^FMICmZp@8VEMptb{L74z!eXRb^!v0oDVC9%J(qPPw= zPq^-+Hdf>}!)QYX^O~30aDMYLH0SXCWkKjf;kUOyih{>@m@2EGhcNgCc~L|S-CGl= z2dBa0?W`nt3ta~K(|YMoo^jM?OzX_2&rXp4mX(jD8X`DZQoD$#(&&035Q zEJ?vPJA`{4A@_8We%-M={L&rUr@tNGA2fuKrCB%Lk5xvWijn2jJsqH)TE2l9=X6OgP5F-fm zpi$ttfgr;_7=VJvgXs);FhMBvc982todU!;i9oYmRbSjefiI6m9d(F}C(n~R>ab;U>{*5skaa# zL4L}5VmOH?FGe22y%bc#!jw*_2=a?QDupmkg;&$hkRL(`u(ji%fjhrPZu|o#4{U!+ zebe-PBCId6l2=2(LqqJ9;X_Z$QMb@LDAJ*m>$4pF*f8k&BlZk*>Q1a^`=lpAT?eDs zQjom+ahXM*bX2HImH8_e<~DOM%jY=&y1EooORBU@#vEJ`Luf1=6q^i?KzleQ zgn!{Ef)1vGT740kz`0hQSOdOYDui_^{>4WQX}U937X!9*ka0n-*9&PVtMIJR)kgUvFs;(7`wkk0GR300^c1~^T>zi|-ZoqdAc z6L59E(Ruv0JR(_dZQ0!*toGVxGh2N|q z|7ySA(eTGore$PF=y4sX2ub6e?&coTw@D>AZF*$TCUmcaaNo_lquk&HiS9 zj#Ayr`wy7lkUWqz{J4`Yt4aV!CtTx0)%oJ7s9+1F#-*SzBwnyt` zQ2tZLaX%?MgKNv{)$S6o^RBWKPuSff4VN4Y68sptCN>03Py_YqCtQwLZ~EnrZzoW@ z#B|zeIRchm0A>26p>KiO@ooYY!tF_P)nmTzVvEZpbfA(^c`%})GC8J2BS{~` z);$Iqa!&>xxF!VhnsYo(9%Hoibrjh^7E&Q5zSsd9?QO*7nS)Ft!o!k@fFje7nB9k* zOvT;iPAvyCWCHq}Nt{eUI~sV8`~d;9Om;N-WH#)BCWr%jHx>_$JNPuCEs+!ZBP-&3 z_AN?9zqru$*FLzL`uYpUer><>IZB7<-C?9li-_Tc`4=-bh|(*ai}9}zgv2YEGa?Cq z>IkML9Ju~3^je_(Y14f%RTbNd?z7}YZ)x(fw?Iqw7D}P(*;}TAg>KTp=ssRRg*HGV zoW+GQu@`5cgo&VjAT*ijKK4F`;@%+lKTP+P1M&_KeOP)%7=%qCk2Hysy@!@do@%H2 z94obHQZqh_x|E}I0X;#Lr!IE)QSeR|FH1!NY_Xd>9!A%EC3KhApt`xbFbIL`f%V?=V16@rio&{16109o=@}-bhc;z|= zd51-jpterKbOOrPuyDD&W5gmW!a{=WQFxfz`d;W=h}v@FdVQeDDn9@prm>r)S&Roz z1f8Rj+Tfw#PK7(9NeZ;Mz145ojFn08QF~=5A78 zGXBBdq0x!;{C|3$`F|$HE5`J=M$r1}5A)wcFXL1yBY#C!UKAvq_Y$4Rm!|P0wiioW zyu6h!xCKL0fH;@MP{T0(tWgJoTxlh1FQ?vAL+=80`!()dzg4Eyed;SPvdR4xJ(ygr zbVJAos5=LYx^tjTed=PWJD@^me0k?p&2MX4-buk6S$Qx1#S3m`#>*7^d$0@t5Ej|L z*h|v~!2(O~suUQuUVN+V)e80n>}w9evm?CgU{V#cXyM|}B? ztC~yOmhT{kG@pS7a!2z_M1v55=D~chPCjW?fx9oe!w_ZgqQa#dFkku@!39x%DQG*G z>M>)0TeqEso1VMwf9PQ=w5;PQ?=VwZyAT~R_s8_JSiaj+=gQ>AMX4f|wuUY3Avf$0V!5aR*U z&AuD|AVMicgR4-W_Yz#fiEtlSSwjQa%wQWBp_^f10`GIzboqOA?Og8Z26)*Xn%tE@ z5AzgEA1)Q+_C{C?h@0pdp@Wvfj@iRVnIwTgfYnP3`*piS7UV0u(G=d8jBTu>ri;~M zNCs*@2Wr1oC8_Q9UV_V2(I`5x7v?9H!_eN4jBThS2V2l^zOcwE$> z02XzZQFiPqmqp!E0zwHt=?Z2KLO=jSiZ~YQBW3$?)^$z*T+z>FBdnln?CMN5RCuk6 zVuz{lS{6lvt?*bCWy&bU;FA#)m9=4Cd^xQK)F1eC>xs!)oLE9E$6;8(VXhhlqz&bV zo=G&68|577S`=bTVN!%ivbNu9npi<9SdvBk91x=9D+Mb(m{|NEcucIDnX78%n z106M(g7GEYQ4MQkuS~eTgHJ#m##$8YUfBaUAz=C1)gMaDFS<<(oV^`9RLunrJb5Z< zjm3N`?_JM_aPjDEVoU86(;t%SA-E1y?gR>8MS1UfA(WaMy-f_Nz1$dK6NDk{X|g)# zZ*v~^wPYyvq8b4LS~q&N&ZcLR~eu z6rJFC>#WYIlm=gB#oi9H2EDa9XqZ~_pm9(f>!oO>GS;an)hWabSz<;t?Os8^YEAHc z0&TJF5(nDK+5@`Vup{a`n&EyMJI@vUPOsn8rT9LZuz>+>IZ zWAd%c$~Qbf6d$X6>#TF-+e#zf_F`xAwdLEl&!T*z)eBOLYL*pGGcW_=l{T<6q!TT8 z5Nh;5$}itu6cDoIo2S?@$+uZP`L-)ZzCm1P$u~@1Ir1&4<(n33H@adi7L|P~h_xOg z)@sW+&$wc(N5on~KUlIX$Y~dIsop)q5*4Ynr9rNFFtJJ&eB{n_#(aaEqh0~c$rW%> zNKz4S`$WL?$l`LJE8zA)z@c7<&puHjU@h89M(tZwyNit4w<>l(7`1OzL$5F@zGz16 z3pVtlH8LtjDe~^}2ruY4uI%dLJ`nOyQu;(!kymu}$zBi#JSD4l%sb+N`$2uOAB1ci zELicl@-paelLHX@lKrxt$Oy0*fQnG^kvN@QF4$8kR*lGmC3Mx`W{oRVCtJw4Wdp08 z*r_V1cp_ss`dZ=+Ko*%>g|T!*ky0c5ioF0ATYyEqz;?~UV3t4@RP{j*SoJ|aTysDJ z(+_}5_E|FrPX>2+k%J4cmQcIA5(=I2Fxky*t}+Hu$64ioKVMyux&IOh8c->jSV?yU zX6((%n2kVw+1S_N>l(0}$i}g;+*PAH6S zO&C(0m6G7EX@`&#%gAADnRUGk+y|&E^aOcl1XL+#R+7evb}#O^6jN=lP2_|qW^*bh zHW5=jSbT?8?W{dxSlj}JTfQ#+NW~Ei!$twCFKlAqk6o)KL;UEcddJUT7u^r&XdpT2 zgJempv*>id6saBZ-`4(sv6`911pbIV?B$<+UY`+JNryK;pbccQ6Nbyn#Xz=`Ul0q< zZo7+g54&81<;FnQ3(>Zn(%INrgx^tYz;-qUE568el~8!#YZQ!+ui z$f@aA*ank{hizbx0V^}XUsEpIsC;b0F<@9(vyBW2va$n{W*cl_fNgf6<7Hg#3NlnN z2+{*nw5&3EaI+{!7W~8x!(ahBh~8zv1Wk64DH0-ohwKDke1jX(m^4?#2B^08TeZD^ zRqZxW+wnz-+73q~*vTO1th>n`%%*zUjxE97S)RmbFZ`ImwO@?#em z;hor8Os-?9=7p2_F1a*29LIMrJFF9zs+h-{U~^K^JWPSb%jQaP#9|-lmR;hlmeK2V zS=i2f9G^tNpxEwq!$x3NDGAw?iO*M#T!9*b`drr$S<#QU^>v6eU_wrP*O5v-Ie7>*bb-4*w$n_(<&t`r%G5Z zP^DLhu9Pah$bxHEy7ldYJgSt0oXTK0!yxs@(e^8eK8fcQr5lox?o`=+1#`jbW0SKh zmOF$5P*2^ISis#|F=h%%4l~#w4zL?0q9mJTdNhl|z#z6HrTq$%LViqI=BqntwI&-j zCgAABOY1jU=G0KD9iDoN{wz-p7zD8LL`=IE=(cq^mPozS`+dBH#75v6Uo}3fRKO(SnYb74k5oDk=$Vsqr$>jXIF=;euL7K zxOzGQzfY!{cZ?)0MP7wGyUu8$kI521ai&1B%q zxSAe}(EZI$8sw3V#}cyMjs6qh&UfqY40j#v;QXUY#kfXOYV%uQJ!HIE*n)7VVHcbEP$$%$m{B-Gm zjV5)1$03^rI_!!7Gl{|LA(wN00~D#LXnVexOhoT3#K;I7&m~Htrh)~nf^_S33k0*rSM&uV2!aX>E7b4uz~k5V3;Bp&5J0QU>S1*5K7n=j!3CJHHhvfz7i z&upf0ue0R*&cUhdRq0?{+JSb5PQalDI4T&5ATnHq4-9YnVuoDTB?0KLV#d+pm*8NH z%Ho|Bz$K*agMUY=c2p|<5OmqdgAJnyM2E{KLV_#08-Xd87NC#hQG=|K?qn5G&GZSy z@F>O=X{dhRamCz~W#BCE2|Y~gl^4sLDgiI-ub;`WPk?FCP;2#(3u_0(VV}Nzl$SgL z#1j>O6x&CzX^xwtNy+OT%hAX7h9qQFUl#~HCSdOtGukJAZs$oA0Ok1q!|h%?1-<8Q zPA!$wGJ15GemCVc#WL#JISjkT(U{eCBA$}4n_~D)l^g97YzqKg-39Pg4+$Uk$|AAZ*R&F4e)x-!zrHc znE*D1@+~1PvD4)VnvH=<27>i`c<^L@NHv^?|9Ii}y5GvdNB9AqISZvMJCHpF{x&U& zPHyYkKxDstb^iFe8;KtNJ34M0!N3pnd_1Rpxikf4mvRgY4~950^DiEV5H_GlLo{F@ z3Iig2cn3#l5X})H4o6%Vc@ITz_%Auw@ur>l125R>*_fU&XD4dr;}tF&iRwBA+H0CX zTRk*q^~kj(HPldASWqp*a327&jok+qEjEVi>c>AODa;pK12CK0d?jpV#YRv9EycI< zA<+Cjf->+TviGPPUSI=q!D90{96aUky{ zS+k7$Lb#Sij@LAb?~3Jv-B|8R7}1vVQOtD398-&Vy-q5kC|PEz!;OuoMl*7R!3Gf1 z8?T+?1j2Ou=A{8nN9p9erRv(d|2`^ThU3eJ-^@@5z+;F*Y3R))Z!M;DEPpaE4U1gS zvx8Y5Vj%)+pLX?%!RrRY1P&UDRYbr>9L#2%-ySw_9`3i~z$`p0Xb(GR*BR*OOfJx2 zb$i)Twf!jr9YKKogYae0uiU;9pApbcOClqGWDemFcjQqN1lJZ4OvtKuT!v5X;bR5qBvUY3)cU*ssD%XIHvlqc+L7LzinMDB^PuKj>})f zm1me9KOT8yv?B&YN7Phb;ZHE>yjdIyyrSU@83ZF31aJgGPmM<5)-#H3yNFZ!Er?V) z9Rr+NSsfNK*ePV3($f*wCV!k#FJuCb)<3YMrTkQ1pK8y2Es&Xip+rV)iGkeks;OwE ziqLjTc`Mp!E<-=JEiIqK=P)v~-CUl+b4!^nIVn&<-ef#kX*4$mrArU`cDH2fE;yqI4Dn=go+T8NbkN$~z zyQe&Z+S>Bl{pB%#Ka(?m`|d|he>jnnJ9WY1I^0%@dxHoU$J7NT$XnYYQ5eACxMp}J zK8RqKf@<99re`DVVzANG)jI*=#=+mr+}q1tc&Qi5R!_`7^}tMGFNTQjn>9>a-~g}A`vDfO z>gp<4iPRYibTAXb=&?ag@nL3io7FXGN;jemX&3J-wxH`Knp_I0z4x%Zz7aYH{>EgA zRFmMm28m?|^pKl1^xvBj7FEghSOv^c116 z!Jcaq2qzH)mn~Iq=>h{Awk)gcNp?9CoMEx0c4$pP7!tRf`lg?O9nSul{*cYUkN%w9 ziq%S_eGeJfK#Oe6__}j3GT>Uwqb~WGr^hJ%_2F?;eEr7#|hk+m|L#U zWb#dImfB;Q*Q~JJ(FSnFz>?Q&B1?Yp!lSa}yO`+>u;iidvHY>I`I8=*CZd&y?{2bCtW*FU7)%xTKuH>eVlo5kGS!`ZQzAGo5kO0$KX% zwXSnr`P>skXU($yy85rKUro9y$R&np2bSjr>WSN>EojE$Hlp!5T1wA2Sj1o;sLcub?VtNf->CgFu%GtNvtOV6b6#Ql=h->< zXnQ!_eZAJlwAz7MtUVM)wW76$U=O8TOxqd}6$?wtv3gXE{~A{OD&gj_&az>sRA4mrzB$DV}#JbgYG0n1o(FXG8u zPOjnjV~6T%4WSrv8^>dy_wd89mFI3wZh5bLOUGZxXMg+hQ%2!wnGTMnx<2U}VtJJ3 zbAQBVn0$B@G|X(WJfgu6W;wCGAsU%j-{!1iSi}*rAi|EAp&gN1KI7zsDa@R(3KoSm zoWM`t@0Aap(Y+R)((HEY^0d42VQCi&r9K7n zj~mkY&pyWd7Y*qAKb>q;<(A{L)rOZ^`OS)_Aw@kf4Gh|&&Oryk_UN@V^6NvPEGTpN zFAKj0)Bd}&+eg66jQaF3)mOlN^v5VslFN)R*TP(u5sTov^!|t6bQ3IKx^b_Xxs-!L zE`@^QY%_1R5#yt53T9{`%b1&V-btIJF#}DO{z-CfEqE^`*;jTmY+cN`(b_6+Sx2J^iT@k$V|?V{=Ufw_2j3!#Z!_Z6if!}- zn)zHN^>L$I_f&vMJtP(W#Qq33f6Yu0S$PI@70gPe1NT72=xDm_lkkBn4o+F0fYMx- zLYpaG&5eZX0U!U~4Er@?$N4XFnjWU}9(ImrlQ|eJ2!`6>`13{0r*qcSck0@fX#Sc7 zuI1Uok-;!C#72U2J{cLDjdZx)ao36!79k`n_EgN}ytX1SDj}ynHf(Ch1nE?R8+Zve zO{)lW$r%@BXW7@vQ^%b2Ke9e?2npwX9$YMV9s z#Ys^e!Ghw_oe!L$^I>+bTtciahg{Sv^En)O22$@;#CLY;k*i8HOtltLdH`h9OE5VT zeu0!M6Mv!vH3_7egT&BlQ`E1Evmv$o=ML@jT=?!2!wW12E#(lD1(?kve7y6YgRiH) zkK6j1S)T}AA5Z6zu$F(}r#P%eVI>B-OLw~pA~yCi>d>%Rmo|^z9s6t1U-{}HHynWlgmYiMT3`r3Y%Q|3hXpFPNU}p8mzUqe^8xH}kJv>NtwFnNran^zG^#{q%L%*H6FPv9CL8zk0KhdwhvCx{n7#b&FjT4`vCk zzUYX6mH$S6Nmv!ihQdj>#-yszb~^+*s#)`ulZmZM1&d+I|iDoVPZoI7Acn z3JfgU-O>!+#;fpb`w&5vWOp*xII7V*D)1?Y-SAfN3*@9xS<7P0UP&73wrgHMAqEj*4zYXK^=RTZ#k zY5M}<5Pko8(*P`5?}u-JDLl`$Xa$Aru#B)*911wQH#1tD7Ga$|K7lH%{eGP3K*4|u zk>O6u+wHARFDA2$>SHuz33S2TnmIHs>YB7^2gX-TzBQ{s@x;2RKmo>A-HRQxa3#d- znv^fLr^H?-dE%Xm-JJo!-*oxEz<{Hxakf>CYVLn#4J}Y5Q;uqZdVra1@A)^dj>#z6 zBION>W^W5+nfuSY7Dmw%xM61UJ1i8r)9KJcM$w^bY`JU}D%tWnSm89Xwo&K;|*Cu{VZgd!#hMX;2sU2YmL`?b0Vp_9P#z`8=Q>)g>k{%Hp3RC zRwjBj(jNOV+2X~w8Me?gSiwxjKFU$^ZDz`k=rOUy$E5tRvBim30|5i8cc<+zg5G6Q z05B1KE63is*vWECxOabvxc~XIqvHNuW_km-e?rP18}4tuij#DHqwF^>BVBThvUi6a zqpZ7Jr+#AYJGT+rpb$OOP0rt`S}6*=G8g+CjDD!lvMB8SJ=KQJ^M!dTgzzQJ@aH&eIJ8= z>&_Po+jp1d!H1`ls50_@AfdQwO$yA`I|TK#&PQKzZM_YuyLjQqv}jXQ&H9<80DV7Q z_ul&B89;x4K8XXM6e=A6pBq~}t-AF!ju{un89WwxPee%cXYP1>=PvJfyq2SA?ZaZ3 zyWDg>mbJqR+{O5?8b!q)Y zA6I-9=Tl(+!2dlKERD|(bMVpo4Kp#2FGOF?fGC@e=V^GJisuSE<2*tGqlEDAy?;+) zDO&RGNn~Em*^_|Q4#UL_Dd;Ob>P@hhlOL<+I{cXS^W%ly`$s_kM+?AvAz+ySxTXWH zX?UKB=L$U2Ya4DB4UA^xb!<(m=^j|=PcE=x3ZQ8M-qkdsXjr@M5LiFG7JqozNI_Wr zSIWuw5qm5A96$FU2T5cl9A04ifxjuU^#gC$5FTD5R9q@*H?Hv=m zzp(8QUZr1TXXIQm&uhcG&X&&$ueKLze^oy#KJ_H!O}27Y zl)C(gm6IX92Jo6~Q5F6u4F3-e{1JRd<9dj z=7+R;`A2Twzldiv^9Ac@FRtNV;4niJY8n#jc~B~?VgLt9<1lEZjmf11OzzC$Zbq(( z_!gG>I0z&xh1&)38pSKlz2ND6@_~j)`S5;Jmd(g!h5(5d***@ljXLIHQ>W4I3sMB^AoR9lpad~6&aSi9=36os$JqG=7 zN*jyinUA%8ee6@OD2z_<=8W98ivH*>ntsIUMLV4d)bLj__WJ9;dj*EVYt)Z9Q(MYa zqFv_AD<03viw99SX|oGWx9On*vk8-`HcF-DX&oe8%ci_KI4?cTSsv+ zf|mVR+&lFh1Q6i-I|X`xI`s3Z5gGM2U;QU}>Nid1Y#jQ>J7*jWGaRNVH%m$5Z?r>H zg^a3RDP(-=evr{n=3Je0)&od#%=CIZ9LYN#SeH8Cv4Z1441I6tJm7U44=+!6UE`s6 zzZ|d0)lX$SVEoTP2H+0)k^x_H9lR9?@juA#?iJhgGZ|-h>vl=5&FpS_Se}eD5_t)E zG3nxLf1zX5cV%sc833nQA=hsONLJHrNOu=&$kJ-<3hAxSC23-STMYqa{$)D-BSq*k zy5SIJ?i-UG@IXD6IFYw6Lfa=3> zOcZTn!p{jP_hB`J*9n9p0wE8(aRHpx5F&bJ2KNf_1oR}m^_zqVJvJO%-Ad4)24Ig( zZploQR10X%c*nfj!9KypT&U`a=BvPFt7=0Xk_Ki}7wAp9Fs5FF)YOM{5E2%}*02~B z9)1r7IS!WB1Av3sF*BL=A>*-P%BUM)qwxt&_d6w+sxADT>j-sr!SAbNVU$tF`*S$; zL!_-D(_?-?XaXM$S^a0n>k09{v%|>TMX#CPw=9FahH{G&@S19kxb-#=C~B@`>rWmu zI%zW`r4gEUiY3Z zoNv=7)ZQu+Fj$_#=g_ZC+4E|b^!+^*;wcGF|@^U;U+0|0=0oDqfpi zv0*At{bp61bzVtPgx za4}w1NA)lQTB~G)cdRC@3efF=BLGm~Fh?*E%3`5Ti1%aDpRYpKY@Ng6kG@*-M?=fV z$^#k;r@taAcN)Al5HE_Fg>mPIoV@xD8@lp|%VqC@zY^hMo#;LA=PFOvqIx3>Q8e

z^ zPW>y4p6orrgx|ekYgW6VarDF#QnodkdL3_GveC4w+C<{k7}n6Gx-!K_YO6>oj;R;_ zMT(LuQcQ67Aw`n<_Ph8;%l5HQtZO@piYWRiw^5*NHe}SeT{PgCl!#@lEFT&Xj z>M#hl3@v%<7w(TXFGATjtJ|i~zEss_d<8RN$)q3SoCX3(oK{a<#$-5 zCxjj#LcbhYiwB6IZ{q}BLeiBbh+nw-HcTLTqcMRP9h(xbit!nRaPh=9)xH^T%>eaP z&2qPHOhmb`_P8xYd3hTR_AJyO$^BPBo{n=6;T=@qid@28#r;<^@?D7h#E{5PZtSJK z3?hPD5+nbG5AdPNYFmiz`d0#DQbTEu5`S^S2%5bxNj}{0eJiGg6>1mJE|!E=Yx;3< zEM}(Re4fHb9QLl~LC?6OGe8|uBwV96+!KWrVH$y=(%Yqj4Oup%N@^(Ap+J$|E`F^2 zhVLsH4n=+omSH##*J*2@aY(ZuB?xJ61Q4+Q_(y+Eg$>;@Lb5kSY;j|tobt;Rd6u{zu2QSImBtkM?3dFI+B@hct z4*y`9+!M1Y`cE;)=llz6R?lc`J_Bxtx({;)>GX8xYGEq1xjBBqA3Q*a4U zYq7+`ypWomGM{P${k`ld0F3m*X3lUmI~ms;89Whmdtm{ZHR3}(rQT^*f8bCzaP0&r zzS1S_y^w0N>-Q#7Pf(R{sk@lk502%x)D7|PK~Y3Z|1~A@%c7*efib{wBcUMYrZP5h63<=H7#F}eyGRBs; z05`s1b-jh94gCDW`iv&4H*pt5q&d6p400t&k9Y7SV+El;ybw?K9i_io{nzU?*Cs6&4Djg?Lj%1|uv4@+n#3Bh*^KPE+VJemGnT+ZXGsvs} z9Z5bzpq~`F5lolW2F}R%#XDr{ybZyf-r=xzpHY^Kn&Q)4oh)qs9bWi}D(UK^oMnX8 z5N5;ng=T9WJ}}T4?zCvIH8!&~9NgcUb{u2u3w>-C1QyU5Xbg)UlgmN;jjPK<7ffvnP!w7rmwRskG|Bl$SR--mOjv% zWi9Z!fqo=$IPBc7=u~2)RaesmsJD@3B4X!FLQ1zcMX37^*c1Y7d$DkFM?P`Uu<%XdD7+Zx>#* z=TD{3X4W<8%H&!7$sw|cIR|O;uS&buo-emso7sV@QpOIZBxz}+O!%&pQO!)gD&>Ej zG^>nh&`9|Xu6BpkmzQa8W(8NJ{Aqv6Q58YzAYSZK|D1R#g*LOetCBD8Pws+R22Z={ zpVQ(N6W+*hCq5L**9@lQW($05(s!jq|NQK#lo1ljLuPv|UMuLk!tTN{QNku|Avz+)QRrSo#pHF95=@QGJ%$2!+mbrD8> zefm5qRv*2Mua-hx7uqgYvuNQ*U*b)8)eBydbvMZ=*4!Md{>maw4|~6Epgm)Xus0tb zyHA2+vf^y3eS}5W>&kM!S@Vs@!`mR9z|J;{JZ8uv z|Bz&purd1#%P5$17>~+$nsat@@yYolJek(X=l|dG`DyhkEmei`AJ&I?fE2Tv37*zj znybCv7ELLq-8&NwPlhCK#J%_$b`;!lcyXh8H?wl#N|JjCTz%M6YG#F31w6$AFgE92 z6;Oi!XyL(BZd&K-LE3m^Ud%-4R%t@melZHw@;(s0)BAj_^0*AEoT4HJAGNrJ?^n3*Mt5rvqH5X^kNnM$pn#v~& z2hziNIqbQ49bF!7G+PM$2I=@UI<_OQw%n~`_o{FKv&G?OucIkAQs6YQh0J4Dhn<^L z_yNFoY4M8i11@Y5j-;K0Jch0xFI$a#5wfr{pQp`!o)Be6ENGlm@(%~n2dv1!!7c-! z+P5p&IKOO%9hkv;zzhHTJ7u=Bp{gxZ5(VQvHL&{T;(1RA$ic5dtw#`B% zMzbYIhP)V^;Bf(mXlI#&+OUtep~lHB;qYVB6$XnRQkTs=zszh32 zy4Q(w3{^j}29jOmLegq$rFK`rlDb_jaHw_|pERakhksR7n1 z(PQL!myWvPJ!&d=bE|3>khxK5s$7GLg9V;ApVvEfKCgCyT!U&m*l;>S|~! z(YHYue0R;OD9-x7#VF@|;<6g*M!5dQ)x&($61xQ4UP$Gvh$`r*GEAXL#cYA`%{wcf zrJA9YiM;6}*u((i!) zPe_3%rwf|sj*1HEa}RVbsEcutq_1$miXF)EIOeH-OAzc%M4;G}6nmr@`-+>N{$x9b zCY#KYc`E8D*$0XbaWcJS!WA4?1O+uxo)8+%@5-ND(5xL#xp)GC@lgnM}OT z#w$npG=iDfM*HcVBO2G-h>(l|=%jBEW3RMXOFV)sT;?37cIDyaw7Sd%U2D4kK1yy` zr-bMJ1m1wdbN{HWw!52a=0mW2YkD}_N>NuFSM7)J;#&rfiY06dA-2VZ`GXuMV@F8? z4I5t6yPds<>&fOt+8zUes`s#x*9#6kW6uI>%z|^2TG*)MSFwxWW~qhy4cwSRX#pQf z=~oY>8|3PJ7HJZhv4vgHO-bwrlo^J80{a^}gZ4_O5?L>ERP3Za9E(ao@)~-MmuLdY z$K(K&JRl|r`}soMLcGB%3K%nSogQ1zFl(SmDcd15RNZllC~odCVgk%eGKQ zw+aDk30ph>p-m>aOp6T{IoQ9W4oYm~Bfw}@&xJHlf66z^l&%5D9|3^}R}=z$-k%XZ zopMd0T?monj2cV(%O~-s{R)m{Em9iyl}?)nv6^adc%zXstha7TMA@hVn}*`C^=^NX zXQtiBe$*dnF(rAj|0|OaxSPI^+s#Oc^qnzwaTG@7SY8dK;I5xne7cM5T>8KG=C4FPEnjV(UF+XmWX>XLE!w|67VTWPNtsiU4SOw*_ zBGFtxaVb+o`jUS5s{1t-5Ez_UU{qJSk*X?90k8Cm$$k`7F@a4osz{5KCa_WXGIPZI z43;s!oyIyf93$VMzRL=E-gJ+RZ^>2+Ju)eoz3>!P+FK3IL@`T1jo|`srM z78oJw5-3h%eaYdYaT+=^7WY(>k(jFklN(@Yr!2r(3k3cvLYa(rxl*)<6Lkp^<6x8w zUWpg8_@{|*aI%rAR0;R+5Thl3H7J83vUTWxNc%#_6Do4v?v2HM_pMcnu(Q}YU(Iu> zx4W9!?JyUVe*x`_pHp+Cvi`?g( zarUIq>w$#`z16GJWLO15+DYy#+Q~$siLT(WkCRYwi4giFD2;mNby|jm(2vkubP>e) z&Bgc;c?%ZfjVy?xm0Vc`60AT9_I-R}ZB~HBa(WF0kq~a*6t4@VT3OC| zW+@>=hF)poNE;T=+>mk-I2c7mvm7KCsG|^~lb=E6odcEYr}47{ksx8;4wPRQK>4@m zOGt4y$=sU4qS!GmJgWFx<_< zE^^_ynkleXtfpfSK+cN!pi4(XV7y*h-&KQ4 zn4%WqWNFfgU;PLj%5DYOqGiNigVgT@s$ye*6(3y#;thhL#khdg&x)X|2X81OO^Fl) zCu%Z?4{X~(`t$Rh8dQ$8laT|UQ_ukDH%W~tA$uhN;M==S#FITE9i6unYiesX`rH*1{Do4G|yv$1_L*LmhTS--7vT+)aVwV|x2k`*RXJ8-xIJ+7?Y2J^6RR#bZ`1{7gXE1OwgfCTbP4(sWLI zc_pkHx~nGf&A6KQt}%&EsYx74crc?M%g*;w+rY%ZHq3D!2<~y-_MTEdFkF-AWN5n;DNt9VOGTU`Gs*06v6lH}gOx$63 z`ZxcPA0o1GKg<^pyC1@Arh`9B7%OnGLH;ry>SZUN0GF&pKMtw&56b{sp=!|D!+4OQ z|AbY*vW&fi7-gk!$p-_+u8L_?d<%L|HqH3n28L!WzPW-FNTitEjq@$t_MmR@>ZV@# zt6_99rkR@4*%ai;oiL2TicNH4xPy5bq(O@5?3c(4w00Kx-t{HX9Y2$)G3L~j%vYK* zSZS`-{Bl=(8=?Mw2F2|rI0#UmM=u7< zD2>$UmON}^u%WhZC-f2dJ|@1luaVwY1J`=A_}hYjQ^)vr@@Tf)guTIWJUd9LfS^b&|5$US3<|j2eL}`Bff6 zu!dOE7V$c+M+n_MmpBH_ircWBln?((E>E(6+b5Sh$Zd9KmeT`^$k=AUY=42hGF}}4 z$yEqJHfm1D>_fw66BrV3%!4J&HY}!Dk1=HVIc9&uEj`qT4S_p8f-d*(6AqT6p6AaRV-?YWW-aHE!cCao?g5- zU`slyTU|!)0G1PUMfk-jGtpDE=az%K3>zY$X$9b0g51OTaS?7<&>(#;N{A#f^e`|I2feyA-4(KLI z7{;KdB-H(yo|Qt~E_$vM>UQ8MuX`Lu`iMa z#H?{XDev;Oq&g%!p#ukVtZtYDLE>9Ygj2Z7G0=gEcfU}VgB)ow+a+Q)21NDlZ}UEn zDqAAgBB;$vTI7~sa|#H?BUd+~DTftlzYy*LxXs%L6k8&55oc)O-%*~pPI%qZi!JeC z*bsWa*okAnRIh6DK0_sFcgXBcSmk5G#3pFK%)!o(N^JA)1IrD2@0Np>AX0sVDi64fgCC&91-+@CoR*;;viiA6$yJ4zvJt1&e)3 zVNf4kh2quf7MveyKL;XU&X+m^%M~Og5L8O_A=~Q&Acs$-F!CumKnYgZAKzchUf6@B zi0dNB3?#i1Q<#jawYpc3SH4j91U$Ws(c-XjweaO~ z#Q|^eg)b`(leQv%N8$bPo6YFr$j)Yu7)w;SLvsnQdU~}kKrpdMU#Fd(mH64p3e>MD6>7Xn**40(#%3#gx;~*uI~opA${DS>Ak!#XVWj=I zayS;uNR?1C*x@PM55`-oHPwSax%wH45Tbii3>a#{^_^|7CJMaH(h@tHjn^64u+HWv zF&@wqpc=X3yt-$G^x_O@UuUxu$F5iSl;wT7IFQ1A0+t2%S-SM1dcXvS3twWt0JyW+ z0po6+&32e^Ee@oHy)U!1Mr^tId5gH17=1N4Xrx-UU-53!3%8{~ImzaObt)9O|e>ohcP_}?_s@?{+b(<#W(mphj3b+B_QuMi9yt0~F7q6yVz0)EN z*QK4TYdZkzc0y>MueA*mu@Z->kQy7s@Ntx&dS70}eufQB?Hljl^GNdtUka`z=LA;; z{$9r4Mf~;QFB94T7veSS4DO<&VQ0NIlH?C(_?)$us3{wU z5f`Fq!xumZKLB96kG+_SxQ``}R(%8>6?&V#7Sy-zKVrvZ5#DCaLB*894mF{mv&jmJ zq(bOD1i)|LiO-L)^LZvKzo9Z0gwS^6GehcD%etE`+XD;XF=EMT z_eYyZ-n+2dNacPP836LG`>*0^T$-rgx4XaZfavArl!Ls^W7W4#ebx2uBoXypYO_m| zs8X}FYr;#~Is9d#wiLwc`+Zasxj1m$rW6_Pba$qJ11&kRR|Qk3`T|xMi2l|EQ39!g zJ5Q*ki0#0JUqO1fbw>IkySvCC-Q56m)fWnVO~7J3-ZxGSR>Nvig8C-M=_w8M88(i; zbL{5q%NdrWP3MtZKkvCwUKjHjogRRm?AEH zlQcJ+qxet?1Zk*9ShO@wrsNU?OngjNYno+a4Du0cWXb&}xH(W7HC#I`7ddns4QuRrG&Ks^y0U}3{BjGZ z%a(x@aD|1_+4oWR4>a3}b}R!>ENZ^Lkq_s(R2t402;S~H6^}!KhxbOuV(CJ_u3qL- zY}4n0?Gem<=vuQXv;l#rY~)#VU-&7@dhm-bLBV`;w)*Cbx0@o)aGonm&hOUc`f~zK zP~pdW@lafNf)~-|>FuCTpS>-}@IoKaG?f=fZ>bQ3@ODRcqe9`^VV&BpWI4i%$xJo; z&C6?_%K@7yPuc$*5l%yHcEjPmrn*M-SA9`7j;ob+PHPyOUv!onY=w@niv<(c|1pbTT9_#uJG+w%^`KX(g61lcNfjag}vdNIlYQQ zS!(UYGzSNzxmIOSuaYyTJCX_1L6kNf4Lj5L29zpYX$dV4>6`6-wA{3N)caIc*s8?8|w=2 zy_wIsn;poNrd@b^liTJP?g#iZNAq$sA%)M& zLuOUch*a!E_72n6yWX}NV6aZ`aB@T51o_;ibtnvoKYu&`B8vz;WN^+Udq z@t#q$9ks1A=)j3osymeGb4v9EMLG<|5G4IiE7c54_<#p{Pj7o^_`qQtmd^i1*ha$r z9KSl8TMpzuf%0F`o%TWPA)5B&Ka(UAqZ4XVL!uCJnJ#3$y zQHkByZoI1NF=89V}Kfy7;qiZRs!{v%TehQ!P6#eMKQ8sH-~636mOE>OLlfq6u2~PDVa98~;GbzyZuAK#mfE ztRacE^qA_vTkK0A`LiJA?_;OfFz@MMUO4l{sG$%1Kc{-%$*8mop*OCmy%3_KcLt8v zzs3_{lOFZ5uq}o#AstrBj;avW&kYKppHeC>bHmm~Jzi_Q-PF)p?-^PsPpoUlr5%(^ zu~ka}aR}Q!#?crXB)3hv2a+f5Y`at{Hz&fP8DvV_d@Tk&3fndzS|os5O8pi|f zNUtrL4jf2tF*(S5jZDOhG-MwoH;t7)>F{HtkKQWAMx_L6TuM0eQ4EIac=?!q>MOah z8}5y;eqlF|)_ICyQ0<~)2qc!J3+|6$f)b03dvam-jt!sViJQ{D z!bZo?7;zK>($0K{^(Bu`}oR;%* z)Y+4z3-Rx&(gk4a$8~5a!a!AU7o=vOHt&fM+HCyu(!ccaoHTv%G3g<*6qFE1S);9n z(F6-`0cwZJZ}^&8a6MWujE4-?yu*DO5)E(SwwMh6BDR?1XB+4~S6$*#tZ*hPr(^t2 z0rg?|`vD05#3y;7BiNA@UQn0!*wwfhI9h$vzw{M$(;!(*SC1s|tuD5^7dxc8uvYWc zx%ztbZQ4BahO5%C(!n_KMeFCh=BX@#rSoY^;&JLdhysy z7^`0OVad&=L5kRTfCsxX05rUK&Z$7+)8qSaXd5 zL~(={+4(8~Gn_BcP1QB;U~}p{dzbqrS8es#yE1QrwRWN=jAoK?663GBIFr3+?b=`1 z1SBI_Yv=Pk)-L!T=J8h~qjitAr(_9o&!g&UxMd)Thdmx4^c6j=un+;e zj(Y$n1~sJq!gc?^-@qV^zxxos7P0=6U zhMOL`lX6%~#I>-kq%H{OTa^TuEt=6?5Yll{tr=e8^Rv$Rv@$xiG#FO}m;J4#o@mt> zCZn8cGi-FiGH2Lct3~g70=!Vj7o>>815p9k2J2jbwXOx#b2Jn>>K$4ld5R%R4}P{A zSt1CzW>h=Z;3f&iD>WQD9aD9*4P)wX3L1b}1)8kJHJfk{KA9$#AX)c1&6&$T@5S{e z@pZmwh-nyp;pv-Q^$EE!UKP{O)R2%1%OdBYABmaL-!Ps6wdmX45@S8w=E%hchX=N8 zZq(v~J?lhgu*cgU^0j(AKbW2>UP@1rtoaRbo<(&>>K#zG=UIJdIWxZg!!fRp+dEsV z1G2T~xn;{>fzpDzQt?`n0Aks9(o*6iBW>L-$&n=>)7 zm_76p(w{H3brrKa9;S_vYc&x?kW}CiV?6CY93{dp8q^%!U<2ycdtiIl^r?SzjfEHXRmpKWH(|`{bYt`?dF=$k%Q}{)bt=V>X8QWjV zSzl5jqQRjib|65Z+%k>qrLm2)~&YGY%R)mn$S>_319%got&O*>Lz=3sI&U|u8*h?DLO-P zR@uNaq9bH8%Rpw3sQ|mCXSK23dMwX ze9#pvMIk60qHFo?4&j+5xx2UOI(KvR1dNNghS)qPe)rVp^+6iRtcQxmYLG#Ov=Fi& z5AnOaa<A5Ys5f{rvj^s4%(5epZx`*C77SZblIqg5@Xh5 z%+>WsKpk*QXxi`@HrPfkRj*x*YmF87Y;R2Ct<)*B;Jwa&0OYGtJ>^VX1hN4x7oy-k$Ase_Zu5IPB$k z3EMwFYRD`|4~ITz&9&D`ae>a2nt)|Vdqi!{CvLsmco7wN2^CPgW%SWPu*l5n%;jqt zw8*g+i3t|jJy_PTdAH-$F<6Op{gwDNDxt;kcoZdwHzf*nA7cXO!{ zE8Ysx+f5C~wG;+sY!}lfNGEk(GW#V?ead*Mgfg)$nw%nns=+WSCAA`m;ZQ-Wnn$8n zD)B6>!!$2(i5Q5l2ku254#0qEY5*dn*Fd~BSr^%hDm=wLVIhTp*h6uqrHpL z8XN-=Vm#V6`PwHuh_>srE)S`U4r|}p@M{_6SrkmaOYEV_U5`r>X(B)F(!3MQxK6UG zP2fa89V-J@El)JzZsNoj5Vao8OOL%PPmftFo#(dt@+qAZN9E5)1;uoDg}e#T#=$gO z=c7ieV$e>H9>d$K3BukZowY`Q4N%yui&TK(jI1rl8m*2@0t8DN=0=;GV$p4Dz*`|) z!@MYGy%6PqZf;l%euy0iKiC1`CU|{{zVJRSrXW)VO5AlCT?qEVykzv27z>oBrzKpv z&_q}gmb&4SqnWv}IDoGQ9&poVQMOhe`zgeRFtE6*b52!LDSp_wfRZ3V93}Af=9lia zAY0I%9S@WHvuxR}Zj^7>C_YSM=L6VMYz{<~Nwf6#z#lm;I@_Wt3eku*VbD^OawqeVpHq*>Nt? zFt;YoS;5+B4XVdPBTn}FSNJfSPeCmGJxu=z_;9h`Vz`%*%@;D~0-jY1%`45C&;5qz zfH?sYkI&IZHxiVp-;q8+jPqcldYOJ;0Mnzg6>JU4;iD1zQ(cQE6V#_LH35mpaX+PP zqd5fY=%A;|)GHlbem&^u(w>pZ{ao^~g{(H=xC1kHko78FzKc7`d@~~hsgpg#080M3 z`>hRMhwYxQ{ZaSfjdlb@VYD5AF-0I*Ep_k{u~0`;B43V%xAuD+7}TCfFO81Nu)+9u zyr{V=v8BO=N6B5Og7M$&0I!SSqf@bu-$hOgZHL^)t8WO~@1U!mn&tA^bcaQqPr>SV z3SVUV7&^7?Q&peR*>+fM&tn!#qgrzp49Vo)B~yQ|t?hXnFb=3CfWNlq$Nhjh0xYWS z0Y}J)5hB3s+MaMf;86mk)b?!e2ax!X27h%wAwVojX#haqL>?4Rl`1uN!9qXU3cXs; zYbhE=GZxGxIQ7v-(I=SHjx_Hh&5jJ5SRiY_)%$-0@ z)H#nJ^_hyZ50Kr?6(|Oh8>{iCXy*_=UX8?lmPcS$iWSzWd065y+EUHbrri+^5rTYS zUJBMeOqg)utKSm1V650!BP~FE_yt0&8YY$>>%f);eNp?yHhe+&9@p&ugjT46y6Xw4 zQmh)J7ElNEqZZS0BeY!%v`UjI2%~HP`f*n;rV`o>Md`;4UFm7myT)eL#d{PJZ0!7^ z&pfY5ML0SQm}8fE(}=;m4YO!khao*o&(r*yoGL*siPn1Wg*0zRT8A=kJv?HOxf^;? zcJM1)kp!}-XnY7fiaD?sV+d1v&+f9r3_#iuXx-wL3;JfX8P|_vHO5E8fh5FPg!ZTQ z73TkZam?$_Acr>YhKr#;559xeX^F2N#=8NXM$kV2T3^_1kP!FC=ED^PtpdQ!C{8?K z1I!-51P>B=mK?09%|3QNW-3rYJP2viR06C7Ks{|lm)UIF>41%s66oP2PD*|@kJ5y5 zQX#a=4eMUS9)}F;UVsO_amfF5A{xAp$9qLGDhT%vc=bbf2M+|;@z7s6jVctgZp@y8 z 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
tsmGpsS@20ithz+1hTEU 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%0A!A90DIwV0Mdnr-!X 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 v;(RWQt)xZM&ELEH@ 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%0DSN7=REX4fBkJE=-3ZG#1sb>cUl0EG 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 z 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

2F+3e;Oo&BKJu|@^x^;_eUyAfpLcwO*% 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�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�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

*DL`DE1Sl<6oVDqiZ)$ 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 RC(t>8&Ixo*;QyHu_&;3F`xyWL literal 0 HcmV?d00001 diff --git a/libs/windows/libEGL.lib b/libs/windows/libEGL.lib new file mode 100644 index 0000000000000000000000000000000000000000..effaf591c5166b5918eedc73fe7ac16b7e22766f GIT binary patch literal 12858 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 literal 0 HcmV?d00001 diff --git a/libs/windows/libGLESv2.dll b/libs/windows/libGLESv2.dll new file mode 100644 index 0000000000000000000000000000000000000000..b0d8deed62ec147c61ced3d79356bfe90ada3cba GIT binary patch literal 2781184 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

Hzx_L`CXl;KrYS|z61JqAh+jWwO@^E_k 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
IbO9rJpf?7Y6G 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

}ri=|#8g(e1`QeCT~ID7*i$_er3|7K&| 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

HXN2sTg$_B#C3lF7?{KR@x5VF()s(#rw861X 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

-fgH4P{W-8yO;E-3^3bi_DPsYWI8#1f5yf3Q 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 literal 0 HcmV?d00001 diff --git a/platform_build/build-definitions.xml b/platform_build/build-definitions.xml index a8c41e6b..d0c337a2 100644 --- a/platform_build/build-definitions.xml +++ b/platform_build/build-definitions.xml @@ -16,6 +16,7 @@ + @@ -27,13 +28,25 @@ + - + + + + + + + + + + + + @@ -46,6 +59,7 @@ + @@ -59,6 +73,14 @@ + + + + + + + + @@ -68,7 +90,7 @@ - + @@ -116,7 +138,7 @@ - + diff --git a/platform_build/build-generator.xml b/platform_build/build-generator.xml index 44a6992e..0631a517 100644 --- a/platform_build/build-generator.xml +++ b/platform_build/build-generator.xml @@ -18,6 +18,7 @@ + @@ -29,6 +30,8 @@ + + @@ -45,10 +48,16 @@ - + + + @@ -60,7 +69,7 @@ - + @@ -77,13 +86,19 @@ - + + + @@ -95,7 +110,7 @@ - + @@ -103,7 +118,7 @@ - + @@ -113,7 +128,7 @@ - + @@ -151,7 +166,7 @@ - + @@ -166,7 +181,87 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -177,7 +272,7 @@ - + @@ -185,7 +280,7 @@ - + @@ -195,7 +290,7 @@ - + @@ -219,7 +314,7 @@ - + diff --git a/platform_build/linux_ant/build.xml b/platform_build/linux_ant/build.xml index 0058f056..3ca1ab77 100644 --- a/platform_build/linux_ant/build.xml +++ b/platform_build/linux_ant/build.xml @@ -73,12 +73,16 @@ + + - - - - + + + + + + @@ -99,12 +103,16 @@ + + - - - - + + + + + + diff --git a/platform_build/linux_ant/build_es.xml b/platform_build/linux_ant/build_es.xml new file mode 100644 index 00000000..deed8359 --- /dev/null +++ b/platform_build/linux_ant/build_es.xml @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/platform_build/windows_ant/build.xml b/platform_build/windows_ant/build.xml index 83a8f10f..cdec41d5 100644 --- a/platform_build/windows_ant/build.xml +++ b/platform_build/windows_ant/build.xml @@ -12,11 +12,15 @@ + + - - + + + + @@ -43,7 +47,7 @@ - + diff --git a/platform_build/windows_ant/build_es.xml b/platform_build/windows_ant/build_es.xml new file mode 100644 index 00000000..e2b4cef9 --- /dev/null +++ b/platform_build/windows_ant/build_es.xml @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/java/org/lwjgl/opengl/AWTGLCanvas.java b/src/java/org/lwjgl/opengl/AWTGLCanvas.java index 2a694881..62469aea 100644 --- a/src/java/org/lwjgl/opengl/AWTGLCanvas.java +++ b/src/java/org/lwjgl/opengl/AWTGLCanvas.java @@ -42,6 +42,8 @@ import java.awt.event.ComponentListener; import java.awt.event.HierarchyEvent; import java.awt.event.HierarchyListener; +import static org.lwjgl.opengl.GL11.*; + /** *

* An AWT rendering context. @@ -56,7 +58,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe private static final long serialVersionUID = 1L; private static final AWTCanvasImplementation implementation; - private boolean update_context; + private boolean update_context; private Object SYNC_LOCK = new Object(); /** The requested pixel format */ @@ -69,8 +71,8 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe private final ContextAttribs attribs; /** Context handle */ - private PeerInfo peer_info; - private Context context; + private PeerInfo peer_info; + private ContextGL context; /** * re-entry counter for support for re-entrant @@ -105,20 +107,39 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe } } + public void setPixelFormat(final PixelFormatLWJGL pf) throws LWJGLException { + throw new UnsupportedOperationException(); + } + + public PixelFormatLWJGL getPixelFormat() { + return pixel_format; + } + /** This method should only be called internally. */ - public Context getContext() { + public ContextGL getContext() { return context; } /** This method should only be called internally. */ - public Context createSharedContext() throws LWJGLException { + public ContextGL createSharedContext() throws LWJGLException { synchronized ( SYNC_LOCK ) { if ( context == null ) throw new IllegalStateException("Canvas not yet displayable"); - return new Context(peer_info, context.getContextAttribs(), context); + return new ContextGL(peer_info, context.getContextAttribs(), context); } } + public void checkGLError() { + Util.checkGLError(); + } + + public void initContext(final float r, final float g, final float b) { + // set background clear color + glClearColor(r, g, b, 0.0f); + // Clear window to avoid the desktop "showing through" + glClear(GL_COLOR_BUFFER_BIT); + } + /** Constructor using the default PixelFormat. */ public AWTGLCanvas() throws LWJGLException { this(new PixelFormat()); @@ -195,7 +216,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe synchronized ( SYNC_LOCK ) { if ( context == null ) throw new IllegalStateException("Canvas not yet displayable"); - Context.setSwapInterval(swap_interval); + ContextGL.setSwapInterval(swap_interval); } } @@ -209,7 +230,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe synchronized ( SYNC_LOCK ) { if ( context == null ) throw new IllegalStateException("Canvas not yet displayable"); - Context.swapBuffers(); + ContextGL.swapBuffers(); } } @@ -238,7 +259,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe if ( context == null ) throw new IllegalStateException("Canvas not yet displayable"); if ( context.isCurrent() ) - Context.releaseCurrentContext(); + context.releaseCurrent(); } } @@ -295,7 +316,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe peer_info.lockAndGetHandle(); try { if ( context == null ) { - this.context = new Context(peer_info, attribs, drawable != null ? ((DrawableLWJGL)drawable).getContext() : null); + this.context = new ContextGL(peer_info, attribs, drawable != null ? (ContextGL)((DrawableLWJGL)drawable).getContext() : null); first_run = true; } @@ -315,7 +336,7 @@ public class AWTGLCanvas extends Canvas implements DrawableLWJGL, ComponentListe } finally { reentry_count--; if ( reentry_count == 0 ) - Context.releaseCurrentContext(); + context.releaseCurrent(); } } finally { peer_info.unlock(); diff --git a/src/java/org/lwjgl/opengl/CallbackUtil.java b/src/java/org/lwjgl/opengl/CallbackUtil.java index 0c938e75..20f0b14a 100644 --- a/src/java/org/lwjgl/opengl/CallbackUtil.java +++ b/src/java/org/lwjgl/opengl/CallbackUtil.java @@ -42,9 +42,9 @@ import java.util.Map; final class CallbackUtil { /** Context -> Long */ - private static final Map contextUserParamsARB = new HashMap(); + private static final Map contextUserParamsARB = new HashMap(); /** Context -> Long */ - private static final Map contextUserParamsAMD = new HashMap(); + private static final Map contextUserParamsAMD = new HashMap(); private CallbackUtil() {} @@ -84,8 +84,8 @@ final class CallbackUtil { * * @param userParam the global reference pointer */ - private static void registerContextCallback(final long userParam, final Map contextUserData) { - Context context = Context.getCurrentContext(); + private static void registerContextCallback(final long userParam, final Map contextUserData) { + ContextGL context = ContextGL.getCurrentContext(); if ( context == null ) { deleteGlobalRef(userParam); throw new IllegalStateException("No context is current."); @@ -104,7 +104,7 @@ final class CallbackUtil { * * @param context the Context to unregister */ - static void unregisterCallbacks(final Context context) { + static void unregisterCallbacks(final ContextGL context) { Long userParam = contextUserParamsARB.remove(context); if ( userParam != null ) deleteGlobalRef(userParam); diff --git a/src/java/org/lwjgl/opengl/Context.java b/src/java/org/lwjgl/opengl/ContextGL.java similarity index 94% rename from src/java/org/lwjgl/opengl/Context.java rename to src/java/org/lwjgl/opengl/ContextGL.java index d0147cae..41e73566 100644 --- a/src/java/org/lwjgl/opengl/Context.java +++ b/src/java/org/lwjgl/opengl/ContextGL.java @@ -53,13 +53,13 @@ import static org.lwjgl.opengl.GL11.*; * @version $Revision$ * $Id$ */ -final class Context { +final class ContextGL implements Context { /** The platform specific implementation of context methods */ private static final ContextImplementation implementation; /** The current Context */ - private static final ThreadLocal current_context_local = new ThreadLocal(); + private static final ThreadLocal current_context_local = new ThreadLocal(); /** Handle to the native GL rendering context */ private final ByteBuffer handle; @@ -102,13 +102,13 @@ final class Context { return contextAttribs; } - static Context getCurrentContext() { + static ContextGL getCurrentContext() { return current_context_local.get(); } /** Create a context with the specified peer info and shared context */ - Context(PeerInfo peer_info, ContextAttribs attribs, Context shared_context) throws LWJGLException { - Context context_lock = shared_context != null ? shared_context : this; + ContextGL(PeerInfo peer_info, ContextAttribs attribs, ContextGL shared_context) throws LWJGLException { + ContextGL context_lock = shared_context != null ? shared_context : this; // If shared_context is not null, synchronize on it to make sure it is not deleted // while this context is created. Otherwise, simply synchronize on ourself to avoid NPE synchronized ( context_lock ) { @@ -137,8 +137,8 @@ final class Context { } /** Release the current context (if any). After this call, no context is current. */ - public static void releaseCurrentContext() throws LWJGLException { - Context current_context = getCurrentContext(); + public void releaseCurrent() throws LWJGLException { + ContextGL current_context = getCurrentContext(); if ( current_context != null ) { implementation.releaseCurrentContext(); GLContext.useContext(null); @@ -254,7 +254,7 @@ final class Context { if ( was_current ) { if ( GLContext.getCapabilities() != null && GLContext.getCapabilities().OpenGL11 ) error = glGetError(); - releaseCurrentContext(); + releaseCurrent(); } checkDestroy(); if ( was_current && error != GL_NO_ERROR ) diff --git a/src/java/org/lwjgl/opengl/ContextGLES.java b/src/java/org/lwjgl/opengl/ContextGLES.java new file mode 100644 index 00000000..ed1cb20b --- /dev/null +++ b/src/java/org/lwjgl/opengl/ContextGLES.java @@ -0,0 +1,224 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengl; + +import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.Sys; +import org.lwjgl.opengles.EGLContext; +import org.lwjgl.opengles.GLContext; +import org.lwjgl.opengles.GLES20; +import org.lwjgl.opengles.PowerManagementEventException; + +import static org.lwjgl.opengles.EGL.*; + +/** + *

+ * Context encapsulates an OpenGL ES context. + *

+ *

+ * This class is thread-safe. + * + * @author elias_naur + * @version $Revision: 3332 $ + * $Id: Context.java 3332 2010-04-20 18:21:05Z spasi $ + */ +final class ContextGLES implements org.lwjgl.opengl.Context { + + /** The current Context */ + private static final ThreadLocal current_context_local = new ThreadLocal(); + + /** Handle to the native GL rendering context */ + private final DrawableGLES drawable; + private final EGLContext eglContext; + + private final org.lwjgl.opengles.ContextAttribs contextAttribs; + + /** Whether the context has been destroyed */ + private boolean destroyed; + + private boolean destroy_requested; + + /** The thread that has this context current, or null. */ + private Thread thread; + + static { + Sys.initialize(); + } + + public EGLContext getEGLContext() { + return eglContext; + } + + org.lwjgl.opengles.ContextAttribs getContextAttribs() { + return contextAttribs; + } + + static ContextGLES getCurrentContext() { + return current_context_local.get(); + } + + /** Create a context with the specified peer info and shared context */ + ContextGLES(DrawableGLES drawable, org.lwjgl.opengles.ContextAttribs attribs, ContextGLES shared_context) throws LWJGLException { + if ( drawable == null ) + throw new IllegalArgumentException(); + + ContextGLES context_lock = shared_context != null ? shared_context : this; + // If shared_context is not null, synchronize on it to make sure it is not deleted + // while this context is created. Otherwise, simply synchronize on ourself to avoid NPE + synchronized ( context_lock ) { + if ( shared_context != null && shared_context.destroyed ) + throw new IllegalArgumentException("Shared context is destroyed"); + + this.drawable = drawable; + this.contextAttribs = attribs; + this.eglContext = drawable.getEGLDisplay().createContext(drawable.getEGLConfig(), + shared_context == null ? null : shared_context.eglContext, + attribs == null ? new org.lwjgl.opengles.ContextAttribs(2).getAttribList() : attribs.getAttribList()); + } + } + + /** Release the current context (if any). After this call, no context is current. */ + public void releaseCurrent() throws LWJGLException, PowerManagementEventException { + eglReleaseCurrent(drawable.getEGLDisplay()); + org.lwjgl.opengles.GLContext.useContext(null); + current_context_local.set(null); + + synchronized ( this ) { + thread = null; + checkDestroy(); + } + } + + /** Swap the buffers on the current context. Only valid for double-buffered contexts */ + public static void swapBuffers() throws LWJGLException, PowerManagementEventException { + ContextGLES current_context = getCurrentContext(); + if ( current_context != null ) + current_context.drawable.getEGLSurface().swapBuffers(); + } + + private boolean canAccess() { + return thread == null || Thread.currentThread() == thread; + } + + private void checkAccess() { + if ( !canAccess() ) + throw new IllegalStateException("From thread " + Thread.currentThread() + ": " + thread + " already has the context current"); + } + + /** Make the context current */ + public synchronized void makeCurrent() throws LWJGLException, PowerManagementEventException { + checkAccess(); + if ( destroyed ) + throw new IllegalStateException("Context is destroyed"); + thread = Thread.currentThread(); + current_context_local.set(this); + eglContext.makeCurrent(drawable.getEGLSurface()); + org.lwjgl.opengles.GLContext.useContext(this); + } + + /** Query whether the context is current */ + public synchronized boolean isCurrent() throws LWJGLException { + if ( destroyed ) + throw new IllegalStateException("Context is destroyed"); + return eglIsCurrentContext(eglContext); + } + + private void checkDestroy() { + if ( !destroyed && destroy_requested ) { + try { + eglContext.destroy(); + destroyed = true; + thread = null; + } catch (LWJGLException e) { + LWJGLUtil.log("Exception occurred while destroying context: " + e); + } + } + } + + /** + * Set the buffer swap interval. This call is a best-attempt at changing + * the monitor swap interval, which is the minimum periodicity of color buffer swaps, + * measured in video frame periods, and is not guaranteed to be successful. + *

+ * A video frame period is the time required to display a full frame of video data. + */ + public static void setSwapInterval(int value) { + ContextGLES current_context = getCurrentContext(); + if ( current_context != null ) { + try { + current_context.drawable.getEGLDisplay().setSwapInterval(value); + } catch (LWJGLException e) { + LWJGLUtil.log("Failed to set swap interval. Reason: " + e.getMessage()); + } + } + } + + /** + * Destroy the context. This method behaves the same as destroy() with the extra + * requirement that the context must be either current to the current thread or not + * current at all. + */ + public synchronized void forceDestroy() throws LWJGLException { + checkAccess(); + destroy(); + } + + /** + * Request destruction of the Context. If the context is current, no context will be current after this call. + * The context is destroyed when no thread has it current. + */ + public synchronized void destroy() throws LWJGLException { + if ( destroyed ) + return; + destroy_requested = true; + boolean was_current = isCurrent(); + int error = GLES20.GL_NO_ERROR; + if ( was_current ) { + if ( org.lwjgl.opengles.GLContext.getCapabilities() != null && GLContext.getCapabilities().OpenGLES20 ) + error = GLES20.glGetError(); + + try { + releaseCurrent(); + } catch (PowerManagementEventException e) { + // Ignore + } + } + checkDestroy(); + if ( was_current && error != GLES20.GL_NO_ERROR ) + throw new OpenGLException(error); + } + + public void releaseDrawable() throws LWJGLException { + } + +} diff --git a/src/java/org/lwjgl/opengl/Display.java b/src/java/org/lwjgl/opengl/Display.java index 8ec43a84..0bf06ad2 100644 --- a/src/java/org/lwjgl/opengl/Display.java +++ b/src/java/org/lwjgl/opengl/Display.java @@ -43,10 +43,7 @@ package org.lwjgl.opengl; * @author foo */ -import org.lwjgl.BufferUtils; -import org.lwjgl.LWJGLException; -import org.lwjgl.LWJGLUtil; -import org.lwjgl.Sys; +import org.lwjgl.*; import org.lwjgl.input.Controllers; import org.lwjgl.input.Keyboard; import org.lwjgl.input.Mouse; @@ -62,8 +59,6 @@ import java.security.PrivilegedAction; import java.util.Arrays; import java.util.HashSet; -import static org.lwjgl.opengl.GL11.*; - public final class Display { private static final Thread shutdown_hook = new Thread() { @@ -109,7 +104,7 @@ public final class Display { private static int swap_interval; /** The Drawable instance that tracks the current Display context */ - private static final AbstractDrawable drawable; + private static DrawableLWJGL drawable; private static boolean window_created; @@ -134,22 +129,6 @@ public final class Display { LWJGLUtil.log("Initial mode: " + initial_mode); } catch (LWJGLException e) { throw new RuntimeException(e); - } - drawable = new AbstractDrawable() { - public void destroy() { - synchronized ( GlobalLock.lock ) { - if ( !isCreated() ) - return; - - releaseDrawable(); - super.destroy(); - destroyWindow(); - x = y = -1; - cached_icons = null; - reset(); - removeShutdownHook(); - } - } }; } @@ -314,7 +293,7 @@ public final class Display { tmp_parent.addComponentListener(component_listener); } DisplayMode mode = getEffectiveMode(); - display_impl.createWindow(mode, tmp_parent, getWindowX(), getWindowY()); + display_impl.createWindow(drawable, mode, tmp_parent, getWindowX(), getWindowY()); window_created = true; setTitle(title); @@ -330,9 +309,9 @@ public final class Display { private static void releaseDrawable() { try { - Context context = drawable.context; + Context context = drawable.getContext(); if ( context != null && context.isCurrent() ) { - Context.releaseCurrentContext(); + context.releaseCurrent(); context.releaseDrawable(); } } catch (LWJGLException e) { @@ -648,8 +627,8 @@ public final class Display { throw new IllegalStateException("Display not created"); if ( LWJGLUtil.DEBUG ) - Util.checkGLError(); - Context.swapBuffers(); + drawable.checkGLError(); + drawable.swapBuffers(); } } @@ -851,12 +830,180 @@ public final class Display { registerShutdownHook(); if ( isFullscreen() ) switchDisplayMode(); + + final DrawableGL drawable = new DrawableGL() { + public void destroy() { + synchronized ( GlobalLock.lock ) { + if ( !isCreated() ) + return; + + releaseDrawable(); + super.destroy(); + destroyWindow(); + x = y = -1; + cached_icons = null; + reset(); + removeShutdownHook(); + } + } + }; + Display.drawable = drawable; + try { - drawable.peer_info = display_impl.createPeerInfo(pixel_format); + drawable.setPixelFormat(pixel_format); try { createWindow(); try { - drawable.context = new Context(drawable.peer_info, attribs, shared_drawable != null ? ((AbstractDrawable)shared_drawable).getContext() : null); + drawable.context = new ContextGL(drawable.peer_info, attribs, shared_drawable != null ? ((DrawableGL)shared_drawable).getContext() : null); + try { + makeCurrentAndSetSwapInterval(); + initContext(); + } catch (LWJGLException e) { + drawable.destroy(); + throw e; + } + } catch (LWJGLException e) { + destroyWindow(); + throw e; + } + } catch (LWJGLException e) { + drawable.destroy(); + throw e; + } + } catch (LWJGLException e) { + display_impl.resetDisplayMode(); + throw e; + } + } + } + + /** + * Create the OpenGL ES context. If isFullscreen() is true or if windowed + * context are not supported on the platform, the display mode will be switched to the mode returned by + * getDisplayMode(), and a fullscreen context will be created. If isFullscreen() is false, a windowed context + * will be created with the dimensions given in the mode returned by getDisplayMode(). If a context can't be + * created with the given parameters, a LWJGLException will be thrown. + *

+ *

The window created will be set up in orthographic 2D projection, with 1:1 pixel ratio with GL coordinates. + * + * @throws LWJGLException + */ + public static void createES() throws LWJGLException { + synchronized ( GlobalLock.lock ) { + create(new org.lwjgl.opengles.PixelFormat()); + } + } + + /** + * Create the OpenGL ES context with the given minimum parameters. If isFullscreen() is true or if windowed + * context are not supported on the platform, the display mode will be switched to the mode returned by + * getDisplayMode(), and a fullscreen context will be created. If isFullscreen() is false, a windowed context + * will be created with the dimensions given in the mode returned by getDisplayMode(). If a context can't be + * created with the given parameters, a LWJGLException will be thrown. + *

+ *

The window created will be set up in orthographic 2D projection, with 1:1 pixel ratio with GL coordinates. + * + * @param pixel_format Describes the minimum specifications the context must fulfill. + * + * @throws LWJGLException + */ + + public static void create(org.lwjgl.opengles.PixelFormat pixel_format) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + create(pixel_format, null, null); + } + } + + /** + * Create the OpenGL context with the given minimum parameters. If isFullscreen() is true or if windowed + * context are not supported on the platform, the display mode will be switched to the mode returned by + * getDisplayMode(), and a fullscreen context will be created. If isFullscreen() is false, a windowed context + * will be created with the dimensions given in the mode returned by getDisplayMode(). If a context can't be + * created with the given parameters, a LWJGLException will be thrown. + *

+ *

The window created will be set up in orthographic 2D projection, with 1:1 pixel ratio with GL coordinates. + * + * @param pixel_format Describes the minimum specifications the context must fulfill. + * @param shared_drawable The Drawable to share context with. (optional, may be null) + * + * @throws LWJGLException + */ + public static void create(org.lwjgl.opengles.PixelFormat pixel_format, Drawable shared_drawable) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + create(pixel_format, shared_drawable, null); + } + } + + /** + * Create the OpenGL context with the given minimum parameters. If isFullscreen() is true or if windowed + * context are not supported on the platform, the display mode will be switched to the mode returned by + * getDisplayMode(), and a fullscreen context will be created. If isFullscreen() is false, a windowed context + * will be created with the dimensions given in the mode returned by getDisplayMode(). If a context can't be + * created with the given parameters, a LWJGLException will be thrown. + *

+ *

The window created will be set up in orthographic 2D projection, with 1:1 pixel ratio with GL coordinates. + * + * @param pixel_format Describes the minimum specifications the context must fulfill. + * @param attribs The ContextAttribs to use when creating the context. (optional, may be null) + * + * @throws LWJGLException + */ + public static void create(org.lwjgl.opengles.PixelFormat pixel_format, org.lwjgl.opengles.ContextAttribs attribs) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + create(pixel_format, null, attribs); + } + } + + /** + * Create the OpenGL ES context with the given minimum parameters. If isFullscreen() is true or if windowed + * context are not supported on the platform, the display mode will be switched to the mode returned by + * getDisplayMode(), and a fullscreen context will be created. If isFullscreen() is false, a windowed context + * will be created with the dimensions given in the mode returned by getDisplayMode(). If a context can't be + * created with the given parameters, a LWJGLException will be thrown. + *

+ *

The window created will be set up in orthographic 2D projection, with 1:1 pixel ratio with GL coordinates. + * + * @param pixel_format Describes the minimum specifications the context must fulfill. + * @param shared_drawable The Drawable to share context with. (optional, may be null) + * @param attribs The ContextAttribs to use when creating the context. (optional, may be null) + * + * @throws LWJGLException + */ + public static void create(org.lwjgl.opengles.PixelFormat pixel_format, Drawable shared_drawable, org.lwjgl.opengles.ContextAttribs attribs) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + if ( isCreated() ) + throw new IllegalStateException("Only one LWJGL context may be instantiated at any one time."); + if ( pixel_format == null ) + throw new NullPointerException("pixel_format cannot be null"); + removeShutdownHook(); + registerShutdownHook(); + if ( isFullscreen() ) + switchDisplayMode(); + + final DrawableGLES drawable = new DrawableGLES() { + public void destroy() { + synchronized ( GlobalLock.lock ) { + if ( !isCreated() ) + return; + + releaseDrawable(); + super.destroy(); + destroyWindow(); + x = y = -1; + cached_icons = null; + reset(); + removeShutdownHook(); + } + } + }; + Display.drawable = drawable; + + try { + drawable.setPixelFormat(pixel_format); + try { + createWindow(); + try { + drawable.createContext(attribs, shared_drawable); try { makeCurrentAndSetSwapInterval(); initContext(); @@ -896,7 +1043,7 @@ public final class Display { private static void makeCurrentAndSetSwapInterval() throws LWJGLException { makeCurrent(); try { - Util.checkGLError(); + drawable.checkGLError(); } catch (OpenGLException e) { LWJGLUtil.log("OpenGL error during context creation: " + e.getMessage()); } @@ -904,10 +1051,7 @@ public final class Display { } private static void initContext() { - // set background clear color - glClearColor(r, g, b, 0.0f); - // Clear window to avoid the desktop "showing through" - glClear(GL_COLOR_BUFFER_BIT); + drawable.initContext(r, g, b); update(); } @@ -990,7 +1134,8 @@ public final class Display { synchronized ( GlobalLock.lock ) { swap_interval = value; if ( isCreated() ) - Context.setSwapInterval(swap_interval); + drawable.setSwapInterval(swap_interval); + } } diff --git a/src/java/org/lwjgl/opengl/DisplayImplementation.java b/src/java/org/lwjgl/opengl/DisplayImplementation.java index fb5505ee..031527f1 100644 --- a/src/java/org/lwjgl/opengl/DisplayImplementation.java +++ b/src/java/org/lwjgl/opengl/DisplayImplementation.java @@ -47,7 +47,7 @@ import org.lwjgl.LWJGLException; interface DisplayImplementation extends InputImplementation { - void createWindow(DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException; + void createWindow(DrawableLWJGL drawable, DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException; void destroyWindow(); diff --git a/src/java/org/lwjgl/opengl/AbstractDrawable.java b/src/java/org/lwjgl/opengl/DrawableGL.java similarity index 56% rename from src/java/org/lwjgl/opengl/AbstractDrawable.java rename to src/java/org/lwjgl/opengl/DrawableGL.java index 88235973..6725dea4 100644 --- a/src/java/org/lwjgl/opengl/AbstractDrawable.java +++ b/src/java/org/lwjgl/opengl/DrawableGL.java @@ -4,33 +4,64 @@ import org.lwjgl.LWJGLException; import org.lwjgl.LWJGLUtil; import org.lwjgl.PointerBuffer; -/** - * @author Spasi - */ -abstract class AbstractDrawable implements DrawableLWJGL { +import static org.lwjgl.opengl.GL11.*; + +/** @author Spasi */ +abstract class DrawableGL implements DrawableLWJGL { + + /** The PixelFormat used to create the drawable. */ + protected PixelFormat pixel_format; /** Handle to the native GL rendering context */ protected PeerInfo peer_info; /** The OpenGL Context. */ - protected Context context; + protected ContextGL context; - protected AbstractDrawable() { + protected DrawableGL() { } - public Context getContext() { + public void setPixelFormat(final PixelFormatLWJGL pf) throws LWJGLException { + this.pixel_format = (PixelFormat)pf; + this.peer_info = Display.getImplementation().createPeerInfo(pixel_format); + } + + public PixelFormatLWJGL getPixelFormat() { + return pixel_format; + } + + public ContextGL getContext() { synchronized ( GlobalLock.lock ) { return context; } } - public Context createSharedContext() throws LWJGLException { + public ContextGL createSharedContext() throws LWJGLException { synchronized ( GlobalLock.lock ) { checkDestroyed(); - return new Context(peer_info, context.getContextAttribs(), context); + return new ContextGL(peer_info, context.getContextAttribs(), context); } } + public void checkGLError() { + Util.checkGLError(); + } + + public void setSwapInterval(final int swap_interval) { + ContextGL.setSwapInterval(swap_interval); + } + + public void swapBuffers() throws LWJGLException { + ContextGL.swapBuffers(); + } + + public void initContext(final float r, final float g, final float b) { + // set background clear color + glClearColor(r, g, b, 0.0f); + // Clear window to avoid the desktop "showing through" + glClear(GL_COLOR_BUFFER_BIT); + } + public boolean isCurrent() throws LWJGLException { synchronized ( GlobalLock.lock ) { checkDestroyed(); @@ -49,7 +80,7 @@ abstract class AbstractDrawable implements DrawableLWJGL { synchronized ( GlobalLock.lock ) { checkDestroyed(); if ( context.isCurrent() ) - Context.releaseCurrentContext(); + context.releaseCurrent(); } } diff --git a/src/java/org/lwjgl/opengl/DrawableGLES.java b/src/java/org/lwjgl/opengl/DrawableGLES.java new file mode 100644 index 00000000..ea4852a6 --- /dev/null +++ b/src/java/org/lwjgl/opengl/DrawableGLES.java @@ -0,0 +1,211 @@ +package org.lwjgl.opengl; + +import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.PointerBuffer; +import org.lwjgl.opengles.ContextAttribs; +import org.lwjgl.opengles.*; +import org.lwjgl.opengles.Util; + +import static org.lwjgl.opengles.EGL.*; +import static org.lwjgl.opengles.GLES20.*; + +/** + * @author Spasi + * @since 14/5/2011 + */ +abstract class DrawableGLES implements DrawableLWJGL { + + /** The PixelFormat used to create the EGLDisplay. */ + protected org.lwjgl.opengles.PixelFormat pixel_format; + + protected EGLDisplay eglDisplay; + protected EGLConfig eglConfig; + protected EGLSurface eglSurface; + + /** The OpenGL Context. */ + protected ContextGLES context; + + /** The Drawable that shares objects with this Drawable. */ + protected Drawable shared_drawable; + + protected DrawableGLES() { + } + + public void setPixelFormat(final PixelFormatLWJGL pf) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + this.pixel_format = (org.lwjgl.opengles.PixelFormat)pf; + } + } + + public PixelFormatLWJGL getPixelFormat() { + synchronized ( GlobalLock.lock ) { + return pixel_format; + } + } + + public void initialize(final long window, final long display_id, final int eglSurfaceType, final org.lwjgl.opengles.PixelFormat pf) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + if ( eglSurface != null ) { + eglSurface.destroy(); + eglSurface = null; + } + + if ( eglDisplay != null ) { + eglDisplay.terminate(); + eglDisplay = null; + } + + final EGLDisplay eglDisplay = eglGetDisplay((int)display_id); + + int[] attribs = { + EGL_LEVEL, 0, + EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, + EGL_NATIVE_RENDERABLE, EGL_FALSE, + }; + + final EGLConfig[] configs = eglDisplay.chooseConfig(pf.getAttribBuffer(eglDisplay, eglSurfaceType, attribs), null, APIUtil.getBufferInt()); + if ( configs.length == 0 ) + throw new LWJGLException("No EGLConfigs found for the specified PixelFormat."); + + final EGLConfig eglConfig = pf.getBestMatch(configs); + final EGLSurface eglSurface = eglDisplay.createWindowSurface(eglConfig, (int)window, null); + pf.setSurfaceAttribs(eglSurface); + + this.eglDisplay = eglDisplay; + this.eglConfig = eglConfig; + this.eglSurface = eglSurface; + + // This can happen when switching in and out of full-screen mode. + if ( context != null ) + context.getEGLContext().setDisplay(eglDisplay); + } + } + + public void createContext(final ContextAttribs attribs, final Drawable shared_drawable) throws LWJGLException { + synchronized ( GlobalLock.lock ) { + this.context = new ContextGLES(this, attribs, shared_drawable != null ? ((DrawableGLES)shared_drawable).getContext() : null); + this.shared_drawable = shared_drawable; + } + } + + Drawable getSharedDrawable() { + synchronized ( GlobalLock.lock ) { + return shared_drawable; + } + } + + public EGLDisplay getEGLDisplay() { + synchronized ( GlobalLock.lock ) { + return eglDisplay; + } + } + + public EGLConfig getEGLConfig() { + synchronized ( GlobalLock.lock ) { + return eglConfig; + } + } + + public EGLSurface getEGLSurface() { + synchronized ( GlobalLock.lock ) { + return eglSurface; + } + } + + public ContextGLES getContext() { + synchronized ( GlobalLock.lock ) { + return context; + } + } + + public org.lwjgl.opengl.Context createSharedContext() throws LWJGLException { + synchronized ( GlobalLock.lock ) { + checkDestroyed(); + return new ContextGLES(this, context.getContextAttribs(), context); + } + } + + public void checkGLError() { + Util.checkGLError(); + } + + public void setSwapInterval(final int swap_interval) { + ContextGLES.setSwapInterval(swap_interval); + } + + public void swapBuffers() throws LWJGLException { + ContextGLES.swapBuffers(); + } + + public void initContext(final float r, final float g, final float b) { + // set background clear color + glClearColor(r, g, b, 0.0f); + // Clear window to avoid the desktop "showing through" + glClear(GL_COLOR_BUFFER_BIT); + } + + public boolean isCurrent() throws LWJGLException { + synchronized ( GlobalLock.lock ) { + checkDestroyed(); + return context.isCurrent(); + } + } + + public void makeCurrent() throws LWJGLException, PowerManagementEventException { + synchronized ( GlobalLock.lock ) { + checkDestroyed(); + context.makeCurrent(); + } + } + + public void releaseContext() throws LWJGLException, PowerManagementEventException { + synchronized ( GlobalLock.lock ) { + checkDestroyed(); + if ( context.isCurrent() ) + context.releaseCurrent(); + } + } + + public void destroy() { + synchronized ( GlobalLock.lock ) { + try { + if ( context != null ) { + try { + releaseContext(); + } catch (PowerManagementEventException e) { + // Ignore + } + + context.forceDestroy(); + context = null; + } + + if ( eglSurface != null ) { + eglSurface.destroy(); + eglSurface = null; + } + + if ( eglDisplay != null ) { + eglDisplay.terminate(); + eglDisplay = null; + } + + pixel_format = null; + shared_drawable = null; + } catch (LWJGLException e) { + LWJGLUtil.log("Exception occurred while destroying Drawable: " + e); + } + } + } + + protected void checkDestroyed() { + if ( context == null ) + throw new IllegalStateException("The Drawable has no context available."); + } + + public void setCLSharingProperties(final PointerBuffer properties) throws LWJGLException { + throw new UnsupportedOperationException(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengl/DrawableLWJGL.java b/src/java/org/lwjgl/opengl/DrawableLWJGL.java index b79c806f..ebd85152 100644 --- a/src/java/org/lwjgl/opengl/DrawableLWJGL.java +++ b/src/java/org/lwjgl/opengl/DrawableLWJGL.java @@ -3,10 +3,16 @@ package org.lwjgl.opengl; import org.lwjgl.LWJGLException; /** + * [INTERNAL USE ONLY] + * * @author Spasi */ interface DrawableLWJGL extends Drawable { + void setPixelFormat(PixelFormatLWJGL pf) throws LWJGLException; + + PixelFormatLWJGL getPixelFormat(); + /** * [INTERNAL USE ONLY] Returns the Drawable's Context. * @@ -21,4 +27,12 @@ interface DrawableLWJGL extends Drawable { */ Context createSharedContext() throws LWJGLException; -} + void checkGLError(); + + void setSwapInterval(int swap_interval); + + void swapBuffers() throws LWJGLException; + + void initContext(final float r, final float g, final float b); + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengl/LinuxContextImplementation.java b/src/java/org/lwjgl/opengl/LinuxContextImplementation.java index f64c9723..6cd3e0d3 100644 --- a/src/java/org/lwjgl/opengl/LinuxContextImplementation.java +++ b/src/java/org/lwjgl/opengl/LinuxContextImplementation.java @@ -67,7 +67,7 @@ final class LinuxContextImplementation implements ContextImplementation { } public void swapBuffers() throws LWJGLException { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); if ( current_context == null ) throw new IllegalStateException("No context is current"); synchronized ( current_context ) { @@ -89,7 +89,7 @@ final class LinuxContextImplementation implements ContextImplementation { private static native void nSwapBuffers(ByteBuffer peer_info_handle) throws LWJGLException; public void releaseCurrentContext() throws LWJGLException { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); if ( current_context == null ) throw new IllegalStateException("No context is current"); synchronized ( current_context ) { @@ -142,7 +142,7 @@ final class LinuxContextImplementation implements ContextImplementation { private static native boolean nIsCurrent(ByteBuffer context_handle) throws LWJGLException; public void setSwapInterval(int value) { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); if ( current_context == null ) throw new IllegalStateException("No context is current"); synchronized ( current_context ) { diff --git a/src/java/org/lwjgl/opengl/LinuxDisplay.java b/src/java/org/lwjgl/opengl/LinuxDisplay.java index 2795538b..534e2b35 100644 --- a/src/java/org/lwjgl/opengl/LinuxDisplay.java +++ b/src/java/org/lwjgl/opengl/LinuxDisplay.java @@ -50,6 +50,7 @@ import org.lwjgl.BufferUtils; import org.lwjgl.LWJGLException; import org.lwjgl.LWJGLUtil; import org.lwjgl.opengl.XRandR.Screen; +import org.lwjgl.opengles.EGL; import java.security.AccessController; import java.security.PrivilegedAction; @@ -137,7 +138,7 @@ final class LinuxDisplay implements DisplayImplementation { private boolean xembedded; private boolean parent_focus; private boolean mouseInside = true; - + private LinuxKeyboard keyboard; private LinuxMouse mouse; @@ -259,7 +260,12 @@ final class LinuxDisplay implements DisplayImplementation { */ static void incDisplay() throws LWJGLException { if (display_connection_usage_count == 0) { - GLContext.loadOpenGLLibrary(); + try { + // TODO: Can we know if we're on desktop or ES? + GLContext.loadOpenGLLibrary(); + org.lwjgl.opengles.GLContext.loadOpenGLLibrary(); + } catch (Throwable t) { + } saved_error_handler = setErrorHandler(); display = openDisplay(); // synchronize(display, true); @@ -408,11 +414,14 @@ final class LinuxDisplay implements DisplayImplementation { ungrabKeyboard(); } - public void createWindow(DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { + public void createWindow(final DrawableLWJGL drawable, DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { lockAWT(); try { incDisplay(); try { + if ( drawable instanceof DrawableGLES ) + peer_info = new LinuxDisplayPeerInfo(); + ByteBuffer handle = peer_info.lockAndGetHandle(); try { current_window_mode = getWindowMode(Display.isFullscreen()); @@ -440,6 +449,9 @@ final class LinuxDisplay implements DisplayImplementation { grab = false; minimized = false; dirty = true; + + if ( drawable instanceof DrawableGLES ) + ((DrawableGLES)drawable).initialize(current_window, getDisplay(), EGL.EGL_WINDOW_BIT, (org.lwjgl.opengles.PixelFormat)drawable.getPixelFormat()); } finally { peer_info.unlock(); } @@ -1446,4 +1458,4 @@ final class LinuxDisplay implements DisplayImplementation { } } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/LinuxDisplayPeerInfo.java b/src/java/org/lwjgl/opengl/LinuxDisplayPeerInfo.java index 3dbfd2ed..76af84a4 100644 --- a/src/java/org/lwjgl/opengl/LinuxDisplayPeerInfo.java +++ b/src/java/org/lwjgl/opengl/LinuxDisplayPeerInfo.java @@ -42,7 +42,16 @@ import org.lwjgl.LWJGLException; * $Id$ */ final class LinuxDisplayPeerInfo extends LinuxPeerInfo { + + final boolean egl; + + LinuxDisplayPeerInfo() throws LWJGLException { + egl = true; + org.lwjgl.opengles.GLContext.loadOpenGLLibrary(); + } + LinuxDisplayPeerInfo(PixelFormat pixel_format) throws LWJGLException { + egl = false; LinuxDisplay.lockAWT(); try { GLContext.loadOpenGLLibrary(); @@ -80,9 +89,14 @@ final class LinuxDisplayPeerInfo extends LinuxPeerInfo { public void destroy() { super.destroy(); - LinuxDisplay.lockAWT(); - LinuxDisplay.decDisplay(); - GLContext.unloadOpenGLLibrary(); - LinuxDisplay.unlockAWT(); + + if ( egl ) + org.lwjgl.opengles.GLContext.unloadOpenGLLibrary(); + else { + LinuxDisplay.lockAWT(); + LinuxDisplay.decDisplay(); + GLContext.unloadOpenGLLibrary(); + LinuxDisplay.unlockAWT(); + } } } diff --git a/src/java/org/lwjgl/opengl/MacOSXContextImplementation.java b/src/java/org/lwjgl/opengl/MacOSXContextImplementation.java index 69317b68..9386266f 100644 --- a/src/java/org/lwjgl/opengl/MacOSXContextImplementation.java +++ b/src/java/org/lwjgl/opengl/MacOSXContextImplementation.java @@ -55,7 +55,7 @@ final class MacOSXContextImplementation implements ContextImplementation { private static native ByteBuffer nCreate(ByteBuffer peer_handle, IntBuffer attribs, ByteBuffer shared_context_handle) throws LWJGLException; public void swapBuffers() throws LWJGLException { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); if ( current_context == null ) throw new IllegalStateException("No context is current"); synchronized ( current_context ) { @@ -83,7 +83,7 @@ final class MacOSXContextImplementation implements ContextImplementation { private static native void clearDrawable(ByteBuffer handle) throws LWJGLException; - static void resetView(PeerInfo peer_info, Context context) throws LWJGLException { + static void resetView(PeerInfo peer_info, ContextGL context) throws LWJGLException { ByteBuffer peer_handle = peer_info.lockAndGetHandle(); try { synchronized ( context ) { @@ -117,7 +117,7 @@ final class MacOSXContextImplementation implements ContextImplementation { private static native boolean nIsCurrent(ByteBuffer context_handle) throws LWJGLException; public void setSwapInterval(int value) { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); synchronized ( current_context ) { nSetSwapInterval(current_context.getHandle(), value); } diff --git a/src/java/org/lwjgl/opengl/MacOSXDisplay.java b/src/java/org/lwjgl/opengl/MacOSXDisplay.java index eaccaee2..dc648552 100644 --- a/src/java/org/lwjgl/opengl/MacOSXDisplay.java +++ b/src/java/org/lwjgl/opengl/MacOSXDisplay.java @@ -96,7 +96,7 @@ final class MacOSXDisplay implements DisplayImplementation { } } - public void createWindow(DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { + public void createWindow(final DrawableLWJGL drawable, DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { boolean fullscreen = Display.isFullscreen(); hideUI(fullscreen); close_requested = false; @@ -272,7 +272,7 @@ final class MacOSXDisplay implements DisplayImplementation { * * - elias */ - AbstractDrawable drawable = (AbstractDrawable)Display.getDrawable(); + DrawableGL drawable = (DrawableGL)Display.getDrawable(); if (Display.isFullscreen() && (frame != null && frame.getCanvas().syncCanvasPainted() || should_update)) { try { MacOSXContextImplementation.resetView(drawable.peer_info, drawable.context); diff --git a/src/java/org/lwjgl/opengl/Pbuffer.java b/src/java/org/lwjgl/opengl/Pbuffer.java index 65392f71..75a56542 100644 --- a/src/java/org/lwjgl/opengl/Pbuffer.java +++ b/src/java/org/lwjgl/opengl/Pbuffer.java @@ -48,7 +48,7 @@ import org.lwjgl.Sys; * @version $Revision$ * $Id$ */ -public final class Pbuffer extends AbstractDrawable { +public final class Pbuffer extends DrawableGL { /** * Indicates that Pbuffers can be created. */ @@ -222,7 +222,7 @@ public final class Pbuffer extends AbstractDrawable { shared_context = ((DrawableLWJGL)shared_drawable).getContext(); else shared_context = ((DrawableLWJGL)Display.getDrawable()).getContext(); // May be null - this.context = new Context(peer_info, attribs, shared_context); + this.context = new ContextGL(peer_info, attribs, (ContextGL)shared_context); } private static PeerInfo createPbuffer(int width, int height, PixelFormat pixel_format, RenderTexture renderTexture) throws LWJGLException { diff --git a/src/java/org/lwjgl/opengl/PixelFormat.java b/src/java/org/lwjgl/opengl/PixelFormat.java index c3a8a91e..02f14f73 100644 --- a/src/java/org/lwjgl/opengl/PixelFormat.java +++ b/src/java/org/lwjgl/opengl/PixelFormat.java @@ -48,7 +48,7 @@ package org.lwjgl.opengl; * @version $Revision$ */ -public final class PixelFormat { +public final class PixelFormat implements PixelFormatLWJGL { /** * The number of bits per pixel, exluding alpha. diff --git a/src/java/org/lwjgl/opengl/PixelFormatLWJGL.java b/src/java/org/lwjgl/opengl/PixelFormatLWJGL.java new file mode 100644 index 00000000..e3584d8b --- /dev/null +++ b/src/java/org/lwjgl/opengl/PixelFormatLWJGL.java @@ -0,0 +1,11 @@ +package org.lwjgl.opengl; + +/** + * [INTERNAL USE ONLY] + * + * @author Spasi + * @since 15/5/2011 + */ +public interface PixelFormatLWJGL { + // Marker interface +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengl/SharedDrawable.java b/src/java/org/lwjgl/opengl/SharedDrawable.java index f96d0f63..72273297 100644 --- a/src/java/org/lwjgl/opengl/SharedDrawable.java +++ b/src/java/org/lwjgl/opengl/SharedDrawable.java @@ -44,13 +44,13 @@ import org.lwjgl.LWJGLException; * * @author Spasi */ -public final class SharedDrawable extends AbstractDrawable { +public final class SharedDrawable extends DrawableGL { public SharedDrawable(final Drawable drawable) throws LWJGLException { - this.context = ((DrawableLWJGL)drawable).createSharedContext(); + this.context = (ContextGL)((DrawableLWJGL)drawable).createSharedContext(); } - public Context createSharedContext() { + public ContextGL createSharedContext() { throw new UnsupportedOperationException(); } diff --git a/src/java/org/lwjgl/opengl/WindowsContextImplementation.java b/src/java/org/lwjgl/opengl/WindowsContextImplementation.java index a835506b..b81bc5e1 100644 --- a/src/java/org/lwjgl/opengl/WindowsContextImplementation.java +++ b/src/java/org/lwjgl/opengl/WindowsContextImplementation.java @@ -60,7 +60,7 @@ final class WindowsContextImplementation implements ContextImplementation { native long getHDC(ByteBuffer peer_info_handle); public void swapBuffers() throws LWJGLException { - Context current_context = Context.getCurrentContext(); + ContextGL current_context = ContextGL.getCurrentContext(); if ( current_context == null ) throw new IllegalStateException("No context is current"); synchronized ( current_context ) { diff --git a/src/java/org/lwjgl/opengl/WindowsDisplay.java b/src/java/org/lwjgl/opengl/WindowsDisplay.java index 560b2c9c..4cfbfc90 100644 --- a/src/java/org/lwjgl/opengl/WindowsDisplay.java +++ b/src/java/org/lwjgl/opengl/WindowsDisplay.java @@ -47,8 +47,8 @@ import org.lwjgl.LWJGLException; import org.lwjgl.LWJGLUtil; import org.lwjgl.BufferUtils; import org.lwjgl.input.Cursor; -import org.lwjgl.input.Keyboard; import org.lwjgl.input.Mouse; +import org.lwjgl.opengles.EGL; final class WindowsDisplay implements DisplayImplementation { private static final int GAMMA_LENGTH = 256; @@ -124,7 +124,6 @@ final class WindowsDisplay implements DisplayImplementation { private static final IntBuffer rect_buffer = BufferUtils.createIntBuffer(4); private static final Rect rect = new Rect(); - private static final Rect rect2 = new Rect(); private static WindowsDisplay current_display; private static boolean cursor_clipped; @@ -163,7 +162,7 @@ final class WindowsDisplay implements DisplayImplementation { current_display = this; } - public void createWindow(DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { + public void createWindow(DrawableLWJGL drawable, DisplayMode mode, Canvas parent, int x, int y) throws LWJGLException { close_requested = false; is_dirty = false; isMinimized = false; @@ -181,12 +180,18 @@ final class WindowsDisplay implements DisplayImplementation { nDestroyWindow(hwnd); throw new LWJGLException("Failed to get dc"); } + try { - int format = WindowsPeerInfo.choosePixelFormat(getHdc(), 0, 0, peer_info.getPixelFormat(), null, true, true, false, true); - WindowsPeerInfo.setPixelFormat(getHdc(), format); + if ( drawable instanceof DrawableGL ) { + int format = WindowsPeerInfo.choosePixelFormat(getHdc(), 0, 0, (PixelFormat)drawable.getPixelFormat(), null, true, true, false, true); + WindowsPeerInfo.setPixelFormat(getHdc(), format); + } else { + peer_info = new WindowsDisplayPeerInfo(true); + ((DrawableGLES)drawable).initialize(hwnd, hdc, EGL.EGL_WINDOW_BIT, (org.lwjgl.opengles.PixelFormat)drawable.getPixelFormat()); + } peer_info.initDC(getHwnd(), getHdc()); showWindow(getHwnd(), SW_SHOWDEFAULT); - if (parent == null) { + if ( parent == null ) { setForegroundWindow(getHwnd()); setFocus(getHwnd()); } @@ -420,7 +425,7 @@ final class WindowsDisplay implements DisplayImplementation { } public PeerInfo createPeerInfo(PixelFormat pixel_format) throws LWJGLException { - peer_info = new WindowsDisplayPeerInfo(pixel_format); + peer_info = new WindowsDisplayPeerInfo(false); return peer_info; } @@ -971,4 +976,4 @@ final class WindowsDisplay implements DisplayImplementation { return "Rect: top = " + top + " bottom = " + bottom + " left = " + left + " right = " + right; } } -} \ No newline at end of file +} diff --git a/src/java/org/lwjgl/opengl/WindowsDisplayPeerInfo.java b/src/java/org/lwjgl/opengl/WindowsDisplayPeerInfo.java index 8af1822e..db51f951 100644 --- a/src/java/org/lwjgl/opengl/WindowsDisplayPeerInfo.java +++ b/src/java/org/lwjgl/opengl/WindowsDisplayPeerInfo.java @@ -42,15 +42,16 @@ import org.lwjgl.LWJGLException; * $Id$ */ final class WindowsDisplayPeerInfo extends WindowsPeerInfo { - private final PixelFormat pixel_format; - WindowsDisplayPeerInfo(PixelFormat pixel_format) throws LWJGLException { - this.pixel_format = pixel_format; - GLContext.loadOpenGLLibrary(); - } + final boolean egl; - PixelFormat getPixelFormat() { - return pixel_format; + WindowsDisplayPeerInfo(boolean egl) throws LWJGLException { + this.egl = egl; + + if ( egl) + org.lwjgl.opengles.GLContext.loadOpenGLLibrary(); + else + GLContext.loadOpenGLLibrary(); } void initDC(long hwnd, long hdc) throws LWJGLException { @@ -68,6 +69,10 @@ final class WindowsDisplayPeerInfo extends WindowsPeerInfo { public void destroy() { super.destroy(); - GLContext.unloadOpenGLLibrary(); + + if ( egl ) + org.lwjgl.opengles.GLContext.unloadOpenGLLibrary(); + else + GLContext.unloadOpenGLLibrary(); } } diff --git a/src/java/org/lwjgl/opengles/APIUtil.java b/src/java/org/lwjgl/opengles/APIUtil.java new file mode 100644 index 00000000..25489519 --- /dev/null +++ b/src/java/org/lwjgl/opengles/APIUtil.java @@ -0,0 +1,322 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.PointerBuffer; + +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; + +/** @author spasi */ +final class APIUtil { + + private static final int INITIAL_BUFFER_SIZE = 256; + private static final int INITIAL_LENGTHS_SIZE = 4; + + private static final int BUFFERS_SIZE = 32; + + private static final ThreadLocal arrayTL = new ThreadLocal() { + protected char[] initialValue() { return new char[INITIAL_BUFFER_SIZE]; } + }; + + private static final ThreadLocal bufferTL = new ThreadLocal() { + protected ByteBuffer initialValue() { return BufferUtils.createByteBuffer(INITIAL_BUFFER_SIZE); } + }; + + private static final ThreadLocal bufferPointerTL = new ThreadLocal() { + protected PointerBuffer initialValue() { return BufferUtils.createPointerBuffer(INITIAL_BUFFER_SIZE); } + }; + + private static final ThreadLocal lengthsTL = new ThreadLocal() { + protected IntBuffer initialValue() { return BufferUtils.createIntBuffer(INITIAL_LENGTHS_SIZE); } + }; + + private static final ThreadLocal buffersTL = new ThreadLocal() { + protected Buffers initialValue() { return new Buffers(); } + }; + + private APIUtil() { + } + + private static char[] getArray(final int size) { + char[] array = arrayTL.get(); + + if ( array.length < size ) { + int sizeNew = array.length << 1; + while ( sizeNew < size ) + sizeNew <<= 1; + + array = new char[size]; + arrayTL.set(array); + } + + return array; + } + + static ByteBuffer getBufferByte(final int size) { + ByteBuffer buffer = bufferTL.get(); + + if ( buffer.capacity() < size ) { + int sizeNew = buffer.capacity() << 1; + while ( sizeNew < size ) + sizeNew <<= 1; + + buffer = BufferUtils.createByteBuffer(size); + bufferTL.set(buffer); + } else + buffer.clear(); + + return buffer; + } + + private static ByteBuffer getBufferByteOffset(final int size) { + ByteBuffer buffer = bufferTL.get(); + + if ( buffer.capacity() < size ) { + int sizeNew = buffer.capacity() << 1; + while ( sizeNew < size ) + sizeNew <<= 1; + + final ByteBuffer bufferNew = BufferUtils.createByteBuffer(size); + bufferNew.put(buffer); + bufferTL.set(buffer = bufferNew); + } else { + buffer.position(buffer.limit()); + buffer.limit(buffer.capacity()); + } + + return buffer; + } + + static PointerBuffer getBufferPointer(final int size) { + PointerBuffer buffer = bufferPointerTL.get(); + + if ( buffer.capacity() < size ) { + int sizeNew = buffer.capacity() << 1; + while ( sizeNew < size ) + sizeNew <<= 1; + + buffer = BufferUtils.createPointerBuffer(size); + bufferPointerTL.set(buffer); + } else + buffer.clear(); + + return buffer; + } + + static ShortBuffer getBufferShort() { return buffersTL.get().shorts; } + + static IntBuffer getBufferInt() { return buffersTL.get().ints; } + + static FloatBuffer getBufferFloat() { return buffersTL.get().floats; } + + static PointerBuffer getBufferPointer() { return buffersTL.get().pointers; } + + static IntBuffer getLengths() { + return getLengths(1); + } + + static IntBuffer getLengths(final int size) { + IntBuffer lengths = lengthsTL.get(); + + if ( lengths.capacity() < size ) { + int sizeNew = lengths.capacity(); + while ( sizeNew < size ) + sizeNew <<= 1; + + lengths = BufferUtils.createIntBuffer(size); + lengthsTL.set(lengths); + } else + lengths.clear(); + + return lengths; + } + + /** + * Simple ASCII encoding. + * + * @param buffer The target buffer + * @param string The source string + */ + private static ByteBuffer encode(final ByteBuffer buffer, final CharSequence string) { + for ( int i = 0; i < string.length(); i++ ) { + final char c = string.charAt(i); + if ( LWJGLUtil.DEBUG && 0x80 <= c ) // Silently ignore and map to 0x1A. + buffer.put((byte)0x1A); + else + buffer.put((byte)c); + } + + return buffer; + } + + /** + * Reads a byte string from the specified buffer. + * + * @param buffer + * + * @return the buffer as a String. + */ + static String getString(final ByteBuffer buffer) { + final int length = buffer.remaining(); + final char[] charArray = getArray(length); + + for ( int i = buffer.position(); i < buffer.limit(); i++ ) + charArray[i - buffer.position()] = (char)buffer.get(i); + + return new String(charArray, 0, length); + } + + /** + * Returns a buffer containing the specified string as bytes. + * + * @param string + * + * @return the String as a ByteBuffer + */ + static ByteBuffer getBuffer(final CharSequence string) { + final ByteBuffer buffer = encode(getBufferByte(string.length()), string); + buffer.flip(); + return buffer; + } + + /** + * Returns a buffer containing the specified string as bytes, starting at the specified offset. + * + * @param string + * + * @return the String as a ByteBuffer + */ + static ByteBuffer getBuffer(final CharSequence string, final int offset) { + final ByteBuffer buffer = encode(getBufferByteOffset(offset + string.length()), string); + buffer.flip(); + return buffer; + } + + /** + * Returns a buffer containing the specified string as bytes, including null-termination. + * + * @param string + * + * @return the String as a ByteBuffer + */ + static ByteBuffer getBufferNT(final CharSequence string) { + final ByteBuffer buffer = encode(getBufferByte(string.length() + 1), string); + buffer.put((byte)0); + buffer.flip(); + return buffer; + } + + static int getTotalLength(final CharSequence[] strings) { + int length = 0; + for ( CharSequence string : strings ) + length += string.length(); + + return length; + } + + /** + * Returns a buffer containing the specified strings as bytes. + * + * @param strings + * + * @return the Strings as a ByteBuffer + */ + static ByteBuffer getBuffer(final CharSequence[] strings) { + final ByteBuffer buffer = getBufferByte(getTotalLength(strings)); + + for ( CharSequence string : strings ) + encode(buffer, string); + + buffer.flip(); + return buffer; + } + + /** + * Returns a buffer containing the specified strings as bytes, including null-termination. + * + * @param strings + * + * @return the Strings as a ByteBuffer + */ + static ByteBuffer getBufferNT(final CharSequence[] strings) { + final ByteBuffer buffer = getBufferByte(getTotalLength(strings) + strings.length); + + for ( CharSequence string : strings ) { + encode(buffer, string); + buffer.put((byte)0); + } + + buffer.flip(); + return buffer; + } + + /** + * Returns a buffer containing the lengths of the specified strings. + * + * @param strings + * + * @return the String lengths in an IntBuffer + */ + static IntBuffer getLengths(final CharSequence[] strings) { + IntBuffer buffer = getLengths(strings.length); + + for ( CharSequence string : strings ) + buffer.put(string.length()); + + buffer.flip(); + return buffer; + } + + private static class Buffers { + + final ShortBuffer shorts; + final IntBuffer ints; + final FloatBuffer floats; + + final PointerBuffer pointers; + + Buffers() { + shorts = BufferUtils.createShortBuffer(BUFFERS_SIZE); + ints = BufferUtils.createIntBuffer(BUFFERS_SIZE); + floats = BufferUtils.createFloatBuffer(BUFFERS_SIZE); + + pointers = BufferUtils.createPointerBuffer(BUFFERS_SIZE); + } + + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/ContextAttribs.java b/src/java/org/lwjgl/opengles/ContextAttribs.java new file mode 100644 index 00000000..1aae14eb --- /dev/null +++ b/src/java/org/lwjgl/opengles/ContextAttribs.java @@ -0,0 +1,88 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.BufferUtils; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** + * This class represents the context attributes passed to EGL's eglCreateContext. + * The only attribute allowed is EGL_CONTEXT_CLIENT_VERSION and it must be 2 (LWJGL does not support GLES 1.x). + */ +public final class ContextAttribs { + + private int version; + + public ContextAttribs() { + this(2); + } + + public ContextAttribs(final int version) { + if ( version != 2 ) + throw new IllegalArgumentException("Invalid OpenGL ES version specified: " + version); + + this.version = version; + } + + private ContextAttribs(final ContextAttribs attribs) { + this.version = attribs.version; + } + + public int getVersion() { + return version; + } + + public IntBuffer getAttribList() { + int attribCount = 1; + + final IntBuffer attribs = BufferUtils.createIntBuffer((attribCount * 2) + 1); + + attribs.put(EGL_CONTEXT_CLIENT_VERSION).put(version); + + attribs.put(EGL_NONE); + attribs.rewind(); + return attribs; + } + + public String toString() { + StringBuilder sb = new StringBuilder(32); + + sb.append("ContextAttribs:"); + sb.append(" Version=").append(version); + + return sb.toString(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGL.java b/src/java/org/lwjgl/opengles/EGL.java new file mode 100644 index 00000000..86b2348e --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGL.java @@ -0,0 +1,922 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.BufferChecks; +import org.lwjgl.LWJGLException; +import org.lwjgl.PointerBuffer; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +/** EGL wrapper class. */ +public final class EGL { + + /** EGL aliases */ + public static final int + EGL_FALSE = 0, + EGL_TRUE = 1; + + /** Out-of-band handle values */ + public static final int + EGL_DEFAULT_DISPLAY = 0, + EGL_NO_CONTEXT = 0, + EGL_NO_DISPLAY = 0, + EGL_NO_SURFACE = 0; + + /** Out-of-band attribute value */ + public static final int EGL_DONT_CARE = -1; + + /** Errors / GetError return values */ + public static final int + EGL_SUCCESS = 0x3000, + EGL_NOT_INITIALIZED = 0x3001, + EGL_BAD_ACCESS = 0x3002, + EGL_BAD_ALLOC = 0x3003, + EGL_BAD_ATTRIBUTE = 0x3004, + EGL_BAD_CONFIG = 0x3005, + EGL_BAD_CONTEXT = 0x3006, + EGL_BAD_CURRENT_SURFACE = 0x3007, + EGL_BAD_DISPLAY = 0x3008, + EGL_BAD_MATCH = 0x3009, + EGL_BAD_NATIVE_PIXMAP = 0x300A, + EGL_BAD_NATIVE_WINDOW = 0x300B, + EGL_BAD_PARAMETER = 0x300C, + EGL_BAD_SURFACE = 0x300D, + EGL_CONTEXT_LOST = 0x300E; // EGL 1.1 - IMG_power_management + + /** Reserved =0x300F;-=0x301F; for additional errors */ + + /** Config attributes */ + public static final int + EGL_BUFFER_SIZE = 0x3020, + EGL_ALPHA_SIZE = 0x3021, + EGL_BLUE_SIZE = 0x3022, + EGL_GREEN_SIZE = 0x3023, + EGL_RED_SIZE = 0x3024, + EGL_DEPTH_SIZE = 0x3025, + EGL_STENCIL_SIZE = 0x3026, + EGL_CONFIG_CAVEAT = 0x3027, + EGL_CONFIG_ID = 0x3028, + EGL_LEVEL = 0x3029, + EGL_MAX_PBUFFER_HEIGHT = 0x302A, + EGL_MAX_PBUFFER_PIXELS = 0x302B, + EGL_MAX_PBUFFER_WIDTH = 0x302C, + EGL_NATIVE_RENDERABLE = 0x302D, + EGL_NATIVE_VISUAL_ID = 0x302E, + EGL_NATIVE_VISUAL_TYPE = 0x302F, + EGL_SAMPLES = 0x3031, + EGL_SAMPLE_BUFFERS = 0x3032, + EGL_SURFACE_TYPE = 0x3033, + EGL_TRANSPARENT_TYPE = 0x3034, + EGL_TRANSPARENT_BLUE_VALUE = 0x3035, + EGL_TRANSPARENT_GREEN_VALUE = 0x3036, + EGL_TRANSPARENT_RED_VALUE = 0x3037, + EGL_NONE = 0x3038, // Attrib list terminator + EGL_BIND_TO_TEXTURE_RGB = 0x3039, + EGL_BIND_TO_TEXTURE_RGBA = 0x303A, + EGL_MIN_SWAP_INTERVAL = 0x303B, + EGL_MAX_SWAP_INTERVAL = 0x303C, + EGL_LUMINANCE_SIZE = 0x303D, + EGL_ALPHA_MASK_SIZE = 0x303E, + EGL_COLOR_BUFFER_TYPE = 0x303F, + EGL_RENDERABLE_TYPE = 0x3040, + EGL_MATCH_NATIVE_PIXMAP = 0x3041, // Pseudo-attribute (not queryable) + EGL_CONFORMANT = 0x3042; + + /** Reserved =0x3041;-=0x304F; for additional config attributes */ + + /** Config attribute values */ + public static final int + EGL_SLOW_CONFIG = 0x3050, // EGL_CONFIG_CAVEAT value + EGL_NON_CONFORMANT_CONFIG = 0x3051, // EGL_CONFIG_CAVEAT value + EGL_TRANSPARENT_RGB = 0x3052, // EGL_TRANSPARENT_TYPE value + EGL_RGB_BUFFER = 0x308E, // EGL_COLOR_BUFFER_TYPE value + EGL_LUMINANCE_BUFFER = 0x308F; // EGL_COLOR_BUFFER_TYPE value + + /** More config attribute values, for EGL_TEXTURE_FORMAT */ + public static final int + EGL_NO_TEXTURE = 0x305C, + EGL_TEXTURE_RGB = 0x305D, + EGL_TEXTURE_RGBA = 0x305E, + EGL_TEXTURE_2D = 0x305F; + + /** EGL_SURFACE_TYPE mask bits */ + public static final int + EGL_PBUFFER_BIT = 0x0001, + EGL_PIXMAP_BIT = 0x0002, + EGL_WINDOW_BIT = 0x0004, + EGL_VG_COLORSPACE_LINEAR_BIT = 0x0020, + EGL_VG_ALPHA_FORMAT_PRE_BIT = 0x0040, + EGL_MULTISAMPLE_RESOLVE_BOX_BIT = 0x0200, + EGL_SWAP_BEHAVIOR_PRESERVED_BIT = 0x0400; + + /** EGL_RENDERABLE_TYPE mask bits */ + public static final int + EGL_OPENGL_ES_BIT = 0x0001, + EGL_OPENVG_BIT = 0x0002, + EGL_OPENGL_ES2_BIT = 0x0004, + EGL_OPENGL_BIT = 0x0008; + + /** QueryString targets */ + public static final int + EGL_VENDOR = 0x3053, + EGL_VERSION = 0x3054, + EGL_EXTENSIONS = 0x3055, + EGL_CLIENT_APIS = 0x308D; + + /** QuerySurface / SurfaceAttrib / CreatePbufferSurface targets */ + public static final int + EGL_HEIGHT = 0x3056, + EGL_WIDTH = 0x3057, + EGL_LARGEST_PBUFFER = 0x3058, + EGL_TEXTURE_FORMAT = 0x3080, + EGL_TEXTURE_TARGET = 0x3081, + EGL_MIPMAP_TEXTURE = 0x3082, + EGL_MIPMAP_LEVEL = 0x3083, + EGL_RENDER_BUFFER = 0x3086, + EGL_VG_COLORSPACE = 0x3087, + EGL_VG_ALPHA_FORMAT = 0x3088, + EGL_HORIZONTAL_RESOLUTION = 0x3090, + EGL_VERTICAL_RESOLUTION = 0x3091, + EGL_PIXEL_ASPECT_RATIO = 0x3092, + EGL_SWAP_BEHAVIOR = 0x3093, + EGL_MULTISAMPLE_RESOLVE = 0x3099; + + /** EGL_RENDER_BUFFER values / BindTexImage / ReleaseTexImage buffer targets */ + public static final int + EGL_BACK_BUFFER = 0x3084, + EGL_SINGLE_BUFFER = 0x3085; + + /** OpenVG color spaces */ + public static final int + EGL_VG_COLORSPACE_sRGB = 0x3089, // EGL_VG_COLORSPACE value + EGL_VG_COLORSPACE_LINEAR = 0x308A; // EGL_VG_COLORSPACE value + + /** OpenVG alpha formats */ + public static final int + EGL_VG_ALPHA_FORMAT_NONPRE = 0x308B, // EGL_ALPHA_FORMAT value + EGL_VG_ALPHA_FORMAT_PRE = 0x308C; // EGL_ALPHA_FORMAT + + /** + * Constant scale factor by which fractional display resolutions & + * aspect ratio are scaled when queried as integer values. + */ + public static final int EGL_DISPLAY_SCALING = 10000; + + /** Unknown display resolution/aspect ratio */ + public static final int EGL_UNKNOWN = -1; + + /** Back buffer swap behaviors */ + public static final int + EGL_BUFFER_PRESERVED = 0x3094, // EGL_SWAP_BEHAVIOR value + EGL_BUFFER_DESTROYED = 0x3095; // EGL_SWAP_BEHAVIOR value + + /** CreatePbufferFromClientBuffer buffer types */ + static final int EGL_OPENVG_IMAGE = 0x3096; + + /** QueryContext targets */ + public static final int EGL_CONTEXT_CLIENT_TYPE = 0x3097; + + /** CreateContext attributes */ + public static final int EGL_CONTEXT_CLIENT_VERSION = 0x3098; + + /** Multisample resolution behaviors */ + public static final int + EGL_MULTISAMPLE_RESOLVE_DEFAULT = 0x309A, // EGL_MULTISAMPLE_RESOLVE value + EGL_MULTISAMPLE_RESOLVE_BOX = 0x309B; // EGL_MULTISAMPLE_RESOLVE value + + /** BindAPI/QueryAPI targets */ + public static final int + EGL_OPENGL_ES_API = 0x30A0, + EGL_OPENVG_API = 0x30A1, + EGL_OPENGL_API = 0x30A2; + + /** GetCurrentSurface targets */ + public static final int + EGL_DRAW = 0x3059, + EGL_READ = 0x305A; + + /** WaitNative engines */ + static final int EGL_CORE_NATIVE_ENGINE = 0x305B; + + private EGL() { + } + + public static native int eglGetError(); + + /** + * Obtains an EGL display from the specified native display and initializes it. + * + * @param display_id the handle to the native display. + * + * @return the EGL Display + * + * @throws org.lwjgl.LWJGLException if no display is available or an EGL error occurs + */ + public static EGLDisplay eglGetDisplay(long display_id) throws LWJGLException { + //LWJGLUtil.log("eglGetDisplay"); + final long pointer = neglGetDisplay(display_id); + + if ( pointer == EGL_NO_DISPLAY ) // No error is generated when this happens + throw new LWJGLException("Failed to get EGL display from native display handle: " + display_id); + + return new EGLDisplay(pointer); + } + + private static native long neglGetDisplay(long display_id); + + /** + * Initializes the specified EGL display. + * + * @param dpy the EGL display to initialize + * @param version the EGL major and minor version will be returned in this buffer. + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static void eglInitialize(EGLDisplay dpy, IntBuffer version) throws LWJGLException { + //LWJGLUtil.log("eglInitialize"); + BufferChecks.checkBuffer(version, 2); + if ( !neglInitialize(dpy.getPointer(), version, version.position()) ) + throwEGLError("Failed to initialize EGL display."); + } + + private static native boolean neglInitialize(long dpy_ptr, IntBuffer version, int version_position); + + /** + * Release the resources associated with the specified EGL display. + * + * @param dpy the EGL display to terminate + */ + static void eglTerminate(EGLDisplay dpy) throws LWJGLException { + //LWJGLUtil.log("eglTerminate"); + if ( !neglTerminate(dpy.getPointer()) ) + throwEGLError("Failed to terminate EGL display."); + } + + private static native boolean neglTerminate(long dpy_ptr); + + /** + * Returns a string describing some aspect of the EGL implementation running on the specified display. + * + * @param dpy the EGL display to query + * @param name the value to query + * + * @return the description + */ + public static String eglQueryString(EGLDisplay dpy, int name) { + //LWJGLUtil.log("eglQueryString"); + return neglQueryString(dpy.getPointer(), name); + } + + private static native String neglQueryString(long dpy, int name); + + /** + * Returns the number of EGLConfigs that are available on the specified display. + * + * @param dpy the EGLDisplay + * + * @return the number of EGLConfigs available + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + * @see #eglGetConfigs(EGLDisplay, EGLConfig[], IntBuffer) + */ + static int eglGetConfigsNum(EGLDisplay dpy) throws LWJGLException { + //LWJGLUtil.log("eglGetConfigsNum"); + IntBuffer num_config = APIUtil.getBufferInt(); + + if ( !neglGetConfigs(dpy.getPointer(), null, 0, 0, num_config, num_config.position()) ) + throwEGLError("Failed to get EGL configs."); + + return num_config.get(0); + } + + /** + * Returns the available EGLConfigs on the speficied display. The number of available EGLConfigs + * is returned in the num_config parameter. The configs array may be null. If it is null, a new + * array will be allocated, with size equal to the result of {@link #eglGetConfigsNum(EGLDisplay)} eglGetConfigsNum}. + * If it is not null, no more than {@code configs.length} EGLConfigs will be returned. If the array is bigger + * than the number of available EGLConfigs, the remaining array elements will not be affected. + * + * @param dpy the EGLDisplay + * @param configs the EGLConfigs array + * @param num_config the number of available EGLConfigs returned + * + * @return the available EGLConfigs + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static EGLConfig[] eglGetConfigs(EGLDisplay dpy, EGLConfig[] configs, IntBuffer num_config) throws LWJGLException { + //LWJGLUtil.log("eglGetConfigs"); + BufferChecks.checkBuffer(num_config, 1); + + if ( configs == null ) { + if ( !neglGetConfigs(dpy.getPointer(), null, 0, 0, num_config, num_config.position()) ) + throwEGLError("Failed to get number of available EGL configs."); + + configs = new EGLConfig[num_config.get(num_config.position())]; + } + + final PointerBuffer configs_buffer = APIUtil.getBufferPointer(configs.length); + if ( !neglGetConfigs(dpy.getPointer(), configs_buffer.getBuffer(), 0, configs.length, num_config, num_config.position()) ) + throwEGLError("Failed to get EGL configs."); + + final int config_size = num_config.get(num_config.position()); + for ( int i = 0; i < config_size; i++ ) + configs[i] = new EGLConfig(dpy, configs_buffer.get(i)); + + return configs; + } + + private static native boolean neglGetConfigs(long dpy_ptr, ByteBuffer configs, int configs_position, int config_size, IntBuffer num_config, int num_config_position); + + /** + * Returns the number of EGLConfigs that are available on the specified display and + * match the speficied list of attributes. + * + * @param dpy the EGLDisplay + * @param attrib_list the attribute list (may be null) + * + * @return the number of EGLConfigs available that satisft the attribute list + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + * @see #eglChooseConfig(EGLDisplay, IntBuffer, EGLConfig[], IntBuffer) + */ + static int eglChooseConfigNum(EGLDisplay dpy, IntBuffer attrib_list) throws LWJGLException { + //LWJGLUtil.log("eglChooseConfigNum"); + checkAttribList(attrib_list); + IntBuffer num_config = APIUtil.getBufferInt(); + + if ( !neglChooseConfig(dpy.getPointer(), attrib_list, attrib_list == null ? 0 : attrib_list.position(), null, 0, 0, num_config, num_config.position()) ) + throwEGLError("Failed to get EGL configs."); + + return num_config.get(0); + } + + /** + * Returns the available EGLConfigs on the speficied display that satisfy the specified list of attributes. + * The number of available EGLConfigs is returned in the num_config parameter. The configs array may be null. + * If it is null, a new array will be allocated, with size equal to the result of {@link #eglGetConfigsNum(EGLDisplay)} eglGetConfigsNum}. + * If it is not null, no more than {@code configs.length} EGLConfigs will be returned. If the array is bigger + * than the number of available EGLConfigs, the remaining array elements will not be affected. + * + * @param dpy the EGLDisplay + * @param attrib_list the attribute list (may be null) + * @param configs the EGLConfigs array + * @param num_config the number of available EGLConfigs returned + * + * @return the available EGLConfigs that satisfy the attribute list + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static EGLConfig[] eglChooseConfig(EGLDisplay dpy, IntBuffer attrib_list, EGLConfig[] configs, IntBuffer num_config) throws LWJGLException { + //LWJGLUtil.log("eglChooseConfig"); + checkAttribList(attrib_list); + BufferChecks.checkBuffer(num_config, 1); + + int config_size; + if ( configs == null ) { + if ( !neglChooseConfig(dpy.getPointer(), attrib_list, attrib_list == null ? 0 : attrib_list.position(), null, 0, 0, num_config, num_config.position()) ) + throwEGLError("Failed to get number of available EGL configs."); + + config_size = num_config.get(num_config.position()); + } else + config_size = configs.length; + + //LWJGLUtil.log("config_size = " + config_size); + PointerBuffer configs_buffer = APIUtil.getBufferPointer(config_size); + if ( !neglChooseConfig(dpy.getPointer(), attrib_list, attrib_list == null ? 0 : attrib_list.position(), configs_buffer.getBuffer(), 0, config_size, num_config, num_config.position()) ) + throwEGLError("Failed to choose EGL config."); + + // Get the true number of configurations (the first neglChooseConfig call may return more than the second) + config_size = num_config.get(num_config.position()); + if ( configs == null ) + configs = new EGLConfig[config_size]; + for ( int i = 0; i < config_size; i++ ) + configs[i] = new EGLConfig(dpy, configs_buffer.get(i)); + + return configs; + } + + private static native boolean neglChooseConfig(long dpy_ptr, IntBuffer attrib_list, int attrib_list_position, ByteBuffer configs, int configs_position, int config_size, IntBuffer num_config, int num_config_position); + + /** + * Returns the value of an EGL config attribute. + * + * @param dpy the EGL display + * @param config the EGL config + * @param attribute the attribute + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static int eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, int attribute) throws LWJGLException { + //LWJGLUtil.log("eglGetConfigAttrib"); + final IntBuffer value = APIUtil.getBufferInt(); + + if ( !neglGetConfigAttrib(dpy.getPointer(), config.getPointer(), attribute, value, value.position()) ) + throwEGLError("Failed to get EGL config attribute."); + + return value.get(0); + } + + private static native boolean neglGetConfigAttrib(long dpy_ptr, long config_ptr, int attribute, IntBuffer value, int value_position); + + /** + * Creates an on-screen rendering surface on the specified EGL display. + * + * @param dpy the EGL display + * @param config the EGL config + * @param win the native window handle + * @param attrib_list an attribute list (may be null) + * + * @return the created EGL surface + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static EGLSurface eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, long win, IntBuffer attrib_list) throws LWJGLException { + //LWJGLUtil.log("eglCreateWindowSurface"); + checkAttribList(attrib_list); + final long pointer = neglCreateWindowSurface(dpy.getPointer(), config.getPointer(), win, attrib_list, attrib_list == null ? 0 : attrib_list.position()); + + if ( pointer == EGL_NO_SURFACE ) + throwEGLError("Failed to create EGL window surface."); + + return new EGLSurface(dpy, config, pointer); + } + + private static native long neglCreateWindowSurface(long dpy_ptr, long config_ptr, long win, IntBuffer attrib_list, int attrib_list_position); + + /** + * Creates an off-screen rendering surface on the specified EGL display. + * + * @param dpy the EGL display + * @param config the EGL config + * @param attrib_list an attribute list (may be null) + * + * @return the created EGL surface + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static EGLSurface eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, IntBuffer attrib_list) throws LWJGLException { + //LWJGLUtil.log("eglCreatePbufferSurface"); + checkAttribList(attrib_list); + final long pointer = neglCreatePbufferSurface(dpy.getPointer(), config.getPointer(), attrib_list, attrib_list == null ? 0 : attrib_list.position()); + + if ( pointer == EGL_NO_SURFACE ) + throwEGLError("Failed to create EGL pbuffer surface."); + + return new EGLSurface(dpy, config, pointer); + } + + private static native long neglCreatePbufferSurface(long dpy_ptr, long config_ptr, IntBuffer attrib_list, int attrib_list_position); + + /* + EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, EGLNativePixmapType pixmap, const EGLint *attrib_list); + */ + + /** + * Sets the specified EGL surface attribute to the specified value. + * + * @param dpy the EGL display + * @param surface the EGL surface + * @param attribute the attribute + * @param value the attribute value + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static void eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface, int attribute, int value) throws LWJGLException { + //LWJGLUtil.log("eglSurfaceAttrib"); + if ( !neglSurfaceAttrib(dpy.getPointer(), surface.getPointer(), attribute, value) ) + throwEGLError("Failed to set surface attribute."); + } + + private static native boolean neglSurfaceAttrib(long dpy_ptr, long surface_ptr, int attribute, int value); + + /** + * Destroys the specified EGL surface. + * + * @param dpy the EGL display + * @param surface the EGL surface to destroy + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static void eglDestroySurface(EGLDisplay dpy, EGLSurface surface) throws LWJGLException { + //LWJGLUtil.log("eglDestroySurface"); + if ( !neglDestroySurface(dpy.getPointer(), surface.getPointer()) ) + throwEGLError("Failed to destroy EGL surface."); + } + + private static native boolean neglDestroySurface(long dpy_ptr, long surface_ptr); + + /** + * Returns the value of the specified EGL surface attribute in the value parameter. + * + * @param dpy the EGL display + * @param surface the EGL surface + * @param attribute the surface attribute + * @param value the attribute value will be returned here + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + public static void eglQuerySurface(EGLDisplay dpy, EGLSurface surface, int attribute, IntBuffer value) throws LWJGLException { + //LWJGLUtil.log("eglQuerySurface"); + BufferChecks.checkBuffer(value, 1); + if ( !neglQuerySurface(dpy.getPointer(), surface.getPointer(), attribute, value, value.position()) ) + throwEGLError("Failed to query surface attribute."); + } + + private static native boolean neglQuerySurface(long dpy_ptr, long surface_ptr, int attribute, IntBuffer value, int value_position); + + /** + * Binds the specified rendering API to the current thread. + * + * @param api the API to bind + * + * @return true if the bind was successful, false if an EGL error occurs + */ + public static native boolean eglBindAPI(int api); + + /** + * Returns the current rendering API. + * + * @return the rendering API bound to the current thread + */ + public static native int eglQueryAPI(); + + /** + * Returns EGL to its state at thread initialization. This includes the following:
+ *

+ * For each client API supported by EGL, if there is a currently bound context, + * that context is released. This is equivalent to calling eglMakeCurrent + * with ctx set to EGL_NO_CONTEXT and both draw and read set to EGL_NO_SURFACE + *


+ *

The current rendering API is reset to its value at thread initialization


+ *

Any additional implementation-dependent per-thread state maintained by EGL + * is marked for deletion as soon as possible.

+ * + * @return true if thread state was released successfully, false is an EGL error occurs + */ + static native boolean eglReleaseThread(); + + /* + EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer(EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, EGLConfig config, const EGLint *attrib_list); + EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer); + EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer); + */ + + /** + * Specifies the minimum number of video frame periods per buffer swap for + * the window associated with the current context. + * + * @param dpy the EGL display + * @param interval the frame interval + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static void eglSwapInterval(EGLDisplay dpy, int interval) throws LWJGLException { + //LWJGLUtil.log("eglSwapInterval"); + if ( !neglSwapInterval(dpy.getPointer(), interval) ) + throwEGLError("Failed to set swap interval."); + } + + private static native boolean neglSwapInterval(long dpy_ptr, int interval); + + /** + * Creates a new EGL context for the current rendering API. + * + * @param dpy the EGL display + * @param config the EGL config + * @param share_context the EGL context to share data with + * @param attrib_list the attribute list (may be null) + * + * @return the created EGL context + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static EGLContext eglCreateContext(EGLDisplay dpy, EGLConfig config, EGLContext share_context, IntBuffer attrib_list) throws LWJGLException { + //LWJGLUtil.log("eglCreateContext"); + checkAttribList(attrib_list); + final long pointer = neglCreateContext(dpy.getPointer(), config.getPointer(), + share_context == null ? EGL_NO_CONTEXT : share_context.getPointer(), + attrib_list, attrib_list == null ? 0 : attrib_list.position()); + + if ( pointer == EGL_NO_CONTEXT ) + throwEGLError("Failed to create EGL context."); + + return new EGLContext(dpy, config, pointer); + } + + private static native long neglCreateContext(long dpy_ptr, long config_ptr, long share_context_ptr, IntBuffer attrib_list, int attrib_list_position); + + /** + * Destroys a rendering context. + * + * @param dpy the EGL display + * @param ctx the EGL context + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + static void eglDestroyContext(EGLDisplay dpy, EGLContext ctx) throws LWJGLException { + //LWJGLUtil.log("eglDestroyContext"); + if ( !neglDestroyContext(dpy.getPointer(), ctx.getPointer()) ) + throwEGLError("Failed to destroy context."); + } + + private static native boolean neglDestroyContext(long dpy_ptr, long ctx_ptr); + + /** + * Binds the specified context to the current thread and to the draw and read surfaces. + * + * @param dpy the EGL display + * @param draw the draw EGL surface + * @param read the read EGL surface + * @param ctx the EGL context to make current + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + * @throws PowerManagementEventException if an EGL power management event occurs + */ + static void eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, EGLSurface read, EGLContext ctx) throws LWJGLException, PowerManagementEventException { + //LWJGLUtil.log("eglMakeCurrent"); + if ( !neglMakeCurrent(dpy.getPointer(), + draw == null ? EGL_NO_SURFACE : draw.getPointer(), + read == null ? EGL_NO_SURFACE : read.getPointer(), + ctx == null ? EGL_NO_CONTEXT : ctx.getPointer()) ) { + final int error = eglGetError(); + if ( error == EGL_CONTEXT_LOST ) + throw new PowerManagementEventException(); + else + throwEGLError("Failed to change the current context.", error); + } + } + + /** + * Releases the current context without assigning a new one. + * + * @param dpy the EGL display + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + * @throws PowerManagementEventException if an EGL power management event occurs + * @see #eglMakeCurrent(EGLDisplay, EGLSurface, EGLSurface, EGLContext) + */ + public static void eglReleaseCurrent(EGLDisplay dpy) throws LWJGLException, PowerManagementEventException { + //LWJGLUtil.log("eglReleaseCurrent"); + eglMakeCurrent(dpy, null, null, null); + } + + private static native boolean neglMakeCurrent(long dpy_ptr, long draw_ptr, long read_ptr, long ctx_ptr); + + /** + * Returns the current EGL context for the current rendering API. + * If there is no context current, null is returned. + * + * @return the current context + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + public static EGLContext eglGetCurrentContext() throws LWJGLException { + //LWJGLUtil.log("eglGetCurrentContext"); + // Get current context + final long ctx = neglGetCurrentContext(); + if ( ctx == EGL_NO_CONTEXT ) + return null; + + // Get current display + final EGLDisplay display = eglGetCurrentDisplay(); + + // Query context's CONFIG_ID + final IntBuffer attrib_list = APIUtil.getBufferInt(); + neglQueryContext(display.getPointer(), ctx, EGL_CONFIG_ID, attrib_list, 0); + + final EGLConfig config = getEGLConfig(display, attrib_list); + + // Create the context handle + return new EGLContext(display, config, ctx); + } + + /** + * Returns true if the specified EGL context is the current context. + * This method is faster than using {@code #eglGetCurrentContext} + * and comparing the two EGLContext objects. + * + * @param context the EGL context + * + * @return true if the EGL context is current + * + * @see #eglGetCurrentContext() + */ + public static boolean eglIsCurrentContext(EGLContext context) { + //LWJGLUtil.log("eglIsCurrentContext"); + return neglGetCurrentContext() == context.getPointer(); + } + + private static native long neglGetCurrentContext(); + + /** + * Returns the EGL surfaces used for rendering by the current context. + * If there is no context current, null is returned. + * + * @param readdraw the read or draw surface + * + * @return the current surface + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + public static EGLSurface eglGetCurrentSurface(int readdraw) throws LWJGLException { + //LWJGLUtil.log("eglGetCurrentSurface"); + final long surface = neglGetCurrentSurface(readdraw); + if ( surface == EGL_NO_SURFACE ) + return null; + + // Get current display + EGLDisplay display = eglGetCurrentDisplay(); + + // Query context's CONFIG_ID + final IntBuffer attrib_list = APIUtil.getBufferInt(); + if ( !neglQuerySurface(display.getPointer(), surface, EGL_CONFIG_ID, attrib_list, 0) ) + throwEGLError("Failed to query surface EGL config ID."); + + final EGLConfig config = getEGLConfig(display, attrib_list); + + // Create the surface handle + return new EGLSurface(display, config, surface); + } + + private static native long neglGetCurrentSurface(int readdraw); + + /** + * Returns the EGL display associated with the current context. + * + * @return the current display + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + public static EGLDisplay eglGetCurrentDisplay() throws LWJGLException { + //LWJGLUtil.log("eglGetCurrentDisplay"); + return new EGLDisplay(neglGetCurrentDisplay()); + } + + private static native long neglGetCurrentDisplay(); + + /** + * Returns the value of the specified EGL context attribute in the value parameter. + * + * @param dpy the EGL display + * @param ctx the EGL context + * @param attribute the context attribute + * @param value the attribute value will be returned here + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + public static void eglQueryContext(EGLDisplay dpy, EGLContext ctx, int attribute, IntBuffer value) throws LWJGLException { + //LWJGLUtil.log("eglQueryContext"); + BufferChecks.checkBuffer(value, 1); + if ( !neglQueryContext(dpy.getPointer(), ctx.getPointer(), attribute, value, value.position()) ) + throwEGLError("Failed to query context attribute."); + } + + private static native boolean neglQueryContext(long dpy_ptr, long ctx_ptr, int attribute, IntBuffer value, int value_position); + + /** + * Prevents native rendering API functions from executing until any + * outstanding client API rendering affecting the same surface is complete. + * + * @return true if the wait was successful, false is an EGL error occurs + */ + public static native boolean eglWaitClient(); + + /** + * This method does the equivalent of:
+ * + * EGLenum api = eglQueryAPI(); + * eglBindAPI(EGL_OPENGL_ES_API); + * eglWaitClient(); + * eglBindAPI(api); + * + * + * @return true if the wait was successful, false if an EGL error occurs + */ + public static native boolean eglWaitGL(); + + /** + * Prevents a client API command sequence from executing until any outstanding + * native rendering affecting the same surface is complete. + * + * @param engine the native rendering engine + * + * @return true if the wait was successful, false if an EGL error occurs + */ + public static native boolean eglWaitNative(int engine); + + /** + * Posts the color buffer to the window. + * + * @param dpy the EGL display + * @param surface the EGL back-buffered window surface + * + * @throws org.lwjgl.LWJGLException if an EGL occurs + * @throws PowerManagementEventException if an EGL power management event occurs + */ + static void eglSwapBuffers(EGLDisplay dpy, EGLSurface surface) throws LWJGLException, PowerManagementEventException { + //LWJGLUtil.log("eglSwapBuffers"); + if ( !neglSwapBuffers(dpy.getPointer(), surface.getPointer()) ) { + final int error = eglGetError(); + if ( error == EGL_CONTEXT_LOST ) + throw new PowerManagementEventException(); + else + throwEGLError("Failed to swap buffers.", error); + } + } + + private static native boolean neglSwapBuffers(long dpy_ptr, long surface_ptr); + + //EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers(EGLDisplay dpy, EGLSurface surface, EGLNativePixmapType target); + + /* -------------------------------- + HELPER METHODS + -------------------------------- */ + + static void checkAttribList(IntBuffer attrib_list) { + if ( attrib_list == null ) + return; + + //BufferChecks.checkDirect(attrib_list); + if ( attrib_list.remaining() % 2 != 1 ) + throw new IllegalArgumentException("Invalid number of values in attribute list."); + if ( attrib_list.get(attrib_list.limit() - 1) != EGL_NONE ) + throw new IllegalArgumentException("The attribute list is not terminated with EGL_NONE."); + } + + private static EGLConfig getEGLConfig(final EGLDisplay dpy, final IntBuffer attrib_list) throws LWJGLException { + final int configID = attrib_list.get(0); + + // -- This fails on the emulator + // Get EGL config used by the context + attrib_list.put(0, EGL_CONFIG_ID).put(1, configID).put(2, EGL_NONE); + + final PointerBuffer configs_buffer = APIUtil.getBufferPointer(1); + if ( !neglChooseConfig(dpy.getPointer(), attrib_list, attrib_list.position(), configs_buffer.getBuffer(), 0, 1, attrib_list, attrib_list.position() + 3) ) + throwEGLError("Failed to choose EGL config."); + + return new EGLConfig(dpy, configs_buffer.get(0)); + + // -- Emulator workaround + /* + EGLConfig config = null; + + final EGLConfig[] configs = eglGetConfigs(dpy, null, attrib_list); + final int config_size = attrib_list.get(0); + for ( int i = 0; i < config_size; i++ ) { + if ( configs[i].getConfigID() == configID ) { + config = configs[i]; + break; + } + } + + if ( config == null ) + throwEGLError("Failed to retrieve EGL config for current context."); + + return config; + //*/ + } + + static void throwEGLError(final String msg) throws LWJGLException { + throwEGLError(msg, eglGetError()); + } + + static void throwEGLError(String msg, final int error) throws LWJGLException { + if ( error != EGL_SUCCESS ) + msg += " EGL error: " + Util.translateEGLErrorString(error); + + throw new LWJGLException(msg); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLConfig.java b/src/java/org/lwjgl/opengles/EGLConfig.java new file mode 100644 index 00000000..4e1988fd --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLConfig.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.PointerWrapperAbstract; + +import static org.lwjgl.opengles.EGL.*; + +/** EGLConfig wrapper class. */ +public final class EGLConfig extends PointerWrapperAbstract { + + private final EGLDisplay display; + + private final int configID; + + EGLConfig(final EGLDisplay display, final long pointer) throws LWJGLException { + super(pointer); + + this.display = display; + this.configID = getAttribute(EGL_CONFIG_ID); + } + + /** + * Returns the EGL display from which this EGL config was retrieved. + * + * @return the EGL display + */ + public EGLDisplay getDisplay() { + return display; + } + + /** + * Returns the EGL_CONFIG_ID attribute of this EGLConfig. + * + * @return the EGL_CONFIG_ID + */ + public int getConfigID() { + return configID; + } + + /** + * Returns the value of the specified EGL config attribute. + * + * @param attribute the attribute + * + * @return the attribute value + */ + public int getAttribute(final int attribute) throws LWJGLException { + return eglGetConfigAttrib(display, this, attribute); + } + + public boolean equals(final Object obj) { + if ( obj == null || !(obj instanceof EGLConfig) ) + return false; + + return getPointer() == ((EGLConfig)obj).getPointer(); + } + + public String toString() { + final StringBuilder sb = new StringBuilder(512); + + sb.append("EGLConfig (").append(configID).append(")"); + sb.append("\n------------"); + + try { + sb.append("\nEGL_LEVEL").append(": ").append(getAttribute(EGL_LEVEL)); + sb.append("\nEGL_RENDERABLE_TYPE").append(": ").append(Integer.toBinaryString(getAttribute(EGL_RENDERABLE_TYPE))); + sb.append("\nEGL_NATIVE_RENDERABLE").append(": ").append(getAttribute(EGL_NATIVE_RENDERABLE) == EGL_TRUE); + sb.append("\nEGL_SURFACE_TYPE").append(": ").append(Integer.toBinaryString(getAttribute(EGL_SURFACE_TYPE))); + } catch (LWJGLException e) { + } + + final PixelFormat.Attrib[] attribEnums = PixelFormat.Attrib.values(); + for ( PixelFormat.Attrib attribEnum : attribEnums ) { + if ( attribEnum.isSurfaceAttrib() ) + continue; + + try { + final int attrib = getAttribute(attribEnum.getEGLAttrib()); + sb.append("\nEGL_").append(attribEnum.name()).append(": ").append(attrib); + } catch (LWJGLException e) { + //System.out.println("Failed to retrieve: " + attribEnum.name()); + // Ignore, can happen when querying unsupported attributes (e.g. extension ones) + } + } + + return sb.toString(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLContext.java b/src/java/org/lwjgl/opengles/EGLContext.java new file mode 100644 index 00000000..39ac7a4a --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLContext.java @@ -0,0 +1,114 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.PointerWrapperAbstract; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGLContext wrapper class. */ +public final class EGLContext extends PointerWrapperAbstract { + + private EGLDisplay display; + private final EGLConfig config; + + private boolean destroyed; + + EGLContext(final EGLDisplay display, final EGLConfig config, final long pointer) { + super(pointer); + + if ( !display.isInitialized() ) + throw new IllegalStateException("Invalid EGL display specified."); + + if ( config.getDisplay() != display ) + throw new IllegalStateException("Invalid EGL config specified."); + + this.display = display; + this.config = config; + } + + public void setDisplay(EGLDisplay display) { + this.display = display; + } + + EGLDisplay getDisplay() { + return display; + } + + EGLConfig getConfig() { + return config; + } + + private void checkDestroyed() { + if ( destroyed ) + throw new IllegalStateException("The EGL surface has been destroyed."); + } + + public void destroy() throws LWJGLException { + eglDestroyContext(display, this); + destroyed = true; + } + + /** + * Returns the value of the specified EGL context attribute. + * + * @param attribute the context attribute + * + * @return the attribute value + */ + int getAttribute(final int attribute) throws LWJGLException { + checkDestroyed(); + + IntBuffer value = APIUtil.getBufferInt(); + eglQueryContext(display, this, attribute, value); + return value.get(0); + } + + public void makeCurrent(final EGLSurface surface) throws LWJGLException, PowerManagementEventException { + makeCurrent(surface, surface); + } + + public void makeCurrent(final EGLSurface draw, final EGLSurface read) throws LWJGLException, PowerManagementEventException { + eglMakeCurrent(display, draw, read, this); + } + + public boolean equals(final Object obj) { + if ( obj == null || !(obj instanceof EGLContext) ) + return false; + + return getPointer() == ((EGLContext)obj).getPointer(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLDisplay.java b/src/java/org/lwjgl/opengles/EGLDisplay.java new file mode 100644 index 00000000..fe49e25d --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLDisplay.java @@ -0,0 +1,216 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.PointerWrapperAbstract; + +import java.nio.IntBuffer; +import java.util.HashSet; +import java.util.Set; +import java.util.StringTokenizer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGLDisplay wrapper class. */ +public final class EGLDisplay extends PointerWrapperAbstract { + + private int majorVersion; + private int minorVersion; + + private Set extensions; + + private boolean initialized; + + EGLDisplay(final long pointer) throws LWJGLException { + super(pointer); + + initialize(); + + /*final EGLConfig[] configs = eglGetConfigs(this, null, APIUtil.getBufferInt()); + for ( EGLConfig config : configs ) { + System.out.println(config); + System.out.println(""); + }*/ + } + + /** + * Returns the major EGL version of this EGL display. + * + * @return the major EGL version + */ + public int getMajorVersion() { + return majorVersion; + } + + /** + * Returns the minor EGL version of this EGL display. + * + * @return the minor EGL version + */ + public int getMinorVersion() { + return minorVersion; + } + + /** + * Returns true if the specified EGL extension is supported by this EGL display. + * + * @param eglExtension the EGL extension + * + * @return true if the extension is supported + */ + public boolean isExtensionSupported(final String eglExtension) { + checkInitialized(); + if ( extensions == null ) { + extensions = new HashSet(16); + + final StringTokenizer tokenizer = new StringTokenizer(eglQueryString(this, EGL_EXTENSIONS)); + while ( tokenizer.hasMoreTokens() ) + extensions.add(tokenizer.nextToken()); + } + + return extensions.contains(eglExtension); + } + + boolean isInitialized() { + return initialized; + } + + private void initialize() throws LWJGLException { + IntBuffer version = APIUtil.getBufferInt(); + eglInitialize(this, version); + + majorVersion = version.get(0); + minorVersion = version.get(1); + + initialized = true; + } + + private void checkInitialized() { + if ( !initialized ) + throw new IllegalStateException("The EGL display needs to be initialized first."); + } + + /** Release the resources associated with this EGL display. */ + public void terminate() throws LWJGLException { + eglTerminate(this); + + majorVersion = 0; + minorVersion = 0; + + initialized = false; + } + + /** + * Returns a string describing some aspect of the EGL implementation running on the specified display. + * + * @param name the value to query + * + * @return the description + */ + public String query(int name) { + checkInitialized(); + return eglQueryString(this, name); + } + + int getConfigsNum() throws LWJGLException { + checkInitialized(); + return eglGetConfigsNum(this); + } + + EGLConfig[] getConfigs(EGLConfig[] configs, IntBuffer num_config) throws LWJGLException { + checkInitialized(); + return eglGetConfigs(this, configs, num_config); + } + + int getConfigNum(IntBuffer attrib_list) throws LWJGLException { + checkInitialized(); + return eglChooseConfigNum(this, attrib_list); + } + + /** Returns the available EGL configs on this display that satisfy the specified list of attributes. */ + public EGLConfig[] chooseConfig(IntBuffer attrib_list, EGLConfig[] configs, IntBuffer num_config) throws LWJGLException { + checkInitialized(); + return eglChooseConfig(this, attrib_list, configs, num_config); + } + + /** + * Creates an on-screen rendering surface on this EGL display. + * + * @param config the EGL config + * @param window the native window handle + * @param attrib_list an attribute list (may be null) + * + * @return the EGL surface + */ + public EGLSurface createWindowSurface(EGLConfig config, int window, IntBuffer attrib_list) throws LWJGLException { + checkInitialized(); + + if ( config.getDisplay() != this ) + throw new IllegalArgumentException("Invalid EGL config specified."); + + return eglCreateWindowSurface(this, config, window, attrib_list); + } + + EGLSurface createPbufferSurface(EGLConfig config, IntBuffer attrib_list) throws LWJGLException { + checkInitialized(); + + if ( config.getDisplay() != this ) + throw new IllegalArgumentException("Invalid EGL config specified."); + + return eglCreatePbufferSurface(this, config, attrib_list); + } + + public EGLContext createContext(EGLConfig config, EGLContext shareContext, IntBuffer attrib_list) throws LWJGLException { + checkInitialized(); + + if ( config.getDisplay() != this ) + throw new IllegalStateException("Invalid EGL config specified."); + + if ( shareContext != null && shareContext.getDisplay() != this ) + throw new IllegalStateException("Invalid shared EGL context specified."); + + return eglCreateContext(this, config, shareContext, attrib_list); + } + + public void setSwapInterval(final int interval) throws LWJGLException { + eglSwapInterval(this, interval); + } + + public boolean equals(final Object obj) { + if ( obj == null || !(obj instanceof EGLDisplay) ) + return false; + + return getPointer() == ((EGLDisplay)obj).getPointer(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLImageOES.java b/src/java/org/lwjgl/opengles/EGLImageOES.java new file mode 100644 index 00000000..6dabe9cb --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLImageOES.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.PointerWrapperAbstract; + +/** EGLImageOES wrapper class. */ +public final class EGLImageOES extends PointerWrapperAbstract { + + public EGLImageOES(final long pointer) { + super(pointer); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLKHRFenceSync.java b/src/java/org/lwjgl/opengles/EGLKHRFenceSync.java new file mode 100644 index 00000000..bd74e2ef --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLKHRFenceSync.java @@ -0,0 +1,173 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGL_KHR_fence_sync wrapper class. */ +public final class EGLKHRFenceSync { + + /** + * Accepted by the <type> parameter of eglCreateSyncKHR, and returned + * in <value> when eglGetSyncAttribKHR is called with <attribute> + * EGL_SYNC_TYPE_KHR: + */ + public static final int EGL_SYNC_FENCE_KHR = 0x30F9; + + /** Accepted by the <attribute> parameter of eglGetSyncAttribKHR: */ + public static final int EGL_SYNC_TYPE_KHR = 0x30F7, + EGL_SYNC_STATUS_KHR = 0x30F1, + EGL_SYNC_CONDITION_KHR = 0x30F8; + + /** + * Returned in <value> when eglGetSyncAttribKHR is called with + * <attribute> EGL_SYNC_STATUS_KHR: + */ + public static final int EGL_SIGNALED_KHR = 0x30F2, + EGL_UNSIGNALED_KHR = 0x30F3; + + /** + * Returned in <value> when eglGetSyncAttribKHR is called with + * <attribute> EGL_SYNC_CONDITION_KHR: + */ + public static final int EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR = 0x30F0; + + /** Accepted in the <flags> parameter of eglClientWaitSyncKHR: */ + public static final int EGL_SYNC_FLUSH_COMMANDS_BIT_KHR = 0x0001; + + /** Accepted in the <timeout> parameter of eglClientWaitSyncKHR: */ + public static final long EGL_FOREVER_KHR = 0xFFFFFFFFFFFFFFFFl; + + /** Returned by eglClientWaitSyncKHR: */ + public static final int EGL_TIMEOUT_EXPIRED_KHR = 0x30F5, + EGL_CONDITION_SATISFIED_KHR = 0x30F6; + + /** Returned by eglCreateSyncKHR in the event of an error: */ + public static final long EGL_NO_SYNC_KHR = 0; + + static { + initNativeStubs(); + } + + private EGLKHRFenceSync() { + } + + private static native void initNativeStubs(); + + /** + * Creates a fence sync object for the specified EGL display and returns + * a handle to the new object. + * + * @param dpy the EGL display + * @param type the sync type + * @param attrib_list an attribute list (may be null) + * + * @return the created fence sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static EGLSyncKHR eglCreateSyncKHR(EGLDisplay dpy, int type, IntBuffer attrib_list) throws LWJGLException { + checkAttribList(attrib_list); + + final long pointer = neglCreateSyncKHR(dpy.getPointer(), type, attrib_list, attrib_list == null ? 0 : attrib_list.position()); + + if ( pointer == EGL_NO_SYNC_KHR ) + throwEGLError("Failed to create KHR fence sync object."); + + return new EGLSyncKHR(pointer); + } + + private static native long neglCreateSyncKHR(long dpy_ptr, int type, IntBuffer attrib_list, int attrib_list_position); + + /** + * Destroys an existing sync object. + * + * @param sync the sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync) throws LWJGLException { + if ( !neglDestroySyncKHR(dpy.getPointer(), sync.getPointer()) ) + throwEGLError("Failed to destroy KHR fence sync object."); + } + + private static native boolean neglDestroySyncKHR(long dpy_ptr, long sync_ptr); + + /** + * Blocks the calling thread until the specified sync object is + * signaled, or until a specified timeout value expires. + * + * @param sync the sync object + * @param flags the block flags + * @param timeout the block timeout + * + * @return the sync object status + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, int flags, long timeout) throws LWJGLException { + final int status = neglClientWaitSyncKHR(dpy.getPointer(), sync.getPointer(), flags, timeout); + + if ( status == EGL_FALSE ) + throwEGLError("Failed to block on KHR fence sync object."); + + return status; + } + + private static native int neglClientWaitSyncKHR(long dpy_ptr, long sync_ptr, int flags, long timeout); + + /** + * Returns the value of the sync object attribute. + * + * @param sync the sync object + * @param attribute the attribute to query + * + * @return the attribute value + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, int attribute) throws LWJGLException { + final IntBuffer value = APIUtil.getBufferInt(); + + if ( !neglGetSyncAttribKHR(dpy.getPointer(), sync.getPointer(), attribute, value, value.position()) ) + throwEGLError("Failed to get KHR fence sync object attribute."); + + return value.get(0); + } + + private static native boolean neglGetSyncAttribKHR(long dpy_ptr, long sync_ptr, int attribute, IntBuffer value, int value_position); + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLKHRReusableSync.java b/src/java/org/lwjgl/opengles/EGLKHRReusableSync.java new file mode 100644 index 00000000..40297b04 --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLKHRReusableSync.java @@ -0,0 +1,156 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGL_KHR_reusable_sync wrapper class. */ +public final class EGLKHRReusableSync { + + /** + * Accepted by the <type> parameter of eglCreateSyncKHR, and returned + * in <value> when eglGetSyncAttribKHR is called with <attribute> + * EGL_SYNC_TYPE_KHR: + */ + public static final int EGL_SYNC_REUSABLE_KHR = 0x30FA; + + /** Accepted by the <attribute> parameter of eglGetSyncAttribKHR: */ + public static final int EGL_SYNC_TYPE_KHR = 0x30F7, + EGL_SYNC_STATUS_KHR = 0x30F1; + + /** + * Returned in <value> when eglGetSyncAttribKHR is called with + * <attribute> EGL_SYNC_STATUS_KHR: + */ + public static final int EGL_SIGNALED_KHR = 0x30F2, + EGL_UNSIGNALED_KHR = 0x30F3; + + /** Accepted in the <flags> parameter of eglClientWaitSyncKHR: */ + public static final int EGL_SYNC_FLUSH_COMMANDS_BIT_KHR = 0x0001; + + /** Accepted in the <timeout> parameter of eglClientWaitSyncKHR: */ + public static final long EGL_FOREVER_KHR = 0xFFFFFFFFFFFFFFFFl; + + /** Returned by eglClientWaitSyncKHR: */ + public static final int EGL_TIMEOUT_EXPIRED_KHR = 0x30F5, + EGL_CONDITION_SATISFIED_KHR = 0x30F6; + + /** Returned by eglCreateSyncKHR in the event of an error: */ + public static final long EGL_NO_SYNC_KHR = 0; + + static { + initNativeStubs(); + } + + private EGLKHRReusableSync() { + } + + private static native void initNativeStubs(); + + /** + * Creates a fence sync object for the specified EGL display and returns + * a handle to the new object. + * + * @param dpy the EGL display + * @param type the sync type + * @param attrib_list an attribute list (may be null) + * + * @return the created fence sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static EGLSyncKHR eglCreateSyncKHR(EGLDisplay dpy, int type, IntBuffer attrib_list) throws LWJGLException { + return EGLKHRFenceSync.eglCreateSyncKHR(dpy, type, attrib_list); + } + + /** + * Destroys an existing sync object. + * + * @param sync the sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync) throws LWJGLException { + EGLKHRFenceSync.eglDestroySyncKHR(dpy, sync); + } + + /** + * Blocks the calling thread until the specified sync object is + * signaled, or until a specified timeout value expires. + * + * @param sync the sync object + * @param flags the block flags + * @param timeout the block timeout + * + * @return the sync object status + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, int flags, long timeout) throws LWJGLException { + return EGLKHRFenceSync.eglClientWaitSyncKHR(dpy, sync, flags, timeout); + } + + /** + * Signals or unsignals the sync object by changing its status to + * the specified mode. + * + * @param sync the sync object + * @param mode the mode + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, int mode) throws LWJGLException { + if ( !neglSignalSyncKHR(dpy.getPointer(), sync.getPointer(), mode) ) + throwEGLError("Failed to signal the KHR fence sync object."); + } + + private static native boolean neglSignalSyncKHR(long dpy_ptr, long sync_ptr, int mode); + + /** + * Returns the value of the sync object attribute. + * + * @param sync the sync object + * @param attribute the attribute to query + * + * @return the attribute value + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, int attribute) throws LWJGLException { + return EGLKHRFenceSync.eglGetSyncAttribKHR(dpy, sync, attribute); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLNVSync.java b/src/java/org/lwjgl/opengles/EGLNVSync.java new file mode 100644 index 00000000..78e66b06 --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLNVSync.java @@ -0,0 +1,214 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGL_NV_sync wrapper class. */ +public final class EGLNVSync { + + /** + * Accepted in the <condition> parameter of eglCreateFenceSyncNV, and + * returned in <value> when eglGetSyncAttribNV is called with <attribute> + * EGL_SYNC_CONDITION_NV: + */ + public static final int EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV = 0x30E6; + + /** + * Accepted as an attribute name in the <attrib_list> parameter of + * eglCreateFenceSyncNV, and by the <attribute> parameter of + * eglGetSyncAttribNV: + */ + public static final int EGL_SYNC_STATUS_NV = 0x30E7; + + /** + * Accepted as an attribute value in the <attrib_list> parameter of + * eglCreateFenceSyncNV for the EGL_SYNC_STATUS_NV attribute, by + * the <mode> parameter of eglSignalSyncNV and returned in <value> + * when eglGetSyncAttribNV is called with <attribute> + * EGL_SYNC_STATUS_NV: + */ + public static final int EGL_SIGNALED_NV = 0x30E8, + EGL_UNSIGNALED_NV = 0x30E9; + + /** Accepted in the <flags> parameter of eglClientWaitSyncNV: */ + public static final int EGL_SYNC_FLUSH_COMMANDS_BIT_NV = 0x0001; + + /** Accepted in the <timeout> parameter of eglClientWaitSyncNV: */ + public static final long EGL_FOREVER_NV = 0xFFFFFFFFFFFFFFFFL; + + /** Returned by eglClientWaitSyncNV: */ + public static final int EGL_ALREADY_SIGNALED_NV = 0x30EA, + EGL_TIMEOUT_EXPIRED_NV = 0x30EB, + EGL_CONDITION_SATISFIED_NV = 0x30EC; + + /** Accepted in the <attribute> parameter of eglGetSyncAttribNV: */ + public static final int EGL_SYNC_TYPE_NV = 0x30ED, + EGL_SYNC_CONDITION_NV = 0x30EE; + + /** + * Returned in <value> when eglGetSyncAttribNV is called with + * <attribute> EGL_SYNC_TYPE_NV: + */ + public static final int EGL_SYNC_FENCE_NV = 0x30EF; + + /** Returned by eglCreateFenceSyncNV in the event of an error: */ + public static final long EGL_NO_SYNC_NV = 0; + + static { + initNativeStubs(); + } + + private EGLNVSync() { + } + + private static native void initNativeStubs(); + + /** + * Creates a fence sync object for the specified EGL display and returns + * a handle to the new object. + * + * @param dpy the EGL display + * @param condition the sync condition + * @param attrib_list an attribute list (may be null) + * + * @return the created fence sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static EGLSyncNV eglCreateFenceSyncNV(EGLDisplay dpy, int condition, IntBuffer attrib_list) throws LWJGLException { + checkAttribList(attrib_list); + + final long pointer = neglCreateFenceSyncNV(dpy.getPointer(), condition, attrib_list, attrib_list == null ? 0 : attrib_list.position()); + + if ( pointer == EGL_NO_SYNC_NV ) + throwEGLError("Failed to create NV fence sync object."); + + return new EGLSyncNV(pointer); + } + + private static native long neglCreateFenceSyncNV(long dpy_ptr, int condition, IntBuffer attrib_list, int attrib_list_position); + + /** + * Destroys an existing sync object. + * + * @param sync the sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglDestroySyncNV(EGLSyncNV sync) throws LWJGLException { + if ( !neglDestroySyncNV(sync.getPointer()) ) + throwEGLError("Failed to destroy NV fence sync object."); + } + + private static native boolean neglDestroySyncNV(long sync_ptr); + + /** + * Inserts a fence command into the command stream of the bound API's current + * context and associates it with sync object. + * + * @param sync the sync object + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglFenceNV(EGLSyncNV sync) throws LWJGLException { + if ( !neglFenceNV(sync.getPointer()) ) + throwEGLError("Failed to insert NV fence command."); + } + + private static native boolean neglFenceNV(long sync_ptr); + + /** + * Blocks the calling thread until the specified sync object is + * signaled, or until a specified timeout value expires. + * + * @param sync the sync object + * @param flags the block flags + * @param timeout the block timeout + * + * @return the sync object status + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglClientWaitSyncNV(EGLSyncNV sync, int flags, long timeout) throws LWJGLException { + final int status = neglClientWaitSyncNV(sync.getPointer(), flags, timeout); + + if ( status == EGL_FALSE ) + throwEGLError("Failed to block on NV fence sync object."); + + return status; + } + + private static native int neglClientWaitSyncNV(long sync_ptr, int flags, long timeout); + + /** + * Signals or unsignals the sync object by changing its status to + * the specified mode. + * + * @param sync the sync object + * @param mode the mode + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static void eglSignalSyncNV(EGLSyncNV sync, int mode) throws LWJGLException { + if ( !neglSignalSyncNV(sync.getPointer(), mode) ) + throwEGLError("Failed to signal the NV fence sync object."); + } + + private static native boolean neglSignalSyncNV(long sync_ptr, int mode); + + /** + * Returns the value of the sync object attribute. + * + * @param sync the sync object + * @param attribute the attribute to query + * + * @return the attribute value + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs. + */ + public static int eglGetSyncAttribNV(EGLSyncNV sync, int attribute) throws LWJGLException { + final IntBuffer value = APIUtil.getBufferInt(); + + if ( !neglGetSyncAttribNV(sync.getPointer(), attribute, value, 0) ) + throwEGLError("Failed to get NV fence sync object attribute."); + + return value.get(0); + } + + private static native boolean neglGetSyncAttribNV(long sync_ptr, int attribute, IntBuffer value, int value_position); + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLSurface.java b/src/java/org/lwjgl/opengles/EGLSurface.java new file mode 100644 index 00000000..a68be83b --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLSurface.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.PointerWrapperAbstract; + +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.EGL.*; + +/** EGLSurface wrapper class. */ +public final class EGLSurface extends PointerWrapperAbstract { + + private final EGLDisplay display; + private final EGLConfig config; + + private boolean destroyed; + + EGLSurface(final EGLDisplay display, final EGLConfig config, final long pointer) { + super(pointer); + + if ( !display.isInitialized() ) + throw new IllegalStateException("Invalid EGL display specified."); + + this.display = display; + this.config = config; + } + + /** + * Returns the EGL display from which this EGL surface was created. + * + * @return the EGL display + */ + public EGLDisplay getDisplay() { + return display; + } + + /** + * Returns the EGL config associated with this EGL surface. + * + * @return the EGL config + */ + public EGLConfig getConfig() { + return config; + } + + private void checkDestroyed() { + if ( destroyed ) + throw new IllegalStateException("The EGL surface has been destroyed."); + } + + /** Destroys this EGL surface. */ + public void destroy() throws LWJGLException { + eglDestroySurface(display, this); + destroyed = true; + } + + void setAttribute(int attribute, int value) throws LWJGLException { + checkDestroyed(); + eglSurfaceAttrib(display, this, attribute, value); + } + + /** + * Returns the value of the specified EGL surface attribute. + * + * @param attribute the surface attribute + * + * @return the attribute value + */ + public int getAttribute(int attribute) throws LWJGLException { + checkDestroyed(); + + IntBuffer value = APIUtil.getBufferInt(); + eglQuerySurface(display, this, attribute, value); + return value.get(0); + } + + public void swapBuffers() throws LWJGLException, PowerManagementEventException { + checkDestroyed(); + eglSwapBuffers(display, this); + } + + public boolean equals(final Object obj) { + if ( obj == null || !(obj instanceof EGLSurface) ) + return false; + + return getPointer() == ((EGLSurface)obj).getPointer(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLSyncKHR.java b/src/java/org/lwjgl/opengles/EGLSyncKHR.java new file mode 100644 index 00000000..eb2f5be3 --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLSyncKHR.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.PointerWrapperAbstract; + +/** EGLSyncKHR wrapper class. */ +public class EGLSyncKHR extends PointerWrapperAbstract { + + public EGLSyncKHR(final long pointer) { + super(pointer); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/EGLSyncNV.java b/src/java/org/lwjgl/opengles/EGLSyncNV.java new file mode 100644 index 00000000..84fb2335 --- /dev/null +++ b/src/java/org/lwjgl/opengles/EGLSyncNV.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.PointerWrapperAbstract; + +/** EGLSyncNV wrapper class. */ +public class EGLSyncNV extends PointerWrapperAbstract { + + public EGLSyncNV(final long pointer) { + super(pointer); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/GLChecks.java b/src/java/org/lwjgl/opengles/GLChecks.java new file mode 100644 index 00000000..64b04cae --- /dev/null +++ b/src/java/org/lwjgl/opengles/GLChecks.java @@ -0,0 +1,188 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.opengl.OpenGLException; + +import java.nio.Buffer; + +import static org.lwjgl.opengles.GLES20.*; + +/** + * A class to check buffer boundaries in GL methods. Many GL + * methods read data from the GL into a native Buffer at its current position. If there is unsufficient space in the buffer when + * the call is made then a buffer overflow would otherwise occur and cause unexpected behaviour, a crash, or worse, a security + * risk. Therefore in those methods where GL reads data back into a buffer, we will call a bounds check method from this class + * to ensure that there is sufficient space in the buffer. + *

+ * Thrown by the debug build library of the LWJGL if any OpenGL operation causes an error. + * + * @author cix_foo + * @version $Revision: 3459 $ + * $Id: GLChecks.java 3459 2010-11-29 17:21:05Z spasi $ + */ +class GLChecks { + + /** Static methods only! */ + private GLChecks() { + } + + static int getBufferObjectSize(int buffer_enum) { + return glGetBufferParameter(buffer_enum, GLES20.GL_BUFFER_SIZE); + } + + /** Helper method to ensure that array buffer objects are disabled. If they are enabled, we'll throw an OpenGLException */ + static void ensureArrayVBOdisabled() { + if ( LWJGLUtil.CHECKS && StateTracker.getTracker().arrayBuffer != 0 ) + throw new OpenGLException("Cannot use Buffers when Array Buffer Object is enabled"); + } + + /** Helper method to ensure that array buffer objects are enabled. If they are disabled, we'll throw an OpenGLException */ + static void ensureArrayVBOenabled() { + if ( LWJGLUtil.CHECKS && StateTracker.getTracker().arrayBuffer == 0 ) + throw new OpenGLException("Cannot use offsets when Array Buffer Object is disabled"); + } + + /** Helper method to ensure that element array buffer objects are disabled. If they are enabled, we'll throw an OpenGLException */ + static void ensureElementVBOdisabled() { + if ( LWJGLUtil.CHECKS && StateTracker.getTracker().elementArrayBuffer != 0 ) + throw new OpenGLException("Cannot use Buffers when Element Array Buffer Object is enabled"); + } + + /** Helper method to ensure that element array buffer objects are enabled. If they are disabled, we'll throw an OpenGLException */ + static void ensureElementVBOenabled() { + if ( LWJGLUtil.CHECKS && StateTracker.getTracker().elementArrayBuffer == 0 ) + throw new OpenGLException("Cannot use offsets when Element Array Buffer Object is disabled"); + } + + /** + * Calculate the storage required for an image in elements + * + * @param format The format of the image (example: GL_RGBA) + * @param type The type of the image elements (example: GL_UNSIGNED_BYTE) + * @param width The width of the image + * @param height The height of the image (1 for 1D images) + * @param depth The depth of the image (1 for 2D images) + * + * @return the size, in elements, of the image + */ + static int calculateImageStorage(Buffer buffer, int format, int type, int width, int height, int depth) { + return LWJGLUtil.CHECKS ? calculateImageStorage(format, type, width, height, depth) >> BufferUtils.getElementSizeExponent(buffer) : 0; + } + + static int calculateTexImage1DStorage(Buffer buffer, int format, int type, int width) { + return LWJGLUtil.CHECKS ? calculateTexImage1DStorage(format, type, width) >> BufferUtils.getElementSizeExponent(buffer) : 0; + } + + static int calculateTexImage2DStorage(Buffer buffer, int format, int type, int width, int height) { + return LWJGLUtil.CHECKS ? calculateTexImage2DStorage(format, type, width, height) >> BufferUtils.getElementSizeExponent(buffer) : 0; + } + + static int calculateTexImage3DStorage(Buffer buffer, int format, int type, int width, int height, int depth) { + return LWJGLUtil.CHECKS ? calculateTexImage3DStorage(format, type, width, height, depth) >> BufferUtils.getElementSizeExponent(buffer) : 0; + } + + /** + * Calculate the storage required for an image in bytes. + * + * @param format The format of the image (example: GL_RGBA) + * @param type The type of the image elements (example: GL_UNSIGNED_BYTE) + * @param width The width of the image + * @param height The height of the image (1 for 1D images) + * @param depth The depth of the image (1 for 2D images) + * + * @return the size, in bytes, of the image + */ + private static int calculateImageStorage(int format, int type, int width, int height, int depth) { + return calculateBytesPerPixel(format, type) * width * height * depth; + } + + private static int calculateTexImage1DStorage(int format, int type, int width) { + return calculateBytesPerPixel(format, type) * width; + } + + private static int calculateTexImage2DStorage(int format, int type, int width, int height) { + return calculateTexImage1DStorage(format, type, width) * height; + } + + private static int calculateTexImage3DStorage(int format, int type, int width, int height, int depth) { + return calculateTexImage2DStorage(format, type, width, height) * depth; + } + + private static int calculateBytesPerPixel(int format, int type) { + int bpe; + switch ( type ) { + case GL_UNSIGNED_BYTE: + case GL_BYTE: + bpe = 1; + break; + case GL_UNSIGNED_SHORT: + case GL_SHORT: + bpe = 2; + break; + case GL_UNSIGNED_INT: + case GL_INT: + case GL_FLOAT: + bpe = 4; + break; + default: + // TODO: Add more types (like the GL12 types GL_UNSIGNED_INT_8_8_8_8 + return 0; + // throw new IllegalArgumentException("Unknown type " + type); + } + int epp; + switch ( format ) { + case GL_LUMINANCE: + case GL_ALPHA: + epp = 1; + break; + + case GL_LUMINANCE_ALPHA: + epp = 2; + break; + case GL_RGB: + epp = 3; + break; + case GL_RGBA: + epp = 4; + break; + default: + // TODO: Add more formats. Assuming 4 is too wasteful on buffer sizes where e.g. 1 is enough (like GL_DEPTH_COMPONENT) + return 0; + } + + return bpe * epp; + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/GLContext.java b/src/java/org/lwjgl/opengles/GLContext.java new file mode 100644 index 00000000..52acb016 --- /dev/null +++ b/src/java/org/lwjgl/opengles/GLContext.java @@ -0,0 +1,310 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.Sys; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.security.AccessController; +import java.security.PrivilegedActionException; +import java.security.PrivilegedExceptionAction; +import java.util.Map; +import java.util.Set; +import java.util.StringTokenizer; +import java.util.WeakHashMap; + +import static org.lwjgl.opengles.GLES20.*; + +/** + *

+ * Manages GL contexts. Before any rendering is done by a LWJGL system, a call should be made to GLContext.useContext() with a + * context. This will ensure that GLContext has an accurate reflection of the current context's capabilities and function + * pointers. + *

+ * This class is thread-safe in the sense that multiple threads can safely call all public methods. The class is also + * thread-aware in the sense that it tracks a per-thread current context (including capabilities and function pointers). + * That way, multiple threads can have multiple contexts current and render to them concurrently. + * + * @author elias_naur + * @version $Revision: 3279 $ + * $Id: GLContext.java 3279 2010-03-11 21:06:49Z spasi $ + */ +public final class GLContext { + + /** Maps threads to their current context's ContextCapabilities, if any */ + private static final ThreadLocal current_capabilities = new ThreadLocal(); + + /** + * The getCapabilities() method is a potential hot spot in any LWJGL application, since + * it is needed for context capability discovery (e.g. is OpenGL 2.0 supported?), and + * for the function pointers of gl functions. However, the 'current_capabilities' ThreadLocal + * is (relatively) expensive to look up, and since most OpenGL applications use are single threaded + * rendering, the following two is an optimization for this case. + *

+ * ThreadLocals can be thought of as a mapping between threads and values, so the idea + * is to use a lock-less cache of mappings between threads and the current ContextCapabilities. The cache + * could be any size, but in our case, we want a single sized cache for optimal performance + * in the single threaded case. + *

+ * 'fast_path_cache' is the most recent ContextCapabilities (potentially null) and its owner. By + * recent I mean the last thread setting the value in setCapabilities(). When getCapabilities() + * is called, a check to see if the current is the owner of the ContextCapabilities instance in + * fast_path_cache. If so, the instance is returned, if not, some thread has since taken ownership + * of the cache entry and the slower current_capabilities ThreadLocal is queried instead. + *

+ * No locks are needed in get/setCapabilities, because even though fast_path_cache can be accessed + * from multiple threads at once, we are guaranteed by the JVM spec that its value is always valid. + * Furthermore, if the ownership test in getCapabilities() succeeds, the cache entry can only contain + * the correct ContextCapabilites (that is, the one from getThreadLocalCapabilites()), + * since no other thread can set the owner to anyone else than itself. + */ + private static CapabilitiesCacheEntry fast_path_cache = new CapabilitiesCacheEntry(); + + /** + * Simple lock-free cache of CapabilitesEntryCache to avoid allocating more than one + * cache entry per thread + */ + private static final ThreadLocal thread_cache_entries = new ThreadLocal(); + + /** + * The weak mapping from context Object instances to ContextCapabilities. Used + * to avoid recreating a ContextCapabilities every time a context is made current. + */ + private static final Map capability_cache = new WeakHashMap(); + + /** Reference count of the native opengl implementation library */ + private static int gl_ref_count; + private static boolean did_auto_load; + + static { + Sys.initialize(); + } + + /** + * Get the current capabilities instance. It contains the flags used + * to test for support of a particular extension. + * + * @return The current capabilities instance. + */ + public static ContextCapabilities getCapabilities() { + CapabilitiesCacheEntry recent_cache_entry = fast_path_cache; + // Check owner of cache entry + if ( recent_cache_entry.owner == Thread.currentThread() ) { + /* The owner ship test succeeded, so the cache must contain the current ContextCapabilities instance + * assert recent_cache_entry.capabilities == getThreadLocalCapabilities(); + */ + return recent_cache_entry.capabilities; + } else // Some other thread has written to the cache since, and we fall back to the slower path + return getThreadLocalCapabilities(); + } + + private static ContextCapabilities getThreadLocalCapabilities() { + return current_capabilities.get(); + } + + /** + * Set the current capabilities instance. It contains the flags used + * to test for support of a particular extension. + * + * @return The current capabilities instance. + */ + static void setCapabilities(ContextCapabilities capabilities) { + current_capabilities.set(capabilities); + + CapabilitiesCacheEntry thread_cache_entry = thread_cache_entries.get(); + if ( thread_cache_entry == null ) { + thread_cache_entry = new CapabilitiesCacheEntry(); + thread_cache_entries.set(thread_cache_entry); + } + thread_cache_entry.owner = Thread.currentThread(); + thread_cache_entry.capabilities = capabilities; + + fast_path_cache = thread_cache_entry; + } + + /** + * Determine which extensions are available and returns the context profile mask. Helper method to ContextCapabilities. + * + * @param supported_extensions the Set to fill with the available extension names + * + * @return the context profile mask, will be 0 for any version < 3.2 + */ + static void getSupportedExtensions(final Set supported_extensions) { + // Detect OpenGL version first + final String version = glGetString(GL_VERSION); + if ( version == null ) + throw new IllegalStateException("glGetString(GL_VERSION) returned null - possibly caused by missing current context."); + + final String VERSION_PREFIX = "OpenGL ES "; + final StringTokenizer version_tokenizer = new StringTokenizer(version.substring(VERSION_PREFIX.length()), ". "); + + int majorVersion = 0; + int minorVersion = 0; + try { + majorVersion = Integer.parseInt(version_tokenizer.nextToken()); + minorVersion = Integer.parseInt(version_tokenizer.nextToken()); + } catch (NumberFormatException e) { + LWJGLUtil.log("The major and/or minor OpenGL version is malformed: " + e.getMessage()); + } + + // ----------------------[ 2.X ]---------------------- + if ( 2 <= majorVersion ) + supported_extensions.add("OpenGLES20"); + + // Parse EXTENSIONS string + final String extensions_string = glGetString(GL_EXTENSIONS); + if ( extensions_string == null ) + throw new IllegalStateException("glGetString(GL_EXTENSIONS) returned null - is there a context current?"); + + final StringTokenizer tokenizer = new StringTokenizer(extensions_string); + while ( tokenizer.hasMoreTokens() ) + supported_extensions.add(tokenizer.nextToken()); + } + + /** + * Helper method to ContextCapabilities. It will try to initialize the native stubs, + * and remove the given extension name from the extension set if the initialization fails. + */ + static void initNativeStubs(final Class extension_class, Set supported_extensions, String ext_name) { + //resetNativeStubs(extension_class); + if ( supported_extensions.contains(ext_name) ) { + try { + doInitNativeStubs(extension_class); + } catch (LWJGLException e) { + LWJGLUtil.log("Failed to initialize extension " + extension_class + " - exception: " + e); + supported_extensions.remove(ext_name); + } + } + } + + static void doInitNativeStubs(final Class extension_class) throws LWJGLException { + try { + AccessController.doPrivileged(new PrivilegedExceptionAction() { + public Object run() throws Exception { + Method init_stubs_method = extension_class.getDeclaredMethod("initNativeStubs"); + init_stubs_method.invoke(null); + return null; + } + }); + } catch (PrivilegedActionException e) { + final Throwable c = e.getCause(); + if ( c instanceof InvocationTargetException ) + throw new LWJGLException(c.getCause()); + else + throw new LWJGLException(c); + } + } + + /** + * Makes a GL context the current LWJGL context by loading GL function pointers. The context must be current before a call to + * this method! Instead it simply ensures that the current context is reflected accurately by GLContext's extension caps and + * function pointers. Use useContext(null) when no context is active.

If the context is the same as last time, then this is + * a no-op.

If the context has not been encountered before it will be fully initialized from scratch. Otherwise a cached set + * of caps and function pointers will be used.

The reference to the context is held in a weak reference; therefore if no + * strong reference exists to the GL context it will automatically be forgotten by the VM at an indeterminate point in the + * future, freeing up a little RAM. + * + * @param context The context object, which uniquely identifies a GL context. If context is null, the native stubs are + * unloaded. + * + * @throws org.lwjgl.LWJGLException if context non-null, and the gl library can't be loaded or the basic GL11 functions can't be loaded + */ + public static synchronized void useContext(Object context) throws LWJGLException { + if ( context == null ) { + // Moved this to the shutdown hook + ContextCapabilities.unloadAllStubs(); + setCapabilities(null); + if ( did_auto_load ) + unloadOpenGLLibrary(); + return; + } + + if ( gl_ref_count == 0 ) { + loadOpenGLLibrary(); + did_auto_load = true; + } + + try { + ContextCapabilities capabilities = capability_cache.get(context); + if ( capabilities == null ) { + /* + * The capabilities object registers itself as current. This behaviour is caused + * by a chicken-and-egg situation where the constructor needs to call GL functions + * as part of its capability discovery, but GL functions cannot be called before + * a capabilities object has been set. + */ + new ContextCapabilities(); + capability_cache.put(context, getCapabilities()); + } else + setCapabilities(capabilities); + } catch (LWJGLException e) { + if ( did_auto_load ) + unloadOpenGLLibrary(); + throw e; + + } + } + + /** If the OpenGL reference count is 0, the library is loaded. The reference count is then incremented. */ + public static synchronized void loadOpenGLLibrary() throws LWJGLException { + if ( gl_ref_count == 0 ) + nLoadOpenGLLibrary(); + gl_ref_count++; + } + + private static native void nLoadOpenGLLibrary() throws LWJGLException; + + /** The OpenGL library reference count is decremented, and if it reaches 0, the library is unloaded. */ + public static synchronized void unloadOpenGLLibrary() { + gl_ref_count--; + /* + * Unload the native OpenGL library unless we're on linux, since + * some drivers (NVIDIA proprietary) crash on exit when unloading the library. + */ + if ( gl_ref_count == 0 && LWJGLUtil.getPlatform() != LWJGLUtil.PLATFORM_LINUX ) + nUnloadOpenGLLibrary(); + } + + private static native void nUnloadOpenGLLibrary(); + + /** Native method to clear native stub bindings */ + static native void resetNativeStubs(Class clazz); + + private static final class CapabilitiesCacheEntry { + + Thread owner; + ContextCapabilities capabilities; + } +} diff --git a/src/java/org/lwjgl/opengles/PeerInfo.java b/src/java/org/lwjgl/opengles/PeerInfo.java new file mode 100644 index 00000000..c6d766ec --- /dev/null +++ b/src/java/org/lwjgl/opengles/PeerInfo.java @@ -0,0 +1,97 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; + +import java.nio.ByteBuffer; + +/** + * + * @author elias_naur + * @version $Revision: 3418 $ + * $Id: PeerInfo.java 3418 2010-09-28 21:11:35Z spasi $ + */ +abstract class PeerInfo { + private final ByteBuffer handle; + private Thread locking_thread; // Thread that has locked this PeerInfo + private int lock_count; + + protected PeerInfo(ByteBuffer handle) { + this.handle = handle; + } + + private void lockAndInitHandle() throws LWJGLException { + doLockAndInitHandle(); + } + + public final synchronized void unlock() throws LWJGLException { + if (lock_count <= 0) + throw new IllegalStateException("PeerInfo not locked!"); + if (Thread.currentThread() != locking_thread) + throw new IllegalStateException("PeerInfo already locked by " + locking_thread); + lock_count--; + if (lock_count == 0) { + doUnlock(); + locking_thread = null; + notify(); + } + } + + protected abstract void doLockAndInitHandle() throws LWJGLException; + protected abstract void doUnlock() throws LWJGLException; + + public final synchronized ByteBuffer lockAndGetHandle() throws LWJGLException { + Thread this_thread = Thread.currentThread(); + while (locking_thread != null && locking_thread != this_thread) { + try { + wait(); + } catch (InterruptedException e) { + LWJGLUtil.log("Interrupted while waiting for PeerInfo lock: " + e); + } + } + if (lock_count == 0) { + locking_thread = this_thread; + doLockAndInitHandle(); + } + lock_count++; + return getHandle(); + } + + final ByteBuffer getHandle() { + return handle; + } + + public void destroy() { + } +} diff --git a/src/java/org/lwjgl/opengles/PixelFormat.java b/src/java/org/lwjgl/opengles/PixelFormat.java new file mode 100644 index 00000000..04518984 --- /dev/null +++ b/src/java/org/lwjgl/opengles/PixelFormat.java @@ -0,0 +1,767 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; +import org.lwjgl.opengl.PixelFormatLWJGL; + +import java.nio.IntBuffer; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +import static org.lwjgl.opengles.EGL.*; +import static org.lwjgl.opengles.NVCoverageSample.*; +import static org.lwjgl.opengles.NVDepthNonlinear.*; +import static org.lwjgl.opengles.PixelFormat.Attrib.*; + +/** + * This class describes the configuration settings for an EGL surface. Instances + * of this class are used as arguments to Display.create(). The attributes specified + * in this class will be used to get EGLConfigs from an EGLDisplay. PixelFormat + * is not the best name for this class, but it matches the corresponding class + * in the official desktop LWJGL. + *

+ * Instances of this class are immutable. An example of the expected way to set + * the PixelFormat property values is the following: + * PixelFormat pf = new PixelFormat().withDepth(24).withSamples(4); + *

+ * Attributes that correspond to EGL extensions will be silently ignored if those + * extensions are not supported by the EGLDisplay. + */ +public final class PixelFormat implements PixelFormatLWJGL { + + public static enum Attrib { + // CORE ATTRIBUTES + + RED_SIZE(EGL_RED_SIZE, 0), + GREEN_SIZE(EGL_GREEN_SIZE, 0), + BLUE_SIZE(EGL_BLUE_SIZE, 0), + ALPHA_SIZE(EGL_ALPHA_SIZE, 0), + + LUMINANCE_SIZE(EGL_LUMINANCE_SIZE, 0), + + DEPTH_SIZE(EGL_DEPTH_SIZE, 0), + STENCIL_SIZE(EGL_STENCIL_SIZE, 0), + + MIN_SWAP_INTERVAL(EGL_MIN_SWAP_INTERVAL, EGL_DONT_CARE), + MAX_SWAP_INTERVAL(EGL_MAX_SWAP_INTERVAL, EGL_DONT_CARE), + + SAMPLES(EGL_SAMPLES, 0), + SAMPLE_BUFFERS(EGL_SAMPLE_BUFFERS, 0), + + TRANSPARENT_TYPE(EGL_TRANSPARENT_TYPE, EGL_NONE), + TRANSPARENT_RED_VALUE(EGL_TRANSPARENT_RED_VALUE, EGL_DONT_CARE), + TRANSPARENT_GREEN_VALUE(EGL_TRANSPARENT_GREEN_VALUE, EGL_DONT_CARE), + TRANSPARENT_BLUE_VALUE(EGL_TRANSPARENT_BLUE_VALUE, EGL_DONT_CARE), + + // SURFACE ATTRIBUTES + + MULTISAMPLE_RESOLVE(EGL_MULTISAMPLE_RESOLVE, EGL_MULTISAMPLE_RESOLVE_DEFAULT, true), + SWAP_BEHAVIOR(EGL_SWAP_BEHAVIOR, EGL_DONT_CARE, true), + + // EXTENSION ATTRIBUTES + + COVERAGE_SAMPLES_NV(EGL_COVERAGE_SAMPLES_NV, 0), + COVERAGE_BUFFERS_NV(EGL_COVERAGE_BUFFERS_NV, 0), + + DEPTH_ENCODING_NONLINEAR_NV(EGL_DEPTH_ENCODING_NONLINEAR_NV, EGL_DONT_CARE); + + private final int eglAttrib; + private final int defaultValue; + + private final boolean surfaceAttrib; + + Attrib(final int eglAttrib, final int defaultValue) { + this(eglAttrib, defaultValue, false); + } + + Attrib(final int eglAttrib, final int defaultValue, final boolean surfaceAttrib) { + this.eglAttrib = eglAttrib; + this.defaultValue = defaultValue; + + this.surfaceAttrib = surfaceAttrib; + } + + /** + * Returns the EGL token that corresponds to this attribute. + * + * @return the EGL attribute token + */ + public int getEGLAttrib() { + return eglAttrib; + } + + /** + * Returns the default value of this attribute. Attributes + * with default values will be ignored when choosing the EGLConfig. + * + * @return the default value + */ + public int getDefaultValue() { + return defaultValue; + } + + public boolean isSurfaceAttrib() { + return surfaceAttrib; + } + + } + + private final Map config = new HashMap(16); + + /** + * Creates a new PixelFormat with rgbSize = 8, alphaSize = 8 and depthSize = 16. + * + * @see #PixelFormat(int, int, int, int, int, int) + */ + public PixelFormat() { + this(8, 16, 0); + } + + /** + * Creates a new PixelFormat with rgbSize = 8 and the specified + * alphaSize, depthSize and stencilSize. + * + * @param alphaSize the EGL_ALPHA_SIZE value + * @param depthSize the EGL_DEPTH_SIZE value + * @param stencilSize the EGL_STENCIL_SIZE value + * + * @see #PixelFormat(int, int, int, int, int, int) + */ + public PixelFormat(int alphaSize, int depthSize, int stencilSize) { + this(alphaSize, depthSize, stencilSize, 0); + } + + /** + * Creates a new PixelFormat with rgbSize = 8 and the specified + * alphaSize, depthSize, stencilSize and samples. + * + * @param alphaSize the EGL_ALPHA_SIZE value + * @param depthSize the EGL_DEPTH_SIZE value + * @param stencilSize the EGL_STENCIL_SIZE value + * @param samples the EGL_SAMPLE_SIZE value + * + * @see #PixelFormat(int, int, int, int, int, int) + */ + public PixelFormat(int alphaSize, int depthSize, int stencilSize, int samples) { + this(8, alphaSize, 0, depthSize, stencilSize, samples); + } + + /** + * Creates a new PixelFormat with the specified RGB sizes, EGL_ALPHA_SIZE, + * EGL_LUMINANCE_SIZE, EGL_DEPTH_SIZE, EGL_STENCIL_SIZE, EGL_SAMPLES. + * All values must be greater than or equal to 0. rgbSize and luminanceSize + * cannot both be greater than 0. depthSize greater than 24 and stencilSize + * greater than 8 are not recommended. + * The corresponding EGL_SAMPLE_BUFFERS value will become 0 if samples is 0, + * or 1 if samples is greater than 0. + * + * @param rgbSize the RGB sizes + * @param alphaSize the EGL_ALPHA_SIZE value + * @param luminanceSize the EGL_LUMINANCE_SIZE value + * @param depthSize the EGL_DEPTH_SIZE value + * @param stencilSize the EGL_STENCIL_SIZE value + * @param samples the EGL_SAMPLE_SIZE value + */ + public PixelFormat(int rgbSize, int alphaSize, int luminanceSize, int depthSize, int stencilSize, int samples) { + if ( rgbSize < 0 ) + throw new IllegalArgumentException("Invalid RGB size specified: " + rgbSize); + + if ( alphaSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_ALPHA_SIZE specified: " + alphaSize); + + if ( luminanceSize < 0 || (0 < luminanceSize && 0 < rgbSize) ) + throw new IllegalArgumentException("Invalid EGL_LUMINANCE_SIZE specified: " + luminanceSize); + + if ( depthSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_DEPTH_SIZE specified: " + depthSize); + + if ( stencilSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_STENCIL_SIZE specified: " + stencilSize); + + if ( samples < 0 ) + throw new IllegalArgumentException("Invalid EGL_SAMPLES specified: " + samples); + + if ( 0 < rgbSize ) { + setAttrib(RED_SIZE, rgbSize); + setAttrib(GREEN_SIZE, rgbSize); + setAttrib(BLUE_SIZE, rgbSize); + } + setAttrib(ALPHA_SIZE, alphaSize); + + setAttrib(LUMINANCE_SIZE, luminanceSize); + + setAttrib(DEPTH_SIZE, depthSize); + setAttrib(STENCIL_SIZE, stencilSize); + + setAttrib(SAMPLES, samples); + setAttrib(SAMPLE_BUFFERS, samples == 0 ? 0 : 1); + } + + /** + * Creates a new PixelFormat that is a copy of the specified PixelFormat. + * + * @param pf the source PixelFormat + */ + private PixelFormat(final PixelFormat pf) { + config.clear(); + config.putAll(pf.config); + } + + /** + * Sets the value of an attribute to the current configuration. + * If the value matches the default attribute value, the + * attribute will be removed from the configuration. + * + * @param attrib the attribute + * @param value the new value + */ + private void setAttrib(final Attrib attrib, final int value) { + if ( attrib.defaultValue == value ) + config.remove(attrib); + else + config.put(attrib, value); + } + + /** + * Returns an IntBuffer that can be used to get/choose EGLConfigs. + * The contents of the IntBuffer will be the sum of the source + * LWJGL attributes and the user-defined attributes from this + * PixelFormat's configuration. + *

+ * The source LWJGL attributes should not contain the EGL_SURFACE_TYPE + * attirube, or any attributes that are handled by PixelFormat. + *

+ * Attributes that correspond to EGL extensions will be checked + * against the extensions supported in the specified EGLDisplay. + * Attributes that correspond to unsupported extensions will not + * be included in the final EGLConfig query. + * + * @param display the EGL display from which the EGLConfig is going to be retrieved + * @param lwjglAttribs the LWJGL attributes + * + * @return the IntBuffer + */ + public IntBuffer getAttribBuffer(final EGLDisplay display, int surfaceType, final int[] lwjglAttribs) { + // Create a copy of the configuration attributes + Set keys = new HashSet(config.keySet()); + + // Handle surface type bits + if ( keys.contains(MULTISAMPLE_RESOLVE) ) { + if ( display.getMajorVersion() == 1 && display.getMinorVersion() < 4 ) + keys.remove(MULTISAMPLE_RESOLVE); + else if ( getAttrib(MULTISAMPLE_RESOLVE) == EGL_MULTISAMPLE_RESOLVE_BOX ) + surfaceType |= EGL_MULTISAMPLE_RESOLVE_BOX_BIT; + } + + if ( keys.contains(SWAP_BEHAVIOR) ) { + if ( display.getMajorVersion() == 1 && display.getMinorVersion() < 4 ) + keys.remove(SWAP_BEHAVIOR); + else if ( getAttrib(SWAP_BEHAVIOR) == EGL_BUFFER_PRESERVED ) + surfaceType |= EGL_SWAP_BEHAVIOR_PRESERVED_BIT; + } + + // Check NV_coverage_sample + if ( keys.contains(COVERAGE_BUFFERS_NV) && !display.isExtensionSupported("EGL_NV_coverage_sample") ) { + keys.remove(COVERAGE_BUFFERS_NV); + keys.remove(COVERAGE_SAMPLES_NV); + } + + // Check NV_depth_nonlinear + if ( keys.contains(DEPTH_ENCODING_NONLINEAR_NV) && !display.isExtensionSupported("EGL_NV_depth_nonlinear") ) + keys.remove(DEPTH_ENCODING_NONLINEAR_NV); + + // Create IntBuffer and insert the attributes + final IntBuffer attribs = BufferUtils.createIntBuffer( + 2 // SURFACE_TYPE + + lwjglAttribs.length // Source LWJGL attributes + + (keys.size() * 2) // PixelFormat attributes + + 1 // Termination + ); + + attribs.put(EGL_SURFACE_TYPE).put(surfaceType); + attribs.put(lwjglAttribs); + + for ( Attrib key : keys ) { + if ( !key.isSurfaceAttrib() ) + attribs.put(key.eglAttrib).put(config.get(key)); + } + + // Finish the attribute list + attribs.put(EGL_NONE); + attribs.flip(); + + return attribs; + } + + /** + * Returns true if the requested attribute matches the attribute in the specified EGL config. + * + * @param attrib the requested attribute + * @param config the EGL config + * + * @return true if the two attributes match + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + private boolean matches(final Attrib attrib, final EGLConfig config) throws LWJGLException { + return getAttrib(attrib) == config.getAttribute(attrib.getEGLAttrib()); + } + + /** + * Returns true if the requested attribute matches the attribute in the specified EGL config. + * If the requested attribute is equal to 1, then it will match with any EGL config attribute + * that is greater than 0. + * + * @param attrib the requested attribute + * @param config the EGL config + * + * @return true if the two attributes match + * + * @throws org.lwjgl.LWJGLException if an EGL error occurs + */ + private boolean matchesNonZero(final Attrib attrib, final EGLConfig config) throws LWJGLException { + final int reqValue = getAttrib(attrib); + final int cfgValue = config.getAttribute(attrib.getEGLAttrib()); + + return reqValue == cfgValue || (reqValue == 1 && cfgValue > 0); + } + + /** + * Returns the EGL config from the specified array that best matches this PixelFormat. + * + * @param configs the EGL configs + * + * @return the best match + */ + public EGLConfig getBestMatch(final EGLConfig[] configs) throws LWJGLException { + if ( configs == null || configs.length == 0 ) + throw new IllegalArgumentException("No EGLConfigs specified."); + + if ( configs.length == 1 ) + return configs[0]; + + /*System.out.println("\nASKED FOR:"); + for ( Attrib attrib : config.keySet() ) { + System.out.println("EGL_" + attrib.name() + ": " + getAttrib(attrib)); + } + + for ( EGLConfig config : configs ) { + if ( config == null ) + continue; + + System.out.println("\n----"); + System.out.println(config); + }*/ + + for ( EGLConfig config : configs ) { + if ( config == null ) + continue; + + if ( !(matches(ALPHA_SIZE, config) && matchesNonZero(DEPTH_SIZE, config) && matchesNonZero(STENCIL_SIZE, config)) ) + continue; + + final int luminance = getAttrib(LUMINANCE_SIZE); + if ( 0 < luminance && !matches(LUMINANCE_SIZE, config) ) + continue; + + if ( luminance == 0 && !(matches(RED_SIZE, config) && matches(GREEN_SIZE, config) && matches(BLUE_SIZE, config)) ) + continue; + + if ( !(matches(SAMPLE_BUFFERS, config) && matches(SAMPLES, config)) ) + continue; + + // TODO: Add more? NV's Tegra SDK checks a hardcoded 5 value for COVERAGE_SAMPLES_NV (nv_main.c, line: 1823) + + return config; + } + + // No match found, use the one recommended by the EGL implementation. + LWJGLUtil.log("Could not find an exact EGLConfig match for the PixelFormat requested, using first returned."); + return configs[0]; + } + + /** + * Applies this PixelFormat's surface attributes to the specified EGL surface. + * + * @param surface the EGL surface + */ + public void setSurfaceAttribs(final EGLSurface surface) throws LWJGLException { + setSurfaceAttrib(surface, SWAP_BEHAVIOR); + setSurfaceAttrib(surface, MULTISAMPLE_RESOLVE); + } + + private void setSurfaceAttrib(final EGLSurface surface, final Attrib attrib) throws LWJGLException { + final int value = getAttrib(attrib); + if ( value != attrib.getDefaultValue() ) + surface.setAttribute(attrib.getEGLAttrib(), value); + } + + /** + * Returns the value of the specified attribute. + * + * @param attrib the attribute to retrieve + * + * @return the attribute's value + */ + public int getAttrib(final Attrib attrib) { + final Integer value = config.get(attrib); + if ( value == null ) + return attrib.defaultValue; + + return value; + } + + /* ----------------------------------------- + CORE ATTRIBUTES + ----------------------------------------- */ + + /** + * Returns a new PixelFormat with the specified RGB sizes. + * + * @param rgb the new EGL_RED_SIZE, EGL_GREEN_SIZE and EGL_BLUE_SIZE + * + * @return the new PixelFormat + * + * @see #withRGBSize(int, int, int) + */ + public PixelFormat withRGBSize(final int rgb) { + return withRGBSize(rgb, rgb, rgb); + } + + /** + * Returns a new PixelFormat with the specified EGL_RED_SIZE, EGL_GREEN_SIZE and EGL_BLUE_SIZE. + * All 3 values must be greater than or equal to 0. If any of the 3 values is greater than 0, + * the luminanceSize will be set to 0. + * + * @param r the new EGL_RED_SIZE + * @param g the new EGL_GREEN_SIZE + * @param b the new EGL_BLUE_SIZE + * + * @return the new PixelFormat + */ + public PixelFormat withRGBSize(final int r, final int g, final int b) { + if ( r < 0 || g < 0 || b < 0 ) + throw new IllegalArgumentException("Invalid RGB sizes specified: " + r + ", " + g + ", " + b); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(RED_SIZE, r); + pf.setAttrib(GREEN_SIZE, g); + pf.setAttrib(BLUE_SIZE, b); + if ( 0 < r || 0 < g || 0 < b ) + pf.setAttrib(LUMINANCE_SIZE, 0); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_ALPHA_SIZE. + * The alphaSize value must be greater than or equal to 0. + * + * @param alphaSize the new EGL_ALPHA_SIZE + * + * @return the new PixelFormat + */ + public PixelFormat withAlphaSize(final int alphaSize) { + if ( alphaSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_ALPHA_SIZE specified: " + alphaSize); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(ALPHA_SIZE, alphaSize); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_LUMINANCE_SIZE. + * The luminanceSize value must be greater than or equal to 0. If + * luminanceSize is greater than 0, the RGB sizes will be set to 0. + * + * @param luminanceSize the new EGL_LUMINANCE_SIZE + * + * @return the new PixelFormat + */ + public PixelFormat withLuminanceSize(final int luminanceSize) { + if ( luminanceSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_LUMINANCE_SIZE specified: " + luminanceSize); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(LUMINANCE_SIZE, luminanceSize); + if ( 0 < luminanceSize ) { + pf.setAttrib(RED_SIZE, 0); + pf.setAttrib(GREEN_SIZE, 0); + pf.setAttrib(BLUE_SIZE, 0); + } + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_DEPTH_SIZE. + * The depthSize value must be greater than or equal to 0. + * Values greater than 24 are not recommended. + * + * @param depthSize the new EGL_DEPTH_SIZE + * + * @return the new PixelFormat + */ + public PixelFormat withDepthSize(final int depthSize) { + if ( depthSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_DEPTH_SIZE specified: " + depthSize); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(DEPTH_SIZE, depthSize); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_STENCIL_SIZE. + * The stencilSize value must be greater than or equal to 0. + * Values greater than 8 are not recommended. + * + * @param stencilSize the new EGL_STENCIL_SIZE + * + * @return the new PixelFormat + */ + public PixelFormat withStencilSize(final int stencilSize) { + if ( stencilSize < 0 ) + throw new IllegalArgumentException("Invalid EGL_STENCIL_SIZE specified: " + stencilSize); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(STENCIL_SIZE, stencilSize); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_MIN_SWAP_INTERVAL. + * The minSwapInterval value must be between 0 and this PixelFormat's EGL_MAX_SWAP_INTERVAL. + * + * @param minSwapInterval the new EGL_MIN_SWAP_INTERVAL value + * + * @return the new PixelFormat + */ + public PixelFormat withMinSwapInterval(final int minSwapInterval) { + final int maxSwapInterval = getAttrib(MAX_SWAP_INTERVAL); + if ( minSwapInterval != EGL_DONT_CARE && (minSwapInterval < 0 || (maxSwapInterval != EGL_DONT_CARE && maxSwapInterval < minSwapInterval)) ) + throw new IllegalArgumentException("Invalid EGL_MIN_SWAP_INTERVAL specified: " + minSwapInterval); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(MIN_SWAP_INTERVAL, minSwapInterval); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_MAX_SWAP_INTERVAL. + * The maxSwapInterval value must be greater than or equal to this PixelFormat's EGL_MIN_SWAP_INTERVAL. + * + * @param maxSwapInterval the new EGL_MAX_SWAP_INTERVAL value + * + * @return the new PixelFormat + */ + public PixelFormat withMaxSwapInterval(final int maxSwapInterval) { + if ( maxSwapInterval < getAttrib(MIN_SWAP_INTERVAL) ) + throw new IllegalArgumentException("Invalid EGL_MAX_SWAP_INTERVAL specified: " + maxSwapInterval); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(MAX_SWAP_INTERVAL, maxSwapInterval); + return pf; + } + + /** + * Returns a new PixelFormat with the specified number of EGL_SAMPLES. + * The samples value must be either 0 or greater than or equal to 2. The related + * EGL_SAMPLE_BUFFERS value will become 0 if samples is 0, or 1 if samples + * is greater than or equal to 2. + * + * @param samples the new EGL_SAMPLES value + * + * @return the new PixelFormat + */ + public PixelFormat withSamples(final int samples) { + if ( samples != 0 && samples < 2 ) + throw new IllegalArgumentException("Invalid number of EGL_SAMPLES specified: " + samples); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(SAMPLES, samples); + pf.setAttrib(SAMPLE_BUFFERS, samples == 0 ? 0 : 1); + return pf; + } + + private static int maxValue(final int bits) { + return (2 << bits) - 1; + } + + /** + * Returns a new PixelFormat with the specified EGL_TRANSPARENT_TYPE and + * the specified transparent RGB values. The transparentType must be + * either EGL_NONE or EGL_TRANSPARENT_RGB. When it is EGL_NONE, the RGB + * values are set to zero and ignored. When it is EGL_TRANSPARENT_RGB, + * the RGB values must be between 0 and 2^rgbSize - 1. + * + * @param transparentType the new EGL_TRANSPARENT_TYPE value + * @param r the new EGL_TRANSPARENT_RED_VALUE + * @param g the new EGL_TRANSPARENT_GREEN_VALUE + * @param b the new EGL_TRANSPARENT_BLUE_VALUE + * + * @return the new PixelFormat + */ + public PixelFormat withTransparentType(final int transparentType, int r, int g, int b) { + if ( transparentType == EGL_TRANSPARENT_RGB ) { + final int redSize = getAttrib(RED_SIZE); + final int greenSize = getAttrib(GREEN_SIZE); + final int blueSize = getAttrib(BLUE_SIZE); + if ( r < 0 || (0 < redSize && maxValue(redSize) < r) ) + throw new IllegalArgumentException("Invalid EGL_TRANSPARENT_RED_VALUE specified: " + r); + + if ( r < 0 || (0 < greenSize && maxValue(greenSize) < g) ) + throw new IllegalArgumentException("Invalid EGL_TRANSPARENT_GREEN_VALUE specified: " + g); + + if ( r < 0 || (0 < blueSize && maxValue(blueSize) < b) ) + throw new IllegalArgumentException("Invalid EGL_TRANSPARENT_BLUE_VALUE specified: " + b); + } else if ( transparentType != EGL_NONE ) + throw new IllegalArgumentException("Invalid EGL_TRANSPARENT_TYPE specified: " + transparentType); + else + r = g = b = EGL_DONT_CARE; + + final PixelFormat pf = new PixelFormat(this); + + pf.setAttrib(TRANSPARENT_TYPE, transparentType); + + pf.setAttrib(TRANSPARENT_RED_VALUE, r); + pf.setAttrib(TRANSPARENT_GREEN_VALUE, g); + pf.setAttrib(TRANSPARENT_BLUE_VALUE, b); + + return pf; + } + + /* ----------------------------------------- + SURFACE ATTRIBUTES + ----------------------------------------- */ + + /** + * Returns a new PixelFormat with the specified EGL_MULTISAMPLE_RESOLVE value. + * Valid values for multisampleResolve are EGL_MULTISAMPLE_RESOLVE_DEFAULT + * and EGL_MULTISAMPLE_RESOLVE_BOX. + *

+ * An IllegalStateException will be thrown if EGL_SAMPLES has not been previously defined + * to be greater than or equal to 2. + * + * @param multisampleResolve the new EGL_MULTISAMPLE_RESOLVE value + * + * @return the new PixelFormat + */ + public PixelFormat withMultisampleResolve(final int multisampleResolve) { + if ( multisampleResolve != EGL_MULTISAMPLE_RESOLVE_DEFAULT && multisampleResolve != EGL_MULTISAMPLE_RESOLVE_BOX ) + throw new IllegalArgumentException("Invalid EGL_MULTISAMPLE_RESOLVE value specified: " + multisampleResolve); + + if ( getAttrib(SAMPLE_BUFFERS) == 0 ) + throw new IllegalStateException("An EGL_MULTISAMPLE_RESOLVE value cannot be specified unless EGL_SAMPLE_BUFFERS is 1."); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(MULTISAMPLE_RESOLVE, multisampleResolve); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_SWAP_BEHAVIOR value. + * Valid values for swapBehavior are EGL_DONT_CARE, EGL_BUFFER_PRESERVED + * and EGL_BUFFER_DESTROYED. + * + * @param swapBehavior the new EGL_SWAP_BEHAVIOR value + * + * @return the new PixelFormat + */ + public PixelFormat withSwapBehavior(final int swapBehavior) { + switch ( swapBehavior ) { + case EGL_DONT_CARE: + case EGL_BUFFER_PRESERVED: + case EGL_BUFFER_DESTROYED: + break; + default: + throw new IllegalArgumentException("Invalid EGL_SWAP_BEHAVIOR value specified: " + swapBehavior); + } + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(SWAP_BEHAVIOR, swapBehavior); + return pf; + } + + /* ----------------------------------------- + EXTENSION ATTRIBUTES + ----------------------------------------- */ + + /** + * Returns a new PixelFormat with the specified number of EGL_COVERAGE_SAMPLES_NV. + * The samples value must be greater than or equal to 0. The related + * EGL_COVERAGE_BUFFERS_NV value will become 0 if samples is 0, or 1 if samples + * is greater than 0. + * + * @param samples the new EGL_SAMPLES value + * + * @return the new PixelFormat + */ + public PixelFormat withCoverageSamplesNV(final int samples) { + if ( samples < 0 ) + throw new IllegalArgumentException("Invalid number of EGL_COVERAGE_SAMPLES_NV specified: " + samples); + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(COVERAGE_SAMPLES_NV, samples); + pf.setAttrib(COVERAGE_BUFFERS_NV, samples == 0 ? 0 : 1); + return pf; + } + + /** + * Returns a new PixelFormat with the specified EGL_DEPTH_ENCODING_NONLINEAR_NV. + * Valid values for depthEncoding are EGL_DONT_CARE, EGL_DEPTH_ENCODING_NONE_NV + * and EGL_DEPTH_ENCODING_NONLINEAR_NV. + * + * @param depthEncoding the new EGL_DEPTH_ENCODING_NONLINEAR_NV value + * + * @return the new PixelFormat + */ + public PixelFormat withDepthEncodingNonlinearNV(final int depthEncoding) { + switch ( depthEncoding ) { + case EGL_DONT_CARE: + case EGL_DEPTH_ENCODING_NONE_NV: + case EGL_DEPTH_ENCODING_NONLINEAR_NV: + break; + default: + throw new IllegalArgumentException("Invalid EGL_DEPTH_ENCODING_NONLINEAR_NV value specified: " + depthEncoding); + } + + final PixelFormat pf = new PixelFormat(this); + pf.setAttrib(DEPTH_ENCODING_NONLINEAR_NV, depthEncoding); + return pf; + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/PowerManagementEventException.java b/src/java/org/lwjgl/opengles/PowerManagementEventException.java new file mode 100644 index 00000000..9da6a8f0 --- /dev/null +++ b/src/java/org/lwjgl/opengles/PowerManagementEventException.java @@ -0,0 +1,68 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +/** + * A PowerManagementEventException exception will be thrown when a call + * to eglSwapBuffers, eglCopyBuffers or eglMakeCurrent returns EGL_FALSE + * and the EGL_ERROR generated is EGL_CONTEXT_LOST. + *

+ * On detection of this error, the application must destroy all contexts. + * To continue rendering the application must recreate any contexts it + * requires, and subsequently restore any client API state and objects + * it wishes to use. + *

+ * Note that not all implementations can be made to generate power management + * events, and developers should continue to refer to platform-specific + * documentation in this area. + */ +public class PowerManagementEventException extends RuntimeException { + + static final long serialVersionUID = -1L; + + public PowerManagementEventException() { + super(); + } + + public PowerManagementEventException(final String message) { + super(message); + } + + public PowerManagementEventException(final String message, final Throwable cause) { + super(message, cause); + } + + public PowerManagementEventException(final Throwable cause) { + super(cause); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/StateTracker.java b/src/java/org/lwjgl/opengles/StateTracker.java new file mode 100644 index 00000000..32d4a6c2 --- /dev/null +++ b/src/java/org/lwjgl/opengles/StateTracker.java @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import java.nio.Buffer; + +import static org.lwjgl.opengles.GLES20.*; + +final class StateTracker { + + private static StateTracker tracker = new StateTracker(); + + int elementArrayBuffer; + int arrayBuffer; + + Buffer[] glVertexAttribPointer_buffer; + + StateTracker() { + } + + void init() { + glVertexAttribPointer_buffer = new Buffer[glGetInteger(GL_MAX_VERTEX_ATTRIBS)]; + } + + static StateTracker getTracker() { + return tracker; + } + + static void bindBuffer(int target, int buffer) { + final StateTracker tracker = getTracker(); + + switch ( target ) { + case GL_ARRAY_BUFFER: + tracker.arrayBuffer = buffer; + break; + case GL_ELEMENT_ARRAY_BUFFER: + tracker.elementArrayBuffer = buffer; + break; + } + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/opengles/Util.java b/src/java/org/lwjgl/opengles/Util.java new file mode 100644 index 00000000..98699d82 --- /dev/null +++ b/src/java/org/lwjgl/opengles/Util.java @@ -0,0 +1,139 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.LWJGLException; +import org.lwjgl.opengl.OpenGLException; + +import static org.lwjgl.opengles.EGL.*; +import static org.lwjgl.opengles.GLES20.*; + +/** + * Simple utility class. + * + * @author Spasi + */ +public final class Util { + + private Util() { + } + + /** + * Checks for OpenGL ES errors. + * + * @throws org.lwjgl.opengl.OpenGLException + * if GLES20.glGetError() returns anything else than GLES20.GL_NO_ERROR + */ + public static void checkGLError() throws OpenGLException { + int err = glGetError(); + if ( err != GL_NO_ERROR ) + throw new OpenGLException(err); + } + + /** + * Translates a GL error code to a String describing the error. + * + * @param error_code the OpenGL ES error code + * + * @return the error description + */ + public static String translateGLErrorString(int error_code) { + switch ( error_code ) { + case GL_NO_ERROR: + return "No error"; + case GL_INVALID_ENUM: + return "Invalid enum"; + case GL_INVALID_VALUE: + return "Invalid value"; + case GL_INVALID_OPERATION: + return "Invalid operation"; + case GL_OUT_OF_MEMORY: + return "Out of memory"; + default: + return null; + } + } + + /** + * Checks for EGL errors. + * + * @throws org.lwjgl.LWJGLException if EGL.eglGetError() returns anything else than EGL.EGL_SUCCESS + */ + static void checkEGLError() throws LWJGLException { + int err = eglGetError(); + if ( err != EGL_SUCCESS ) + throw new LWJGLException(translateEGLErrorString(err)); + } + + /** + * Translates an EGL error code to a String describing the error. + * + * @param error_code the EGL error code + * + * @return the error description + */ + static String translateEGLErrorString(int error_code) { + switch ( error_code ) { + case EGL_NOT_INITIALIZED: + return "EGL not initialized"; + case EGL_BAD_ACCESS: + return "Bad access"; + case EGL_BAD_ALLOC: + return "Bad allocation"; + case EGL_BAD_ATTRIBUTE: + return "Bad attribute"; + case EGL_BAD_CONFIG: + return "Bad config"; + case EGL_BAD_CONTEXT: + return "Bad EGL context"; + case EGL_BAD_CURRENT_SURFACE: + return "Bad current EGL surface"; + case EGL_BAD_DISPLAY: + return "Bad EGL display"; + case EGL_BAD_MATCH: + return "Bad match"; + case EGL_BAD_NATIVE_PIXMAP: + return "Bad native pixmap"; + case EGL_BAD_NATIVE_WINDOW: + return "Bad native window"; + case EGL_BAD_PARAMETER: + return "Bad parameter"; + case EGL_BAD_SURFACE: + return "Bad EGL surface"; + case EGL_CONTEXT_LOST: + return "EGL context lost"; + default: + return null; + } + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java b/src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java new file mode 100644 index 00000000..59c1bd67 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java @@ -0,0 +1,327 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.test.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLException; +import org.lwjgl.input.Keyboard; +import org.lwjgl.opengl.Display; +import org.lwjgl.opengl.DisplayMode; +import org.lwjgl.opengles.PixelFormat; +import org.lwjgl.opengles.PowerManagementEventException; +import org.lwjgl.util.vector.Vector2f; + +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.GLES20.*; +import static org.lwjgl.test.opengles.util.GLMatrix.*; + +/** + * Tests switching between windowed and fullscreen + * + * @author Brian Matzon + * @version $Revision: 3172 $ + * $Id: FullScreenWindowedTest.java 3172 2008-12-28 19:30:43Z elias_naur $ + */ +public class FullScreenWindowedTest { + + /** Intended deiplay mode */ + private DisplayMode mode; + /** our quad moving around */ + private Vector2f quadPosition; + /** our quadVelocity */ + private Vector2f quadVelocity; + /** angle of quad */ + private float angle; + /** degrees to rotate per frame */ + private float angleRotation = 1.0f; + /** Max speed of all changable attributes */ + private static final float MAX_SPEED = 20.0f; + + private static int buffer_id; + private static int indices_buffer_id; + + private QuadRenderer renderer; + + /** Creates a FullScreenWindowedTest */ + public FullScreenWindowedTest() { + } + + /** Executes the test */ + public void execute() { + initialize(); + mainLoop(); + cleanup(); + Display.destroy(); + } + + private void switchMode() throws LWJGLException { + mode = findDisplayMode(1024, 600, Display.getDisplayMode().getBitsPerPixel()); + try { + Display.setDisplayModeAndFullscreen(mode); + } catch (PowerManagementEventException e) { + e.printStackTrace(); + } + } + + /** Initializes the test */ + private void initialize() { + try { + //find displaymode + switchMode(); + // start of in windowed mode + Display.create(new PixelFormat()); + glInit(); + quadPosition = new Vector2f(100f, 100f); + quadVelocity = new Vector2f(1.0f, 1.0f); + + renderer = new QuadRenderer(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + /** Runs the main loop of the "test" */ + private void mainLoop() { + while ( !Keyboard.isKeyDown(Keyboard.KEY_ESCAPE) && !Display.isCloseRequested() ) { + if ( Display.isVisible() ) { + // check keyboard input + processKeyboard(); + // do "game" logic, and render it + logic(); + render(); + } else { + // no need to render/paint if nothing has changed (ie. window + // dragged over) + if ( Display.isDirty() ) { + render(); + } + // don't waste cpu time, sleep more + try { + Thread.sleep(100); + } catch (InterruptedException inte) { + } + } + // Update window + try { + Display.update(); + Display.sync(60); + } catch (PowerManagementEventException e) { + e.printStackTrace(); + } + } + } + + /** Performs the logic */ + private void logic() { + angle += angleRotation; + if ( angle > 90.0f ) { + angle = 0.0f; + } + quadPosition.x += quadVelocity.x; + quadPosition.y += quadVelocity.y; + //check colision with vertical border border + if ( quadPosition.x + 50 >= mode.getWidth() || quadPosition.x - 50 <= 0 ) { + quadVelocity.x *= -1; + } + //check collision with horizontal border + if ( quadPosition.y + 50 >= mode.getHeight() || quadPosition.y - 50 <= 0 ) { + quadVelocity.y *= -1; + } + } + + private void render() { + //clear background + glClear(GL_COLOR_BUFFER_BIT); + // draw white quad + glPushMatrix(); + { + glTranslatef(quadPosition.x, quadPosition.y, 0); + glRotatef(angle, 0.0f, 0.0f, 1.0f); + + renderer.setMVPUniform(); + + glDrawElements(GL_TRIANGLE_STRIP, 4, GL_UNSIGNED_INT, 0); + } + glPopMatrix(); + } + + /** Processes keyboard input */ + private void processKeyboard() { + //check for fullscreen key + if ( Keyboard.isKeyDown(Keyboard.KEY_F) ) { + try { + cleanup(); + + switchMode(); + + glInit(); + renderer = new QuadRenderer(); + } catch (Exception e) { + e.printStackTrace(); + } + } + //check for window key + if ( Keyboard.isKeyDown(Keyboard.KEY_W) ) { + try { + cleanup(); + + mode = new DisplayMode(800, 480); + Display.setDisplayModeAndFullscreen(mode); + + glInit(); + renderer = new QuadRenderer(); + } catch (Exception e) { + e.printStackTrace(); + } + } + //check for speed changes + if ( Keyboard.isKeyDown(Keyboard.KEY_UP) ) { + quadVelocity.y += 0.1f; + } + if ( Keyboard.isKeyDown(Keyboard.KEY_DOWN) ) { + quadVelocity.y -= 0.1f; + } + if ( Keyboard.isKeyDown(Keyboard.KEY_RIGHT) ) { + quadVelocity.x += 0.1f; + } + if ( Keyboard.isKeyDown(Keyboard.KEY_LEFT) ) { + quadVelocity.x -= 0.1f; + } + if ( Keyboard.isKeyDown(Keyboard.KEY_ADD) ) { + angleRotation += 0.1f; + } + if ( Keyboard.isKeyDown(Keyboard.KEY_SUBTRACT) ) { + angleRotation -= 0.1f; + } + //throttle + if ( quadVelocity.x < -MAX_SPEED ) { + quadVelocity.x = -MAX_SPEED; + } + if ( quadVelocity.x > MAX_SPEED ) { + quadVelocity.x = MAX_SPEED; + } + if ( quadVelocity.y < -MAX_SPEED ) { + quadVelocity.y = -MAX_SPEED; + } + if ( quadVelocity.y > MAX_SPEED ) { + quadVelocity.y = MAX_SPEED; + } + if ( angleRotation < 0.0f ) { + angleRotation = 0.0f; + } + if ( angleRotation > MAX_SPEED ) { + angleRotation = MAX_SPEED; + } + } + + /** Cleans up the test */ + private void cleanup() { + renderer.cleanup(); + + IntBuffer int_buffer = BufferUtils.createIntBuffer(2); + int_buffer.put(0, buffer_id); + int_buffer.put(1, indices_buffer_id); + + glDeleteBuffers(int_buffer); + } + + /** + * Retrieves a displaymode, if one such is available + * + * @param width Required width + * @param height Required height + * @param bpp Minimum required bits per pixel + * + * @return + */ + private static DisplayMode findDisplayMode(int width, int height, int bpp) throws LWJGLException { + DisplayMode[] modes = Display.getAvailableDisplayModes(); + for ( int i = 0; i < modes.length; i++ ) { + if ( modes[i].getWidth() == width && modes[i].getHeight() == height && modes[i].getBitsPerPixel() >= bpp && modes[i].getFrequency() <= 60 ) { + return modes[i]; + } + } + return Display.getDesktopDisplayMode(); + } + + /** Initializes OGL */ + private void glInit() { + // Go into orthographic projection mode. + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + glOrtho(0, mode.getWidth(), 0, mode.getHeight(), -1.0f, 1.0f); + + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + + glViewport(0, 0, mode.getWidth(), mode.getHeight()); + //set clear color to black + glClearColor(0.0f, 0.0f, 0.0f, 0.0f); + + //sync frame (only works on windows) + Display.setVSyncEnabled(true); + + final IntBuffer int_buffer = BufferUtils.createIntBuffer(2); + glGenBuffers(int_buffer); + buffer_id = int_buffer.get(0); + indices_buffer_id = int_buffer.get(1); + + glBindBuffer(GL_ARRAY_BUFFER, buffer_id); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, indices_buffer_id); + + final FloatBuffer vertices = BufferUtils.createFloatBuffer(2 * 4); + vertices + .put(-50).put(-50) + .put(50).put(-50) + .put(-50).put(50) + .put(50).put(50); + vertices.rewind(); + + final IntBuffer indices = BufferUtils.createIntBuffer(4); + indices.put(0).put(1).put(2).put(3); + indices.rewind(); + + glBufferData(GL_ARRAY_BUFFER, vertices, GL_STATIC_DRAW); + glBufferData(GL_ELEMENT_ARRAY_BUFFER, indices, GL_STATIC_DRAW); + } + + /** Test entry point */ + public static void main(String[] args) { + System.out.println("Change between fullscreen and windowed mode, by pressing F and W respectively"); + System.out.println("Move quad using arrowkeys, and change rotation using +/-"); + FullScreenWindowedTest fswTest = new FullScreenWindowedTest(); + fswTest.execute(); + System.exit(0); + } +} diff --git a/src/java/org/lwjgl/test/opengles/Gears.java b/src/java/org/lwjgl/test/opengles/Gears.java new file mode 100644 index 00000000..58994ba8 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/Gears.java @@ -0,0 +1,580 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/* + * 3-D gear wheels. Originally by Brian Paul + */ +package org.lwjgl.test.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.LWJGLException; +import org.lwjgl.Sys; +import org.lwjgl.input.Keyboard; +import org.lwjgl.input.Mouse; +import org.lwjgl.opengl.Display; +import org.lwjgl.opengl.DisplayMode; +import org.lwjgl.opengles.*; +import org.lwjgl.test.opengles.util.Geometry; +import org.lwjgl.test.opengles.util.ImmediateModeBuffer; +import org.lwjgl.test.opengles.util.Shader; +import org.lwjgl.test.opengles.util.ShaderProgram; +import org.lwjgl.util.vector.Matrix4f; +import org.lwjgl.util.vector.Vector3f; + +import java.lang.reflect.Field; +import java.nio.FloatBuffer; +import java.util.StringTokenizer; + +import static org.lwjgl.opengles.GLES20.*; +import static org.lwjgl.test.opengles.util.GLLight.*; +import static org.lwjgl.test.opengles.util.GLMatrix.*; +import static org.lwjgl.test.opengles.util.Geometry.*; + +/** + *

+ * This is the OpenGL "standard" Gears demo, originally by Brian Paul + *

+ * + * @author Brian Matzon + * @version $Revision: 3276 $ + * $Id: Gears.java 3276 2010-02-21 21:18:17Z matzon $ + */ +public class Gears { + + private boolean run = true; + + private float view_rotx = 20.0f; + + private float view_roty = 30.0f; + + private float view_rotz = 0.0f; + + private Gear gear1; + + private Gear gear2; + + private Gear gear3; + + private float angle = 0.0f; + + private Shader vsh; + private Shader fsh; + + private ShaderProgram program; + + private int LIGHT_POS; + + private int MVP; + private int NM; + + private int GEAR_COLOR; + + private int vPosition; + private int vNormal; + + private final Matrix4f p = new Matrix4f(); + private final Matrix4f mv = new Matrix4f(); + private final Matrix4f mvp = new Matrix4f(); + + private final FloatBuffer m4fBuffer = BufferUtils.createFloatBuffer(4 * 4); + private final FloatBuffer m3fBuffer = BufferUtils.createFloatBuffer(3 * 3); + + public static void main(String[] args) { + new Gears().execute(); + System.exit(0); + } + + /** + * + */ + private void execute() { + try { + init(); + } catch (LWJGLException e) { + e.printStackTrace(); + System.out.println("Failed to initialize Gears."); + return; + } + + System.out.println("\nGL RENDERER: " + glGetString(GL_RENDERER)); + System.out.println("GL VENDOR: " + glGetString(GL_VENDOR)); + System.out.println("GL VERSION: " + glGetString(GL_VERSION)); + System.out.println("GL_SHADING_LANGUAGE_VERSION: " + glGetString(GL_SHADING_LANGUAGE_VERSION)); + System.out.println("GL_EXTENSIONS = " + glGetString(GL_EXTENSIONS)); + + ContextCapabilities caps = GLContext.getCapabilities(); + + System.out.println(); + + // Check extension support + Field[] field = ContextCapabilities.class.getFields(); + for ( Field f : field ) { + if ( f.getName().startsWith("GL_") ) { + try { + System.out.println(f.getName() + " - " + f.getBoolean(caps)); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + } + + System.out.println(); + + // Check for extensions that LWJGL does not support + final String extensions = glGetString(GL_EXTENSIONS); + + final StringTokenizer tokenizer = new StringTokenizer(extensions); + while ( tokenizer.hasMoreTokens() ) { + final String ext = tokenizer.nextToken(); + try { + if ( !caps.getClass().getField(ext).getBoolean(caps) ) + System.out.println("-- Extension exposed but functions are missing: " + ext); + } catch (NoSuchFieldException e) { + System.out.println("-- No LWJGL support for extension: " + ext); + } catch (Exception e) { + e.printStackTrace(); + } + } + + loop(); + + destroy(); + } + + /** + * + */ + private void destroy() { + program.destroy(); + + fsh.destroy(); + vsh.destroy(); + + gear3.destroy(); + gear2.destroy(); + gear1.destroy(); + + Display.destroy(); + } + + /** + * + */ + private void loop() { + long lastFrameTime = Sys.getTime(); + long startTime = System.currentTimeMillis() + 5000; + long fps = 0; + + while ( run ) { + if ( !Display.isVisible() ) + Thread.yield(); + else { + // This is the current frame time. + long frameStart = Sys.getTime(); + + // How many seconds passed since last frame. + final float frameTime = (float)((frameStart - lastFrameTime) / (double)Sys.getTimerResolution()); + lastFrameTime = frameStart; + + angle += frameTime * 120.0f; + + handleInput(); + + //glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_COVERAGE_BUFFER_BIT_NV); + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + glPushMatrix(); + glRotatef(view_rotx, 1.0f, 0.0f, 0.0f); + glRotatef(view_roty, 0.0f, 1.0f, 0.0f); + glRotatef(view_rotz, 0.0f, 0.0f, 1.0f); + + glPushMatrix(); + glTranslatef(-3.0f, -2.0f, 0.0f); + glRotatef(angle, 0.0f, 0.0f, 1.0f); + gear1.render(); + glPopMatrix(); + + glPushMatrix(); + glTranslatef(3.1f, -2.0f, 0.0f); + glRotatef(-2.0f * angle - 9.0f, 0.0f, 0.0f, 1.0f); + gear2.render(); + glPopMatrix(); + + glPushMatrix(); + glTranslatef(-3.1f, 4.2f, 0.0f); + glRotatef(-2.0f * angle - 25.0f, 0.0f, 0.0f, 1.0f); + gear3.render(); + glPopMatrix(); + + glPopMatrix(); + + try { + Display.update(); + //Display.sync(60); + } catch (PowerManagementEventException e) { + e.printStackTrace(); + } + if ( startTime > System.currentTimeMillis() ) { + fps++; + } else { + long timeUsed = 5000 + (startTime - System.currentTimeMillis()); + startTime = System.currentTimeMillis() + 5000; + System.out.println(fps + " frames in " + (timeUsed / 1000f) + " seconds = " + (fps / (timeUsed / 1000f))); + fps = 0; + } + + if ( Display.isCloseRequested() ) + break; + } + } + } + + private void handleInput() { + if ( Keyboard.getNumKeyboardEvents() != 0 ) { + while ( Keyboard.next() ) { + if ( Keyboard.getEventKeyState() ) + continue; + + final int key = Keyboard.getEventKey(); + switch ( key ) { + case Keyboard.KEY_ESCAPE: + run = false; + break; + } + } + } + + while ( Mouse.next() ) ; + } + + /** + * + */ + private void init() throws LWJGLException { + final int WIDTH = 640; + final int HEIGHT = 480; + + Display.setLocation((Display.getDisplayMode().getWidth() - WIDTH) / 2, + (Display.getDisplayMode().getHeight() - HEIGHT) / 2); + try { + Display.setDisplayMode(new DisplayMode(WIDTH, HEIGHT)); + } catch (PowerManagementEventException e) { + e.printStackTrace(); + } + Display.setTitle("Gears"); + Display.create(new PixelFormat()); + + //glCoverageMaskNV(true); + + // setup ogl + glViewport(0, 0, WIDTH, HEIGHT); + glFrontFace(GL_CCW); + glCullFace(GL_BACK); + glEnable(GL_CULL_FACE); + glEnable(GL_DEPTH_TEST); + + final Vector3f lp = new Vector3f(5.0f, 5.0f, 10.0f); + lp.normalise(); + glLight(GL_LIGHT0, GL_POSITION, lp.getX(), lp.getY(), lp.getZ(), 0.0f); + + /* make the gears */ + gear1 = new Gear(gear(1.0f, 4.0f, 1.0f, 20, 0.7f), new float[] { 0.8f, 0.1f, 0.0f, 1.0f }); + gear2 = new Gear(gear(0.5f, 2.0f, 2.0f, 10, 0.7f), new float[] { 0.0f, 0.8f, 0.2f, 1.0f }); + gear3 = new Gear(gear(1.3f, 2.0f, 0.5f, 10, 0.7f), new float[] { 0.2f, 0.2f, 1.0f, 1.0f }); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + + final float h = (float)300 / (float)300; + glFrustum(-1.0f, 1.0f, -h, h, 5.0f, 60.0f); + + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glTranslatef(0.0f, 0.0f, -40.0f); + + vsh = new Shader(GL_VERTEX_SHADER, "uniform highp vec4 LIGHT_POS;\n" + + "uniform highp mat4 MODEL_VIEW_PROJECTION_MATRIX;\n" + + "uniform mediump mat3 NORMAL_MATRIX;\n" + + "uniform lowp vec3 GEAR_COLOR;\n" + + "attribute highp vec3 vPosition;\n" + + "attribute mediump vec3 vNormal;\n" + + "varying lowp vec3 color;\n" + + "void main(void) {\n" + + "\tgl_Position = MODEL_VIEW_PROJECTION_MATRIX * vec4(vPosition, 1.0);\n" + + "\tvec3 normal = NORMAL_MATRIX * vNormal;\n" + + "\tcolor = max(dot(normal, vec3(LIGHT_POS)), 0.0) * GEAR_COLOR + vec3(0.05);\n" + + "}"); + + fsh = new Shader(GL_FRAGMENT_SHADER, "varying lowp vec3 color;\n" + + "void main(void) {\n" + + "\tgl_FragColor = vec4(color, 1.0);\n" + + "}"); + + program = new ShaderProgram(vsh, fsh); + program.enable(); + + LIGHT_POS = program.getUniformLocation("LIGHT_POS"); + + MVP = program.getUniformLocation("MODEL_VIEW_PROJECTION_MATRIX"); + NM = program.getUniformLocation("NORMAL_MATRIX"); + + GEAR_COLOR = program.getUniformLocation("GEAR_COLOR"); + + vPosition = program.getAttributeLocation("vPosition"); + vNormal = program.getAttributeLocation("vNormal"); + + glEnableVertexAttribArray(vNormal); + glEnableVertexAttribArray(vPosition); + } + + /** + * Draw a gear wheel. You'll probably want to call this function when + * building a display list since we do a lot of trig here. + * + * @param inner_radius radius of hole at center + * @param outer_radius radius at center of teeth + * @param width width of gear + * @param teeth number of teeth + * @param tooth_depth depth of tooth + */ + private static Geometry gear(float inner_radius, float outer_radius, float width, int teeth, float tooth_depth) { + int i; + float r0, r1, r2; + float angle, da; + float u, v, len; + + r0 = inner_radius; + r1 = outer_radius - tooth_depth / 2.0f; + r2 = outer_radius + tooth_depth / 2.0f; + + da = 2.0f * (float)Math.PI / teeth / 4.0f; + + final Geometry gear = new Geometry(); + final ImmediateModeBuffer imb = new ImmediateModeBuffer(1024); + int lastDrawIndex = 0; + + //glShadeModel(GL_FLAT); + + // draw front face + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, teeth * 4 + 2); + for ( i = 0; i <= teeth; i++ ) { + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5f); + + if ( i < teeth ) { + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle + 3.0f * da), r1 * sin(angle + 3.0f * da), width * 0.5f); + } + } + + // draw front sides of teeth + for ( i = 0; i < teeth; i++ ) { + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, 4); + + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle + 3.0f * da), r1 * sin(angle + 3.0f * da), width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r2 * cos(angle + 2.0f * da), r2 * sin(angle + 2.0f * da), width * 0.5f); + } + + // draw back face + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, (teeth + 1) * 4); + for ( i = 0; i <= teeth; i++ ) { + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5f); + } + + // draw back sides of teeth + for ( i = 0; i < teeth; i++ ) { + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, 4); + + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5f); + + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), -width * 0.5f); + } + + // draw outward faces of teeth + // OpenGL ES 2.0 note: This needs to be converted to a triangle + // list with face normals to get the flat look of the original. + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, teeth * 8 + 2); + for ( i = 0; i < teeth; i++ ) { + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(cos(angle), sin(angle), 0.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), width * 0.5f); + + imb.glNormal3f(cos(angle), sin(angle), 0.0f); + imb.glVertex3f(r1 * cos(angle), r1 * sin(angle), -width * 0.5f); + + u = r2 * cos(angle + da) - r1 * cos(angle); + v = r2 * sin(angle + da) - r1 * sin(angle); + len = (float)Math.sqrt(u * u + v * v); + u /= len; + v /= len; + + imb.glNormal3f(v, -u, 0.0f); + imb.glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), width * 0.5f); + + imb.glNormal3f(v, -u, 0.0f); + imb.glVertex3f(r2 * cos(angle + da), r2 * sin(angle + da), -width * 0.5f); + + imb.glNormal3f(cos(angle), sin(angle), 0.0f); + imb.glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da), width * 0.5f); + + imb.glNormal3f(cos(angle), sin(angle), 0.0f); + imb.glVertex3f(r2 * cos(angle + 2 * da), r2 * sin(angle + 2 * da), -width * 0.5f); + + u = r1 * cos(angle + 3 * da) - r2 * cos(angle + 2 * da); + v = r1 * sin(angle + 3 * da) - r2 * sin(angle + 2 * da); + + imb.glNormal3f(v, -u, 0.0f); + imb.glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da), width * 0.5f); + + imb.glNormal3f(v, -u, 0.0f); + imb.glVertex3f(r1 * cos(angle + 3 * da), r1 * sin(angle + 3 * da), -width * 0.5f); + } + imb.glNormal3f(cos(0), sin(0), 0.0f); + imb.glVertex3f(r1 * cos(0), r1 * sin(0), width * 0.5f); + + imb.glNormal3f(cos(0), sin(0), 0.0f); + imb.glVertex3f(r1 * cos(0), r1 * sin(0), -width * 0.5f); + + //glShadeModel(GL_SMOOTH); + + // draw inside radius cylinder + lastDrawIndex += gear.addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, (teeth + 1) * 2); + for ( i = 0; i <= teeth; i++ ) { + angle = i * 2.0f * (float)Math.PI / teeth; + + imb.glNormal3f(-cos(angle), -sin(angle), 0.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), -width * 0.5f); + + imb.glNormal3f(-cos(angle), -sin(angle), 0.0f); + imb.glVertex3f(r0 * cos(angle), r0 * sin(angle), width * 0.5f); + } + + gear.update(imb.getBuffer()); + return gear; + } + + private class Gear { + + private final Geometry geom; + + private final float[] color; + + Gear(final Geometry geom, final float[] color) { + this.geom = geom; + this.color = color; + } + + void render() { + // Set gear color + glUniform3f(GEAR_COLOR, color[0], color[1], color[2]); + + // Set Light position + setUniform4f(LIGHT_POS, GL_LIGHT0, GL_POSITION); + + // Get Projection and Modelview matrices + glMatrixMode(GL_PROJECTION); + glGetMatrix(p); + + glMatrixMode(GL_MODELVIEW); + glGetMatrix(mv); + + // Set MVP uniform + Matrix4f.mul(p, mv, mvp); + mvp.store(m4fBuffer); + m4fBuffer.flip(); + glUniformMatrix4(MVP, false, m4fBuffer); + + // Set normal matrix (upper-left 3x3 of the inverse transpose MV matrix) + mv.invert(); + mv.transpose(); + mv.store3f(m3fBuffer); + m3fBuffer.flip(); + glUniformMatrix3(NM, false, m3fBuffer); + + geom.bind(); + + final int stride = (3 + 3) * 4; + glVertexAttribPointer(vNormal, 3, GL_FLOAT, false, stride, 0); + glVertexAttribPointer(vPosition, 3, GL_FLOAT, false, stride, 3 * 4); + + geom.draw(); + } + + void destroy() { + geom.destroy(); + } + + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java b/src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java new file mode 100644 index 00000000..7fdf2f68 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java @@ -0,0 +1,251 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: VBOIndexTest.java 2983 2008-04-07 18:36:09Z matzon $ + * + * Simple java test program. + * + * @author elias_naur + * @version $Revision: 2983 $ + */ + +package org.lwjgl.test.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.Sys; +import org.lwjgl.input.Keyboard; +import org.lwjgl.input.Mouse; +import org.lwjgl.opengl.Display; +import org.lwjgl.opengl.DisplayMode; +import org.lwjgl.opengles.GLContext; + +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +import static org.lwjgl.opengles.GLES20.*; +import static org.lwjgl.opengles.OESMapbuffer.*; +import static org.lwjgl.test.opengles.util.GLMatrix.*; + +public final class MappedIndexedVBOTest { + + static { + try { + //find first display mode that allows us 640*480*16 + int mode = -1; + DisplayMode[] modes = Display.getAvailableDisplayModes(); + for ( int i = 0; i < modes.length; i++ ) { + if ( modes[i].getWidth() == 640 + && modes[i].getHeight() == 480 + && modes[i].getBitsPerPixel() >= 16 ) { + mode = i; + break; + } + } + if ( mode != -1 ) { + //select above found displaymode + System.out.println("Setting display mode to " + modes[mode]); + Display.setDisplayMode(modes[mode]); + System.out.println("Created display."); + } + } catch (Exception e) { + System.err.println("Failed to create display due to " + e); + } + } + + static { + try { + Display.createES(); + System.out.println("Created OpenGL."); + + if ( !GLContext.getCapabilities().GL_OES_mapbuffer ) { + System.out.println("GL_OES_mapbuffer is not supported, quitting!"); + System.exit(0); + } + } catch (Exception e) { + System.err.println("Failed to create OpenGL due to " + e); + System.exit(1); + } + } + + /** Is the game finished? */ + private static boolean finished; + + /** A rotating square! */ + private static float angle; + private static int buffer_id; + private static int indices_buffer_id; + private static FloatBuffer vertices; + private static ByteBuffer mapped_buffer; + private static FloatBuffer mapped_float_buffer; + private static IntBuffer indices; + private static ByteBuffer mapped_indices_buffer; + private static IntBuffer mapped_indices_int_buffer; + + private static QuadRenderer renderer; + + public static void main(String[] arguments) { + try { + init(); + while ( !finished ) { + Display.update(); + Display.sync(30); + + if ( !Display.isVisible() ) + Thread.sleep(200); + else if ( Display.isCloseRequested() ) + System.exit(0); + + mainLoop(); + render(); + } + } catch (Throwable t) { + t.printStackTrace(); + } finally { + cleanup(); + } + System.exit(0); + } + + /** All calculations are done in here */ + private static void mainLoop() { + angle += 1f; + if ( angle > 360.0f ) + angle = 0.0f; + + if ( Mouse.getDX() != 0 || Mouse.getDY() != 0 || Mouse.getDWheel() != 0 ) + System.out.println("Mouse moved " + Mouse.getDX() + " " + Mouse.getDY() + " " + Mouse.getDWheel()); + for ( int i = 0; i < Mouse.getButtonCount(); i++ ) + if ( Mouse.isButtonDown(i) ) + System.out.println("Button " + i + " down"); + if ( Keyboard.isKeyDown(Keyboard.KEY_ESCAPE) ) + finished = true; + for ( int i = 0; i < Keyboard.getNumKeyboardEvents(); i++ ) { + Keyboard.next(); + if ( Keyboard.getEventKey() == Keyboard.KEY_ESCAPE && Keyboard.getEventKeyState() ) + finished = true; + if ( Keyboard.getEventKey() == Keyboard.KEY_T && Keyboard.getEventKeyState() ) + System.out.println("Current time: " + Sys.getTime()); + } + } + + /** All rendering is done in here */ + private static void render() { + glClear(GL_COLOR_BUFFER_BIT); + + glPushMatrix(); + glTranslatef(Display.getDisplayMode().getWidth() / 2, Display.getDisplayMode().getHeight() / 2, 0.0f); + glRotatef(angle, 0, 0, 1.0f); + + renderer.setMVPUniform(); + + ByteBuffer new_mapped_buffer = glMapBufferOES(GL_ARRAY_BUFFER, GL_WRITE_ONLY_OES, mapped_buffer); + if ( new_mapped_buffer != mapped_buffer ) { + mapped_buffer = new_mapped_buffer; + mapped_float_buffer = new_mapped_buffer.asFloatBuffer(); + } + + new_mapped_buffer = glMapBufferOES(GL_ELEMENT_ARRAY_BUFFER, GL_WRITE_ONLY_OES, mapped_indices_buffer); + if ( new_mapped_buffer != mapped_indices_buffer ) { + mapped_indices_buffer = new_mapped_buffer; + mapped_indices_int_buffer = new_mapped_buffer.asIntBuffer(); + } + + mapped_float_buffer.rewind(); + vertices.rewind(); + mapped_float_buffer.put(vertices); + + mapped_indices_int_buffer.rewind(); + indices.rewind(); + mapped_indices_int_buffer.put(indices); + if ( glUnmapBufferOES(GL_ARRAY_BUFFER) && + glUnmapBufferOES(GL_ELEMENT_ARRAY_BUFFER) ) { + glDrawElements(GL_TRIANGLE_STRIP, 4, GL_UNSIGNED_INT, 0); + } + + glPopMatrix(); + } + + /** Initialize */ + private static void init() throws Exception { + System.out.println("Timer resolution: " + Sys.getTimerResolution()); + + // Go into orthographic projection mode. + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + glOrtho(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight(), -1.0f, 1.0f); + + glMatrixMode(GL_MODELVIEW); + glLoadIdentity(); + glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight()); + + final IntBuffer int_buffer = BufferUtils.createIntBuffer(2); + glGenBuffers(int_buffer); + buffer_id = int_buffer.get(0); + indices_buffer_id = int_buffer.get(1); + + glBindBuffer(GL_ARRAY_BUFFER, buffer_id); + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, indices_buffer_id); + + vertices = BufferUtils.createFloatBuffer(2 * 4); + vertices + .put(-50).put(-50) + .put(50).put(-50) + .put(-50).put(50) + .put(50).put(50); + vertices.rewind(); + + indices = BufferUtils.createIntBuffer(4); + indices.put(0).put(1).put(2).put(3); + indices.rewind(); + + glBufferData(GL_ARRAY_BUFFER, 2 * 4 * 4, GL_STREAM_DRAW); + glBufferData(GL_ELEMENT_ARRAY_BUFFER, 4 * 4, GL_STREAM_DRAW); + + renderer = new QuadRenderer(); + } + + /** Cleanup */ + private static void cleanup() { + renderer.cleanup(); + + IntBuffer int_buffer = BufferUtils.createIntBuffer(2); + int_buffer.put(0, buffer_id); + int_buffer.put(1, indices_buffer_id); + + glDeleteBuffers(int_buffer); + + Display.destroy(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/QuadRenderer.java b/src/java/org/lwjgl/test/opengles/QuadRenderer.java new file mode 100644 index 00000000..f0e05f25 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/QuadRenderer.java @@ -0,0 +1,70 @@ +package org.lwjgl.test.opengles; + +import org.lwjgl.BufferUtils; +import org.lwjgl.test.opengles.util.Shader; +import org.lwjgl.test.opengles.util.ShaderProgram; +import org.lwjgl.util.vector.Matrix4f; + +import java.nio.FloatBuffer; + +import static org.lwjgl.opengles.GLES20.*; +import static org.lwjgl.test.opengles.util.GLMatrix.*; + +final class QuadRenderer { + + private final Shader vsh; + private final Shader fsh; + private final ShaderProgram program; + + private final int uniMVP; + + private final Matrix4f p = new Matrix4f(); + private final Matrix4f mv = new Matrix4f(); + private final Matrix4f mvp = new Matrix4f(); + + private final FloatBuffer m4fBuffer = BufferUtils.createFloatBuffer(4 * 4); + + QuadRenderer() { + vsh = new Shader(GL_VERTEX_SHADER, "uniform highp mat4 MODEL_VIEW_PROJECTION_MATRIX;\n" + + "attribute highp vec2 vPosition;\n" + + "void main(void) {\n" + + "\tgl_Position = MODEL_VIEW_PROJECTION_MATRIX * vec4(vPosition, 0.0, 1.0);\n" + + "}"); + + fsh = new Shader(GL_FRAGMENT_SHADER, "void main(void) {\n" + + "\tgl_FragColor = vec4(1.0);\n" + + "}"); + + program = new ShaderProgram(vsh, fsh); + program.enable(); + + uniMVP = program.getUniformLocation("MODEL_VIEW_PROJECTION_MATRIX"); + + final int vPosition = program.getAttributeLocation("vPosition"); + glVertexAttribPointer(vPosition, 2, GL_FLOAT, false, 0, 0); + glEnableVertexAttribArray(vPosition); + } + + void setMVPUniform() { + // Get Projection and Modelview matrices + glMatrixMode(GL_PROJECTION); + glGetMatrix(p); + + glMatrixMode(GL_MODELVIEW); + glGetMatrix(mv); + + // Set MVP uniform + Matrix4f.mul(p, mv, mvp); + mvp.store(m4fBuffer); + m4fBuffer.flip(); + glUniformMatrix4(uniMVP, false, m4fBuffer); + } + + void cleanup() { + program.destroy(); + + fsh.destroy(); + vsh.destroy(); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/BufferObject.java b/src/java/org/lwjgl/test/opengles/util/BufferObject.java new file mode 100644 index 00000000..c698bc97 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/BufferObject.java @@ -0,0 +1,99 @@ +package org.lwjgl.test.opengles.util; + +import java.nio.*; + +import static org.lwjgl.opengles.GLES20.*; +import static org.lwjgl.opengles.OESMapbuffer.*; + +abstract class BufferObject implements GLObject { + + protected final int ID; + + protected int target; + protected int usage; + + /** The BufferObject data size in bytes. */ + private int size; + + protected BufferObject(final int type, final int usage) { + this.ID = glGenBuffers(); + this.target = type; + this.usage = usage; + } + + protected BufferObject(final int type, final int usage, final Buffer buffer) { + this(type, usage); + setData(buffer); + } + + protected BufferObject(final int type, final int usage, final int dataSize) { + this(type, usage); + setData(dataSize); + } + + public final int getID() { + return ID; + } + + public void destroy() { + glDeleteBuffers(ID); + } + + public final int getTarget() { + return target; + } + + public final int getUsage() { + return usage; + } + + public final int getSize() { + return size; + } + + public abstract void enable(); + + public abstract void disable(); + + public final void setData(final Buffer buffer) { + enable(); + + if ( buffer instanceof ByteBuffer ) { + glBufferData(target, (ByteBuffer)buffer, usage); + size = buffer.remaining(); + } else if ( buffer instanceof ShortBuffer ) { + glBufferData(target, (ShortBuffer)buffer, usage); + size = buffer.remaining() << 1; + } else if ( buffer instanceof IntBuffer ) { + glBufferData(target, (IntBuffer)buffer, usage); + size = buffer.remaining() << 2; + } else if ( buffer instanceof FloatBuffer ) { + glBufferData(target, (FloatBuffer)buffer, usage); + size = buffer.remaining() << 2; + } + + disable(); + } + + public final void setData(final int dataSize) { + enable(); + + glBufferData(target, dataSize, usage); + size = dataSize; + + disable(); + } + + public final ByteBuffer map(final int access, final ByteBuffer oldBuffer) { + return glMapBufferOES(target, access, oldBuffer); + } + + public final ByteBuffer map(final int access, final int length, final ByteBuffer oldBuffer) { + return glMapBufferOES(target, access, length, oldBuffer); + } + + public final boolean unmap() { + return glUnmapBufferOES(target); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/BufferObjectArray.java b/src/java/org/lwjgl/test/opengles/util/BufferObjectArray.java new file mode 100644 index 00000000..f499e5ab --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/BufferObjectArray.java @@ -0,0 +1,41 @@ +package org.lwjgl.test.opengles.util; + +import java.nio.Buffer; + +import static org.lwjgl.opengles.GLES20.*; + +public final class BufferObjectArray extends BufferObject { + + private static int boundBOArray; + + public BufferObjectArray(final int usage) { + super(GL_ARRAY_BUFFER, usage); + } + + public BufferObjectArray(final int usage, final Buffer buffer) { + super(GL_ARRAY_BUFFER, usage, buffer); + } + + public BufferObjectArray(final int usage, final int dataSize) { + super(GL_ARRAY_BUFFER, usage, dataSize); + } + + public void enable() { + if ( boundBOArray != ID ) { + glBindBuffer(GL_ARRAY_BUFFER, ID); + boundBOArray = ID; + } + } + + public void disable() { + boArrayDisable(); + } + + public static void boArrayDisable() { + if ( boundBOArray != 0 ) { + glBindBuffer(GL_ARRAY_BUFFER, 0); + boundBOArray = 0; + } + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/BufferObjectElement.java b/src/java/org/lwjgl/test/opengles/util/BufferObjectElement.java new file mode 100644 index 00000000..4fae8e33 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/BufferObjectElement.java @@ -0,0 +1,41 @@ +package org.lwjgl.test.opengles.util; + +import java.nio.Buffer; + +import static org.lwjgl.opengles.GLES20.*; + +public final class BufferObjectElement extends BufferObject { + + private static int boundBOElementArray; + + public BufferObjectElement(final int usage) { + super(GL_ELEMENT_ARRAY_BUFFER, usage); + } + + public BufferObjectElement(final int usage, final Buffer buffer) { + super(GL_ELEMENT_ARRAY_BUFFER, usage, buffer); + } + + public BufferObjectElement(final int usage, final int dataSize) { + super(GL_ELEMENT_ARRAY_BUFFER, usage, dataSize); + } + + public void enable() { + if ( boundBOElementArray != ID ) { + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ID); + boundBOElementArray = ID; + } + } + + public void disable() { + boElementArrayDisable(); + } + + public static void boElementArrayDisable() { + if ( boundBOElementArray != 0 ) { + glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); + boundBOElementArray = 0; + } + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/GLLight.java b/src/java/org/lwjgl/test/opengles/util/GLLight.java new file mode 100644 index 00000000..85a35755 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/GLLight.java @@ -0,0 +1,165 @@ +package org.lwjgl.test.opengles.util; + +import static org.lwjgl.opengles.GLES20.*; + +/** Emulates the light state in fixed-function OpenGL. */ +public class GLLight { + + public static final int GL_LIGHT0 = 0x4000; + public static final int GL_LIGHT1 = 0x4001; + public static final int GL_LIGHT2 = 0x4002; + public static final int GL_LIGHT3 = 0x4003; + public static final int GL_LIGHT4 = 0x4004; + public static final int GL_LIGHT5 = 0x4005; + public static final int GL_LIGHT6 = 0x4006; + public static final int GL_LIGHT7 = 0x4007; + + public static final int GL_AMBIENT = 0x1200; + public static final int GL_DIFFUSE = 0x1201; + public static final int GL_SPECULAR = 0x1202; + public static final int GL_POSITION = 0x1203; + public static final int GL_SPOT_DIRECTION = 0x1204; + public static final int GL_SPOT_EXPONENT = 0x1205; + public static final int GL_SPOT_CUTOFF = 0x1206; + public static final int GL_CONSTANT_ATTENUATION = 0x1207; + public static final int GL_LINEAR_ATTENUATION = 0x1208; + public static final int GL_QUADRATIC_ATTENUATION = 0x1209; + + private static final Light[] lights = new Light[8]; + + static { + for ( int i = 0; i < lights.length; i++ ) + lights[i] = new Light(); + + System.arraycopy(new float[] { 1.0f, 1.0f, 1.0f, 1.0f }, 0, lights[0].diffuse, 0, 4); + System.arraycopy(new float[] { 1.0f, 1.0f, 1.0f, 1.0f }, 0, lights[0].specular, 0, 4); + } + + private GLLight() { + } + + public static void glLight(final int light, final int pname, final float v) { + if ( light < GL_LIGHT0 || GL_LIGHT7 < light ) + throw new IllegalArgumentException("Invalid light specified: " + light); + + final Light l = lights[light - GL_LIGHT0]; + + switch ( pname ) { + case GL_SPOT_EXPONENT: + l.s = v; + break; + case GL_SPOT_CUTOFF: + l.c = v; + break; + case GL_CONSTANT_ATTENUATION: + l.k0 = v; + break; + case GL_LINEAR_ATTENUATION: + l.k1 = v; + break; + case GL_QUADRATIC_ATTENUATION: + l.k2 = v; + break; + default: + throw new IllegalArgumentException("Invalid light parameter specified: " + pname); + } + } + + public static void glLight(final int light, final int pname, + final float x, final float y, final float z) { + if ( light < GL_LIGHT0 || GL_LIGHT7 < light ) + throw new IllegalArgumentException("Invalid light specified: " + light); + + if ( pname != GL_SPOT_DIRECTION ) + throw new IllegalArgumentException("Invalid light parameter specified: " + pname); + + final float[] param = lights[light - GL_LIGHT0].direction; + + param[0] = x; + param[1] = y; + param[2] = z; + } + + private static float[] getParam4f(final int light, final int pname) { + if ( light < GL_LIGHT0 || GL_LIGHT7 < light ) + throw new IllegalArgumentException("Invalid light specified: " + light); + + final Light l = lights[light - GL_LIGHT0]; + switch ( pname ) { + case GL_AMBIENT: + return l.ambient; + case GL_DIFFUSE: + return l.diffuse; + case GL_SPECULAR: + return l.specular; + case GL_POSITION: + return l.position; + default: + throw new IllegalArgumentException("Invalid light parameter specified: " + pname); + } + } + + public static void glLight(final int light, final int pname, + final float x, final float y, final float z, final float w) { + final float[] param = getParam4f(light, pname); + param[0] = x; + param[1] = y; + param[2] = z; + param[3] = w; + } + + public static void setUniform1f(final int location, final int light, final int pname) { + if ( light < GL_LIGHT0 || GL_LIGHT7 < light ) + throw new IllegalArgumentException("Invalid light specified: " + light); + + final Light l = lights[light - GL_LIGHT0]; + + switch ( pname ) { + case GL_SPOT_EXPONENT: + glUniform1f(location, l.s); + break; + case GL_SPOT_CUTOFF: + glUniform1f(location, l.c); + break; + case GL_CONSTANT_ATTENUATION: + glUniform1f(location, l.k0); + break; + case GL_LINEAR_ATTENUATION: + glUniform1f(location, l.k1); + break; + case GL_QUADRATIC_ATTENUATION: + glUniform1f(location, l.k2); + break; + default: + throw new IllegalArgumentException("Invalid light parameter specified: " + pname); + } + } + + public static void setUniform3f(final int location, final int light, final int pname) { + if ( pname != GL_SPOT_DIRECTION ) + throw new IllegalArgumentException("Invalid light parameter specified: " + pname); + + final float[] param = lights[light - GL_LIGHT0].direction; + glUniform3f(location, param[0], param[1], param[2]); + } + + public static void setUniform4f(final int location, final int light, final int pname) { + final float[] param = getParam4f(light, pname); + glUniform4f(location, param[0], param[1], param[2], param[3]); + } + + private static class Light { + + float[] ambient = { 0.0f, 0.0f, 0.0f, 1.0f }; + float[] diffuse = { 0.0f, 0.0f, 0.0f, 1.0f }; + float[] specular = { 0.0f, 0.0f, 0.0f, 1.0f }; + + float[] position = { 0.0f, 0.0f, 1.0f, 0.0f }; + float[] direction = { 0.0f, 0.0f, -1.0f }; + + float s, c = 180.0f; + float k0 = 1.0f, k1, k2; + + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/GLMatrix.java b/src/java/org/lwjgl/test/opengles/util/GLMatrix.java new file mode 100644 index 00000000..bdfc9fed --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/GLMatrix.java @@ -0,0 +1,163 @@ +package org.lwjgl.test.opengles.util; + +import org.lwjgl.util.vector.Matrix4f; +import org.lwjgl.util.vector.Vector3f; + +import java.util.Stack; + +import static java.lang.Math.*; + +/** Emulates the matrix stack in fixed-function OpenGL. */ +public final class GLMatrix { + + public static final int GL_MODELVIEW = 0x1700; + public static final int GL_PROJECTION = 0x1701; + + private static final float PI = (float)Math.PI; + + /** The model/view matrix stack. */ + private static final Stack mvMatrixStack = new Stack(); + + /** The projection matrix stack. */ + private static final Stack pMatrixStack = new Stack(); + + private static final Matrix4f m4f = new Matrix4f(); + private static final Vector3f v3f = new Vector3f(); + + private static int mode = GL_MODELVIEW; + + static { + mvMatrixStack.push(new Matrix4f()); + pMatrixStack.push(new Matrix4f()); + } + + private GLMatrix() { + } + + private static Stack getCurrentStack() { + switch ( mode ) { + case GL_MODELVIEW: + return mvMatrixStack; + case GL_PROJECTION: + return pMatrixStack; + default: + return null; // Cannot happen + } + } + + private static Matrix4f getCurrentMatrix() { + return getCurrentStack().peek(); + } + + public static void glMatrixMode(final int mode) { + if ( mode != GL_MODELVIEW && mode != GL_PROJECTION ) + throw new IllegalArgumentException("Invalid matrix mode specified: " + mode); + + GLMatrix.mode = mode; + } + + public static void glPushMatrix() { + final Stack stack = getCurrentStack(); + stack.push(new Matrix4f(stack.peek())); + } + + public static void glPopMatrix() { + final Stack stack = getCurrentStack(); + + if ( stack.size() == 1 ) + throw new IllegalStateException("The last matrix in the stack cannot be popped."); + + getCurrentStack().pop(); + } + + public static void glLoadIdentity() { + final Matrix4f m = getCurrentMatrix(); + m.setIdentity(); + } + + public static void glLoadMatrix(final Matrix4f s) { + getCurrentMatrix().load(s); + } + + public static void glMultMatrix(final Matrix4f m) { + final Matrix4f c = getCurrentMatrix(); + Matrix4f.mul(c, m, c); + } + + public static void glTranslatef(final float x, final float y, final float z) { + final Matrix4f m = getCurrentMatrix(); + v3f.set(x, y, z); + m.translate(v3f); + } + + public static void glRotatef(final float angle, final float x, final float y, final float z) { + final Matrix4f m = getCurrentMatrix(); + v3f.set(x, y, z); + m.rotate((float)toRadians(angle), v3f); + } + + public static void glOrtho(final float l, final float r, final float b, final float t, final float n, final float f) { + final Matrix4f m = m4f; + m.setIdentity(); + + m.m00 = 2.0f / (r - l); + m.m30 = -(r + l) / (r - l); + + m.m11 = 2.0f / (t - b); + m.m31 = -(t + b) / (t - b); + + m.m22 = -2.0f / (f - n); + m.m32 = -(f + n) / (f - n); + + glMultMatrix(m); + } + + public static void glFrustum(final float l, final float r, final float b, final float t, final float n, final float f) { + final Matrix4f m = m4f; + m.setIdentity(); + + m.m00 = 2.0f * n / (r - l); + m.m20 = (r + l) / (r - l); + + m.m11 = 2.0f * n / (t - b); + m.m21 = (t + b) / (t - b); + + m.m22 = -(f + n) / (f - n); + m.m32 = -(2.0f * f * n) / (f - n); + + m.m23 = -1.0f; + m.m33 = 0.0f; + + glMultMatrix(m); + } + + public static void gluPerspective(final float fovy, final float aspect, final float zNear, final float zFar) { + final float radians = fovy / 2.0f * PI / 180.0f; + + final float deltaZ = zFar - zNear; + final float sine = (float)sin(radians); + + if ( (deltaZ == 0) || (sine == 0) || (aspect == 0) ) { + return; + } + + final float cotangent = (float)cos(radians) / sine; + + final Matrix4f m = m4f; + m.setIdentity(); + + m.m00 = cotangent / aspect; + m.m11 = cotangent; + m.m22 = -(zFar + zNear) / deltaZ; + m.m23 = -1.0f; + m.m32 = -2 * zNear * zFar / deltaZ; + m.m33 = 0.0f; + + glMultMatrix(m); + } + + public static void glGetMatrix(final Matrix4f d) { + d.load(getCurrentMatrix()); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/GLObject.java b/src/java/org/lwjgl/test/opengles/util/GLObject.java new file mode 100644 index 00000000..56463b38 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/GLObject.java @@ -0,0 +1,9 @@ +package org.lwjgl.test.opengles.util; + +public interface GLObject { + + int getID(); + + void destroy(); + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/Geometry.java b/src/java/org/lwjgl/test/opengles/util/Geometry.java new file mode 100644 index 00000000..8af707b2 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/Geometry.java @@ -0,0 +1,78 @@ +package org.lwjgl.test.opengles.util; + +import org.lwjgl.test.opengles.util.BufferObjectArray; + +import java.nio.FloatBuffer; +import java.util.ArrayList; +import java.util.List; + +import static org.lwjgl.opengles.GLES20.*; + +public class Geometry { + + protected BufferObjectArray bo; + + protected final List drawCommands = new ArrayList(4); + + public Geometry() { + } + + public Geometry(final FloatBuffer buffer) { + update(buffer); + } + + public void update(final FloatBuffer buffer) { + if ( bo != null ) + destroy(); + + bo = new BufferObjectArray(GL_STATIC_DRAW, buffer); + } + + public void bind() { + bo.enable(); + } + + public void draw() { + for ( DrawCommand command : drawCommands ) + command.draw(); + } + + public void destroy() { + bo.destroy(); + bo = null; + + drawCommands.clear(); + } + + public int addDrawCommand(final int mode, final int first, final int count) { + drawCommands.add(new DrawCommand(mode, first, count)); + return count; + } + + public static float sin(final float r) { + return (float)Math.sin(r); + } + + public static float cos(final float r) { + return (float)Math.cos(r); + } + + protected static class DrawCommand { + + private int mode; + private int first; + private int count; + + private DrawCommand(final int mode, final int first, final int count) { + this.mode = mode; + this.first = first; + this.count = count; + } + + void draw() { + glDrawArrays(mode, first, count); + } + + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/ImmediateModeBuffer.java b/src/java/org/lwjgl/test/opengles/util/ImmediateModeBuffer.java new file mode 100644 index 00000000..24137fad --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/ImmediateModeBuffer.java @@ -0,0 +1,58 @@ +package org.lwjgl.test.opengles.util; + +import org.lwjgl.BufferUtils; + +import java.nio.FloatBuffer; + +/** + * Utility class that emulates immediate mode vertex data submission. + * Can be used to create VBO data. + */ +public final class ImmediateModeBuffer { + + private FloatBuffer buffer; + + public ImmediateModeBuffer(final int startSize) { + this.buffer = BufferUtils.createFloatBuffer(startSize); + } + + private void checkSize(final int count) { + while ( buffer.remaining() < count ) { + final FloatBuffer newBuffer = BufferUtils.createFloatBuffer(buffer.capacity() << 1); + buffer.flip(); + newBuffer.put(buffer); + buffer = newBuffer; + } + } + + public FloatBuffer getBuffer() { + buffer.flip(); + return buffer; + } + + public void glVertex2f(final float x, final float y) { + checkSize(2); + buffer.put(x).put(y); + } + + public void glVertex3f(final float x, final float y, final float z) { + checkSize(3); + buffer.put(x).put(y).put(z); + } + + public void glVertex4f(final float x, final float y, final float z, final float w) { + checkSize(4); + buffer.put(x).put(y).put(z).put(w); + } + + public void glNormal3f(final float x, final float y, final float z) { + checkSize(3); + buffer.put(x).put(y).put(z); + } + + public void glTexCoord2f(final float s, final float t) { + checkSize(2); + buffer.put(s).put(t); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/Shader.java b/src/java/org/lwjgl/test/opengles/util/Shader.java new file mode 100644 index 00000000..cec9f8d4 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/Shader.java @@ -0,0 +1,98 @@ +package org.lwjgl.test.opengles.util; + +import org.lwjgl.BufferUtils; + +import java.io.BufferedInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.nio.ByteBuffer; + +import static org.lwjgl.opengles.GLES20.*; + +public class Shader implements GLObject { + + protected static ByteBuffer fileBuffer = BufferUtils.createByteBuffer(1024 * 10); + + private int type; + private int ID; + + public Shader() { + } + + public Shader(final int type, final CharSequence source) { + createFromSource(type, source); + } + + public int getID() { + return ID; + } + + public int getType() { + return type; + } + + public void destroy() { + if ( ID == 0 ) + throw new IllegalStateException("The shader has not been created"); + + glDeleteShader(ID); + ID = 0; + } + + public void createFromFile(final int type, final ClassLoader loader, final String file) throws IOException { + final InputStream inputStream = loader.getResourceAsStream(file); + + if ( inputStream == null ) + throw new IllegalArgumentException("A shader source file could not be found: " + file); + + final BufferedInputStream stream = new BufferedInputStream(inputStream); + + byte character; + while ( (character = (byte)stream.read()) != -1 ) + fileBuffer.put(character); + fileBuffer.flip(); + + stream.close(); + + final byte[] array = new byte[fileBuffer.remaining()]; + fileBuffer.get(array); + + final String source = new String(array); + + fileBuffer.clear(); + + createFromSource(type, source); + } + + public void createFromSource(final int type, final CharSequence source) { + if ( ID != 0 ) + throw new IllegalStateException("The shader has already been created"); + + this.type = type; + this.ID = glCreateShader(type); + + glShaderSource(ID, source); + + glCompileShader(ID); + + if ( glGetShader(ID, GL_COMPILE_STATUS) == GL_FALSE ) { + printInfoLog(); + destroy(); + throw new RuntimeException("A compilation error occured in a shader."); + } + } + + public void printInfoLog() { + if ( ID == 0 ) + throw new IllegalStateException("The shader has not been created"); + + final int logLength = glGetShader(ID, GL_INFO_LOG_LENGTH); + if ( logLength <= 1 ) + return; + + System.out.println("\nInfo Log of Shader Object: " + ID); + System.out.println("--------------------------"); + System.out.println(glGetShaderInfoLog(ID, logLength)); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/ShaderProgram.java b/src/java/org/lwjgl/test/opengles/util/ShaderProgram.java new file mode 100644 index 00000000..da37c2f8 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/ShaderProgram.java @@ -0,0 +1,82 @@ +package org.lwjgl.test.opengles.util; + +import static org.lwjgl.opengles.GLES20.*; + +public class ShaderProgram implements GLObject { + + private final int ID; + + public ShaderProgram(final Shader... shaders) { + this.ID = glCreateProgram(); + + for ( Shader shader : shaders ) + glAttachShader(ID, shader.getID()); + + glLinkProgram(ID); + + if ( glGetProgram(ID, GL_LINK_STATUS) == GL_FALSE ) { + printInfoLog(); + destroy(); + throw new RuntimeException("Failed to link a Shader Program: " + ID); + } + } + + public void validate() { + glValidateProgram(ID); + + final boolean error = glGetProgram(ID, GL_VALIDATE_STATUS) == GL_FALSE; + + if ( error ) { + printInfoLog(); + throw new RuntimeException("Failed to validate a Shader Program."); + } + } + + public int getID() { + return ID; + } + + public void destroy() { + glDeleteProgram(ID); + } + + public void enable() { + glUseProgram(ID); + } + + public static void disable() { + glUseProgram(0); + } + + public int getUniformLocation(final String uniform) { + final int location = glGetUniformLocation(ID, uniform); + + if ( location == -1 ) + throw new IllegalArgumentException("Invalid uniform name specified: " + uniform); + + return location; + } + + public int getAttributeLocation(final String attrib) { + final int location = glGetAttribLocation(ID, attrib); + + if ( location == -1 ) + throw new IllegalArgumentException("Invalid attribute name specified: " + attrib); + + return location; + } + + private void printInfoLog() { + final int logLength = glGetProgram(ID, GL_INFO_LOG_LENGTH); + + System.out.println(logLength); + if ( logLength <= 1 ) + return; + + System.out.println("\nInfo Log of Shader Program: " + ID); + System.out.println("-------------------"); + System.out.println(glGetProgramInfoLog(ID, logLength)); + System.out.println("-------------------"); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/test/opengles/util/Sphere.java b/src/java/org/lwjgl/test/opengles/util/Sphere.java new file mode 100644 index 00000000..1d0f8f05 --- /dev/null +++ b/src/java/org/lwjgl/test/opengles/util/Sphere.java @@ -0,0 +1,414 @@ +package org.lwjgl.test.opengles.util; + +import java.nio.FloatBuffer; +import java.util.ArrayList; +import java.util.List; + +import static org.lwjgl.opengles.GLES20.*; + +/** VBO implementation of GLU Sphere. */ +public final class Sphere { + + /* QuadricNormal */ + public static final int GLU_SMOOTH = 100000; + public static final int GLU_FLAT = 100001; + public static final int GLU_NONE = 100002; + + /* QuadricDrawStyle */ + public static final int GLU_POINT = 100010; + public static final int GLU_LINE = 100011; + public static final int GLU_FILL = 100012; + public static final int GLU_SILHOUETTE = 100013; + + /* QuadricOrientation */ + public static final int GLU_OUTSIDE = 100020; + public static final int GLU_INSIDE = 100021; + + static final float PI = (float)Math.PI; + + private int drawStyle; + private int orientation; + private boolean textureFlag; + private int normals; + + private BufferObjectArray bo; + + private final List drawCommands = new ArrayList(4); + + public Sphere() { + this(GLU_FILL, GLU_OUTSIDE, false, GLU_SMOOTH); + } + + public Sphere(final int drawStyle, final int orientation, final boolean textureFlag, final int normals) { + setDrawStyle(drawStyle); + setOrientation(orientation); + setTextureFlag(textureFlag); + setNormals(normals); + } + + public Sphere(final float radius, final int slices, final int stacks) { + this(); + updateGeometry(radius, slices, stacks); + } + + public Sphere(final float radius, final int slices, final int stacks, + final int drawStyle, final int orientation, final boolean textureFlag, final int normals) { + this(drawStyle, orientation, textureFlag, normals); + updateGeometry(radius, slices, stacks); + } + + public void updateGeometry(final float radius, final int slices, final int stacks) { + if ( bo != null ) + destroy(); + + bo = new BufferObjectArray(GL_STATIC_DRAW, createBuffer(radius, slices, stacks)); + } + + public void bind() { + bo.enable(); + } + + public void draw() { + for ( DrawCommand command : drawCommands ) + command.draw(); + } + + public void destroy() { + bo.destroy(); + bo = null; + + drawCommands.clear(); + } + + /** + * specifies the draw style for quadrics. + *

+ * The legal values are as follows: + *

+ * GLU.FILL: Quadrics are rendered with polygon primitives. The polygons + * are drawn in a counterclockwise fashion with respect to + * their normals (as defined with glu.quadricOrientation). + *

+ * GLU.LINE: Quadrics are rendered as a set of lines. + *

+ * GLU.SILHOUETTE: Quadrics are rendered as a set of lines, except that edges + * separating coplanar faces will not be drawn. + *

+ * GLU.POINT: Quadrics are rendered as a set of points. + * + * @param drawStyle The drawStyle to set + */ + public void setDrawStyle(int drawStyle) { + switch ( drawStyle ) { + case GLU_FILL: + case GLU_LINE: + case GLU_SILHOUETTE: + case GLU_POINT: + break; + default: + throw new IllegalArgumentException("Invalid draw style specified: " + drawStyle); + } + + this.drawStyle = drawStyle; + } + + /** + * specifies what kind of normals are desired for quadrics. + * The legal values are as follows: + *

+ * GLU.NONE: No normals are generated. + *

+ * GLU.FLAT: One normal is generated for every facet of a quadric. + *

+ * GLU.SMOOTH: One normal is generated for every vertex of a quadric. This + * is the default. + * + * @param normals The normals to set + */ + public void setNormals(int normals) { + switch ( normals ) { + case GLU_NONE: + case GLU_FLAT: + case GLU_SMOOTH: + break; + default: + throw new IllegalArgumentException("Invalid normal kind specified: " + normals); + } + + this.normals = normals; + } + + /** + * specifies what kind of orientation is desired for. + * The orientation values are as follows: + *

+ * GLU.OUTSIDE: Quadrics are drawn with normals pointing outward. + *

+ * GLU.INSIDE: Normals point inward. The default is GLU.OUTSIDE. + *

+ * Note that the interpretation of outward and inward depends on the quadric + * being drawn. + * + * @param orientation The orientation to set + */ + public void setOrientation(int orientation) { + if ( orientation != GLU_OUTSIDE && orientation != GLU_INSIDE ) + throw new IllegalArgumentException("Invalid orientation specified: " + orientation); + + this.orientation = orientation; + } + + /** + * specifies if texture coordinates should be generated for + * quadrics rendered with qobj. If the value of textureCoords is true, + * then texture coordinates are generated, and if textureCoords is false, + * they are not.. The default is false. + *

+ * The manner in which texture coordinates are generated depends upon the + * specific quadric rendered. + * + * @param textureFlag The textureFlag to set + */ + public void setTextureFlag(boolean textureFlag) { + this.textureFlag = textureFlag; + } + + /** + * Returns the drawStyle. + * + * @return int + */ + public int getDrawStyle() { + return drawStyle; + } + + /** + * Returns the normals. + * + * @return int + */ + public int getNormals() { + return normals; + } + + /** + * Returns the orientation. + * + * @return int + */ + public int getOrientation() { + return orientation; + } + + /** + * Returns the textureFlag. + * + * @return boolean + */ + public boolean getTextureFlag() { + return textureFlag; + } + + private static float sin(final float r) { + return (float)Math.sin(r); + } + + private static float cos(final float r) { + return (float)Math.cos(r); + } + + private int addDrawCommand(final int mode, final int first, final int count) { + drawCommands.add(new DrawCommand(mode, first, count)); + return count; + } + + /** + * draws a sphere of the given radius centered around the origin. + * The sphere is subdivided around the z axis into slices and along the z axis + * into stacks (similar to lines of longitude and latitude). + *

+ * If the orientation is set to GLU.OUTSIDE (with glu.quadricOrientation), then + * any normals generated point away from the center of the sphere. Otherwise, + * they point toward the center of the sphere. + *

+ * If texturing is turned on (with glu.quadricTexture), then texture + * coordinates are generated so that t ranges from 0.0 at z=-radius to 1.0 at + * z=radius (t increases linearly along longitudinal lines), and s ranges from + * 0.0 at the +y axis, to 0.25 at the +x axis, to 0.5 at the -y axis, to 0.75 + * at the -x axis, and back to 1.0 at the +y axis. + */ + public FloatBuffer createBuffer(float radius, int slices, int stacks) { + float rho, theta; + float x, y, z; + float s, t, ds, dt; + int i, j; + + final boolean normals = this.normals != GLU_NONE; + final float nsign = this.orientation == GLU_INSIDE ? -1.0f : 1.0f; + + final float drho = PI / stacks; + final float dtheta = 2.0f * PI / slices; + + final ImmediateModeBuffer imb = new ImmediateModeBuffer(16 * 1024); // TODO: We can calculate this to avoid re-allocs + int lastDrawIndex = 0; + + if ( this.drawStyle == GLU_FILL ) { + if ( !this.textureFlag ) { + lastDrawIndex += addDrawCommand(GL_TRIANGLE_FAN, lastDrawIndex, slices + 2); + + // draw +Z end as a triangle fan + imb.glNormal3f(0.0f, 0.0f, 1.0f); + imb.glVertex3f(0.0f, 0.0f, nsign * radius); + for ( j = 0; j <= slices; j++ ) { + theta = (j == slices) ? 0.0f : j * dtheta; + x = -sin(theta) * sin(drho); + y = cos(theta) * sin(drho); + z = nsign * cos(drho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + imb.glVertex3f(x * radius, y * radius, z * radius); + } + } + + ds = 1.0f / slices; + dt = 1.0f / stacks; + t = 1.0f; // because loop now runs from 0 + + final int imin, imax; + if ( this.textureFlag ) { + imin = 0; + imax = stacks; + } else { + imin = 1; + imax = stacks - 1; + } + + // draw intermediate stacks as quad strips + for ( i = imin; i < imax; i++ ) { + lastDrawIndex += addDrawCommand(GL_TRIANGLE_STRIP, lastDrawIndex, (slices + 1) * 2); + + rho = i * drho; + s = 0.0f; + for ( j = 0; j <= slices; j++ ) { + theta = (j == slices) ? 0.0f : j * dtheta; + + x = -sin(theta) * sin(rho); + y = cos(theta) * sin(rho); + z = nsign * cos(rho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + if ( textureFlag ) + imb.glTexCoord2f(s, t); + imb.glVertex3f(x * radius, y * radius, z * radius); + + x = -sin(theta) * sin(rho + drho); + y = cos(theta) * sin(rho + drho); + z = nsign * cos(rho + drho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + if ( textureFlag ) + imb.glTexCoord2f(s, t - dt); + s += ds; + imb.glVertex3f(x * radius, y * radius, z * radius); + } + t -= dt; + } + + if ( !this.textureFlag ) { + lastDrawIndex += addDrawCommand(GL_TRIANGLE_FAN, lastDrawIndex, slices + 2); + + // draw -Z end as a triangle fan + imb.glNormal3f(0.0f, 0.0f, -1.0f); + imb.glVertex3f(0.0f, 0.0f, -radius * nsign); + rho = PI - drho; + s = 1.0f; + for ( j = slices; j >= 0; j-- ) { + theta = (j == slices) ? 0.0f : j * dtheta; + x = -sin(theta) * sin(rho); + y = cos(theta) * sin(rho); + z = nsign * cos(rho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + s -= ds; + imb.glVertex3f(x * radius, y * radius, z * radius); + } + } + } else if ( this.drawStyle == GLU_LINE || this.drawStyle == GLU_SILHOUETTE ) { + // draw stack lines + for ( i = 1; i < stacks; i++ ) { // stack line at i==stacks-1 was missing here + lastDrawIndex += addDrawCommand(GL_LINE_LOOP, lastDrawIndex, slices); + + rho = i * drho; + for ( j = 0; j < slices; j++ ) { + theta = j * dtheta; + x = cos(theta) * sin(rho); + y = sin(theta) * sin(rho); + z = cos(rho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + imb.glVertex3f(x * radius, y * radius, z * radius); + } + } + // draw slice lines + for ( j = 0; j < slices; j++ ) { + lastDrawIndex += addDrawCommand(GL_LINE_STRIP, lastDrawIndex, stacks + 1); + + theta = j * dtheta; + for ( i = 0; i <= stacks; i++ ) { + rho = i * drho; + x = cos(theta) * sin(rho); + y = sin(theta) * sin(rho); + z = cos(rho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + imb.glVertex3f(x * radius, y * radius, z * radius); + } + } + } else if ( this.drawStyle == GLU_POINT ) { + lastDrawIndex += addDrawCommand(GL_POINTS, lastDrawIndex, 2 + (stacks - 2) * slices); + + // top and bottom-most points + if ( normals ) + imb.glNormal3f(0.0f, 0.0f, nsign); + imb.glVertex3f(0.0f, 0.0f, radius); + if ( normals ) + imb.glNormal3f(0.0f, 0.0f, -nsign); + imb.glVertex3f(0.0f, 0.0f, -radius); + + // loop over stacks + for ( i = 1; i < stacks - 1; i++ ) { + rho = i * drho; + for ( j = 0; j < slices; j++ ) { + theta = j * dtheta; + x = cos(theta) * sin(rho); + y = sin(theta) * sin(rho); + z = cos(rho); + if ( normals ) + imb.glNormal3f(x * nsign, y * nsign, z * nsign); + imb.glVertex3f(x * radius, y * radius, z * radius); + } + } + } + + return imb.getBuffer(); + } + + private static class DrawCommand { + + private int mode; + private int first; + private int count; + + private DrawCommand(final int mode, final int first, final int count) { + this.mode = mode; + this.first = first; + this.count = count; + } + + void draw() { + glDrawArrays(mode, first, count); + } + + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/util/generator/FieldsGenerator.java b/src/java/org/lwjgl/util/generator/FieldsGenerator.java index a8a6d4b0..a9d8f394 100644 --- a/src/java/org/lwjgl/util/generator/FieldsGenerator.java +++ b/src/java/org/lwjgl/util/generator/FieldsGenerator.java @@ -59,7 +59,8 @@ public class FieldsGenerator { PrimitiveType.Kind field_kind = field_type_prim.getKind(); if ( field_kind != PrimitiveType.Kind.INT && field_kind != PrimitiveType.Kind.LONG - && field_kind != PrimitiveType.Kind.FLOAT ) { + && field_kind != PrimitiveType.Kind.FLOAT + && field_kind != PrimitiveType.Kind.BYTE ) { throw new RuntimeException("Field " + field.getSimpleName() + " is not of type 'int', 'long' or 'float'"); } } else if ( "java.lang.String".equals(field_type.toString()) ) { @@ -85,6 +86,8 @@ public class FieldsGenerator { field_value_string = "0x" + Long.toHexString((Long)field.getConstantValue()).toUpperCase() + 'L'; } else if ( field_value_class.equals(Float.class) ) { field_value_string = field.getConstantValue() + "f"; + } else if ( value.getClass().equals(Byte.class) ) { + field_value_string = "0x" + Integer.toHexString((Byte)field.getConstantValue()).toUpperCase(); } else if ( field_value_class.equals(String.class) ) { field_value_string = "\"" + field.getConstantValue() + "\""; } else { diff --git a/src/java/org/lwjgl/util/generator/JavaMethodsGenerator.java b/src/java/org/lwjgl/util/generator/JavaMethodsGenerator.java index bd343502..303289d1 100644 --- a/src/java/org/lwjgl/util/generator/JavaMethodsGenerator.java +++ b/src/java/org/lwjgl/util/generator/JavaMethodsGenerator.java @@ -209,17 +209,21 @@ public class JavaMethodsGenerator { return false; } - private static void printBufferObjectCheck(PrintWriter writer, BufferKind kind, Mode mode) { + private static void printBufferObjectCheck(PrintWriter writer, BufferKind kind, Mode mode, boolean context_specific) { String bo_check_method_name = kind.toString(); writer.print("\t\t" + Utils.CHECKS_CLASS_NAME + ".ensure" + bo_check_method_name); if (mode == Mode.BUFFEROBJECT) writer.print("enabled"); else writer.print("disabled"); - writer.println("(caps);"); + + if ( context_specific ) + writer.println("(caps);"); + else + writer.println("();"); } - private static void printBufferObjectChecks(PrintWriter writer, MethodDeclaration method, Mode mode) { + private static void printBufferObjectChecks(PrintWriter writer, MethodDeclaration method, Mode mode, boolean context_specific) { EnumSet check_set = EnumSet.noneOf(BufferKind.class); for (ParameterDeclaration param : method.getParameters()) { BufferObject bo_annotation = param.getAnnotation(BufferObject.class); @@ -227,7 +231,7 @@ public class JavaMethodsGenerator { check_set.add(bo_annotation.value()); } for (BufferKind kind : check_set) - printBufferObjectCheck(writer, kind, mode); + printBufferObjectCheck(writer, kind, mode, context_specific); } private static void printMethodWithMultiType(AnnotationProcessorEnvironment env, TypeMap type_map, PrintWriter writer, InterfaceDeclaration interface_decl, MethodDeclaration method, Map typeinfos_instance, Mode mode, boolean generate_error_checks, boolean context_specific) { @@ -272,9 +276,9 @@ public class JavaMethodsGenerator { final Code code_annotation = method.getAnnotation(Code.class); if (code_annotation != null && code_annotation.value().length() > 0) writer.println(code_annotation.value()); - printBufferObjectChecks(writer, method, mode); + printBufferObjectChecks(writer, method, mode, context_specific); printParameterChecks(writer, method, typeinfos_instance, mode, generate_error_checks); - printParameterCaching(writer, interface_decl, method, mode); + printParameterCaching(writer, interface_decl, method, mode, context_specific); if ( code_annotation != null && code_annotation.javaBeforeNative().length() > 0 ) writer.println(code_annotation.javaBeforeNative()); @@ -526,7 +530,7 @@ public class JavaMethodsGenerator { writer.print(param.getSimpleName()); if (check_annotation != null && check_annotation.canBeNull()) writer.print(" != null ? " + param.getSimpleName()); - if ( type == PointerBuffer.class ) + if ( type == PointerBuffer.class && param.getAnnotation(NativeType.class).value().endsWith("void") ) writer.print(".positionByte()"); else writer.print(".position()"); @@ -588,7 +592,7 @@ public class JavaMethodsGenerator { return first_parameter; } - private static void printParameterCaching(PrintWriter writer, InterfaceDeclaration interface_decl, MethodDeclaration method, Mode mode) { + private static void printParameterCaching(PrintWriter writer, InterfaceDeclaration interface_decl, MethodDeclaration method, Mode mode, boolean context_specific) { for (ParameterDeclaration param : method.getParameters()) { Class java_type = Utils.getJavaType(param.getType()); CachedReference cachedReference = param.getAnnotation(CachedReference.class); @@ -596,7 +600,11 @@ public class JavaMethodsGenerator { cachedReference != null && (mode != Mode.BUFFEROBJECT || param.getAnnotation(BufferObject.class) == null) && param.getAnnotation(Result.class) == null) { - writer.print("\t\tif ( LWJGLUtil.CHECKS ) " + "StateTracker.getReferences(caps)."); + writer.print("\t\tif ( LWJGLUtil.CHECKS ) StateTracker."); + if ( context_specific ) + writer.print("getReferences(caps)."); + else + writer.print("getTracker()."); if(cachedReference.name().length() > 0) { writer.print(cachedReference.name()); } else { diff --git a/src/java/org/lwjgl/util/generator/NativeMethodStubsGenerator.java b/src/java/org/lwjgl/util/generator/NativeMethodStubsGenerator.java index d06cb1f4..43c4c4d5 100644 --- a/src/java/org/lwjgl/util/generator/NativeMethodStubsGenerator.java +++ b/src/java/org/lwjgl/util/generator/NativeMethodStubsGenerator.java @@ -308,7 +308,7 @@ public class NativeMethodStubsGenerator { if (Buffer.class.isAssignableFrom(java_type) || java_type.equals(CharSequence.class) || java_type.equals(CharSequence[].class) || PointerBuffer.class.isAssignableFrom(java_type) ) { boolean explicitly_byte_sized = java_type.equals(Buffer.class) || translator.getAnnotationType().equals(type_map.getVoidType()) || - param.getAnnotation(NativeType.class) != null; + (param.getAnnotation(NativeType.class) != null && param.getAnnotation(NativeType.class).value().endsWith("void")); if (explicitly_byte_sized) writer.print("(((char *)"); if (method.getAnnotation(GenerateAutos.class) != null || (check_annotation != null && check_annotation.canBeNull())) { diff --git a/src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java b/src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java index 5733b7dc..6ac67bd1 100644 --- a/src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java +++ b/src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java @@ -94,7 +94,7 @@ public class RegisterStubsGenerator { continue; if (mode == Mode.BUFFEROBJECT && param.getAnnotation(BufferObject.class) != null) - signature += "I"; + signature += "J"; else signature += getTypeSignature(param.getType(), true); } diff --git a/src/java/org/lwjgl/util/generator/opengl/EGLint64NV.java b/src/java/org/lwjgl/util/generator/opengl/EGLint64NV.java new file mode 100644 index 00000000..99a6e684 --- /dev/null +++ b/src/java/org/lwjgl/util/generator/opengl/EGLint64NV.java @@ -0,0 +1,12 @@ +package org.lwjgl.util.generator.opengl; + +import org.lwjgl.util.generator.NativeType; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Target; + +@NativeType +@Target({ ElementType.PARAMETER, ElementType.METHOD }) +public @interface EGLint64NV { + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/util/generator/opengl/EGLuint64NV.java b/src/java/org/lwjgl/util/generator/opengl/EGLuint64NV.java new file mode 100644 index 00000000..e633d57a --- /dev/null +++ b/src/java/org/lwjgl/util/generator/opengl/EGLuint64NV.java @@ -0,0 +1,12 @@ +package org.lwjgl.util.generator.opengl; + +import org.lwjgl.util.generator.NativeType; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Target; + +@NativeType +@Target({ ElementType.PARAMETER, ElementType.METHOD }) +public @interface EGLuint64NV { + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/util/generator/opengl/GLESCapabilitiesGenerator.java b/src/java/org/lwjgl/util/generator/opengl/GLESCapabilitiesGenerator.java new file mode 100644 index 00000000..06d5e9a3 --- /dev/null +++ b/src/java/org/lwjgl/util/generator/opengl/GLESCapabilitiesGenerator.java @@ -0,0 +1,308 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.util.generator.opengl; + +import org.lwjgl.util.generator.*; + +import java.io.PrintWriter; +import java.util.Arrays; +import java.util.Collection; +import java.util.EnumSet; +import java.util.Iterator; + +import com.sun.mirror.declaration.InterfaceDeclaration; +import com.sun.mirror.declaration.MethodDeclaration; +import com.sun.mirror.type.InterfaceType; + +/** + * Generator visitor for the context capabilities generator tool + * + * @author elias_naur + * @version $Revision: 3334 $ + * $Id: ContextCapabilitiesGenerator.java 3334 2010-04-22 23:21:48Z spasi $ + */ +public class GLESCapabilitiesGenerator { + + private static final String STUBS_LOADED_NAME = "loaded_stubs"; + private static final String ALL_INIT_METHOD_NAME = "initAllStubs"; + private static final String POINTER_INITIALIZER_POSTFIX = "_initNativeFunctionAddresses"; + private static final String CACHED_EXTS_VAR_NAME = "supported_extensions"; + private static final String EXTENSION_PREFIX = "GL_"; + private static final String CORE_PREFIX = "Open"; + + public static void generateClassPrologue(PrintWriter writer, boolean context_specific, boolean generate_error_checks) { + writer.println("public class " + Utils.CONTEXT_CAPS_CLASS_NAME + " {"); + writer.println("\tstatic final boolean DEBUG = " + Boolean.toString(generate_error_checks) + ";"); + writer.println(); + if ( !context_specific ) { + writer.println("\tprivate static boolean " + STUBS_LOADED_NAME + ";"); + } + } + + public static void generateInitializerPrologue(PrintWriter writer) { + writer.println("\t" + Utils.CONTEXT_CAPS_CLASS_NAME + "() throws LWJGLException {"); + writer.println("\t\tSet " + CACHED_EXTS_VAR_NAME + " = " + ALL_INIT_METHOD_NAME + "();"); + } + + private static String translateFieldName(String interface_name) { + if ( interface_name.startsWith("GL") ) + return CORE_PREFIX + interface_name; + else + return EXTENSION_PREFIX + interface_name; + } + + public static void generateSuperClassAdds(PrintWriter writer, InterfaceDeclaration d) { + Collection super_interfaces = d.getSuperinterfaces(); + if ( super_interfaces.size() > 1 ) + throw new RuntimeException(d + " extends more than one other interface"); + if ( super_interfaces.size() == 1 ) { + InterfaceType super_interface = super_interfaces.iterator().next(); + writer.print("\t\tif (" + CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.println(translateFieldName(d.getSimpleName()) + "\"))"); + writer.print("\t\t\t"); + generateAddExtension(writer, super_interface.getDeclaration()); + } + } + + public static void generateInitializer(PrintWriter writer, InterfaceDeclaration d) { + String translated_field_name = translateFieldName(d.getSimpleName()); + writer.print("\t\tthis." + translated_field_name + " = "); + writer.print(CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.print(translated_field_name + "\")"); + Collection super_interfaces = d.getSuperinterfaces(); + if ( super_interfaces.size() > 1 ) + throw new RuntimeException(d + " extends more than one other interface"); + if ( super_interfaces.size() == 1 ) { + InterfaceType super_interface = super_interfaces.iterator().next(); + writer.println(); + writer.print("\t\t\t&& " + CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.print(translateFieldName(super_interface.getDeclaration().getSimpleName()) + "\")"); + } + Alias alias_annotation = d.getAnnotation(Alias.class); + if ( alias_annotation != null ) { + writer.println(); + writer.print("\t\t\t|| " + CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.print(translateFieldName(alias_annotation.value()) + "\")"); + } + writer.println(";"); + } + + private static String getAddressesInitializerName(String class_name) { + return class_name + POINTER_INITIALIZER_POSTFIX; + } + + public static void generateInitStubsPrologue(PrintWriter writer, boolean context_specific) { + writer.println("\tprivate Set " + ALL_INIT_METHOD_NAME + "() throws LWJGLException {"); + + if ( context_specific ) { + // Load the basic pointers we need to detect OpenGL version and supported extensions. + writer.println("\t\tglGetError = GLContext.getFunctionAddress(\"glGetError\");"); + writer.println("\t\tglGetString = GLContext.getFunctionAddress(\"glGetString\");"); + } + + // Get the supported extensions set. + writer.println("\t\tGLContext.setCapabilities(this);"); + writer.println("\t\tSet " + CACHED_EXTS_VAR_NAME + " = new HashSet(256);"); + if ( !context_specific ) + writer.println("\t\tGLContext.doInitNativeStubs(GLES20.class);"); + writer.println("\t\tGLContext.getSupportedExtensions(" + CACHED_EXTS_VAR_NAME + ");"); + + if ( !context_specific ) { + writer.println("\t\tif (" + STUBS_LOADED_NAME + ")"); + writer.println("\t\t\treturn " + CACHED_EXTS_VAR_NAME + ";"); + } else { + writer.println("\t\tif (!" + getAddressesInitializerName("GLES20") + "())"); + writer.println("\t\t\tthrow new LWJGLException(\"GL ES 2.0 not supported\");"); + } + } + + public static void generateInitStubsEpilogue(PrintWriter writer, boolean context_specific) { + if ( !context_specific ) + writer.println("\t\t" + STUBS_LOADED_NAME + " = true;"); + writer.println("\t\treturn " + CACHED_EXTS_VAR_NAME + ";"); + writer.println("\t}"); + } + + public static void generateUnloadStubs(PrintWriter writer, InterfaceDeclaration d) { + // TODO: Remove GLES + if ( d.getMethods().size() > 0 && !d.getSimpleName().startsWith("GLES") ) { + writer.print("\t\tGLContext.resetNativeStubs(" + Utils.getSimpleClassName(d)); + writer.println(".class);"); + } + } + + public static void generateInitStubs(PrintWriter writer, InterfaceDeclaration d, boolean context_specific) { + if ( d.getMethods().size() > 0 ) { + if ( context_specific ) { + final Alias alias_annotation = d.getAnnotation(Alias.class); + + if ( d.getAnnotation(ForceInit.class) != null ) + writer.println("\t\t" + CACHED_EXTS_VAR_NAME + ".add(\"" + translateFieldName(d.getSimpleName()) + "\");"); + writer.print("\t\tif ("); + if ( alias_annotation != null ) + writer.print("("); + writer.print(CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.print(translateFieldName(d.getSimpleName()) + "\")"); + if ( alias_annotation != null ) { + writer.print(" || " + CACHED_EXTS_VAR_NAME + ".contains(\""); + writer.print(translateFieldName(alias_annotation.value()) + "\"))"); + } + writer.print(" && !" + getAddressesInitializerName(d.getSimpleName()) + "("); + if ( d.getAnnotation(Dependent.class) != null ) + writer.print("supported_extensions"); + if ( alias_annotation != null ) { + writer.println(")) {"); + writer.print("\t\t\tremove(" + CACHED_EXTS_VAR_NAME + ", \""); + writer.println(translateFieldName(alias_annotation.value()) + "\");"); + } else + writer.println("))"); + writer.print("\t\t\tremove(" + CACHED_EXTS_VAR_NAME + ", \""); + writer.println(translateFieldName(d.getSimpleName()) + "\");"); + if ( alias_annotation != null ) + writer.println("\t\t}"); + } else { + writer.print("\t\tGLContext." + Utils.STUB_INITIALIZER_NAME + "(" + Utils.getSimpleClassName(d)); + writer.println(".class, " + CACHED_EXTS_VAR_NAME + ", \"" + translateFieldName(d.getSimpleName()) + "\");"); + } + } + } + + private static void generateAddExtension(PrintWriter writer, InterfaceDeclaration d) { + writer.print(CACHED_EXTS_VAR_NAME + ".add(\""); + writer.println(translateFieldName(d.getSimpleName()) + "\");"); + } + + public static void generateAddressesInitializers(PrintWriter writer, InterfaceDeclaration d) { + Iterator methods = d.getMethods().iterator(); + if ( !methods.hasNext() ) + return; + + writer.print("\tprivate boolean " + getAddressesInitializerName(d.getSimpleName()) + "("); + + boolean optional; + Dependent dependent = d.getAnnotation(Dependent.class); + if ( dependent != null ) { + writer.print("Set supported_extensions"); + } + + Alias alias_annotation = d.getAnnotation(Alias.class); + boolean aliased = alias_annotation != null && alias_annotation.postfix().length() > 0; + + writer.println(") {"); + writer.println("\t\treturn "); + + boolean first = true; + while ( methods.hasNext() ) { + MethodDeclaration method = methods.next(); + if ( method.getAnnotation(Alternate.class) != null ) + continue; + + if ( !first ) + writer.println(" &"); + else + first = false; + + optional = method.getAnnotation(Optional.class) != null; + dependent = method.getAnnotation(Dependent.class); + + writer.print("\t\t\t("); + if ( optional ) + writer.print('('); + if ( dependent != null ) { + if ( dependent.value().indexOf(',') == -1 ) + writer.print("!supported_extensions.contains(\"" + dependent.value() + "\") || "); + else { + writer.print("!(false"); + for ( String extension : dependent.value().split(",") ) + writer.print(" || supported_extensions.contains(\"" + extension + "\")"); + writer.print(") || "); + } + } + if ( dependent != null ) + writer.print('('); + writer.print(Utils.getFunctionAddressName(d, method) + " = "); + PlatformDependent platform_dependent = method.getAnnotation(PlatformDependent.class); + if ( platform_dependent != null ) { + EnumSet platform_set = EnumSet.copyOf(Arrays.asList(platform_dependent.value())); + writer.print("GLContext.getPlatformSpecificFunctionAddress(\""); + writer.print(Platform.ALL.getPrefix() + "\", "); + writer.print("new String[]{"); + Iterator platforms = platform_set.iterator(); + while ( platforms.hasNext() ) { + writer.print("\"" + platforms.next().getOSPrefix() + "\""); + if ( platforms.hasNext() ) + writer.print(", "); + } + writer.print("}, new String[]{"); + platforms = platform_set.iterator(); + while ( platforms.hasNext() ) { + writer.print("\"" + platforms.next().getPrefix() + "\""); + if ( platforms.hasNext() ) + writer.print(", "); + } + writer.print("}, "); + } else if ( aliased ) { + writer.print("GLContext.getFunctionAddress(new String[] {\"" + method.getSimpleName() + "\",\"" + method.getSimpleName() + alias_annotation.postfix() + "\"})) != 0"); + } else + writer.print("GLContext.getFunctionAddress("); + if ( !aliased ) + writer.print("\"" + method.getSimpleName() + "\")) != 0"); + if ( dependent != null ) + writer.print(')'); + if ( optional ) + writer.print(" || true)"); + } + writer.println(";"); + writer.println("\t}"); + writer.println(); + } + + public static void generateSymbolAddresses(PrintWriter writer, InterfaceDeclaration d) { + boolean first = true; + for ( final MethodDeclaration method : d.getMethods() ) { + if ( method.getAnnotation(Alternate.class) != null || method.getAnnotation(Reuse.class) != null ) + continue; + + if ( first ) { + writer.println("\t// " + d.getSimpleName()); + first = false; + } + writer.println("\tint " + Utils.getFunctionAddressName(d, method) + ";"); + } + } + + public static void generateField(PrintWriter writer, InterfaceDeclaration d) { + writer.println("\tpublic final boolean " + translateFieldName(d.getSimpleName()) + ";"); + } + +} \ No newline at end of file diff --git a/src/java/org/lwjgl/util/generator/opengl/GLESGeneratorProcessorFactory.java b/src/java/org/lwjgl/util/generator/opengl/GLESGeneratorProcessorFactory.java new file mode 100644 index 00000000..97fff4aa --- /dev/null +++ b/src/java/org/lwjgl/util/generator/opengl/GLESGeneratorProcessorFactory.java @@ -0,0 +1,184 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.util.generator.opengl; + +import org.lwjgl.util.generator.Utils; + +import java.io.File; +import java.io.IOException; +import java.io.PrintWriter; +import java.util.Arrays; +import java.util.Collection; +import java.util.Map; +import java.util.Set; + +import com.sun.mirror.apt.*; +import com.sun.mirror.declaration.AnnotationTypeDeclaration; +import com.sun.mirror.declaration.InterfaceDeclaration; +import com.sun.mirror.declaration.TypeDeclaration; +import com.sun.mirror.util.DeclarationFilter; + +import static java.util.Collections.*; + +/** + * Generator tool for creating the ContexCapabilities class + * + * @author elias_naur + * @version $Revision: 3316 $ + * $Id: ContextGeneratorProcessorFactory.java 3316 2010-04-09 23:57:40Z spasi $ + */ +public class GLESGeneratorProcessorFactory implements AnnotationProcessorFactory, RoundCompleteListener { + + private static boolean first_round = true; + + // Process any set of annotations + private static final Collection supportedAnnotations = + unmodifiableCollection(Arrays.asList("*")); + + public Collection supportedAnnotationTypes() { + return supportedAnnotations; + } + + public Collection supportedOptions() { + return unmodifiableCollection(Arrays.asList("-Acontextspecific", "-Ageneratechecks")); + } + + public void roundComplete(RoundCompleteEvent event) { + first_round = false; + } + + public AnnotationProcessor getProcessorFor(Set atds, AnnotationProcessorEnvironment env) { + // Only process the initial types, not the generated ones + if ( first_round ) { + env.addListener(this); + return new GeneratorProcessor(env); + } else + return AnnotationProcessors.NO_OP; + } + + private static class GeneratorProcessor implements AnnotationProcessor { + + private final AnnotationProcessorEnvironment env; + + GeneratorProcessor(AnnotationProcessorEnvironment env) { + this.env = env; + } + + public void process() { + Map options = env.getOptions(); + boolean generate_error_checks = options.containsKey("-Ageneratechecks"); + boolean context_specific = options.containsKey("-Acontextspecific"); + try { + generateContextCapabilitiesSource(context_specific, generate_error_checks); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + private void generateContextCapabilitiesSource(boolean context_specific, boolean generate_error_checks) throws IOException { + PrintWriter writer = env.getFiler().createTextFile(Filer.Location.SOURCE_TREE, "org.lwjgl.opengles", new File(Utils.CONTEXT_CAPS_CLASS_NAME + ".java"), null); + writer.println("/* MACHINE GENERATED FILE, DO NOT EDIT */"); + writer.println(); + writer.println("package org.lwjgl.opengles;"); + writer.println(); + writer.println("import org.lwjgl.LWJGLException;"); + writer.println("import org.lwjgl.LWJGLUtil;"); + writer.println("import java.util.Set;"); + writer.println("import java.util.HashSet;"); + writer.println(); + GLESCapabilitiesGenerator.generateClassPrologue(writer, context_specific, generate_error_checks); + DeclarationFilter filter = DeclarationFilter.getFilter(InterfaceDeclaration.class); + Collection interface_decls = filter.filter(env.getSpecifiedTypeDeclarations()); + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + if ( Utils.isFinal(interface_decl) ) + GLESCapabilitiesGenerator.generateField(writer, interface_decl); + } + writer.println(); + if ( context_specific ) { + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + GLESCapabilitiesGenerator.generateSymbolAddresses(writer, interface_decl); + } + writer.println(); + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + GLESCapabilitiesGenerator.generateAddressesInitializers(writer, interface_decl); + } + writer.println(); + } + + if ( context_specific ) { + writer.println("\tprivate static void remove(Set supported_extensions, String extension) {"); + writer.println("\t\tLWJGLUtil.log(extension + \" was reported as available but an entry point is missing\");"); + writer.println("\t\tsupported_extensions.remove(extension);"); + writer.println("\t}\n"); + } + + GLESCapabilitiesGenerator.generateInitStubsPrologue(writer, context_specific); + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + GLESCapabilitiesGenerator.generateSuperClassAdds(writer, interface_decl); + } + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + if ( interface_decl.getSimpleName().startsWith("GLES") ) + continue; + GLESCapabilitiesGenerator.generateInitStubs(writer, interface_decl, context_specific); + } + GLESCapabilitiesGenerator.generateInitStubsEpilogue(writer, context_specific); + writer.println(); + writer.println("\tstatic void unloadAllStubs() {"); + if ( !context_specific ) { + writer.println("\t\tif (!loaded_stubs)"); + writer.println("\t\t\treturn;"); + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + GLESCapabilitiesGenerator.generateUnloadStubs(writer, interface_decl); + } + writer.println("\t\tloaded_stubs = false;"); + } + writer.println("\t}"); + writer.println(); + GLESCapabilitiesGenerator.generateInitializerPrologue(writer); + for ( TypeDeclaration typedecl : interface_decls ) { + InterfaceDeclaration interface_decl = (InterfaceDeclaration)typedecl; + if ( Utils.isFinal(interface_decl) ) + GLESCapabilitiesGenerator.generateInitializer(writer, interface_decl); + } + writer.println("\t}"); + writer.println("}"); + writer.close(); + } + } +} diff --git a/src/java/org/lwjgl/util/generator/opengl/GLESTypeMap.java b/src/java/org/lwjgl/util/generator/opengl/GLESTypeMap.java new file mode 100644 index 00000000..b9c91d7b --- /dev/null +++ b/src/java/org/lwjgl/util/generator/opengl/GLESTypeMap.java @@ -0,0 +1,287 @@ +/* + * Copyright (c) 2002-2008 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package org.lwjgl.util.generator.opengl; + +/** + * + * OpenGL sepcific generator behaviour + * + * @author elias_naur + * @version $Revision: 3287 $ + * $Id: GLTypeMap.java 3287 2010-03-14 23:24:40Z spasi $ + */ + +import org.lwjgl.util.generator.NativeTypeTranslator; +import org.lwjgl.util.generator.Signedness; +import org.lwjgl.util.generator.TypeMap; + +import java.io.PrintWriter; +import java.lang.annotation.Annotation; +import java.nio.*; +import java.util.HashMap; +import java.util.Map; + +import com.sun.mirror.declaration.AnnotationMirror; +import com.sun.mirror.declaration.MethodDeclaration; +import com.sun.mirror.type.PrimitiveType; + +public class GLESTypeMap implements TypeMap { + + private static final Map, PrimitiveType.Kind> native_types_to_primitive; + + static { + native_types_to_primitive = new HashMap, PrimitiveType.Kind>(); + native_types_to_primitive.put(GLbitfield.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLclampf.class, PrimitiveType.Kind.FLOAT); + native_types_to_primitive.put(GLfloat.class, PrimitiveType.Kind.FLOAT); + native_types_to_primitive.put(GLint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLshort.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLsizeiptr.class, PrimitiveType.Kind.LONG); + native_types_to_primitive.put(GLuint.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLboolean.class, PrimitiveType.Kind.BOOLEAN); + native_types_to_primitive.put(GLchar.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLhalf.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLsizei.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLushort.class, PrimitiveType.Kind.SHORT); + native_types_to_primitive.put(GLbyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLenum.class, PrimitiveType.Kind.INT); + native_types_to_primitive.put(GLintptr.class, PrimitiveType.Kind.LONG); + native_types_to_primitive.put(GLubyte.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(GLvoid.class, PrimitiveType.Kind.BYTE); + native_types_to_primitive.put(EGLint64NV.class, PrimitiveType.Kind.LONG); + native_types_to_primitive.put(EGLuint64NV.class, PrimitiveType.Kind.LONG); + } + + public PrimitiveType.Kind getPrimitiveTypeFromNativeType(Class native_type) { + PrimitiveType.Kind kind = native_types_to_primitive.get(native_type); + if ( kind == null ) + throw new RuntimeException("Unsupported type " + native_type); + return kind; + } + + public void printCapabilitiesInit(final PrintWriter writer) { + writer.println("\t\tContextCapabilities caps = GLContext.getCapabilities();"); + } + + public String getCapabilities() { + return "caps"; + } + + public void printErrorCheckMethod(final PrintWriter writer, final MethodDeclaration method, final String tabs) { + writer.println(tabs + "Util.checkGLError();"); + } + + public String getRegisterNativesFunctionName() { + return "extgl_InitializeClass"; + } + + public Signedness getSignednessFromType(Class type) { + if ( GLuint.class.equals(type) ) + return Signedness.UNSIGNED; + else if ( GLint.class.equals(type) ) + return Signedness.SIGNED; + else if ( GLushort.class.equals(type) ) + return Signedness.UNSIGNED; + else if ( GLshort.class.equals(type) ) + return Signedness.SIGNED; + else if ( GLubyte.class.equals(type) ) + return Signedness.UNSIGNED; + else if ( GLbyte.class.equals(type) ) + return Signedness.SIGNED; + else if ( EGLuint64NV.class.equals(type) ) + return Signedness.UNSIGNED; + else if ( EGLint64NV.class.equals(type) ) + return Signedness.SIGNED; + else + return Signedness.NONE; + } + + public String translateAnnotation(Class annotation_type) { + if ( annotation_type.equals(GLuint.class) || annotation_type.equals(GLint.class) ) + return "i"; + else if ( annotation_type.equals(GLushort.class) || annotation_type.equals(GLshort.class) ) + return "s"; + else if ( annotation_type.equals(GLubyte.class) || annotation_type.equals(GLbyte.class) ) + return "b"; + else if ( annotation_type.equals(GLfloat.class) ) + return "f"; + else if ( annotation_type.equals(GLhalf.class) ) + return "h"; + else if ( annotation_type.equals(GLboolean.class) || annotation_type.equals(GLvoid.class) ) + return ""; + else if ( annotation_type.equals(EGLuint64NV.class) || annotation_type.equals(EGLint64NV.class) ) + return "l"; + else + throw new RuntimeException(annotation_type + " is not allowed"); + } + + public Class getNativeTypeFromPrimitiveType(PrimitiveType.Kind kind) { + Class type; + switch ( kind ) { + case INT: + type = GLint.class; + break; + case FLOAT: + type = GLfloat.class; + break; + case SHORT: + type = GLshort.class; + break; + case BYTE: + type = GLbyte.class; + break; + case BOOLEAN: + type = GLboolean.class; + break; + default: + throw new RuntimeException(kind + " is not allowed"); + } + return type; + } + + public Class getVoidType() { + return GLvoid.class; + } + + public Class getStringElementType() { + return GLubyte.class; + } + + public Class getStringArrayType() { + return GLchar.class; + } + + public Class getByteBufferArrayType() { + return GLubyte.class; + } + + private static Class[] getValidBufferTypes(Class type) { + if ( type.equals(IntBuffer.class) ) + return new Class[] { GLbitfield.class, GLenum.class, GLint.class, GLsizei.class, GLuint.class, GLvoid.class }; + else if ( type.equals(FloatBuffer.class) ) + return new Class[] { GLclampf.class, GLfloat.class }; + else if ( type.equals(ByteBuffer.class) ) + return new Class[] { GLboolean.class, GLbyte.class, GLchar.class, GLubyte.class, GLvoid.class }; + else if ( type.equals(ShortBuffer.class) ) + return new Class[] { GLhalf.class, GLshort.class, GLushort.class }; + else if ( type.equals(LongBuffer.class) ) + return new Class[] { EGLint64NV.class, EGLuint64NV.class }; + else + return new Class[] { }; + } + + private static Class[] getValidPrimitiveTypes(Class type) { + if ( type.equals(long.class) ) + return new Class[] { GLintptr.class, GLsizeiptr.class, EGLuint64NV.class, EGLint64NV.class }; + else if ( type.equals(int.class) ) + return new Class[] { GLbitfield.class, GLenum.class, GLint.class, GLuint.class, GLsizei.class }; + else if ( type.equals(float.class) ) + return new Class[] { GLclampf.class, GLfloat.class }; + else if ( type.equals(short.class) ) + return new Class[] { GLhalf.class, GLshort.class, GLushort.class }; + else if ( type.equals(byte.class) ) + return new Class[] { GLbyte.class, GLchar.class, GLubyte.class }; + else if ( type.equals(boolean.class) ) + return new Class[] { GLboolean.class }; + else if ( type.equals(void.class) ) + return new Class[] { GLvoid.class, GLreturn.class }; + else + return new Class[] { }; + } + + public String getTypedefPostfix() { + return "GL_APICALL "; + } + + public String getFunctionPrefix() { + return "GL_APIENTRY"; + } + + public void printNativeIncludes(PrintWriter writer) { + writer.println("#include \"extgl.h\""); + } + + public Class[] getValidAnnotationTypes(Class type) { + Class[] valid_types; + if ( Buffer.class.isAssignableFrom(type) ) + valid_types = getValidBufferTypes(type); + else if ( type.isPrimitive() ) + valid_types = getValidPrimitiveTypes(type); + else if ( String.class.equals(type) ) + valid_types = new Class[] { GLubyte.class }; + else if ( org.lwjgl.PointerWrapper.class.isAssignableFrom(type) ) + valid_types = new Class[] { org.lwjgl.PointerWrapper.class }; + else if ( void.class.equals(type) ) + valid_types = new Class[] { GLreturn.class }; + else + valid_types = new Class[] { }; + return valid_types; + } + + public Class getInverseType(Class type) { + if ( GLuint.class.equals(type) ) + return GLint.class; + else if ( GLint.class.equals(type) ) + return GLuint.class; + else if ( GLushort.class.equals(type) ) + return GLshort.class; + else if ( GLshort.class.equals(type) ) + return GLushort.class; + else if ( GLubyte.class.equals(type) ) + return GLbyte.class; + else if ( GLbyte.class.equals(type) ) + return GLubyte.class; + else + return null; + } + + public String getAutoTypeFromAnnotation(AnnotationMirror annotation) { + Class annotation_class = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType()); + if ( annotation_class.equals(GLint.class) ) + return "GLES20.GL_INT"; + else if ( annotation_class.equals(GLbyte.class) ) + return "GLES20.GL_BYTE"; + else if ( annotation_class.equals(GLshort.class) ) + return "GLES20.GL_SHORT"; + if ( annotation_class.equals(GLuint.class) ) + return "GLES20.GL_UNSIGNED_INT"; + else if ( annotation_class.equals(GLubyte.class) ) + return "GLES20.GL_UNSIGNED_BYTE"; + else if ( annotation_class.equals(GLushort.class) ) + return "GLES20.GL_UNSIGNED_SHORT"; + else if ( annotation_class.equals(GLfloat.class) ) + return "GLES20.GL_FLOAT"; + else + return null; + } +} diff --git a/src/java/org/lwjgl/util/vector/Matrix4f.java b/src/java/org/lwjgl/util/vector/Matrix4f.java index acfa7700..96645b02 100644 --- a/src/java/org/lwjgl/util/vector/Matrix4f.java +++ b/src/java/org/lwjgl/util/vector/Matrix4f.java @@ -52,6 +52,11 @@ public class Matrix4f extends Matrix implements Serializable { setIdentity(); } + public Matrix4f(final Matrix4f src) { + super(); + load(src); + } + /** * Returns a string representation of this matrix */ @@ -278,6 +283,23 @@ public class Matrix4f extends Matrix implements Serializable { return this; } + /** + * Store the rotation portion of this matrix in a float buffer. The matrix is stored in column + * major (openGL) order. + * @param buf The buffer to store this matrix in + */ + public Matrix store3f(FloatBuffer buf) { + buf.put(m00); + buf.put(m01); + buf.put(m02); + buf.put(m10); + buf.put(m11); + buf.put(m12); + buf.put(m20); + buf.put(m21); + buf.put(m22); + return this; + } /** * Add two matrices together and place the result in a third matrix. diff --git a/src/native/common/EGL/egl.h b/src/native/common/EGL/egl.h new file mode 100644 index 00000000..99ea342a --- /dev/null +++ b/src/native/common/EGL/egl.h @@ -0,0 +1,329 @@ +/* -*- mode: c; tab-width: 8; -*- */ +/* vi: set sw=4 ts=8: */ +/* Reference version of egl.h for EGL 1.4. + * $Revision: 9356 $ on $Date: 2009-10-21 02:52:25 -0700 (Wed, 21 Oct 2009) $ + */ + +/* +** Copyright (c) 2007-2009 The Khronos Group Inc. +** +** Permission is hereby granted, free of charge, to any person obtaining a +** copy of this software and/or associated documentation files (the +** "Materials"), to deal in the Materials without restriction, including +** without limitation the rights to use, copy, modify, merge, publish, +** distribute, sublicense, and/or sell copies of the Materials, and to +** permit persons to whom the Materials are furnished to do so, subject to +** the following conditions: +** +** The above copyright notice and this permission notice shall be included +** in all copies or substantial portions of the Materials. +** +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +#ifndef __egl_h_ +#define __egl_h_ + +/* All platform-dependent types and macro boilerplate (such as EGLAPI + * and EGLAPIENTRY) should go in eglplatform.h. + */ +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* EGL Types */ +/* EGLint is defined in eglplatform.h */ +typedef unsigned int EGLBoolean; +typedef unsigned int EGLenum; +typedef void *EGLConfig; +typedef void *EGLContext; +typedef void *EGLDisplay; +typedef void *EGLSurface; +typedef void *EGLClientBuffer; + +/* EGL Versioning */ +#define EGL_VERSION_1_0 1 +#define EGL_VERSION_1_1 1 +#define EGL_VERSION_1_2 1 +#define EGL_VERSION_1_3 1 +#define EGL_VERSION_1_4 1 + +/* EGL Enumerants. Bitmasks and other exceptional cases aside, most + * enums are assigned unique values starting at 0x3000. + */ + +/* EGL aliases */ +#define EGL_FALSE 0 +#define EGL_TRUE 1 + +/* Out-of-band handle values */ +#define EGL_DEFAULT_DISPLAY ((EGLNativeDisplayType)0) +#define EGL_NO_CONTEXT ((EGLContext)0) +#define EGL_NO_DISPLAY ((EGLDisplay)0) +#define EGL_NO_SURFACE ((EGLSurface)0) + +/* Out-of-band attribute value */ +#define EGL_DONT_CARE ((EGLint)-1) + +/* Errors / GetError return values */ +#define EGL_SUCCESS 0x3000 +#define EGL_NOT_INITIALIZED 0x3001 +#define EGL_BAD_ACCESS 0x3002 +#define EGL_BAD_ALLOC 0x3003 +#define EGL_BAD_ATTRIBUTE 0x3004 +#define EGL_BAD_CONFIG 0x3005 +#define EGL_BAD_CONTEXT 0x3006 +#define EGL_BAD_CURRENT_SURFACE 0x3007 +#define EGL_BAD_DISPLAY 0x3008 +#define EGL_BAD_MATCH 0x3009 +#define EGL_BAD_NATIVE_PIXMAP 0x300A +#define EGL_BAD_NATIVE_WINDOW 0x300B +#define EGL_BAD_PARAMETER 0x300C +#define EGL_BAD_SURFACE 0x300D +#define EGL_CONTEXT_LOST 0x300E /* EGL 1.1 - IMG_power_management */ + +/* Reserved 0x300F-0x301F for additional errors */ + +/* Config attributes */ +#define EGL_BUFFER_SIZE 0x3020 +#define EGL_ALPHA_SIZE 0x3021 +#define EGL_BLUE_SIZE 0x3022 +#define EGL_GREEN_SIZE 0x3023 +#define EGL_RED_SIZE 0x3024 +#define EGL_DEPTH_SIZE 0x3025 +#define EGL_STENCIL_SIZE 0x3026 +#define EGL_CONFIG_CAVEAT 0x3027 +#define EGL_CONFIG_ID 0x3028 +#define EGL_LEVEL 0x3029 +#define EGL_MAX_PBUFFER_HEIGHT 0x302A +#define EGL_MAX_PBUFFER_PIXELS 0x302B +#define EGL_MAX_PBUFFER_WIDTH 0x302C +#define EGL_NATIVE_RENDERABLE 0x302D +#define EGL_NATIVE_VISUAL_ID 0x302E +#define EGL_NATIVE_VISUAL_TYPE 0x302F +#define EGL_SAMPLES 0x3031 +#define EGL_SAMPLE_BUFFERS 0x3032 +#define EGL_SURFACE_TYPE 0x3033 +#define EGL_TRANSPARENT_TYPE 0x3034 +#define EGL_TRANSPARENT_BLUE_VALUE 0x3035 +#define EGL_TRANSPARENT_GREEN_VALUE 0x3036 +#define EGL_TRANSPARENT_RED_VALUE 0x3037 +#define EGL_NONE 0x3038 /* Attrib list terminator */ +#define EGL_BIND_TO_TEXTURE_RGB 0x3039 +#define EGL_BIND_TO_TEXTURE_RGBA 0x303A +#define EGL_MIN_SWAP_INTERVAL 0x303B +#define EGL_MAX_SWAP_INTERVAL 0x303C +#define EGL_LUMINANCE_SIZE 0x303D +#define EGL_ALPHA_MASK_SIZE 0x303E +#define EGL_COLOR_BUFFER_TYPE 0x303F +#define EGL_RENDERABLE_TYPE 0x3040 +#define EGL_MATCH_NATIVE_PIXMAP 0x3041 /* Pseudo-attribute (not queryable) */ +#define EGL_CONFORMANT 0x3042 + +/* Reserved 0x3041-0x304F for additional config attributes */ + +/* Config attribute values */ +#define EGL_SLOW_CONFIG 0x3050 /* EGL_CONFIG_CAVEAT value */ +#define EGL_NON_CONFORMANT_CONFIG 0x3051 /* EGL_CONFIG_CAVEAT value */ +#define EGL_TRANSPARENT_RGB 0x3052 /* EGL_TRANSPARENT_TYPE value */ +#define EGL_RGB_BUFFER 0x308E /* EGL_COLOR_BUFFER_TYPE value */ +#define EGL_LUMINANCE_BUFFER 0x308F /* EGL_COLOR_BUFFER_TYPE value */ + +/* More config attribute values, for EGL_TEXTURE_FORMAT */ +#define EGL_NO_TEXTURE 0x305C +#define EGL_TEXTURE_RGB 0x305D +#define EGL_TEXTURE_RGBA 0x305E +#define EGL_TEXTURE_2D 0x305F + +/* Config attribute mask bits */ +#define EGL_PBUFFER_BIT 0x0001 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_PIXMAP_BIT 0x0002 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_WINDOW_BIT 0x0004 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_VG_COLORSPACE_LINEAR_BIT 0x0020 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_VG_ALPHA_FORMAT_PRE_BIT 0x0040 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_MULTISAMPLE_RESOLVE_BOX_BIT 0x0200 /* EGL_SURFACE_TYPE mask bits */ +#define EGL_SWAP_BEHAVIOR_PRESERVED_BIT 0x0400 /* EGL_SURFACE_TYPE mask bits */ + +#define EGL_OPENGL_ES_BIT 0x0001 /* EGL_RENDERABLE_TYPE mask bits */ +#define EGL_OPENVG_BIT 0x0002 /* EGL_RENDERABLE_TYPE mask bits */ +#define EGL_OPENGL_ES2_BIT 0x0004 /* EGL_RENDERABLE_TYPE mask bits */ +#define EGL_OPENGL_BIT 0x0008 /* EGL_RENDERABLE_TYPE mask bits */ + +/* QueryString targets */ +#define EGL_VENDOR 0x3053 +#define EGL_VERSION 0x3054 +#define EGL_EXTENSIONS 0x3055 +#define EGL_CLIENT_APIS 0x308D + +/* QuerySurface / SurfaceAttrib / CreatePbufferSurface targets */ +#define EGL_HEIGHT 0x3056 +#define EGL_WIDTH 0x3057 +#define EGL_LARGEST_PBUFFER 0x3058 +#define EGL_TEXTURE_FORMAT 0x3080 +#define EGL_TEXTURE_TARGET 0x3081 +#define EGL_MIPMAP_TEXTURE 0x3082 +#define EGL_MIPMAP_LEVEL 0x3083 +#define EGL_RENDER_BUFFER 0x3086 +#define EGL_VG_COLORSPACE 0x3087 +#define EGL_VG_ALPHA_FORMAT 0x3088 +#define EGL_HORIZONTAL_RESOLUTION 0x3090 +#define EGL_VERTICAL_RESOLUTION 0x3091 +#define EGL_PIXEL_ASPECT_RATIO 0x3092 +#define EGL_SWAP_BEHAVIOR 0x3093 +#define EGL_MULTISAMPLE_RESOLVE 0x3099 + +/* EGL_RENDER_BUFFER values / BindTexImage / ReleaseTexImage buffer targets */ +#define EGL_BACK_BUFFER 0x3084 +#define EGL_SINGLE_BUFFER 0x3085 + +/* OpenVG color spaces */ +#define EGL_VG_COLORSPACE_sRGB 0x3089 /* EGL_VG_COLORSPACE value */ +#define EGL_VG_COLORSPACE_LINEAR 0x308A /* EGL_VG_COLORSPACE value */ + +/* OpenVG alpha formats */ +#define EGL_VG_ALPHA_FORMAT_NONPRE 0x308B /* EGL_ALPHA_FORMAT value */ +#define EGL_VG_ALPHA_FORMAT_PRE 0x308C /* EGL_ALPHA_FORMAT value */ + +/* Constant scale factor by which fractional display resolutions & + * aspect ratio are scaled when queried as integer values. + */ +#define EGL_DISPLAY_SCALING 10000 + +/* Unknown display resolution/aspect ratio */ +#define EGL_UNKNOWN ((EGLint)-1) + +/* Back buffer swap behaviors */ +#define EGL_BUFFER_PRESERVED 0x3094 /* EGL_SWAP_BEHAVIOR value */ +#define EGL_BUFFER_DESTROYED 0x3095 /* EGL_SWAP_BEHAVIOR value */ + +/* CreatePbufferFromClientBuffer buffer types */ +#define EGL_OPENVG_IMAGE 0x3096 + +/* QueryContext targets */ +#define EGL_CONTEXT_CLIENT_TYPE 0x3097 + +/* CreateContext attributes */ +#define EGL_CONTEXT_CLIENT_VERSION 0x3098 + +/* Multisample resolution behaviors */ +#define EGL_MULTISAMPLE_RESOLVE_DEFAULT 0x309A /* EGL_MULTISAMPLE_RESOLVE value */ +#define EGL_MULTISAMPLE_RESOLVE_BOX 0x309B /* EGL_MULTISAMPLE_RESOLVE value */ + +/* BindAPI/QueryAPI targets */ +#define EGL_OPENGL_ES_API 0x30A0 +#define EGL_OPENVG_API 0x30A1 +#define EGL_OPENGL_API 0x30A2 + +/* GetCurrentSurface targets */ +#define EGL_DRAW 0x3059 +#define EGL_READ 0x305A + +/* WaitNative engines */ +#define EGL_CORE_NATIVE_ENGINE 0x305B + +/* EGL 1.2 tokens renamed for consistency in EGL 1.3 */ +#define EGL_COLORSPACE EGL_VG_COLORSPACE +#define EGL_ALPHA_FORMAT EGL_VG_ALPHA_FORMAT +#define EGL_COLORSPACE_sRGB EGL_VG_COLORSPACE_sRGB +#define EGL_COLORSPACE_LINEAR EGL_VG_COLORSPACE_LINEAR +#define EGL_ALPHA_FORMAT_NONPRE EGL_VG_ALPHA_FORMAT_NONPRE +#define EGL_ALPHA_FORMAT_PRE EGL_VG_ALPHA_FORMAT_PRE + +/* EGL extensions must request enum blocks from the Khronos + * API Registrar, who maintains the enumerant registry. Submit + * a bug in Khronos Bugzilla against task "Registry". + */ + + + +/* EGL Functions */ + +EGLAPI EGLint EGLAPIENTRY eglGetError(void); + +EGLAPI EGLDisplay EGLAPIENTRY eglGetDisplay(EGLNativeDisplayType display_id); +EGLAPI EGLBoolean EGLAPIENTRY eglInitialize(EGLDisplay dpy, EGLint *major, EGLint *minor); +EGLAPI EGLBoolean EGLAPIENTRY eglTerminate(EGLDisplay dpy); + +EGLAPI const char * EGLAPIENTRY eglQueryString(EGLDisplay dpy, EGLint name); + +EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigs(EGLDisplay dpy, EGLConfig *configs, + EGLint config_size, EGLint *num_config); +EGLAPI EGLBoolean EGLAPIENTRY eglChooseConfig(EGLDisplay dpy, const EGLint *attrib_list, + EGLConfig *configs, EGLint config_size, + EGLint *num_config); +EGLAPI EGLBoolean EGLAPIENTRY eglGetConfigAttrib(EGLDisplay dpy, EGLConfig config, + EGLint attribute, EGLint *value); + +EGLAPI EGLSurface EGLAPIENTRY eglCreateWindowSurface(EGLDisplay dpy, EGLConfig config, + EGLNativeWindowType win, + const EGLint *attrib_list); +EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferSurface(EGLDisplay dpy, EGLConfig config, + const EGLint *attrib_list); +EGLAPI EGLSurface EGLAPIENTRY eglCreatePixmapSurface(EGLDisplay dpy, EGLConfig config, + EGLNativePixmapType pixmap, + const EGLint *attrib_list); +EGLAPI EGLBoolean EGLAPIENTRY eglDestroySurface(EGLDisplay dpy, EGLSurface surface); +EGLAPI EGLBoolean EGLAPIENTRY eglQuerySurface(EGLDisplay dpy, EGLSurface surface, + EGLint attribute, EGLint *value); + +EGLAPI EGLBoolean EGLAPIENTRY eglBindAPI(EGLenum api); +EGLAPI EGLenum EGLAPIENTRY eglQueryAPI(void); + +EGLAPI EGLBoolean EGLAPIENTRY eglWaitClient(void); + +EGLAPI EGLBoolean EGLAPIENTRY eglReleaseThread(void); + +EGLAPI EGLSurface EGLAPIENTRY eglCreatePbufferFromClientBuffer( + EGLDisplay dpy, EGLenum buftype, EGLClientBuffer buffer, + EGLConfig config, const EGLint *attrib_list); + +EGLAPI EGLBoolean EGLAPIENTRY eglSurfaceAttrib(EGLDisplay dpy, EGLSurface surface, + EGLint attribute, EGLint value); +EGLAPI EGLBoolean EGLAPIENTRY eglBindTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer); +EGLAPI EGLBoolean EGLAPIENTRY eglReleaseTexImage(EGLDisplay dpy, EGLSurface surface, EGLint buffer); + + +EGLAPI EGLBoolean EGLAPIENTRY eglSwapInterval(EGLDisplay dpy, EGLint interval); + + +EGLAPI EGLContext EGLAPIENTRY eglCreateContext(EGLDisplay dpy, EGLConfig config, + EGLContext share_context, + const EGLint *attrib_list); +EGLAPI EGLBoolean EGLAPIENTRY eglDestroyContext(EGLDisplay dpy, EGLContext ctx); +EGLAPI EGLBoolean EGLAPIENTRY eglMakeCurrent(EGLDisplay dpy, EGLSurface draw, + EGLSurface read, EGLContext ctx); + +EGLAPI EGLContext EGLAPIENTRY eglGetCurrentContext(void); +EGLAPI EGLSurface EGLAPIENTRY eglGetCurrentSurface(EGLint readdraw); +EGLAPI EGLDisplay EGLAPIENTRY eglGetCurrentDisplay(void); +EGLAPI EGLBoolean EGLAPIENTRY eglQueryContext(EGLDisplay dpy, EGLContext ctx, + EGLint attribute, EGLint *value); + +EGLAPI EGLBoolean EGLAPIENTRY eglWaitGL(void); +EGLAPI EGLBoolean EGLAPIENTRY eglWaitNative(EGLint engine); +EGLAPI EGLBoolean EGLAPIENTRY eglSwapBuffers(EGLDisplay dpy, EGLSurface surface); +EGLAPI EGLBoolean EGLAPIENTRY eglCopyBuffers(EGLDisplay dpy, EGLSurface surface, + EGLNativePixmapType target); + +/* This is a generic function pointer type, whose name indicates it must + * be cast to the proper type *and calling convention* before use. + */ +typedef void (*__eglMustCastToProperFunctionPointerType)(void); + +/* Now, define eglGetProcAddress using the generic function ptr. type */ +EGLAPI __eglMustCastToProperFunctionPointerType EGLAPIENTRY + eglGetProcAddress(const char *procname); + +#ifdef __cplusplus +} +#endif + +#endif /* __egl_h_ */ diff --git a/src/native/common/EGL/eglext.h b/src/native/common/EGL/eglext.h new file mode 100644 index 00000000..70051cf1 --- /dev/null +++ b/src/native/common/EGL/eglext.h @@ -0,0 +1,230 @@ +#ifndef __eglext_h_ +#define __eglext_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* +** Copyright (c) 2007-2010 The Khronos Group Inc. +** +** Permission is hereby granted, free of charge, to any person obtaining a +** copy of this software and/or associated documentation files (the +** "Materials"), to deal in the Materials without restriction, including +** without limitation the rights to use, copy, modify, merge, publish, +** distribute, sublicense, and/or sell copies of the Materials, and to +** permit persons to whom the Materials are furnished to do so, subject to +** the following conditions: +** +** The above copyright notice and this permission notice shall be included +** in all copies or substantial portions of the Materials. +** +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +#include + +/*************************************************************/ + +/* Header file version number */ +/* Current version at http://www.khronos.org/registry/egl/ */ +/* $Revision: 11249 $ on $Date: 2010-05-05 09:54:28 -0700 (Wed, 05 May 2010) $ */ +#define EGL_EGLEXT_VERSION 5 + +#ifndef EGL_KHR_config_attribs +#define EGL_KHR_config_attribs 1 +#define EGL_CONFORMANT_KHR 0x3042 /* EGLConfig attribute */ +#define EGL_VG_COLORSPACE_LINEAR_BIT_KHR 0x0020 /* EGL_SURFACE_TYPE bitfield */ +#define EGL_VG_ALPHA_FORMAT_PRE_BIT_KHR 0x0040 /* EGL_SURFACE_TYPE bitfield */ +#endif + +#ifndef EGL_KHR_lock_surface +#define EGL_KHR_lock_surface 1 +#define EGL_READ_SURFACE_BIT_KHR 0x0001 /* EGL_LOCK_USAGE_HINT_KHR bitfield */ +#define EGL_WRITE_SURFACE_BIT_KHR 0x0002 /* EGL_LOCK_USAGE_HINT_KHR bitfield */ +#define EGL_LOCK_SURFACE_BIT_KHR 0x0080 /* EGL_SURFACE_TYPE bitfield */ +#define EGL_OPTIMAL_FORMAT_BIT_KHR 0x0100 /* EGL_SURFACE_TYPE bitfield */ +#define EGL_MATCH_FORMAT_KHR 0x3043 /* EGLConfig attribute */ +#define EGL_FORMAT_RGB_565_EXACT_KHR 0x30C0 /* EGL_MATCH_FORMAT_KHR value */ +#define EGL_FORMAT_RGB_565_KHR 0x30C1 /* EGL_MATCH_FORMAT_KHR value */ +#define EGL_FORMAT_RGBA_8888_EXACT_KHR 0x30C2 /* EGL_MATCH_FORMAT_KHR value */ +#define EGL_FORMAT_RGBA_8888_KHR 0x30C3 /* EGL_MATCH_FORMAT_KHR value */ +#define EGL_MAP_PRESERVE_PIXELS_KHR 0x30C4 /* eglLockSurfaceKHR attribute */ +#define EGL_LOCK_USAGE_HINT_KHR 0x30C5 /* eglLockSurfaceKHR attribute */ +#define EGL_BITMAP_POINTER_KHR 0x30C6 /* eglQuerySurface attribute */ +#define EGL_BITMAP_PITCH_KHR 0x30C7 /* eglQuerySurface attribute */ +#define EGL_BITMAP_ORIGIN_KHR 0x30C8 /* eglQuerySurface attribute */ +#define EGL_BITMAP_PIXEL_RED_OFFSET_KHR 0x30C9 /* eglQuerySurface attribute */ +#define EGL_BITMAP_PIXEL_GREEN_OFFSET_KHR 0x30CA /* eglQuerySurface attribute */ +#define EGL_BITMAP_PIXEL_BLUE_OFFSET_KHR 0x30CB /* eglQuerySurface attribute */ +#define EGL_BITMAP_PIXEL_ALPHA_OFFSET_KHR 0x30CC /* eglQuerySurface attribute */ +#define EGL_BITMAP_PIXEL_LUMINANCE_OFFSET_KHR 0x30CD /* eglQuerySurface attribute */ +#define EGL_LOWER_LEFT_KHR 0x30CE /* EGL_BITMAP_ORIGIN_KHR value */ +#define EGL_UPPER_LEFT_KHR 0x30CF /* EGL_BITMAP_ORIGIN_KHR value */ +#ifdef EGL_EGLEXT_PROTOTYPES +EGLAPI EGLBoolean EGLAPIENTRY eglLockSurfaceKHR (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list); +EGLAPI EGLBoolean EGLAPIENTRY eglUnlockSurfaceKHR (EGLDisplay display, EGLSurface surface); +#endif /* EGL_EGLEXT_PROTOTYPES */ +typedef EGLBoolean (EGLAPIENTRYP PFNEGLLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface, const EGLint *attrib_list); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLUNLOCKSURFACEKHRPROC) (EGLDisplay display, EGLSurface surface); +#endif + +#ifndef EGL_KHR_image +#define EGL_KHR_image 1 +#define EGL_NATIVE_PIXMAP_KHR 0x30B0 /* eglCreateImageKHR target */ +typedef void *EGLImageKHR; +#define EGL_NO_IMAGE_KHR ((EGLImageKHR)0) +#ifdef EGL_EGLEXT_PROTOTYPES +EGLAPI EGLImageKHR EGLAPIENTRY eglCreateImageKHR (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); +EGLAPI EGLBoolean EGLAPIENTRY eglDestroyImageKHR (EGLDisplay dpy, EGLImageKHR image); +#endif /* EGL_EGLEXT_PROTOTYPES */ +typedef EGLImageKHR (EGLAPIENTRYP PFNEGLCREATEIMAGEKHRPROC) (EGLDisplay dpy, EGLContext ctx, EGLenum target, EGLClientBuffer buffer, const EGLint *attrib_list); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYIMAGEKHRPROC) (EGLDisplay dpy, EGLImageKHR image); +#endif + +#ifndef EGL_KHR_vg_parent_image +#define EGL_KHR_vg_parent_image 1 +#define EGL_VG_PARENT_IMAGE_KHR 0x30BA /* eglCreateImageKHR target */ +#endif + +#ifndef EGL_KHR_gl_texture_2D_image +#define EGL_KHR_gl_texture_2D_image 1 +#define EGL_GL_TEXTURE_2D_KHR 0x30B1 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_LEVEL_KHR 0x30BC /* eglCreateImageKHR attribute */ +#endif + +#ifndef EGL_KHR_gl_texture_cubemap_image +#define EGL_KHR_gl_texture_cubemap_image 1 +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_X_KHR 0x30B3 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_X_KHR 0x30B4 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Y_KHR 0x30B5 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_KHR 0x30B6 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_CUBE_MAP_POSITIVE_Z_KHR 0x30B7 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_KHR 0x30B8 /* eglCreateImageKHR target */ +#endif + +#ifndef EGL_KHR_gl_texture_3D_image +#define EGL_KHR_gl_texture_3D_image 1 +#define EGL_GL_TEXTURE_3D_KHR 0x30B2 /* eglCreateImageKHR target */ +#define EGL_GL_TEXTURE_ZOFFSET_KHR 0x30BD /* eglCreateImageKHR attribute */ +#endif + +#ifndef EGL_KHR_gl_renderbuffer_image +#define EGL_KHR_gl_renderbuffer_image 1 +#define EGL_GL_RENDERBUFFER_KHR 0x30B9 /* eglCreateImageKHR target */ +#endif + +#ifndef EGL_KHR_reusable_sync +#define EGL_KHR_reusable_sync 1 + +typedef void* EGLSyncKHR; +typedef khronos_utime_nanoseconds_t EGLTimeKHR; + +#define EGL_SYNC_STATUS_KHR 0x30F1 +#define EGL_SIGNALED_KHR 0x30F2 +#define EGL_UNSIGNALED_KHR 0x30F3 +#define EGL_TIMEOUT_EXPIRED_KHR 0x30F5 +#define EGL_CONDITION_SATISFIED_KHR 0x30F6 +#define EGL_SYNC_TYPE_KHR 0x30F7 +#define EGL_SYNC_REUSABLE_KHR 0x30FA +#define EGL_SYNC_FLUSH_COMMANDS_BIT_KHR 0x0001 /* eglClientWaitSyncKHR bitfield */ +#define EGL_FOREVER_KHR 0xFFFFFFFFFFFFFFFFull +#define EGL_NO_SYNC_KHR ((EGLSyncKHR)0) +#ifdef EGL_EGLEXT_PROTOTYPES +EGLAPI EGLSyncKHR EGLAPIENTRY eglCreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); +EGLAPI EGLBoolean EGLAPIENTRY eglDestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync); +EGLAPI EGLint EGLAPIENTRY eglClientWaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); +EGLAPI EGLBoolean EGLAPIENTRY eglSignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); +EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncAttribKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); +#endif /* EGL_EGLEXT_PROTOTYPES */ +typedef EGLSyncKHR (EGLAPIENTRYP PFNEGLCREATESYNCKHRPROC) (EGLDisplay dpy, EGLenum type, const EGLint *attrib_list); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync); +typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint flags, EGLTimeKHR timeout); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLenum mode); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBKHRPROC) (EGLDisplay dpy, EGLSyncKHR sync, EGLint attribute, EGLint *value); +#endif + +#ifndef EGL_KHR_image_base +#define EGL_KHR_image_base 1 +/* Most interfaces defined by EGL_KHR_image_pixmap above */ +#define EGL_IMAGE_PRESERVED_KHR 0x30D2 /* eglCreateImageKHR attribute */ +#endif + +#ifndef EGL_KHR_image_pixmap +#define EGL_KHR_image_pixmap 1 +/* Interfaces defined by EGL_KHR_image above */ +#endif + +#ifndef EGL_IMG_context_priority +#define EGL_IMG_context_priority 1 +#define EGL_CONTEXT_PRIORITY_LEVEL_IMG 0x3100 +#define EGL_CONTEXT_PRIORITY_HIGH_IMG 0x3101 +#define EGL_CONTEXT_PRIORITY_MEDIUM_IMG 0x3102 +#define EGL_CONTEXT_PRIORITY_LOW_IMG 0x3103 +#endif + +#ifndef EGL_NV_coverage_sample +#define EGL_NV_coverage_sample 1 +#define EGL_COVERAGE_BUFFERS_NV 0x30E0 +#define EGL_COVERAGE_SAMPLES_NV 0x30E1 +#endif + +#ifndef EGL_NV_depth_nonlinear +#define EGL_NV_depth_nonlinear 1 +#define EGL_DEPTH_ENCODING_NV 0x30E2 +#define EGL_DEPTH_ENCODING_NONE_NV 0 +#define EGL_DEPTH_ENCODING_NONLINEAR_NV 0x30E3 +#endif + +#ifndef EGL_NV_sync +#define EGL_NV_sync 1 +#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_NV 0x30E6 +#define EGL_SYNC_STATUS_NV 0x30E7 +#define EGL_SIGNALED_NV 0x30E8 +#define EGL_UNSIGNALED_NV 0x30E9 +#define EGL_SYNC_FLUSH_COMMANDS_BIT_NV 0x0001 +#define EGL_FOREVER_NV 0xFFFFFFFFFFFFFFFFull +#define EGL_ALREADY_SIGNALED_NV 0x30EA +#define EGL_TIMEOUT_EXPIRED_NV 0x30EB +#define EGL_CONDITION_SATISFIED_NV 0x30EC +#define EGL_SYNC_TYPE_NV 0x30ED +#define EGL_SYNC_CONDITION_NV 0x30EE +#define EGL_SYNC_FENCE_NV 0x30EF +#define EGL_NO_SYNC_NV ((EGLSyncNV)0) +typedef void* EGLSyncNV; +typedef unsigned long long EGLTimeNV; +#ifdef EGL_EGLEXT_PROTOTYPES +EGLSyncNV eglCreateFenceSyncNV (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); +EGLBoolean eglDestroySyncNV (EGLSyncNV sync); +EGLBoolean eglFenceNV (EGLSyncNV sync); +EGLint eglClientWaitSyncNV (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); +EGLBoolean eglSignalSyncNV (EGLSyncNV sync, EGLenum mode); +EGLBoolean eglGetSyncAttribNV (EGLSyncNV sync, EGLint attribute, EGLint *value); +#endif /* EGL_EGLEXT_PROTOTYPES */ +typedef EGLSyncNV (EGLAPIENTRYP PFNEGLCREATEFENCESYNCNVPROC) (EGLDisplay dpy, EGLenum condition, const EGLint *attrib_list); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLDESTROYSYNCNVPROC) (EGLSyncNV sync); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLFENCENVPROC) (EGLSyncNV sync); +typedef EGLint (EGLAPIENTRYP PFNEGLCLIENTWAITSYNCNVPROC) (EGLSyncNV sync, EGLint flags, EGLTimeNV timeout); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLSIGNALSYNCNVPROC) (EGLSyncNV sync, EGLenum mode); +typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCATTRIBNVPROC) (EGLSyncNV sync, EGLint attribute, EGLint *value); +#endif + +#ifndef EGL_KHR_fence_sync +#define EGL_KHR_fence_sync 1 +/* Reuses most tokens and entry points from EGL_KHR_reusable_sync */ +#define EGL_SYNC_PRIOR_COMMANDS_COMPLETE_KHR 0x30F0 +#define EGL_SYNC_CONDITION_KHR 0x30F8 +#define EGL_SYNC_FENCE_KHR 0x30F9 +#endif + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/src/native/common/EGL/eglplatform.h b/src/native/common/EGL/eglplatform.h new file mode 100644 index 00000000..22e855f5 --- /dev/null +++ b/src/native/common/EGL/eglplatform.h @@ -0,0 +1,110 @@ +#ifndef __eglplatform_h_ +#define __eglplatform_h_ + +/* +** Copyright (c) 2007-2009 The Khronos Group Inc. +** +** Permission is hereby granted, free of charge, to any person obtaining a +** copy of this software and/or associated documentation files (the +** "Materials"), to deal in the Materials without restriction, including +** without limitation the rights to use, copy, modify, merge, publish, +** distribute, sublicense, and/or sell copies of the Materials, and to +** permit persons to whom the Materials are furnished to do so, subject to +** the following conditions: +** +** The above copyright notice and this permission notice shall be included +** in all copies or substantial portions of the Materials. +** +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +/* Platform-specific types and definitions for egl.h + * $Revision: 9724 $ on $Date: 2009-12-02 02:05:33 -0800 (Wed, 02 Dec 2009) $ + * + * Adopters may modify khrplatform.h and this file to suit their platform. + * You are encouraged to submit all modifications to the Khronos group so that + * they can be included in future versions of this file. Please submit changes + * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) + * by filing a bug against product "EGL" component "Registry". + */ + +#include + +/* Macros used in EGL function prototype declarations. + * + * EGL functions should be prototyped as: + * + * EGLAPI return-type EGLAPIENTRY eglFunction(arguments); + * typedef return-type (EXPAPIENTRYP PFNEGLFUNCTIONPROC) (arguments); + * + * KHRONOS_APICALL and KHRONOS_APIENTRY are defined in KHR/khrplatform.h + */ + +#ifndef EGLAPI +#define EGLAPI KHRONOS_APICALL +#endif + +#ifndef EGLAPIENTRY +#define EGLAPIENTRY KHRONOS_APIENTRY +#endif +#define EGLAPIENTRYP EGLAPIENTRY* + +/* The types NativeDisplayType, NativeWindowType, and NativePixmapType + * are aliases of window-system-dependent types, such as X Display * or + * Windows Device Context. They must be defined in platform-specific + * code below. The EGL-prefixed versions of Native*Type are the same + * types, renamed in EGL 1.3 so all types in the API start with "EGL". + */ + +#if defined(_WIN32) || defined(__VC32__) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) /* Win32 and WinCE */ +#ifndef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN 1 +#endif +#include + +typedef HDC EGLNativeDisplayType; +typedef HBITMAP EGLNativePixmapType; +typedef HWND EGLNativeWindowType; + +#elif defined(__WINSCW__) || defined(__SYMBIAN32__) /* Symbian */ + +typedef int EGLNativeDisplayType; +typedef void *EGLNativeWindowType; +typedef void *EGLNativePixmapType; + +#elif defined(__unix__) + +/* X11 (tentative) */ +#include +#include + +typedef Display *EGLNativeDisplayType; +typedef Pixmap EGLNativePixmapType; +typedef Window EGLNativeWindowType; + +#else +#error "Platform not recognized" +#endif + +/* EGL 1.2 types, renamed for consistency in EGL 1.3 */ +typedef EGLNativeDisplayType NativeDisplayType; +typedef EGLNativePixmapType NativePixmapType; +typedef EGLNativeWindowType NativeWindowType; + + +/* Define EGLint. This must be a signed integral type large enough to contain + * all legal attribute names and values passed into and out of EGL, whether + * their type is boolean, bitmask, enumerant (symbolic constant), integer, + * handle, or other. While in general a 32-bit integer will suffice, if + * handles are 64 bit types, then EGLint should be defined as a signed 64-bit + * integer type. + */ +typedef khronos_int32_t EGLint; + +#endif /* __eglplatform_h */ diff --git a/src/native/common/GLES2/gl2.h b/src/native/common/GLES2/gl2.h new file mode 100644 index 00000000..e1d3b87c --- /dev/null +++ b/src/native/common/GLES2/gl2.h @@ -0,0 +1,621 @@ +#ifndef __gl2_h_ +#define __gl2_h_ + +/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * This document is licensed under the SGI Free Software B License Version + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . + */ + +/*------------------------------------------------------------------------- + * Data type definitions + *-----------------------------------------------------------------------*/ + +typedef void GLvoid; +typedef char GLchar; +typedef unsigned int GLenum; +typedef unsigned char GLboolean; +typedef unsigned int GLbitfield; +typedef khronos_int8_t GLbyte; +typedef short GLshort; +typedef int GLint; +typedef int GLsizei; +typedef khronos_uint8_t GLubyte; +typedef unsigned short GLushort; +typedef unsigned int GLuint; +typedef khronos_float_t GLfloat; +typedef khronos_float_t GLclampf; +typedef khronos_int32_t GLfixed; + +/* GL types for handling large vertex buffer objects */ +typedef khronos_intptr_t GLintptr; +typedef khronos_ssize_t GLsizeiptr; + +/* OpenGL ES core versions */ +#define GL_ES_VERSION_2_0 1 + +/* ClearBufferMask */ +#define GL_DEPTH_BUFFER_BIT 0x00000100 +#define GL_STENCIL_BUFFER_BIT 0x00000400 +#define GL_COLOR_BUFFER_BIT 0x00004000 + +/* Boolean */ +#define GL_FALSE 0 +#define GL_TRUE 1 + +/* BeginMode */ +#define GL_POINTS 0x0000 +#define GL_LINES 0x0001 +#define GL_LINE_LOOP 0x0002 +#define GL_LINE_STRIP 0x0003 +#define GL_TRIANGLES 0x0004 +#define GL_TRIANGLE_STRIP 0x0005 +#define GL_TRIANGLE_FAN 0x0006 + +/* AlphaFunction (not supported in ES20) */ +/* GL_NEVER */ +/* GL_LESS */ +/* GL_EQUAL */ +/* GL_LEQUAL */ +/* GL_GREATER */ +/* GL_NOTEQUAL */ +/* GL_GEQUAL */ +/* GL_ALWAYS */ + +/* BlendingFactorDest */ +#define GL_ZERO 0 +#define GL_ONE 1 +#define GL_SRC_COLOR 0x0300 +#define GL_ONE_MINUS_SRC_COLOR 0x0301 +#define GL_SRC_ALPHA 0x0302 +#define GL_ONE_MINUS_SRC_ALPHA 0x0303 +#define GL_DST_ALPHA 0x0304 +#define GL_ONE_MINUS_DST_ALPHA 0x0305 + +/* BlendingFactorSrc */ +/* GL_ZERO */ +/* GL_ONE */ +#define GL_DST_COLOR 0x0306 +#define GL_ONE_MINUS_DST_COLOR 0x0307 +#define GL_SRC_ALPHA_SATURATE 0x0308 +/* GL_SRC_ALPHA */ +/* GL_ONE_MINUS_SRC_ALPHA */ +/* GL_DST_ALPHA */ +/* GL_ONE_MINUS_DST_ALPHA */ + +/* BlendEquationSeparate */ +#define GL_FUNC_ADD 0x8006 +#define GL_BLEND_EQUATION 0x8009 +#define GL_BLEND_EQUATION_RGB 0x8009 /* same as BLEND_EQUATION */ +#define GL_BLEND_EQUATION_ALPHA 0x883D + +/* BlendSubtract */ +#define GL_FUNC_SUBTRACT 0x800A +#define GL_FUNC_REVERSE_SUBTRACT 0x800B + +/* Separate Blend Functions */ +#define GL_BLEND_DST_RGB 0x80C8 +#define GL_BLEND_SRC_RGB 0x80C9 +#define GL_BLEND_DST_ALPHA 0x80CA +#define GL_BLEND_SRC_ALPHA 0x80CB +#define GL_CONSTANT_COLOR 0x8001 +#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 +#define GL_CONSTANT_ALPHA 0x8003 +#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 +#define GL_BLEND_COLOR 0x8005 + +/* Buffer Objects */ +#define GL_ARRAY_BUFFER 0x8892 +#define GL_ELEMENT_ARRAY_BUFFER 0x8893 +#define GL_ARRAY_BUFFER_BINDING 0x8894 +#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895 + +#define GL_STREAM_DRAW 0x88E0 +#define GL_STATIC_DRAW 0x88E4 +#define GL_DYNAMIC_DRAW 0x88E8 + +#define GL_BUFFER_SIZE 0x8764 +#define GL_BUFFER_USAGE 0x8765 + +#define GL_CURRENT_VERTEX_ATTRIB 0x8626 + +/* CullFaceMode */ +#define GL_FRONT 0x0404 +#define GL_BACK 0x0405 +#define GL_FRONT_AND_BACK 0x0408 + +/* DepthFunction */ +/* GL_NEVER */ +/* GL_LESS */ +/* GL_EQUAL */ +/* GL_LEQUAL */ +/* GL_GREATER */ +/* GL_NOTEQUAL */ +/* GL_GEQUAL */ +/* GL_ALWAYS */ + +/* EnableCap */ +#define GL_TEXTURE_2D 0x0DE1 +#define GL_CULL_FACE 0x0B44 +#define GL_BLEND 0x0BE2 +#define GL_DITHER 0x0BD0 +#define GL_STENCIL_TEST 0x0B90 +#define GL_DEPTH_TEST 0x0B71 +#define GL_SCISSOR_TEST 0x0C11 +#define GL_POLYGON_OFFSET_FILL 0x8037 +#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E +#define GL_SAMPLE_COVERAGE 0x80A0 + +/* ErrorCode */ +#define GL_NO_ERROR 0 +#define GL_INVALID_ENUM 0x0500 +#define GL_INVALID_VALUE 0x0501 +#define GL_INVALID_OPERATION 0x0502 +#define GL_OUT_OF_MEMORY 0x0505 + +/* FrontFaceDirection */ +#define GL_CW 0x0900 +#define GL_CCW 0x0901 + +/* GetPName */ +#define GL_LINE_WIDTH 0x0B21 +#define GL_ALIASED_POINT_SIZE_RANGE 0x846D +#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E +#define GL_CULL_FACE_MODE 0x0B45 +#define GL_FRONT_FACE 0x0B46 +#define GL_DEPTH_RANGE 0x0B70 +#define GL_DEPTH_WRITEMASK 0x0B72 +#define GL_DEPTH_CLEAR_VALUE 0x0B73 +#define GL_DEPTH_FUNC 0x0B74 +#define GL_STENCIL_CLEAR_VALUE 0x0B91 +#define GL_STENCIL_FUNC 0x0B92 +#define GL_STENCIL_FAIL 0x0B94 +#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 +#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 +#define GL_STENCIL_REF 0x0B97 +#define GL_STENCIL_VALUE_MASK 0x0B93 +#define GL_STENCIL_WRITEMASK 0x0B98 +#define GL_STENCIL_BACK_FUNC 0x8800 +#define GL_STENCIL_BACK_FAIL 0x8801 +#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802 +#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803 +#define GL_STENCIL_BACK_REF 0x8CA3 +#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4 +#define GL_STENCIL_BACK_WRITEMASK 0x8CA5 +#define GL_VIEWPORT 0x0BA2 +#define GL_SCISSOR_BOX 0x0C10 +/* GL_SCISSOR_TEST */ +#define GL_COLOR_CLEAR_VALUE 0x0C22 +#define GL_COLOR_WRITEMASK 0x0C23 +#define GL_UNPACK_ALIGNMENT 0x0CF5 +#define GL_PACK_ALIGNMENT 0x0D05 +#define GL_MAX_TEXTURE_SIZE 0x0D33 +#define GL_MAX_VIEWPORT_DIMS 0x0D3A +#define GL_SUBPIXEL_BITS 0x0D50 +#define GL_RED_BITS 0x0D52 +#define GL_GREEN_BITS 0x0D53 +#define GL_BLUE_BITS 0x0D54 +#define GL_ALPHA_BITS 0x0D55 +#define GL_DEPTH_BITS 0x0D56 +#define GL_STENCIL_BITS 0x0D57 +#define GL_POLYGON_OFFSET_UNITS 0x2A00 +/* GL_POLYGON_OFFSET_FILL */ +#define GL_POLYGON_OFFSET_FACTOR 0x8038 +#define GL_TEXTURE_BINDING_2D 0x8069 +#define GL_SAMPLE_BUFFERS 0x80A8 +#define GL_SAMPLES 0x80A9 +#define GL_SAMPLE_COVERAGE_VALUE 0x80AA +#define GL_SAMPLE_COVERAGE_INVERT 0x80AB + +/* GetTextureParameter */ +/* GL_TEXTURE_MAG_FILTER */ +/* GL_TEXTURE_MIN_FILTER */ +/* GL_TEXTURE_WRAP_S */ +/* GL_TEXTURE_WRAP_T */ + +#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 +#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 + +/* HintMode */ +#define GL_DONT_CARE 0x1100 +#define GL_FASTEST 0x1101 +#define GL_NICEST 0x1102 + +/* HintTarget */ +#define GL_GENERATE_MIPMAP_HINT 0x8192 + +/* DataType */ +#define GL_BYTE 0x1400 +#define GL_UNSIGNED_BYTE 0x1401 +#define GL_SHORT 0x1402 +#define GL_UNSIGNED_SHORT 0x1403 +#define GL_INT 0x1404 +#define GL_UNSIGNED_INT 0x1405 +#define GL_FLOAT 0x1406 +#define GL_FIXED 0x140C + +/* PixelFormat */ +#define GL_DEPTH_COMPONENT 0x1902 +#define GL_ALPHA 0x1906 +#define GL_RGB 0x1907 +#define GL_RGBA 0x1908 +#define GL_LUMINANCE 0x1909 +#define GL_LUMINANCE_ALPHA 0x190A + +/* PixelType */ +/* GL_UNSIGNED_BYTE */ +#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 +#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 +#define GL_UNSIGNED_SHORT_5_6_5 0x8363 + +/* Shaders */ +#define GL_FRAGMENT_SHADER 0x8B30 +#define GL_VERTEX_SHADER 0x8B31 +#define GL_MAX_VERTEX_ATTRIBS 0x8869 +#define GL_MAX_VERTEX_UNIFORM_VECTORS 0x8DFB +#define GL_MAX_VARYING_VECTORS 0x8DFC +#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D +#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C +#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872 +#define GL_MAX_FRAGMENT_UNIFORM_VECTORS 0x8DFD +#define GL_SHADER_TYPE 0x8B4F +#define GL_DELETE_STATUS 0x8B80 +#define GL_LINK_STATUS 0x8B82 +#define GL_VALIDATE_STATUS 0x8B83 +#define GL_ATTACHED_SHADERS 0x8B85 +#define GL_ACTIVE_UNIFORMS 0x8B86 +#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87 +#define GL_ACTIVE_ATTRIBUTES 0x8B89 +#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A +#define GL_SHADING_LANGUAGE_VERSION 0x8B8C +#define GL_CURRENT_PROGRAM 0x8B8D + +/* StencilFunction */ +#define GL_NEVER 0x0200 +#define GL_LESS 0x0201 +#define GL_EQUAL 0x0202 +#define GL_LEQUAL 0x0203 +#define GL_GREATER 0x0204 +#define GL_NOTEQUAL 0x0205 +#define GL_GEQUAL 0x0206 +#define GL_ALWAYS 0x0207 + +/* StencilOp */ +/* GL_ZERO */ +#define GL_KEEP 0x1E00 +#define GL_REPLACE 0x1E01 +#define GL_INCR 0x1E02 +#define GL_DECR 0x1E03 +#define GL_INVERT 0x150A +#define GL_INCR_WRAP 0x8507 +#define GL_DECR_WRAP 0x8508 + +/* StringName */ +#define GL_VENDOR 0x1F00 +#define GL_RENDERER 0x1F01 +#define GL_VERSION 0x1F02 +#define GL_EXTENSIONS 0x1F03 + +/* TextureMagFilter */ +#define GL_NEAREST 0x2600 +#define GL_LINEAR 0x2601 + +/* TextureMinFilter */ +/* GL_NEAREST */ +/* GL_LINEAR */ +#define GL_NEAREST_MIPMAP_NEAREST 0x2700 +#define GL_LINEAR_MIPMAP_NEAREST 0x2701 +#define GL_NEAREST_MIPMAP_LINEAR 0x2702 +#define GL_LINEAR_MIPMAP_LINEAR 0x2703 + +/* TextureParameterName */ +#define GL_TEXTURE_MAG_FILTER 0x2800 +#define GL_TEXTURE_MIN_FILTER 0x2801 +#define GL_TEXTURE_WRAP_S 0x2802 +#define GL_TEXTURE_WRAP_T 0x2803 + +/* TextureTarget */ +/* GL_TEXTURE_2D */ +#define GL_TEXTURE 0x1702 + +#define GL_TEXTURE_CUBE_MAP 0x8513 +#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 +#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 +#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A +#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C + +/* TextureUnit */ +#define GL_TEXTURE0 0x84C0 +#define GL_TEXTURE1 0x84C1 +#define GL_TEXTURE2 0x84C2 +#define GL_TEXTURE3 0x84C3 +#define GL_TEXTURE4 0x84C4 +#define GL_TEXTURE5 0x84C5 +#define GL_TEXTURE6 0x84C6 +#define GL_TEXTURE7 0x84C7 +#define GL_TEXTURE8 0x84C8 +#define GL_TEXTURE9 0x84C9 +#define GL_TEXTURE10 0x84CA +#define GL_TEXTURE11 0x84CB +#define GL_TEXTURE12 0x84CC +#define GL_TEXTURE13 0x84CD +#define GL_TEXTURE14 0x84CE +#define GL_TEXTURE15 0x84CF +#define GL_TEXTURE16 0x84D0 +#define GL_TEXTURE17 0x84D1 +#define GL_TEXTURE18 0x84D2 +#define GL_TEXTURE19 0x84D3 +#define GL_TEXTURE20 0x84D4 +#define GL_TEXTURE21 0x84D5 +#define GL_TEXTURE22 0x84D6 +#define GL_TEXTURE23 0x84D7 +#define GL_TEXTURE24 0x84D8 +#define GL_TEXTURE25 0x84D9 +#define GL_TEXTURE26 0x84DA +#define GL_TEXTURE27 0x84DB +#define GL_TEXTURE28 0x84DC +#define GL_TEXTURE29 0x84DD +#define GL_TEXTURE30 0x84DE +#define GL_TEXTURE31 0x84DF +#define GL_ACTIVE_TEXTURE 0x84E0 + +/* TextureWrapMode */ +#define GL_REPEAT 0x2901 +#define GL_CLAMP_TO_EDGE 0x812F +#define GL_MIRRORED_REPEAT 0x8370 + +/* Uniform Types */ +#define GL_FLOAT_VEC2 0x8B50 +#define GL_FLOAT_VEC3 0x8B51 +#define GL_FLOAT_VEC4 0x8B52 +#define GL_INT_VEC2 0x8B53 +#define GL_INT_VEC3 0x8B54 +#define GL_INT_VEC4 0x8B55 +#define GL_BOOL 0x8B56 +#define GL_BOOL_VEC2 0x8B57 +#define GL_BOOL_VEC3 0x8B58 +#define GL_BOOL_VEC4 0x8B59 +#define GL_FLOAT_MAT2 0x8B5A +#define GL_FLOAT_MAT3 0x8B5B +#define GL_FLOAT_MAT4 0x8B5C +#define GL_SAMPLER_2D 0x8B5E +#define GL_SAMPLER_CUBE 0x8B60 + +/* Vertex Arrays */ +#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622 +#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623 +#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624 +#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625 +#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A +#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645 +#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F + +/* Read Format */ +#define GL_IMPLEMENTATION_COLOR_READ_TYPE 0x8B9A +#define GL_IMPLEMENTATION_COLOR_READ_FORMAT 0x8B9B + +/* Shader Source */ +#define GL_COMPILE_STATUS 0x8B81 +#define GL_INFO_LOG_LENGTH 0x8B84 +#define GL_SHADER_SOURCE_LENGTH 0x8B88 +#define GL_SHADER_COMPILER 0x8DFA + +/* Shader Binary */ +#define GL_SHADER_BINARY_FORMATS 0x8DF8 +#define GL_NUM_SHADER_BINARY_FORMATS 0x8DF9 + +/* Shader Precision-Specified Types */ +#define GL_LOW_FLOAT 0x8DF0 +#define GL_MEDIUM_FLOAT 0x8DF1 +#define GL_HIGH_FLOAT 0x8DF2 +#define GL_LOW_INT 0x8DF3 +#define GL_MEDIUM_INT 0x8DF4 +#define GL_HIGH_INT 0x8DF5 + +/* Framebuffer Object. */ +#define GL_FRAMEBUFFER 0x8D40 +#define GL_RENDERBUFFER 0x8D41 + +#define GL_RGBA4 0x8056 +#define GL_RGB5_A1 0x8057 +#define GL_RGB565 0x8D62 +#define GL_DEPTH_COMPONENT16 0x81A5 +#define GL_STENCIL_INDEX 0x1901 +#define GL_STENCIL_INDEX8 0x8D48 + +#define GL_RENDERBUFFER_WIDTH 0x8D42 +#define GL_RENDERBUFFER_HEIGHT 0x8D43 +#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44 +#define GL_RENDERBUFFER_RED_SIZE 0x8D50 +#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51 +#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52 +#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53 +#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54 +#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55 + +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0 +#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2 +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3 + +#define GL_COLOR_ATTACHMENT0 0x8CE0 +#define GL_DEPTH_ATTACHMENT 0x8D00 +#define GL_STENCIL_ATTACHMENT 0x8D20 + +#define GL_NONE 0 + +#define GL_FRAMEBUFFER_COMPLETE 0x8CD5 +#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6 +#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7 +#define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS 0x8CD9 +#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD + +#define GL_FRAMEBUFFER_BINDING 0x8CA6 +#define GL_RENDERBUFFER_BINDING 0x8CA7 +#define GL_MAX_RENDERBUFFER_SIZE 0x84E8 + +#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506 + +/*------------------------------------------------------------------------- + * GL core functions. + *-----------------------------------------------------------------------*/ + +GL_APICALL void GL_APIENTRY glActiveTexture (GLenum texture); +GL_APICALL void GL_APIENTRY glAttachShader (GLuint program, GLuint shader); +GL_APICALL void GL_APIENTRY glBindAttribLocation (GLuint program, GLuint index, const GLchar* name); +GL_APICALL void GL_APIENTRY glBindBuffer (GLenum target, GLuint buffer); +GL_APICALL void GL_APIENTRY glBindFramebuffer (GLenum target, GLuint framebuffer); +GL_APICALL void GL_APIENTRY glBindRenderbuffer (GLenum target, GLuint renderbuffer); +GL_APICALL void GL_APIENTRY glBindTexture (GLenum target, GLuint texture); +GL_APICALL void GL_APIENTRY glBlendColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +GL_APICALL void GL_APIENTRY glBlendEquation ( GLenum mode ); +GL_APICALL void GL_APIENTRY glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha); +GL_APICALL void GL_APIENTRY glBlendFunc (GLenum sfactor, GLenum dfactor); +GL_APICALL void GL_APIENTRY glBlendFuncSeparate (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); +GL_APICALL void GL_APIENTRY glBufferData (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage); +GL_APICALL void GL_APIENTRY glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid* data); +GL_APICALL GLenum GL_APIENTRY glCheckFramebufferStatus (GLenum target); +GL_APICALL void GL_APIENTRY glClear (GLbitfield mask); +GL_APICALL void GL_APIENTRY glClearColor (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha); +GL_APICALL void GL_APIENTRY glClearDepthf (GLclampf depth); +GL_APICALL void GL_APIENTRY glClearStencil (GLint s); +GL_APICALL void GL_APIENTRY glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); +GL_APICALL void GL_APIENTRY glCompileShader (GLuint shader); +GL_APICALL void GL_APIENTRY glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid* data); +GL_APICALL void GL_APIENTRY glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid* data); +GL_APICALL void GL_APIENTRY glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); +GL_APICALL void GL_APIENTRY glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); +GL_APICALL GLuint GL_APIENTRY glCreateProgram (void); +GL_APICALL GLuint GL_APIENTRY glCreateShader (GLenum type); +GL_APICALL void GL_APIENTRY glCullFace (GLenum mode); +GL_APICALL void GL_APIENTRY glDeleteBuffers (GLsizei n, const GLuint* buffers); +GL_APICALL void GL_APIENTRY glDeleteFramebuffers (GLsizei n, const GLuint* framebuffers); +GL_APICALL void GL_APIENTRY glDeleteProgram (GLuint program); +GL_APICALL void GL_APIENTRY glDeleteRenderbuffers (GLsizei n, const GLuint* renderbuffers); +GL_APICALL void GL_APIENTRY glDeleteShader (GLuint shader); +GL_APICALL void GL_APIENTRY glDeleteTextures (GLsizei n, const GLuint* textures); +GL_APICALL void GL_APIENTRY glDepthFunc (GLenum func); +GL_APICALL void GL_APIENTRY glDepthMask (GLboolean flag); +GL_APICALL void GL_APIENTRY glDepthRangef (GLclampf zNear, GLclampf zFar); +GL_APICALL void GL_APIENTRY glDetachShader (GLuint program, GLuint shader); +GL_APICALL void GL_APIENTRY glDisable (GLenum cap); +GL_APICALL void GL_APIENTRY glDisableVertexAttribArray (GLuint index); +GL_APICALL void GL_APIENTRY glDrawArrays (GLenum mode, GLint first, GLsizei count); +GL_APICALL void GL_APIENTRY glDrawElements (GLenum mode, GLsizei count, GLenum type, const GLvoid* indices); +GL_APICALL void GL_APIENTRY glEnable (GLenum cap); +GL_APICALL void GL_APIENTRY glEnableVertexAttribArray (GLuint index); +GL_APICALL void GL_APIENTRY glFinish (void); +GL_APICALL void GL_APIENTRY glFlush (void); +GL_APICALL void GL_APIENTRY glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); +GL_APICALL void GL_APIENTRY glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); +GL_APICALL void GL_APIENTRY glFrontFace (GLenum mode); +GL_APICALL void GL_APIENTRY glGenBuffers (GLsizei n, GLuint* buffers); +GL_APICALL void GL_APIENTRY glGenerateMipmap (GLenum target); +GL_APICALL void GL_APIENTRY glGenFramebuffers (GLsizei n, GLuint* framebuffers); +GL_APICALL void GL_APIENTRY glGenRenderbuffers (GLsizei n, GLuint* renderbuffers); +GL_APICALL void GL_APIENTRY glGenTextures (GLsizei n, GLuint* textures); +GL_APICALL void GL_APIENTRY glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); +GL_APICALL void GL_APIENTRY glGetActiveUniform (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, GLchar* name); +GL_APICALL void GL_APIENTRY glGetAttachedShaders (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders); +GL_APICALL int GL_APIENTRY glGetAttribLocation (GLuint program, const GLchar* name); +GL_APICALL void GL_APIENTRY glGetBooleanv (GLenum pname, GLboolean* params); +GL_APICALL void GL_APIENTRY glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params); +GL_APICALL GLenum GL_APIENTRY glGetError (void); +GL_APICALL void GL_APIENTRY glGetFloatv (GLenum pname, GLfloat* params); +GL_APICALL void GL_APIENTRY glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetIntegerv (GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetProgramiv (GLuint program, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetProgramInfoLog (GLuint program, GLsizei bufsize, GLsizei* length, GLchar* infolog); +GL_APICALL void GL_APIENTRY glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetShaderiv (GLuint shader, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetShaderInfoLog (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* infolog); +GL_APICALL void GL_APIENTRY glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision); +GL_APICALL void GL_APIENTRY glGetShaderSource (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); +GL_APICALL const GLubyte* GL_APIENTRY glGetString (GLenum name); +GL_APICALL void GL_APIENTRY glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params); +GL_APICALL void GL_APIENTRY glGetTexParameteriv (GLenum target, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetUniformfv (GLuint program, GLint location, GLfloat* params); +GL_APICALL void GL_APIENTRY glGetUniformiv (GLuint program, GLint location, GLint* params); +GL_APICALL int GL_APIENTRY glGetUniformLocation (GLuint program, const GLchar* name); +GL_APICALL void GL_APIENTRY glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params); +GL_APICALL void GL_APIENTRY glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params); +GL_APICALL void GL_APIENTRY glGetVertexAttribPointerv (GLuint index, GLenum pname, GLvoid** pointer); +GL_APICALL void GL_APIENTRY glHint (GLenum target, GLenum mode); +GL_APICALL GLboolean GL_APIENTRY glIsBuffer (GLuint buffer); +GL_APICALL GLboolean GL_APIENTRY glIsEnabled (GLenum cap); +GL_APICALL GLboolean GL_APIENTRY glIsFramebuffer (GLuint framebuffer); +GL_APICALL GLboolean GL_APIENTRY glIsProgram (GLuint program); +GL_APICALL GLboolean GL_APIENTRY glIsRenderbuffer (GLuint renderbuffer); +GL_APICALL GLboolean GL_APIENTRY glIsShader (GLuint shader); +GL_APICALL GLboolean GL_APIENTRY glIsTexture (GLuint texture); +GL_APICALL void GL_APIENTRY glLineWidth (GLfloat width); +GL_APICALL void GL_APIENTRY glLinkProgram (GLuint program); +GL_APICALL void GL_APIENTRY glPixelStorei (GLenum pname, GLint param); +GL_APICALL void GL_APIENTRY glPolygonOffset (GLfloat factor, GLfloat units); +GL_APICALL void GL_APIENTRY glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid* pixels); +GL_APICALL void GL_APIENTRY glReleaseShaderCompiler (void); +GL_APICALL void GL_APIENTRY glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); +GL_APICALL void GL_APIENTRY glSampleCoverage (GLclampf value, GLboolean invert); +GL_APICALL void GL_APIENTRY glScissor (GLint x, GLint y, GLsizei width, GLsizei height); +GL_APICALL void GL_APIENTRY glShaderBinary (GLsizei n, const GLuint* shaders, GLenum binaryformat, const GLvoid* binary, GLsizei length); +GL_APICALL void GL_APIENTRY glShaderSource (GLuint shader, GLsizei count, const GLchar** string, const GLint* length); +GL_APICALL void GL_APIENTRY glStencilFunc (GLenum func, GLint ref, GLuint mask); +GL_APICALL void GL_APIENTRY glStencilFuncSeparate (GLenum face, GLenum func, GLint ref, GLuint mask); +GL_APICALL void GL_APIENTRY glStencilMask (GLuint mask); +GL_APICALL void GL_APIENTRY glStencilMaskSeparate (GLenum face, GLuint mask); +GL_APICALL void GL_APIENTRY glStencilOp (GLenum fail, GLenum zfail, GLenum zpass); +GL_APICALL void GL_APIENTRY glStencilOpSeparate (GLenum face, GLenum fail, GLenum zfail, GLenum zpass); +GL_APICALL void GL_APIENTRY glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid* pixels); +GL_APICALL void GL_APIENTRY glTexParameterf (GLenum target, GLenum pname, GLfloat param); +GL_APICALL void GL_APIENTRY glTexParameterfv (GLenum target, GLenum pname, const GLfloat* params); +GL_APICALL void GL_APIENTRY glTexParameteri (GLenum target, GLenum pname, GLint param); +GL_APICALL void GL_APIENTRY glTexParameteriv (GLenum target, GLenum pname, const GLint* params); +GL_APICALL void GL_APIENTRY glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid* pixels); +GL_APICALL void GL_APIENTRY glUniform1f (GLint location, GLfloat x); +GL_APICALL void GL_APIENTRY glUniform1fv (GLint location, GLsizei count, const GLfloat* v); +GL_APICALL void GL_APIENTRY glUniform1i (GLint location, GLint x); +GL_APICALL void GL_APIENTRY glUniform1iv (GLint location, GLsizei count, const GLint* v); +GL_APICALL void GL_APIENTRY glUniform2f (GLint location, GLfloat x, GLfloat y); +GL_APICALL void GL_APIENTRY glUniform2fv (GLint location, GLsizei count, const GLfloat* v); +GL_APICALL void GL_APIENTRY glUniform2i (GLint location, GLint x, GLint y); +GL_APICALL void GL_APIENTRY glUniform2iv (GLint location, GLsizei count, const GLint* v); +GL_APICALL void GL_APIENTRY glUniform3f (GLint location, GLfloat x, GLfloat y, GLfloat z); +GL_APICALL void GL_APIENTRY glUniform3fv (GLint location, GLsizei count, const GLfloat* v); +GL_APICALL void GL_APIENTRY glUniform3i (GLint location, GLint x, GLint y, GLint z); +GL_APICALL void GL_APIENTRY glUniform3iv (GLint location, GLsizei count, const GLint* v); +GL_APICALL void GL_APIENTRY glUniform4f (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +GL_APICALL void GL_APIENTRY glUniform4fv (GLint location, GLsizei count, const GLfloat* v); +GL_APICALL void GL_APIENTRY glUniform4i (GLint location, GLint x, GLint y, GLint z, GLint w); +GL_APICALL void GL_APIENTRY glUniform4iv (GLint location, GLsizei count, const GLint* v); +GL_APICALL void GL_APIENTRY glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +GL_APICALL void GL_APIENTRY glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +GL_APICALL void GL_APIENTRY glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value); +GL_APICALL void GL_APIENTRY glUseProgram (GLuint program); +GL_APICALL void GL_APIENTRY glValidateProgram (GLuint program); +GL_APICALL void GL_APIENTRY glVertexAttrib1f (GLuint indx, GLfloat x); +GL_APICALL void GL_APIENTRY glVertexAttrib1fv (GLuint indx, const GLfloat* values); +GL_APICALL void GL_APIENTRY glVertexAttrib2f (GLuint indx, GLfloat x, GLfloat y); +GL_APICALL void GL_APIENTRY glVertexAttrib2fv (GLuint indx, const GLfloat* values); +GL_APICALL void GL_APIENTRY glVertexAttrib3f (GLuint indx, GLfloat x, GLfloat y, GLfloat z); +GL_APICALL void GL_APIENTRY glVertexAttrib3fv (GLuint indx, const GLfloat* values); +GL_APICALL void GL_APIENTRY glVertexAttrib4f (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w); +GL_APICALL void GL_APIENTRY glVertexAttrib4fv (GLuint indx, const GLfloat* values); +GL_APICALL void GL_APIENTRY glVertexAttribPointer (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid* ptr); +GL_APICALL void GL_APIENTRY glViewport (GLint x, GLint y, GLsizei width, GLsizei height); + +#ifdef __cplusplus +} +#endif + +#endif /* __gl2_h_ */ diff --git a/src/native/common/GLES2/gl2ext.h b/src/native/common/GLES2/gl2ext.h new file mode 100644 index 00000000..334e9cef --- /dev/null +++ b/src/native/common/GLES2/gl2ext.h @@ -0,0 +1,803 @@ +#ifndef __gl2ext_h_ +#define __gl2ext_h_ + +/* $Revision: 10969 $ on $Date:: 2010-04-09 02:27:15 -0700 #$ */ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * This document is licensed under the SGI Free Software B License Version + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . + */ + +#ifndef GL_APIENTRYP +# define GL_APIENTRYP GL_APIENTRY* +#endif + +/*------------------------------------------------------------------------* + * OES extension tokens + *------------------------------------------------------------------------*/ + +/* GL_OES_compressed_ETC1_RGB8_texture */ +#ifndef GL_OES_compressed_ETC1_RGB8_texture +#define GL_ETC1_RGB8_OES 0x8D64 +#endif + +/* GL_OES_compressed_paletted_texture */ +#ifndef GL_OES_compressed_paletted_texture +#define GL_PALETTE4_RGB8_OES 0x8B90 +#define GL_PALETTE4_RGBA8_OES 0x8B91 +#define GL_PALETTE4_R5_G6_B5_OES 0x8B92 +#define GL_PALETTE4_RGBA4_OES 0x8B93 +#define GL_PALETTE4_RGB5_A1_OES 0x8B94 +#define GL_PALETTE8_RGB8_OES 0x8B95 +#define GL_PALETTE8_RGBA8_OES 0x8B96 +#define GL_PALETTE8_R5_G6_B5_OES 0x8B97 +#define GL_PALETTE8_RGBA4_OES 0x8B98 +#define GL_PALETTE8_RGB5_A1_OES 0x8B99 +#endif + +/* GL_OES_depth24 */ +#ifndef GL_OES_depth24 +#define GL_DEPTH_COMPONENT24_OES 0x81A6 +#endif + +/* GL_OES_depth32 */ +#ifndef GL_OES_depth32 +#define GL_DEPTH_COMPONENT32_OES 0x81A7 +#endif + +/* GL_OES_depth_texture */ +/* No new tokens introduced by this extension. */ + +/* GL_OES_EGL_image */ +#ifndef GL_OES_EGL_image +typedef void* GLeglImageOES; +#endif + +/* GL_OES_element_index_uint */ +#ifndef GL_OES_element_index_uint +#define GL_UNSIGNED_INT 0x1405 +#endif + +/* GL_OES_get_program_binary */ +#ifndef GL_OES_get_program_binary +#define GL_PROGRAM_BINARY_LENGTH_OES 0x8741 +#define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE +#define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF +#endif + +/* GL_OES_mapbuffer */ +#ifndef GL_OES_mapbuffer +#define GL_WRITE_ONLY_OES 0x88B9 +#define GL_BUFFER_ACCESS_OES 0x88BB +#define GL_BUFFER_MAPPED_OES 0x88BC +#define GL_BUFFER_MAP_POINTER_OES 0x88BD +#endif + +/* GL_OES_packed_depth_stencil */ +#ifndef GL_OES_packed_depth_stencil +#define GL_DEPTH_STENCIL_OES 0x84F9 +#define GL_UNSIGNED_INT_24_8_OES 0x84FA +#define GL_DEPTH24_STENCIL8_OES 0x88F0 +#endif + +/* GL_OES_rgb8_rgba8 */ +#ifndef GL_OES_rgb8_rgba8 +#define GL_RGB8_OES 0x8051 +#define GL_RGBA8_OES 0x8058 +#endif + +/* GL_OES_standard_derivatives */ +#ifndef GL_OES_standard_derivatives +#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B +#endif + +/* GL_OES_stencil1 */ +#ifndef GL_OES_stencil1 +#define GL_STENCIL_INDEX1_OES 0x8D46 +#endif + +/* GL_OES_stencil4 */ +#ifndef GL_OES_stencil4 +#define GL_STENCIL_INDEX4_OES 0x8D47 +#endif + +/* GL_OES_texture_3D */ +#ifndef GL_OES_texture_3D +#define GL_TEXTURE_WRAP_R_OES 0x8072 +#define GL_TEXTURE_3D_OES 0x806F +#define GL_TEXTURE_BINDING_3D_OES 0x806A +#define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073 +#define GL_SAMPLER_3D_OES 0x8B5F +#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4 +#endif + +/* GL_OES_texture_float */ +/* No new tokens introduced by this extension. */ + +/* GL_OES_texture_float_linear */ +/* No new tokens introduced by this extension. */ + +/* GL_OES_texture_half_float */ +#ifndef GL_OES_texture_half_float +#define GL_HALF_FLOAT_OES 0x8D61 +#endif + +/* GL_OES_texture_half_float_linear */ +/* No new tokens introduced by this extension. */ + +/* GL_OES_texture_npot */ +/* No new tokens introduced by this extension. */ + +/* GL_OES_vertex_array_object */ +#ifndef GL_OES_vertex_array_object +#define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 +#endif + +/* GL_OES_vertex_half_float */ +/* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */ + +/* GL_OES_vertex_type_10_10_10_2 */ +#ifndef GL_OES_vertex_type_10_10_10_2 +#define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6 +#define GL_INT_10_10_10_2_OES 0x8DF7 +#endif + +/*------------------------------------------------------------------------* + * AMD extension tokens + *------------------------------------------------------------------------*/ + +/* GL_AMD_compressed_3DC_texture */ +#ifndef GL_AMD_compressed_3DC_texture +#define GL_3DC_X_AMD 0x87F9 +#define GL_3DC_XY_AMD 0x87FA +#endif + +/* GL_AMD_compressed_ATC_texture */ +#ifndef GL_AMD_compressed_ATC_texture +#define GL_ATC_RGB_AMD 0x8C92 +#define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 +#define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE +#endif + +/* GL_AMD_performance_monitor */ +#ifndef GL_AMD_performance_monitor +#define GL_COUNTER_TYPE_AMD 0x8BC0 +#define GL_COUNTER_RANGE_AMD 0x8BC1 +#define GL_UNSIGNED_INT64_AMD 0x8BC2 +#define GL_PERCENTAGE_AMD 0x8BC3 +#define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4 +#define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5 +#define GL_PERFMON_RESULT_AMD 0x8BC6 +#endif + +/* GL_AMD_program_binary_Z400 */ +#ifndef GL_AMD_program_binary_Z400 +#define GL_Z400_BINARY_AMD 0x8740 +#endif + +/*------------------------------------------------------------------------* + * EXT extension tokens + *------------------------------------------------------------------------*/ + +/* GL_EXT_blend_minmax */ +#ifndef GL_EXT_blend_minmax +#define GL_MIN_EXT 0x8007 +#define GL_MAX_EXT 0x8008 +#endif + +/* GL_EXT_discard_framebuffer */ +#ifndef GL_EXT_discard_framebuffer +#define GL_COLOR_EXT 0x1800 +#define GL_DEPTH_EXT 0x1801 +#define GL_STENCIL_EXT 0x1802 +#endif + +/* GL_EXT_multi_draw_arrays */ +/* No new tokens introduced by this extension. */ + +/* GL_EXT_read_format_bgra */ +#ifndef GL_EXT_read_format_bgra +#define GL_BGRA_EXT 0x80E1 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 +#define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 +#endif + +/* GL_EXT_texture_filter_anisotropic */ +#ifndef GL_EXT_texture_filter_anisotropic +#define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE +#define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF +#endif + +/* GL_EXT_texture_format_BGRA8888 */ +#ifndef GL_EXT_texture_format_BGRA8888 +#define GL_BGRA_EXT 0x80E1 +#endif + +/* GL_EXT_texture_type_2_10_10_10_REV */ +#ifndef GL_EXT_texture_type_2_10_10_10_REV +#define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 +#endif + +/* GL_EXT_texture_compression_dxt1 */ +#ifndef GL_EXT_texture_compression_dxt1 +#define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 +#define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 +#endif + +/*------------------------------------------------------------------------* + * IMG extension tokens + *------------------------------------------------------------------------*/ + +/* GL_IMG_program_binary */ +#ifndef GL_IMG_program_binary +#define GL_SGX_PROGRAM_BINARY_IMG 0x9130 +#endif + +/* GL_IMG_read_format */ +#ifndef GL_IMG_read_format +#define GL_BGRA_IMG 0x80E1 +#define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 +#endif + +/* GL_IMG_shader_binary */ +#ifndef GL_IMG_shader_binary +#define GL_SGX_BINARY_IMG 0x8C0A +#endif + +/* GL_IMG_texture_compression_pvrtc */ +#ifndef GL_IMG_texture_compression_pvrtc +#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 +#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 +#endif + +/* GL_IMG_multisampled_render_to_texture */ +#ifndef GL_IMG_multisampled_render_to_texture +#define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 +#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 +#define GL_MAX_SAMPLES_IMG 0x9135 +#define GL_TEXTURE_SAMPLES_IMG 0x9136 +#endif + +/*------------------------------------------------------------------------* + * NV extension tokens + *------------------------------------------------------------------------*/ + +/* GL_NV_fence */ +#ifndef GL_NV_fence +#define GL_ALL_COMPLETED_NV 0x84F2 +#define GL_FENCE_STATUS_NV 0x84F3 +#define GL_FENCE_CONDITION_NV 0x84F4 +#endif + +/* GL_NV_coverage_sample */ +#ifndef GL_NV_coverage_sample +#define GL_COVERAGE_COMPONENT_NV 0x8ED0 +#define GL_COVERAGE_COMPONENT4_NV 0x8ED1 +#define GL_COVERAGE_ATTACHMENT_NV 0x8ED2 +#define GL_COVERAGE_BUFFERS_NV 0x8ED3 +#define GL_COVERAGE_SAMPLES_NV 0x8ED4 +#define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5 +#define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6 +#define GL_COVERAGE_AUTOMATIC_NV 0x8ED7 +#define GL_COVERAGE_BUFFER_BIT_NV 0x8000 +#endif + +/* GL_NV_depth_nonlinear */ +#ifndef GL_NV_depth_nonlinear +#define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C +#endif + +/*------------------------------------------------------------------------* + * QCOM extension tokens + *------------------------------------------------------------------------*/ + +/* GL_QCOM_driver_control */ +/* No new tokens introduced by this extension. */ + +/* GL_QCOM_extended_get */ +#ifndef GL_QCOM_extended_get +#define GL_TEXTURE_WIDTH_QCOM 0x8BD2 +#define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 +#define GL_TEXTURE_DEPTH_QCOM 0x8BD4 +#define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 +#define GL_TEXTURE_FORMAT_QCOM 0x8BD6 +#define GL_TEXTURE_TYPE_QCOM 0x8BD7 +#define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 +#define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 +#define GL_TEXTURE_TARGET_QCOM 0x8BDA +#define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB +#define GL_STATE_RESTORE 0x8BDC +#endif + +/* GL_QCOM_extended_get2 */ +/* No new tokens introduced by this extension. */ + +/* GL_QCOM_perfmon_global_mode */ +#ifndef GL_QCOM_perfmon_global_mode +#define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 +#endif + +/* GL_QCOM_writeonly_rendering */ +#ifndef GL_QCOM_writeonly_rendering +#define GL_WRITEONLY_RENDERING_QCOM 0x8823 +#endif + +/* GL_QCOM_tiled_rendering */ +#ifndef GL_QCOM_tiled_rendering +#define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 +#define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 +#define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 +#define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 +#define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 +#define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 +#define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 +#define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 +#define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 +#define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 +#define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 +#define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 +#define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 +#define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 +#define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 +#define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 +#define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 +#define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 +#define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 +#define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 +#define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 +#define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 +#define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 +#define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 +#define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 +#define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 +#define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 +#define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 +#define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 +#define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 +#define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 +#define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 +#endif + +/*------------------------------------------------------------------------* + * End of extension tokens, start of corresponding extension functions + *------------------------------------------------------------------------*/ + +/*------------------------------------------------------------------------* + * OES extension functions + *------------------------------------------------------------------------*/ + +/* GL_OES_compressed_ETC1_RGB8_texture */ +#ifndef GL_OES_compressed_ETC1_RGB8_texture +#define GL_OES_compressed_ETC1_RGB8_texture 1 +#endif + +/* GL_OES_compressed_paletted_texture */ +#ifndef GL_OES_compressed_paletted_texture +#define GL_OES_compressed_paletted_texture 1 +#endif + +/* GL_OES_depth24 */ +#ifndef GL_OES_depth24 +#define GL_OES_depth24 1 +#endif + +/* GL_OES_depth32 */ +#ifndef GL_OES_depth32 +#define GL_OES_depth32 1 +#endif + +/* GL_OES_depth_texture */ +#ifndef GL_OES_depth_texture +#define GL_OES_depth_texture 1 +#endif + +/* GL_OES_EGL_image */ +#ifndef GL_OES_EGL_image +#define GL_OES_EGL_image 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); +GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); +#endif +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); +typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); +#endif + +/* GL_OES_element_index_uint */ +#ifndef GL_OES_element_index_uint +#define GL_OES_element_index_uint 1 +#endif + +/* GL_OES_fbo_render_mipmap */ +#ifndef GL_OES_fbo_render_mipmap +#define GL_OES_fbo_render_mipmap 1 +#endif + +/* GL_OES_fragment_precision_high */ +#ifndef GL_OES_fragment_precision_high +#define GL_OES_fragment_precision_high 1 +#endif + +/* GL_OES_get_program_binary */ +#ifndef GL_OES_get_program_binary +#define GL_OES_get_program_binary 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); +GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); +#endif +typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); +typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); +#endif + +/* GL_OES_mapbuffer */ +#ifndef GL_OES_mapbuffer +#define GL_OES_mapbuffer 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); +GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); +GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params); +#endif +typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); +typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); +typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params); +#endif + +/* GL_OES_packed_depth_stencil */ +#ifndef GL_OES_packed_depth_stencil +#define GL_OES_packed_depth_stencil 1 +#endif + +/* GL_OES_rgb8_rgba8 */ +#ifndef GL_OES_rgb8_rgba8 +#define GL_OES_rgb8_rgba8 1 +#endif + +/* GL_OES_standard_derivatives */ +#ifndef GL_OES_standard_derivatives +#define GL_OES_standard_derivatives 1 +#endif + +/* GL_OES_stencil1 */ +#ifndef GL_OES_stencil1 +#define GL_OES_stencil1 1 +#endif + +/* GL_OES_stencil4 */ +#ifndef GL_OES_stencil4 +#define GL_OES_stencil4 1 +#endif + +/* GL_OES_texture_3D */ +#ifndef GL_OES_texture_3D +#define GL_OES_texture_3D 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels); +GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels); +GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); +GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data); +GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +#endif +typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels); +typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels); +typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); +typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data); +typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); +#endif + +/* GL_OES_texture_float */ +#ifndef GL_OES_texture_float +#define GL_OES_texture_float 1 +#endif + +/* GL_OES_texture_float_linear */ +#ifndef GL_OES_texture_float_linear +#define GL_OES_texture_float_linear 1 +#endif + +/* GL_OES_texture_half_float */ +#ifndef GL_OES_texture_half_float +#define GL_OES_texture_half_float 1 +#endif + +/* GL_OES_texture_half_float_linear */ +#ifndef GL_OES_texture_half_float_linear +#define GL_OES_texture_half_float_linear 1 +#endif + +/* GL_OES_texture_npot */ +#ifndef GL_OES_texture_npot +#define GL_OES_texture_npot 1 +#endif + +/* GL_OES_vertex_array_object */ +#ifndef GL_OES_vertex_array_object +#define GL_OES_vertex_array_object 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array); +GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); +GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); +GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); +#endif +typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); +typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); +typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); +typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); +#endif + +/* GL_OES_vertex_half_float */ +#ifndef GL_OES_vertex_half_float +#define GL_OES_vertex_half_float 1 +#endif + +/* GL_OES_vertex_type_10_10_10_2 */ +#ifndef GL_OES_vertex_type_10_10_10_2 +#define GL_OES_vertex_type_10_10_10_2 1 +#endif + +/*------------------------------------------------------------------------* + * AMD extension functions + *------------------------------------------------------------------------*/ + +/* GL_AMD_compressed_3DC_texture */ +#ifndef GL_AMD_compressed_3DC_texture +#define GL_AMD_compressed_3DC_texture 1 +#endif + +/* GL_AMD_compressed_ATC_texture */ +#ifndef GL_AMD_compressed_ATC_texture +#define GL_AMD_compressed_ATC_texture 1 +#endif + +/* AMD_performance_monitor */ +#ifndef GL_AMD_performance_monitor +#define GL_AMD_performance_monitor 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups); +GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); +GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data); +GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors); +GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors); +GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); +GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor); +GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor); +GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); +#endif +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups); +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data); +typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); +typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); +typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); +typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); +typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); +typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); +#endif + +/* GL_AMD_program_binary_Z400 */ +#ifndef GL_AMD_program_binary_Z400 +#define GL_AMD_program_binary_Z400 1 +#endif + +/*------------------------------------------------------------------------* + * EXT extension functions + *------------------------------------------------------------------------*/ + +/* GL_EXT_blend_minmax */ +#ifndef GL_EXT_blend_minmax +#define GL_EXT_blend_minmax 1 +#endif + +/* GL_EXT_discard_framebuffer */ +#ifndef GL_EXT_discard_framebuffer +#define GL_EXT_discard_framebuffer 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); +#endif +typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); +#endif + +#ifndef GL_EXT_multi_draw_arrays +#define GL_EXT_multi_draw_arrays 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei); +GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei); +#endif /* GL_GLEXT_PROTOTYPES */ +typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); +typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); +#endif + +/* GL_EXT_read_format_bgra */ +#ifndef GL_EXT_read_format_bgra +#define GL_EXT_read_format_bgra 1 +#endif + +/* GL_EXT_texture_filter_anisotropic */ +#ifndef GL_EXT_texture_filter_anisotropic +#define GL_EXT_texture_filter_anisotropic 1 +#endif + +/* GL_EXT_texture_format_BGRA8888 */ +#ifndef GL_EXT_texture_format_BGRA8888 +#define GL_EXT_texture_format_BGRA8888 1 +#endif + +/* GL_EXT_texture_type_2_10_10_10_REV */ +#ifndef GL_EXT_texture_type_2_10_10_10_REV +#define GL_EXT_texture_type_2_10_10_10_REV 1 +#endif + +/* GL_EXT_texture_compression_dxt1 */ +#ifndef GL_EXT_texture_compression_dxt1 +#define GL_EXT_texture_compression_dxt1 1 +#endif + +/*------------------------------------------------------------------------* + * IMG extension functions + *------------------------------------------------------------------------*/ + +/* GL_IMG_program_binary */ +#ifndef GL_IMG_program_binary +#define GL_IMG_program_binary 1 +#endif + +/* GL_IMG_read_format */ +#ifndef GL_IMG_read_format +#define GL_IMG_read_format 1 +#endif + +/* GL_IMG_shader_binary */ +#ifndef GL_IMG_shader_binary +#define GL_IMG_shader_binary 1 +#endif + +/* GL_IMG_texture_compression_pvrtc */ +#ifndef GL_IMG_texture_compression_pvrtc +#define GL_IMG_texture_compression_pvrtc 1 +#endif + +/* GL_IMG_multisampled_render_to_texture */ +#ifndef GL_IMG_multisampled_render_to_texture +#define GL_IMG_multisampled_render_to_texture 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); +GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); +#endif +typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); +typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); +#endif + +/*------------------------------------------------------------------------* + * NV extension functions + *------------------------------------------------------------------------*/ + +/* GL_NV_fence */ +#ifndef GL_NV_fence +#define GL_NV_fence 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); +GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); +GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint); +GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint); +GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); +GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint); +GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum); +#endif +typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); +typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); +typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); +typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); +typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); +typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); +typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); +#endif + +/* GL_NV_coverage_sample */ +#ifndef GL_NV_coverage_sample +#define GL_NV_coverage_sample 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask); +GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation); +#endif +typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask); +typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation); +#endif + +/* GL_NV_depth_nonlinear */ +#ifndef GL_NV_depth_nonlinear +#define GL_NV_depth_nonlinear 1 +#endif + +/*------------------------------------------------------------------------* + * QCOM extension functions + *------------------------------------------------------------------------*/ + +/* GL_QCOM_driver_control */ +#ifndef GL_QCOM_driver_control +#define GL_QCOM_driver_control 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); +GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); +GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); +GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); +#endif +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); +typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); +typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); +typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); +#endif + +/* GL_QCOM_extended_get */ +#ifndef GL_QCOM_extended_get +#define GL_QCOM_extended_get 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); +GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); +GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); +GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); +GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); +GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); +GL_APICALL void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels); +GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); +#endif +typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); +typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); +typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); +typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); +typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); +typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels); +typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); +#endif + +/* GL_QCOM_extended_get2 */ +#ifndef GL_QCOM_extended_get2 +#define GL_QCOM_extended_get2 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); +GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); +GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); +GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); +#endif +typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); +typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); +typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); +#endif + +/* GL_QCOM_perfmon_global_mode */ +#ifndef GL_QCOM_perfmon_global_mode +#define GL_QCOM_perfmon_global_mode 1 +#endif + +/* GL_QCOM_writeonly_rendering */ +#ifndef GL_QCOM_writeonly_rendering +#define GL_QCOM_writeonly_rendering 1 +#endif + +/* GL_QCOM_tiled_rendering */ +#ifndef GL_QCOM_tiled_rendering +#define GL_QCOM_tiled_rendering 1 +#ifdef GL_GLEXT_PROTOTYPES +GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); +GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); +#endif +typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); +typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __gl2ext_h_ */ diff --git a/src/native/common/GLES2/gl2extimg.h b/src/native/common/GLES2/gl2extimg.h new file mode 100644 index 00000000..d9c76dab --- /dev/null +++ b/src/native/common/GLES2/gl2extimg.h @@ -0,0 +1,51 @@ +#ifndef __gl2extimg_h_ +#define __gl2extimg_h_ + +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/*------------------------------------------------------------------------* + * IMG extension tokens + *------------------------------------------------------------------------*/ + +/* GL_IMG_binary_shader */ +#ifndef GL_IMG_binary_shader +#define GL_SGX_BINARY_IMG 0x8C0A +#endif + +/* GL_IMG_texture_compression_pvrtc */ +#ifndef GL_IMG_texture_compression_pvrtc +#define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 +#define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 +#define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 +#define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 +#endif + + +/* GL_IMG_texture_format_BGRA8888 */ +#define GL_BGRA 0x80E1 + + +/*------------------------------------------------------------------------* + * IMG extension functions + *------------------------------------------------------------------------*/ + +/* GL_IMG_binary_shader */ +#ifndef GL_IMG_binary_shader +#define GL_IMG_binary_shader 1 +#endif + +/* GL_IMG_texture_compression_pvrtc */ +#ifndef GL_IMG_texture_compression_pvrtc +#define GL_IMG_texture_compression_pvrtc 1 +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* __gl2extimg_h_ */ diff --git a/src/native/common/GLES2/gl2platform.h b/src/native/common/GLES2/gl2platform.h new file mode 100644 index 00000000..c9fa3c4d --- /dev/null +++ b/src/native/common/GLES2/gl2platform.h @@ -0,0 +1,30 @@ +#ifndef __gl2platform_h_ +#define __gl2platform_h_ + +/* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */ + +/* + * This document is licensed under the SGI Free Software B License Version + * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . + */ + +/* Platform-specific types and definitions for OpenGL ES 2.X gl2.h + * + * Adopters may modify khrplatform.h and this file to suit their platform. + * You are encouraged to submit all modifications to the Khronos group so that + * they can be included in future versions of this file. Please submit changes + * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla) + * by filing a bug against product "OpenGL-ES" component "Registry". + */ + +#include + +#ifndef GL_APICALL +#define GL_APICALL KHRONOS_APICALL +#endif + +#ifndef GL_APIENTRY +#define GL_APIENTRY KHRONOS_APIENTRY +#endif + +#endif /* __gl2platform_h_ */ diff --git a/src/native/common/KHR/khrplatform.h b/src/native/common/KHR/khrplatform.h new file mode 100644 index 00000000..8ec0d199 --- /dev/null +++ b/src/native/common/KHR/khrplatform.h @@ -0,0 +1,269 @@ +#ifndef __khrplatform_h_ +#define __khrplatform_h_ + +/* +** Copyright (c) 2008-2009 The Khronos Group Inc. +** +** Permission is hereby granted, free of charge, to any person obtaining a +** copy of this software and/or associated documentation files (the +** "Materials"), to deal in the Materials without restriction, including +** without limitation the rights to use, copy, modify, merge, publish, +** distribute, sublicense, and/or sell copies of the Materials, and to +** permit persons to whom the Materials are furnished to do so, subject to +** the following conditions: +** +** The above copyright notice and this permission notice shall be included +** in all copies or substantial portions of the Materials. +** +** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. +*/ + +/* Khronos platform-specific types and definitions. + * + * $Revision: 9356 $ on $Date: 2009-10-21 02:52:25 -0700 (Wed, 21 Oct 2009) $ + * + * Adopters may modify this file to suit their platform. Adopters are + * encouraged to submit platform specific modifications to the Khronos + * group so that they can be included in future versions of this file. + * Please submit changes by sending them to the public Khronos Bugzilla + * (http://khronos.org/bugzilla) by filing a bug against product + * "Khronos (general)" component "Registry". + * + * A predefined template which fills in some of the bug fields can be + * reached using http://tinyurl.com/khrplatform-h-bugreport, but you + * must create a Bugzilla login first. + * + * + * See the Implementer's Guidelines for information about where this file + * should be located on your system and for more details of its use: + * http://www.khronos.org/registry/implementers_guide.pdf + * + * This file should be included as + * #include + * by Khronos client API header files that use its types and defines. + * + * The types in khrplatform.h should only be used to define API-specific types. + * + * Types defined in khrplatform.h: + * khronos_int8_t signed 8 bit + * khronos_uint8_t unsigned 8 bit + * khronos_int16_t signed 16 bit + * khronos_uint16_t unsigned 16 bit + * khronos_int32_t signed 32 bit + * khronos_uint32_t unsigned 32 bit + * khronos_int64_t signed 64 bit + * khronos_uint64_t unsigned 64 bit + * khronos_intptr_t signed same number of bits as a pointer + * khronos_uintptr_t unsigned same number of bits as a pointer + * khronos_ssize_t signed size + * khronos_usize_t unsigned size + * khronos_float_t signed 32 bit floating point + * khronos_time_ns_t unsigned 64 bit time in nanoseconds + * khronos_utime_nanoseconds_t unsigned time interval or absolute time in + * nanoseconds + * khronos_stime_nanoseconds_t signed time interval in nanoseconds + * khronos_boolean_enum_t enumerated boolean type. This should + * only be used as a base type when a client API's boolean type is + * an enum. Client APIs which use an integer or other type for + * booleans cannot use this as the base type for their boolean. + * + * Tokens defined in khrplatform.h: + * + * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values. + * + * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0. + * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0. + * + * Calling convention macros defined in this file: + * KHRONOS_APICALL + * KHRONOS_APIENTRY + * KHRONOS_APIATTRIBUTES + * + * These may be used in function prototypes as: + * + * KHRONOS_APICALL void KHRONOS_APIENTRY funcname( + * int arg1, + * int arg2) KHRONOS_APIATTRIBUTES; + */ + +/*------------------------------------------------------------------------- + * Definition of KHRONOS_APICALL + *------------------------------------------------------------------------- + * This precedes the return type of the function in the function prototype. + */ +#if defined(_WIN32) && !defined(__SCITECH_SNAP__) +# define KHRONOS_APICALL __declspec(dllimport) +#elif defined (__SYMBIAN32__) +# define KHRONOS_APICALL IMPORT_C +#else +# define KHRONOS_APICALL +#endif + +/*------------------------------------------------------------------------- + * Definition of KHRONOS_APIENTRY + *------------------------------------------------------------------------- + * This follows the return type of the function and precedes the function + * name in the function prototype. + */ +#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__) + /* Win32 but not WinCE */ +# define KHRONOS_APIENTRY __stdcall +#else +# define KHRONOS_APIENTRY +#endif + +/*------------------------------------------------------------------------- + * Definition of KHRONOS_APIATTRIBUTES + *------------------------------------------------------------------------- + * This follows the closing parenthesis of the function prototype arguments. + */ +#if defined (__ARMCC_2__) +#define KHRONOS_APIATTRIBUTES __softfp +#else +#define KHRONOS_APIATTRIBUTES +#endif + +/*------------------------------------------------------------------------- + * basic type definitions + *-----------------------------------------------------------------------*/ +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) + + +/* + * Using + */ +#include +typedef int32_t khronos_int32_t; +typedef uint32_t khronos_uint32_t; +typedef int64_t khronos_int64_t; +typedef uint64_t khronos_uint64_t; +#define KHRONOS_SUPPORT_INT64 1 +#define KHRONOS_SUPPORT_FLOAT 1 + +#elif defined(__VMS ) || defined(__sgi) + +/* + * Using + */ +#include +typedef int32_t khronos_int32_t; +typedef uint32_t khronos_uint32_t; +typedef int64_t khronos_int64_t; +typedef uint64_t khronos_uint64_t; +#define KHRONOS_SUPPORT_INT64 1 +#define KHRONOS_SUPPORT_FLOAT 1 + +#elif defined(_WIN32) && !defined(__SCITECH_SNAP__) + +/* + * Win32 + */ +typedef __int32 khronos_int32_t; +typedef unsigned __int32 khronos_uint32_t; +typedef __int64 khronos_int64_t; +typedef unsigned __int64 khronos_uint64_t; +#define KHRONOS_SUPPORT_INT64 1 +#define KHRONOS_SUPPORT_FLOAT 1 + +#elif defined(__sun__) || defined(__digital__) + +/* + * Sun or Digital + */ +typedef int khronos_int32_t; +typedef unsigned int khronos_uint32_t; +#if defined(__arch64__) || defined(_LP64) +typedef long int khronos_int64_t; +typedef unsigned long int khronos_uint64_t; +#else +typedef long long int khronos_int64_t; +typedef unsigned long long int khronos_uint64_t; +#endif /* __arch64__ */ +#define KHRONOS_SUPPORT_INT64 1 +#define KHRONOS_SUPPORT_FLOAT 1 + +#elif 0 + +/* + * Hypothetical platform with no float or int64 support + */ +typedef int khronos_int32_t; +typedef unsigned int khronos_uint32_t; +#define KHRONOS_SUPPORT_INT64 0 +#define KHRONOS_SUPPORT_FLOAT 0 + +#else + +/* + * Generic fallback + */ +#include +typedef int32_t khronos_int32_t; +typedef uint32_t khronos_uint32_t; +typedef int64_t khronos_int64_t; +typedef uint64_t khronos_uint64_t; +#define KHRONOS_SUPPORT_INT64 1 +#define KHRONOS_SUPPORT_FLOAT 1 + +#endif + + +/* + * Types that are (so far) the same on all platforms + */ +typedef signed char khronos_int8_t; +typedef unsigned char khronos_uint8_t; +typedef signed short int khronos_int16_t; +typedef unsigned short int khronos_uint16_t; +typedef signed long int khronos_intptr_t; +typedef unsigned long int khronos_uintptr_t; +typedef signed long int khronos_ssize_t; +typedef unsigned long int khronos_usize_t; + +#if KHRONOS_SUPPORT_FLOAT +/* + * Float type + */ +typedef float khronos_float_t; +#endif + +#if KHRONOS_SUPPORT_INT64 +/* Time types + * + * These types can be used to represent a time interval in nanoseconds or + * an absolute Unadjusted System Time. Unadjusted System Time is the number + * of nanoseconds since some arbitrary system event (e.g. since the last + * time the system booted). The Unadjusted System Time is an unsigned + * 64 bit value that wraps back to 0 every 584 years. Time intervals + * may be either signed or unsigned. + */ +typedef khronos_uint64_t khronos_utime_nanoseconds_t; +typedef khronos_int64_t khronos_stime_nanoseconds_t; +#endif + +/* + * Dummy value used to pad enum types to 32 bits. + */ +#ifndef KHRONOS_MAX_ENUM +#define KHRONOS_MAX_ENUM 0x7FFFFFFF +#endif + +/* + * Enumerated boolean type + * + * Values other than zero should be considered to be true. Therefore + * comparisons should not be made against KHRONOS_TRUE. + */ +typedef enum { + KHRONOS_FALSE = 0, + KHRONOS_TRUE = 1, + KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM +} khronos_boolean_enum_t; + +#endif /* __khrplatform_h_ */ diff --git a/src/native/common/extgl.c b/src/native/common/opengl/extgl.c similarity index 100% rename from src/native/common/extgl.c rename to src/native/common/opengl/extgl.c diff --git a/src/native/common/extgl.h b/src/native/common/opengl/extgl.h similarity index 100% rename from src/native/common/extgl.h rename to src/native/common/opengl/extgl.h diff --git a/src/native/common/extgl_types.h b/src/native/common/opengl/extgl_types.h similarity index 100% rename from src/native/common/extgl_types.h rename to src/native/common/opengl/extgl_types.h diff --git a/src/native/common/org_lwjgl_opengl_CallbackUtil.c b/src/native/common/opengl/org_lwjgl_opengl_CallbackUtil.c similarity index 100% rename from src/native/common/org_lwjgl_opengl_CallbackUtil.c rename to src/native/common/opengl/org_lwjgl_opengl_CallbackUtil.c diff --git a/src/native/common/org_lwjgl_opengl_GLContext.c b/src/native/common/opengl/org_lwjgl_opengl_GLContext.c similarity index 100% rename from src/native/common/org_lwjgl_opengl_GLContext.c rename to src/native/common/opengl/org_lwjgl_opengl_GLContext.c diff --git a/src/native/common/opengles/extgl.c b/src/native/common/opengles/extgl.c new file mode 100644 index 00000000..3da9bd2e --- /dev/null +++ b/src/native/common/opengles/extgl.c @@ -0,0 +1,83 @@ +/* ---------------------------------------------------------------------------- +Copyright (c) 2001-2002, Lev Povalahev +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * The name of the author may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE. +------------------------------------------------------------------------------*/ +/* + Lev Povalahev + + levp@gmx.net + + http://www.uni-karlsruhe.de/~uli2/ + +*/ + +#include +#include +#include "extgl.h" +#include "common_tools.h" + +void extgl_InitializeClass(JNIEnv *env, jclass clazz, int num_functions, JavaMethodAndExtFunction *functions) { + ext_InitializeClass(env, clazz, &extgl_GetProcAddress, num_functions, functions); +} + +bool extgl_InitializeFunctions(int num_functions, ExtFunction *functions) { + return ext_InitializeFunctions(&extgl_GetProcAddress, num_functions, functions); +} + +bool extgl_QueryExtension(const char *extensions, const char *name) +{ + const char *start; + char *where, *terminator; + + if (extensions == NULL) { + printfDebug("NULL extension string\n"); + return false; + } + + /* Extension names should not have spaces. */ + where = (char *) strchr(name, ' '); + if (where || *name == '\0') + return false; + + /* It takes a bit of care to be fool-proof about parsing the + OpenGL extensions string. Don't be fooled by sub-strings, + etc. */ + start = extensions; + for (;;) + { + where = (char *) strstr((const char *) start, name); + if (!where) + break; + terminator = where + strlen(name); + if (where == start || *(where - 1) == ' ') + if (*terminator == ' ' || *terminator == '\0') { + return true; + } + start = terminator; + } + return false; + +} + diff --git a/src/native/common/opengles/extgl.h b/src/native/common/opengles/extgl.h new file mode 100644 index 00000000..e9a7f880 --- /dev/null +++ b/src/native/common/opengles/extgl.h @@ -0,0 +1,89 @@ +/* Small parts were taken from Mesa's glext.h and gl.h, here's the license: */ + +/* + * Mesa 3-D graphics library + * Version: 6.5.1 + * + * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included + * in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN + * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +/* Some parts derived from files copyright (c) 2001-2002 Lev Povalahev under this license: */ + +/* ---------------------------------------------------------------------------- +Copyright (c) 2002, Lev Povalahev +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * The name of the author may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE. +------------------------------------------------------------------------------*/ +/* + GL_draw_range_elements support added by Benjamin Karaban + + Lev Povalahev contact information: + + levp@gmx.net + + http://www.uni-karlsruhe.de/~uli2/ +*/ + +#ifndef __EXTGL_H__ +#define __EXTGL_H__ + +#include + +#include +#include + +#include "common_tools.h" + +#include +//#include +#include + +#include "extgl_types.h" + +/* initializes everything, call this right after the rc is created. the function returns true if successful */ +extern bool extgl_Open(JNIEnv *env); +extern void extgl_Close(void); +extern void extgl_InitializeClass(JNIEnv *env, jclass clazz, int num_functions, JavaMethodAndExtFunction *functions); +extern bool extgl_InitializeFunctions(int num_functions, ExtFunction *functions); +extern bool extgl_QueryExtension(const char *extensions, const char *name); +extern void *extgl_GetProcAddress(const char *name); + +#endif /* __EXTGL_H__ */ diff --git a/src/native/common/opengles/extgl_egl.c b/src/native/common/opengles/extgl_egl.c new file mode 100644 index 00000000..f2c782be --- /dev/null +++ b/src/native/common/opengles/extgl_egl.c @@ -0,0 +1,106 @@ +/* +* Copyright (c) 2002-2011 LWJGL Project +* All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are +* met: +* +* * Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* +* * Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* +* * Neither the name of 'LWJGL' nor the names of +* its contributors may be used to endorse or promote products derived +* from this software without specific prior written permission. +* +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR +* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ +#include "extgl_egl.h" + +static void extgl_InitEGLKHRLockSurface(EGLExtensions *extensions) { + ExtFunction functions[] = { + { "eglLockSurfaceKHR", (void *)&extensions->eglLockSurfaceKHR }, + { "eglUnlockSurfaceKHR", (void *)&extensions->eglUnlockSurfaceKHR } + }; + if ( extensions->EGLKHRLockSurface ) + extensions->EGLKHRLockSurface = extgl_InitializeFunctions(sizeof(functions)/sizeof(ExtFunction), functions); +} + +static void extgl_InitEGLKHRImageBase(EGLExtensions *extensions) { + ExtFunction functions[] = { + { "eglCreateImageKHR", (void *)&extensions->eglCreateImageKHR }, + { "eglDestroyImageKHR", (void *)&extensions->eglDestroyImageKHR } + }; + if ( extensions->EGLKHRImageBase ) + extensions->EGLKHRImageBase = extgl_InitializeFunctions(sizeof(functions)/sizeof(ExtFunction), functions); +} + +static void extgl_InitEGLKHRFenceSync(EGLExtensions *extensions) { + ExtFunction functions[] = { + { "eglCreateSyncKHR", (void *)&extensions->eglCreateSyncKHR }, + { "eglDestroySyncKHR", (void *)&extensions->eglDestroySyncKHR }, + { "eglClientWaitSyncKHR", (void *)&extensions->eglClientWaitSyncKHR }, + { "eglSignalSyncKHR", (void *)&extensions->eglSignalSyncKHR }, + { "eglGetSyncAttribKHR", (void *)&extensions->eglGetSyncAttribKHR } + }; + if (extensions->EGLKHRFenceSync) + extensions->EGLKHRFenceSync = extgl_InitializeFunctions(sizeof(functions)/sizeof(ExtFunction), functions); +} + +static void extgl_InitEGLNVSync(EGLExtensions *extensions) { + ExtFunction functions[] = { + { "eglCreateFenceSyncNV", (void *)&extensions->eglCreateFenceSyncNV }, + { "eglDestroySyncNV", (void *)&extensions->eglDestroySyncNV }, + { "eglFenceNV", (void *)&extensions->eglFenceNV }, + { "eglClientWaitSyncNV", (void *)&extensions->eglClientWaitSyncNV }, + { "eglSignalSyncNV", (void *)&extensions->eglSignalSyncNV }, + { "eglGetSyncAttribNV", (void *)&extensions->eglGetSyncAttribNV } + + }; + if (extensions->EGLNVSync) + extensions->EGLNVSync = extgl_InitializeFunctions(sizeof(functions)/sizeof(ExtFunction), functions); +} + +static void extgl_InitSupportedEGLExtensions(EGLDisplay dpy, EGLExtensions *extensions) { + const char *extension_string = eglQueryString(dpy, EGL_EXTENSIONS); + + extensions->EGLKHRConfigAttribs = extgl_QueryExtension(extension_string, "EGL_KHR_config_attribs"); + extensions->EGLKHRLockSurface = extgl_QueryExtension(extension_string, "EGL_KHR_lock_surface"); + extensions->EGLKHRImage = extgl_QueryExtension(extension_string, "EGL_KHR_image"); + extensions->EGLKHRVGParentImage = extgl_QueryExtension(extension_string, "EGL_KHR_vg_parent_image"); + extensions->EGLKHRGLTexture2DImage = extgl_QueryExtension(extension_string, "EGL_KHR_gl_texture_2D_image"); + extensions->EGLKHRGLTextureCubemapImage = extgl_QueryExtension(extension_string, "EGL_KHR_gl_texture_cubemap_image"); + extensions->EGLKHRGLTexture3DImage = extgl_QueryExtension(extension_string, "EGL_KHR_gl_texture_3D_image"); + extensions->EGLKHRGLRenderbufferImage = extgl_QueryExtension(extension_string, "EGL_KHR_gl_renderbuffer_image"); + extensions->EGLKHRReusableSync = extgl_QueryExtension(extension_string, "EGL_KHR_reusable_sync"); + extensions->EGLKHRImageBase = extgl_QueryExtension(extension_string, "EGL_KHR_image_base"); + extensions->EGLKHRImagePixmap = extgl_QueryExtension(extension_string, "EGL_KHR_image_pixmap"); + extensions->EGLIMGContextPriority = extgl_QueryExtension(extension_string, "EGL_IMG_context_priority"); + extensions->EGLNVCoverageSample = extgl_QueryExtension(extension_string, "EGL_NV_coverage_sample"); + extensions->EGLNVDepthNonlinear = extgl_QueryExtension(extension_string, "EGL_NV_depth_nonlinear"); + extensions->EGLNVSync = extgl_QueryExtension(extension_string, "EGL_NV_sync"); + extensions->EGLKHRFenceSync = extgl_QueryExtension(extension_string, "EGL_KHR_fence_sync"); +} + +void extgl_InitEGL(EGLDisplay dpy, EGLExtensions *extensions) { + extgl_InitSupportedEGLExtensions(dpy, extensions); + + extgl_InitEGLKHRLockSurface(extensions); + extgl_InitEGLKHRImageBase(extensions); + extgl_InitEGLKHRFenceSync(extensions); + extgl_InitEGLNVSync(extensions); +} \ No newline at end of file diff --git a/src/native/common/opengles/extgl_egl.h b/src/native/common/opengles/extgl_egl.h new file mode 100644 index 00000000..e8711d49 --- /dev/null +++ b/src/native/common/opengles/extgl_egl.h @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef _EXTGL_EGL_H +#define _EXTGL_EGL_H + +#include "extgl.h" +#include "common_tools.h" + +#include + +typedef struct { + bool EGLKHRConfigAttribs; + bool EGLKHRLockSurface; + bool EGLKHRImage; + bool EGLKHRVGParentImage; + bool EGLKHRGLTexture2DImage; + bool EGLKHRGLTextureCubemapImage; + bool EGLKHRGLTexture3DImage; + bool EGLKHRGLRenderbufferImage; + bool EGLKHRFenceSync; + bool EGLKHRReusableSync; + bool EGLKHRImageBase; + bool EGLKHRImagePixmap; + bool EGLIMGContextPriority; + bool EGLNVCoverageSample; + bool EGLNVDepthNonlinear; + bool EGLNVSync; + + PFNEGLLOCKSURFACEKHRPROC eglLockSurfaceKHR; + PFNEGLUNLOCKSURFACEKHRPROC eglUnlockSurfaceKHR; + + PFNEGLCREATEIMAGEKHRPROC eglCreateImageKHR; + PFNEGLDESTROYIMAGEKHRPROC eglDestroyImageKHR; + + PFNEGLCREATESYNCKHRPROC eglCreateSyncKHR; + PFNEGLDESTROYSYNCKHRPROC eglDestroySyncKHR; + PFNEGLCLIENTWAITSYNCKHRPROC eglClientWaitSyncKHR; + PFNEGLSIGNALSYNCKHRPROC eglSignalSyncKHR; + PFNEGLGETSYNCATTRIBKHRPROC eglGetSyncAttribKHR; + + PFNEGLCREATEFENCESYNCNVPROC eglCreateFenceSyncNV; + PFNEGLDESTROYSYNCNVPROC eglDestroySyncNV; + PFNEGLFENCENVPROC eglFenceNV; + PFNEGLCLIENTWAITSYNCNVPROC eglClientWaitSyncNV; + PFNEGLSIGNALSYNCNVPROC eglSignalSyncNV; + PFNEGLGETSYNCATTRIBNVPROC eglGetSyncAttribNV; +} EGLExtensions; + +extern void extgl_InitEGL(EGLDisplay dpy, EGLExtensions *extensions); + +#endif diff --git a/src/native/common/opengles/extgl_types.h b/src/native/common/opengles/extgl_types.h new file mode 100644 index 00000000..ec99795a --- /dev/null +++ b/src/native/common/opengles/extgl_types.h @@ -0,0 +1,70 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#ifndef _EXTGL_TYPES_H +#define _EXTGL_TYPES_H + +#include + +/*------------------------------------------------------------------------- + * Data type definitions + *-----------------------------------------------------------------------*/ + +typedef void GLvoid; +typedef char GLchar; +typedef unsigned int GLenum; +typedef unsigned char GLboolean; +typedef unsigned int GLbitfield; +typedef khronos_int8_t GLbyte; +typedef short GLshort; +typedef int GLint; +typedef int GLsizei; +typedef khronos_uint8_t GLubyte; +typedef unsigned short GLushort; +typedef unsigned int GLuint; +typedef khronos_float_t GLfloat; +typedef khronos_float_t GLclampf; +typedef khronos_int32_t GLfixed; + +/* GL types for handling large vertex buffer objects */ +typedef khronos_intptr_t GLintptr; +typedef khronos_ssize_t GLsizeiptr; + +typedef khronos_int64_t EGLint64NV; +typedef khronos_uint64_t EGLuint64NV; + +// EGL_image_OES +typedef void* GLeglImageOES; + +// We need this to compile OpenCL +typedef struct __GLsync * GLsync; + +#endif \ No newline at end of file diff --git a/src/native/common/opengles/org_lwjgl_opengles_EGL.c b/src/native/common/opengles/org_lwjgl_opengles_EGL.c new file mode 100644 index 00000000..151894c2 --- /dev/null +++ b/src/native/common/opengles/org_lwjgl_opengles_EGL.c @@ -0,0 +1,211 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "common_tools.h" +#include "org_lwjgl_opengles_EGL.h" +#include "extgl_egl.h" + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengles_EGL_eglGetError(JNIEnv *env, jclass clazz) { + return eglGetError(); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglGetDisplay(JNIEnv *env, jclass clazz, jlong display_id) { + return (intptr_t)eglGetDisplay((EGLNativeDisplayType)(intptr_t)display_id); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglInitialize(JNIEnv *env, jclass clazz, jlong dpy_ptr, jobject version, jint version_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLint *version_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, version)) + version_position; + + return eglInitialize(dpy, version_address, version_address + 1); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglTerminate(JNIEnv *env, jclass clazz, jlong dpy_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + + return eglTerminate(dpy); +} + +JNIEXPORT jstring JNICALL Java_org_lwjgl_opengles_EGL_neglQueryString(JNIEnv *env, jclass clazz, jlong dpy_ptr, jint name) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + const char * __result = eglQueryString(dpy, name); + if ( __result == NULL ) + return NULL; + + return NewStringNativeWithLength(env, __result, strlen(__result)); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglGetConfigs(JNIEnv *env, jclass clazz, jlong dpy_ptr, jobject configs, jint configs_position, jint config_size, jobject num_config, jint num_config_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLConfig *configs_address = ((EGLConfig *)safeGetBufferAddress(env, configs)) + configs_position; + EGLint *num_config_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, num_config)) + num_config_position; + + return eglGetConfigs(dpy, configs_address, config_size, num_config_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglChooseConfig(JNIEnv *env, jclass clazz, jlong dpy_ptr, jobject attrib_list, jint attrib_list_position, jobject configs, jint configs_position, jint config_size, jobject num_config, jint num_config_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + EGLConfig *configs_address = ((EGLConfig *)safeGetBufferAddress(env, configs)) + configs_position; + EGLint *num_config_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, num_config)) + num_config_position; + + return eglChooseConfig(dpy, attrib_list_address, configs_address, config_size, num_config_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglGetConfigAttrib(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong config_ptr, jint attribute, jobject value, jint value_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLConfig config = (EGLConfig)(intptr_t)config_ptr; + EGLint *value_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + + return eglGetConfigAttrib(dpy, config, attribute, value_address); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglCreateWindowSurface(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong config_ptr, jlong win, jobject attrib_list, jint attrib_list_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLConfig config = (EGLConfig)(intptr_t)config_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + + return (intptr_t)eglCreateWindowSurface(dpy, config, (EGLNativeWindowType)(intptr_t)win, attrib_list_address); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglCreatePbufferSurface(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong config_ptr, jobject attrib_list, jint attrib_list_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLConfig config = (EGLConfig)(intptr_t)config_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + + return (intptr_t)eglCreatePbufferSurface(dpy, config, attrib_list_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglDestroySurface(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong surface_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSurface surface = (EGLSurface)(intptr_t)surface_ptr; + + return eglDestroySurface(dpy, surface); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglSurfaceAttrib(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong surface_ptr, jint attribute, jint value) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSurface surface = (EGLSurface)(intptr_t)surface_ptr; + + return eglSurfaceAttrib(dpy, surface, attribute, value); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglQuerySurface(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong surface_ptr, jint attribute, jobject value, jint value_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSurface surface = (EGLSurface)(intptr_t)surface_ptr; + EGLint *value_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + + return eglQuerySurface(dpy, surface, attribute, value_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_eglBindAPI(JNIEnv *env, jclass clazz, jint api) { + return eglBindAPI(api); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengles_EGL_eglQueryAPI(JNIEnv *env, jclass clazz) { + return eglQueryAPI(); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_eglReleaseThread(JNIEnv *env, jclass clazz) { + return eglReleaseThread(); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglSwapInterval(JNIEnv *env, jclass clazz, jlong dpy_ptr, jint interval) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + return eglSwapInterval(dpy, interval); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglCreateContext(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong config_ptr, jlong share_context_ptr, jobject attrib_list, jint attrib_list_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLConfig config = (EGLConfig)(intptr_t)config_ptr; + EGLContext share_context = (EGLContext)(intptr_t)share_context_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + + return (intptr_t)eglCreateContext(dpy, config, share_context, attrib_list_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglDestroyContext(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong ctx_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLContext ctx = (EGLContext)(intptr_t)ctx_ptr; + + return eglDestroyContext(dpy, ctx); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglMakeCurrent(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong draw_ptr, jlong read_ptr, jlong ctx_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSurface draw = (EGLSurface)(intptr_t)draw_ptr; + EGLSurface read = (EGLSurface)(intptr_t)read_ptr; + EGLContext ctx = (EGLContext)(intptr_t)ctx_ptr; + + return eglMakeCurrent(dpy, draw, read, ctx); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglGetCurrentContext(JNIEnv *env, jclass clazz) { + return (intptr_t)eglGetCurrentContext(); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglGetCurrentSurface(JNIEnv *env, jclass clazz, jint readdraw) { + return (intptr_t)eglGetCurrentSurface(readdraw); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGL_neglGetCurrentDisplay(JNIEnv *env, jclass clazz) { + return (intptr_t)eglGetCurrentDisplay(); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglQueryContext(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong ctx_ptr, jint attribute, jobject value, jint value_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLContext ctx = (EGLContext)(intptr_t)ctx_ptr; + EGLint *value_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + + return eglQueryContext(dpy, ctx, attribute, value_address); + +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_eglWaitClient(JNIEnv *env, jclass clazz) { + return eglWaitClient(); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_eglWaitGL(JNIEnv *env, jclass clazz) { + return eglWaitGL(); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_eglWaitNative(JNIEnv *env, jclass clazz, jint engine) { + return eglWaitNative(engine); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGL_neglSwapBuffers(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong surface_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSurface surface = (EGLSurface)(intptr_t)surface_ptr; + + return eglSwapBuffers(dpy, surface); +} \ No newline at end of file diff --git a/src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c b/src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c new file mode 100644 index 00000000..bf02c436 --- /dev/null +++ b/src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "common_tools.h" +#include "org_lwjgl_opengles_EGLKHRFenceSync.h" +#include "extgl_egl.h" + +static PFNEGLCREATESYNCKHRPROC eglCreateSyncKHR; +static PFNEGLDESTROYSYNCKHRPROC eglDestroySyncKHR; +static PFNEGLCLIENTWAITSYNCKHRPROC eglClientWaitSyncKHR; +static PFNEGLGETSYNCATTRIBKHRPROC eglGetSyncAttribKHR; + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGLKHRFenceSync_neglCreateSyncKHR(JNIEnv *env, jclass clazz, jlong dpy_ptr, jint type, jobject attrib_list, jint attrib_list_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + + return (intptr_t)eglCreateSyncKHR(dpy, type, attrib_list_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLKHRFenceSync_neglDestroySyncKHR(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong sync_ptr) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSyncKHR sync = (EGLSyncKHR)(intptr_t)sync_ptr; + + return eglDestroySyncKHR(dpy, sync); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengles_EGLKHRFenceSync_neglClientWaitSyncKHR(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong sync_ptr, jint flags, jlong timeout) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSyncKHR sync = (EGLSyncKHR)(intptr_t)sync_ptr; + + return eglClientWaitSyncKHR(dpy, sync, flags, timeout); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLKHRFenceSync_neglGetSyncAttribKHR(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong sync_ptr, jint attribute, jobject value, jint value_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSyncKHR sync = (EGLSyncKHR)(intptr_t)sync_ptr; + EGLint *value_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + + return eglGetSyncAttribKHR(dpy, sync, attribute, value_address); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_EGLKHRFenceSync_initNativeStubs(JNIEnv *env, jclass clazz) { + JavaMethodAndExtFunction functions[] = { + {"neglCreateSyncKHR", "(JILjava/nio/IntBuffer;I)J", (void *)&Java_org_lwjgl_opengles_EGLKHRFenceSync_neglCreateSyncKHR, "eglCreateSyncKHR", (void *)&eglCreateSyncKHR}, + {"neglDestroySyncKHR", "(JJ)Z", (void *)&Java_org_lwjgl_opengles_EGLKHRFenceSync_neglDestroySyncKHR, "eglDestroySyncKHR", (void *)&eglDestroySyncKHR}, + {"neglClientWaitSyncKHR", "(JJIJ)I", (void *)&Java_org_lwjgl_opengles_EGLKHRFenceSync_neglClientWaitSyncKHR, "eglClientWaitSyncKHR", (void *)&eglClientWaitSyncKHR}, + {"neglGetSyncAttribKHR", "(JJILjava/nio/IntBuffer;I)Z", (void *)&Java_org_lwjgl_opengles_EGLKHRFenceSync_neglGetSyncAttribKHR, "eglGetSyncAttribKHR", (void *)&eglGetSyncAttribKHR} + }; + int num_functions = NUMFUNCTIONS(functions); + extgl_InitializeClass(env, clazz, num_functions, functions); +} \ No newline at end of file diff --git a/src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c b/src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c new file mode 100644 index 00000000..d8d6b18e --- /dev/null +++ b/src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "common_tools.h" +#include "org_lwjgl_opengles_EGLKHRReusableSync.h" +#include "extgl_egl.h" + +static PFNEGLSIGNALSYNCKHRPROC eglSignalSyncKHR; + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLKHRReusableSync_neglSignalSyncKHR(JNIEnv *env, jclass clazz, jlong dpy_ptr, jlong sync_ptr, jint mode) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + EGLSyncKHR sync = (EGLSyncKHR)(intptr_t)sync_ptr; + return eglSignalSyncKHR(dpy, sync, mode); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_EGLKHRReusableSync_initNativeStubs(JNIEnv *env, jclass clazz) { + JavaMethodAndExtFunction functions[] = { + {"neglSignalSyncKHR", "(JJI)Z", (void *)&Java_org_lwjgl_opengles_EGLKHRReusableSync_neglSignalSyncKHR, "eglSignalSyncKHR", (void *)&eglSignalSyncKHR} + }; + int num_functions = NUMFUNCTIONS(functions); + extgl_InitializeClass(env, clazz, num_functions, functions); +} diff --git a/src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c b/src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c new file mode 100644 index 00000000..87fb81ee --- /dev/null +++ b/src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "common_tools.h" +#include "org_lwjgl_opengles_EGLNVSync.h" +#include "extgl_egl.h" + +static PFNEGLCREATEFENCESYNCNVPROC eglCreateFenceSyncNV; +static PFNEGLDESTROYSYNCNVPROC eglDestroySyncNV; +static PFNEGLFENCENVPROC eglFenceNV; +static PFNEGLCLIENTWAITSYNCNVPROC eglClientWaitSyncNV; +static PFNEGLSIGNALSYNCNVPROC eglSignalSyncNV; +static PFNEGLGETSYNCATTRIBNVPROC eglGetSyncAttribNV; + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglCreateFenceSyncNV(JNIEnv *env, jclass clazz, jlong dpy_ptr, jint condition, jobject attrib_list, jint attrib_list_position) { + EGLDisplay dpy = (EGLDisplay)(intptr_t)dpy_ptr; + const EGLint *attrib_list_address = ((EGLint *)safeGetBufferAddress(env, attrib_list)) + attrib_list_position; + + return (intptr_t)eglCreateFenceSyncNV(dpy, condition, attrib_list_address); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglDestroySyncNV(JNIEnv *env, jclass clazz, jlong sync_ptr) { + EGLSyncNV sync = (EGLSyncNV)(intptr_t)sync_ptr; + + return eglDestroySyncNV(sync); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglFenceNV(JNIEnv *env, jclass clazz, jlong sync_ptr) { + EGLSyncNV sync = (EGLSyncNV)(intptr_t)sync_ptr; + + return eglFenceNV(sync); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglClientWaitSyncNV(JNIEnv *env, jclass clazz, jlong sync_ptr, jint flags, jlong timeout) { + EGLSyncNV sync = (EGLSyncNV)(intptr_t)sync_ptr; + + return eglClientWaitSyncNV(sync, flags, timeout); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglSignalSyncNV(JNIEnv *env, jclass clazz, jlong sync_ptr, jint mode) { + EGLSyncNV sync = (EGLSyncNV)(intptr_t)sync_ptr; + + return eglSignalSyncNV(sync, mode); +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengles_EGLNVSync_neglGetSyncAttribNV(JNIEnv *env, jclass clazz, jlong sync_ptr, jint attribute, jobject value, jint value_position) { + EGLSyncNV sync = (EGLSyncNV)(intptr_t)sync_ptr; + EGLint *value_address = ((EGLint *)(*env)->GetDirectBufferAddress(env, value)) + value_position; + + return eglGetSyncAttribNV(sync, attribute, value_address); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_EGLNVSync_initNativeStubs(JNIEnv *env, jclass clazz) { + JavaMethodAndExtFunction functions[] = { + {"neglCreateFenceSyncNV", "(JILjava/nio/IntBuffer;I)J", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglCreateFenceSyncNV, "eglCreateFenceSyncNV", (void *)&eglCreateFenceSyncNV}, + {"neglDestroySyncNV", "(J)Z", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglDestroySyncNV, "eglDestroySyncNV", (void *)&eglDestroySyncNV}, + {"neglFenceNV", "(J)Z", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglFenceNV, "eglFenceNV", (void *)&eglFenceNV}, + {"neglClientWaitSyncNV", "(JIJ)I", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglClientWaitSyncNV, "eglClientWaitSyncNV", (void *)&eglClientWaitSyncNV}, + {"neglSignalSyncNV", "(JI)Z", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglSignalSyncNV, "eglSignalSyncNV", (void *)&eglSignalSyncNV}, + {"neglGetSyncAttribNV", "(JILjava/nio/IntBuffer;I)Z", (void *)&Java_org_lwjgl_opengles_EGLNVSync_neglGetSyncAttribNV, "eglGetSyncAttribNV", (void *)&eglGetSyncAttribNV} + }; + int num_functions = NUMFUNCTIONS(functions); + extgl_InitializeClass(env, clazz, num_functions, functions); +} diff --git a/src/native/common/opengles/org_lwjgl_opengles_GLContext.c b/src/native/common/opengles/org_lwjgl_opengles_GLContext.c new file mode 100644 index 00000000..f7273f30 --- /dev/null +++ b/src/native/common/opengles/org_lwjgl_opengles_GLContext.c @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include "common_tools.h" +#include "org_lwjgl_opengles_GLContext.h" +#include "extgl.h" + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_GLContext_nLoadOpenGLLibrary(JNIEnv * env, jclass clazz) { + extgl_Open(env); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_GLContext_nUnloadOpenGLLibrary(JNIEnv * env, jclass clazz) { + extgl_Close(); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengles_GLContext_resetNativeStubs(JNIEnv *env, jclass clazz, jclass gl_class) { + //(*env)->UnregisterNatives(env, gl_class); +} diff --git a/src/native/linux/context.c b/src/native/linux/opengl/context.c similarity index 100% rename from src/native/linux/context.c rename to src/native/linux/opengl/context.c diff --git a/src/native/linux/context.h b/src/native/linux/opengl/context.h similarity index 100% rename from src/native/linux/context.h rename to src/native/linux/opengl/context.h diff --git a/src/native/linux/display.c b/src/native/linux/opengl/display.c similarity index 100% rename from src/native/linux/display.c rename to src/native/linux/opengl/display.c diff --git a/src/native/linux/extgl_glx.c b/src/native/linux/opengl/extgl_glx.c similarity index 100% rename from src/native/linux/extgl_glx.c rename to src/native/linux/opengl/extgl_glx.c diff --git a/src/native/linux/extgl_glx.h b/src/native/linux/opengl/extgl_glx.h similarity index 100% rename from src/native/linux/extgl_glx.h rename to src/native/linux/opengl/extgl_glx.h diff --git a/src/native/linux/org_lwjgl_opengl_Display.c b/src/native/linux/opengl/org_lwjgl_opengl_Display.c similarity index 100% rename from src/native/linux/org_lwjgl_opengl_Display.c rename to src/native/linux/opengl/org_lwjgl_opengl_Display.c diff --git a/src/native/linux/org_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c b/src/native/linux/opengl/org_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c similarity index 100% rename from src/native/linux/org_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c rename to src/native/linux/opengl/org_lwjgl_opengl_LinuxAWTGLCanvasPeerInfo.c diff --git a/src/native/linux/org_lwjgl_opengl_LinuxCanvasImplementation.c b/src/native/linux/opengl/org_lwjgl_opengl_LinuxCanvasImplementation.c similarity index 100% rename from src/native/linux/org_lwjgl_opengl_LinuxCanvasImplementation.c rename to src/native/linux/opengl/org_lwjgl_opengl_LinuxCanvasImplementation.c diff --git a/src/native/linux/org_lwjgl_opengl_LinuxContextImplementation.c b/src/native/linux/opengl/org_lwjgl_opengl_LinuxContextImplementation.c similarity index 100% rename from src/native/linux/org_lwjgl_opengl_LinuxContextImplementation.c rename to src/native/linux/opengl/org_lwjgl_opengl_LinuxContextImplementation.c diff --git a/src/native/linux/org_lwjgl_opengl_Pbuffer.c b/src/native/linux/opengl/org_lwjgl_opengl_Pbuffer.c similarity index 100% rename from src/native/linux/org_lwjgl_opengl_Pbuffer.c rename to src/native/linux/opengl/org_lwjgl_opengl_Pbuffer.c diff --git a/src/native/linux/opengles/context.c b/src/native/linux/opengles/context.c new file mode 100644 index 00000000..17d519c3 --- /dev/null +++ b/src/native/linux/opengles/context.c @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: context.c 3116 2008-08-19 16:46:03Z spasi $ + * + * Include file to access public window features + * + * @author elias_naur + * @version $Revision: 3116 $ + */ + +#include "context.h" + +bool initPeerInfo(JNIEnv *env, jobject peer_info_handle, Display *display, int screen) { + /* + if ((*env)->GetDirectBufferCapacity(env, peer_info_handle) < sizeof(X11PeerInfo)) { + throwException(env, "Handle too small"); + return false; + } + */ + X11PeerInfo *peer_info = (*env)->GetDirectBufferAddress(env, peer_info_handle); + + peer_info->display = display; + peer_info->screen = screen; + return true; +} diff --git a/src/native/linux/opengles/context.h b/src/native/linux/opengles/context.h new file mode 100644 index 00000000..ea5129de --- /dev/null +++ b/src/native/linux/opengles/context.h @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: context.h 2985 2008-04-07 18:42:36Z matzon $ + * + * Include file to access public window features + * + * @author elias_naur + * @version $Revision: 2985 $ + */ + +#ifndef _LWJGL_CONTEXT_H_INCLUDED_ +#define _LWJGL_CONTEXT_H_INCLUDED_ + +#include +#include +#include "extgl.h" + +typedef struct { + Display *display; + int screen; + jlong drawable; +} X11PeerInfo; + +extern bool initPeerInfo(JNIEnv *env, jobject peer_info_handle, Display *display, int screen); + +#endif /* _LWJGL_CONTEXT_H_INCLUDED_ */ diff --git a/src/native/linux/opengles/display.c b/src/native/linux/opengles/display.c new file mode 100644 index 00000000..89eda41d --- /dev/null +++ b/src/native/linux/opengles/display.c @@ -0,0 +1,409 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: display.c 2985 2008-04-07 18:42:36Z matzon $ + * + * Linux specific library for display handling. + * + * @author elias_naur + * @version $Revision: 2985 $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include "common_tools.h" +#include "org_lwjgl_opengl_LinuxDisplay.h" + +#define NUM_XRANDR_RETRIES 5 + +typedef struct { + int width; + int height; + int freq; + union { + int size_index; // Data for Xrandr extension + XF86VidModeModeInfo xf86vm_modeinfo; // Data for XF86VidMode extension + } mode_data; +} mode_info; + +static bool getXF86VidModeVersion(JNIEnv *env, Display *disp, int *major, int *minor) { + int event_base, error_base; + + if (!XF86VidModeQueryExtension(disp, &event_base, &error_base)) { + printfDebugJava(env, "XF86VidMode extension not available"); + return false; + } + if (!XF86VidModeQueryVersion(disp, major, minor)) { + throwException(env, "Could not query XF86VidMode version"); + return false; + } + printfDebugJava(env, "XF86VidMode extension version %i.%i", *major, *minor); + return true; +} + +static bool getXrandrVersion(JNIEnv *env, Display *disp, int *major, int *minor) { + int event_base, error_base; + + if (!XRRQueryExtension(disp, &event_base, &error_base)) { + printfDebugJava(env, "Xrandr extension not available"); + return false; + } + if (!XRRQueryVersion(disp, major, minor)) { + throwException(env, "Could not query Xrandr version"); + return false; + } + printfDebugJava(env, "Xrandr extension version %i.%i", *major, *minor); + return true; +} + +static bool isXrandrSupported(JNIEnv *env, Display *disp) { + int major, minor; + if (!getXrandrVersion(env, disp, &major, &minor)) + return false; + return major >= 1; +} + +static bool isXF86VidModeSupported(JNIEnv *env, Display *disp) { + int minor_ver, major_ver; + if (!getXF86VidModeVersion(env, disp, &major_ver, &minor_ver)) + return false; + return major_ver >= 2; +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nIsXrandrSupported(JNIEnv *env, jclass unused, jlong display) { + Display *disp = (Display *)(intptr_t)display; + jboolean result = isXrandrSupported(env, disp) ? JNI_TRUE : JNI_FALSE; + return result; +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nIsXF86VidModeSupported(JNIEnv *env, jclass unused, jlong display) { + Display *disp = (Display *)(intptr_t)display; + jboolean result = isXF86VidModeSupported(env, disp) ? JNI_TRUE : JNI_FALSE; + return result; +} + +static mode_info *getXrandrDisplayModes(Display *disp, int screen, int *num_modes) { + int num_randr_sizes; + XRRScreenSize *sizes = XRRSizes(disp, screen, &num_randr_sizes); + mode_info *avail_modes = NULL; + int list_size = 0; + /* Count number of modes */ + int i; + int mode_index = 0; + for (i = 0; i < num_randr_sizes; i++) { + int num_randr_rates; + short *freqs = XRRRates(disp, screen, i, &num_randr_rates); + int j; + for (j = 0; j < num_randr_rates; j++) { + if (list_size <= mode_index) { + list_size += 1; + avail_modes = (mode_info *)realloc(avail_modes, sizeof(mode_info)*list_size); + if (avail_modes == NULL) + return NULL; + } + avail_modes[mode_index].width = sizes[i].width; + avail_modes[mode_index].height = sizes[i].height; + avail_modes[mode_index].freq = freqs[j]; + avail_modes[mode_index].mode_data.size_index = i; + mode_index++; + } + } + *num_modes = mode_index; + return avail_modes; +} + +static mode_info *getXF86VidModeDisplayModes(Display *disp, int screen, int *num_modes) { + int num_xf86vm_modes; + XF86VidModeModeInfo **avail_xf86vm_modes; + XF86VidModeGetAllModeLines(disp, screen, &num_xf86vm_modes, &avail_xf86vm_modes); + mode_info *avail_modes = (mode_info *)malloc(sizeof(mode_info)*num_xf86vm_modes); + if (avail_modes == NULL) { + XFree(avail_xf86vm_modes); + return NULL; + } + int i; + for (i = 0; i < num_xf86vm_modes; i++) { + avail_modes[i].width = avail_xf86vm_modes[i]->hdisplay; + avail_modes[i].height = avail_xf86vm_modes[i]->vdisplay; + avail_modes[i].freq = 0; // No frequency support in XF86VidMode + avail_modes[i].mode_data.xf86vm_modeinfo = *avail_xf86vm_modes[i]; + } + XFree(avail_xf86vm_modes); + *num_modes = num_xf86vm_modes; + return avail_modes; +} + +static mode_info *getDisplayModes(Display *disp, int screen, jint extension, int *num_modes) { + switch (extension) { + case org_lwjgl_opengl_LinuxDisplay_XF86VIDMODE: + return getXF86VidModeDisplayModes(disp, screen, num_modes); + case org_lwjgl_opengl_LinuxDisplay_XRANDR: + return getXrandrDisplayModes(disp, screen, num_modes); + case org_lwjgl_opengl_LinuxDisplay_NONE: + // fall through + default: + return NULL; + } +} + +static bool setXF86VidModeMode(Display *disp, int screen, mode_info *mode) { + return True == XF86VidModeSwitchToMode(disp, screen, &mode->mode_data.xf86vm_modeinfo); +} + +/* Try to set the mode specified through XRandR. + * Return value is the Status code of the mode switch + * The timestamp parameter is filled with the latest timestamp returned from XRRConfigTimes + */ +static Status trySetXrandrMode(Display *disp, int screen, mode_info *mode, Time *timestamp) { + Status status; + Drawable root_window = RootWindow(disp, screen); + XRRScreenConfiguration *screen_configuration = XRRGetScreenInfo(disp, root_window); + Time config_time; + *timestamp = XRRConfigTimes(screen_configuration, &config_time); + Rotation current_rotation; + XRRConfigCurrentConfiguration(screen_configuration, ¤t_rotation); + status = XRRSetScreenConfigAndRate(disp, screen_configuration, root_window, mode->mode_data.size_index, current_rotation, mode->freq, *timestamp); + XRRFreeScreenConfigInfo(screen_configuration); + return status; +} + +static bool setXrandrMode(Display *disp, int screen, mode_info *mode) { + int iteration; + Time timestamp; + Status status = trySetXrandrMode(disp, screen, mode, ×tamp); + if (status == 0) + return true; // Success + Time new_timestamp; + for (iteration = 0; iteration < NUM_XRANDR_RETRIES; iteration++) { + status = trySetXrandrMode(disp, screen, mode, &new_timestamp); + if (status == 0) + return true; // Success + if (new_timestamp == timestamp) { + return false; // Failure, and the stamps are equal meaning that the failure is not merely transient + } + timestamp = new_timestamp; + } + return false; +} + +static bool setMode(JNIEnv *env, Display *disp, int screen, jint extension, int width, int height, int freq) { + int num_modes, i; + mode_info *avail_modes = getDisplayModes(disp, screen, extension, &num_modes); + if (avail_modes == NULL) { + printfDebugJava(env, "Could not get display modes"); + return false; + } + bool result = false; + for (i = 0; i < num_modes; ++i) { + printfDebugJava(env, "Mode %d: %dx%d @%d", i, avail_modes[i].width, avail_modes[i].height, avail_modes[i].freq); + if (avail_modes[i].width == width && avail_modes[i].height == height && avail_modes[i].freq == freq) { + switch (extension) { + case org_lwjgl_opengl_LinuxDisplay_XF86VIDMODE: + if (!setXF86VidModeMode(disp, screen, &avail_modes[i])) { + printfDebugJava(env, "Could not switch mode"); + continue; + } + break; + case org_lwjgl_opengl_LinuxDisplay_XRANDR: + if (!setXrandrMode(disp, screen, &avail_modes[i])) { + printfDebugJava(env, "Could not switch mode"); + continue; + } + break; + case org_lwjgl_opengl_LinuxDisplay_NONE: // Should never happen, since NONE imply no available display modes + default: // Should never happen + continue; + } + result = true; + break; + } + } + free(avail_modes); + XFlush(disp); + return result; +} + +static int getGammaRampLengthOfDisplay(JNIEnv *env, Display *disp, int screen) { + int ramp_size; + if (XF86VidModeGetGammaRampSize(disp, screen, &ramp_size) == False) { + throwException(env, "XF86VidModeGetGammaRampSize call failed"); + return 0; + } + return ramp_size; +} + +JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nConvertToNativeRamp(JNIEnv *env, jclass unused, jobject ramp_buffer, jint buffer_offset, jint length) { + const jfloat *ramp_ptr = (const jfloat *)(*env)->GetDirectBufferAddress(env, ramp_buffer) + buffer_offset; + jobject native_ramp = newJavaManagedByteBuffer(env, length*3*sizeof(unsigned short)); + if (native_ramp == NULL) { + throwException(env, "Failed to allocate gamma ramp buffer"); + return NULL; + } + unsigned short *native_ramp_ptr = (unsigned short *)(*env)->GetDirectBufferAddress(env, native_ramp); + int i; + for (i = 0; i < length; i++) { + float scaled_gamma = ramp_ptr[i]*0xffff; + short scaled_gamma_short = (unsigned short)roundf(scaled_gamma); + native_ramp_ptr[i] = scaled_gamma_short; + native_ramp_ptr[i + length] = scaled_gamma_short; + native_ramp_ptr[i + length*2] = scaled_gamma_short; + } + return native_ramp; +} + +JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetCurrentGammaRamp(JNIEnv *env, jclass unused, jlong display, jint screen) { + Display *disp = (Display *)(intptr_t)display; + int ramp_size = getGammaRampLengthOfDisplay(env, disp, screen); + jobject ramp_buffer = newJavaManagedByteBuffer(env, sizeof(unsigned short)*3*ramp_size); + if (ramp_buffer == NULL) { + throwException(env, "Could not allocate gamma ramp buffer"); + return NULL; + } + unsigned short *ramp = (unsigned short *)(*env)->GetDirectBufferAddress(env, ramp_buffer); + if (!XF86VidModeGetGammaRamp(disp, screen, ramp_size, ramp, ramp + ramp_size, ramp + ramp_size*2)) { + throwException(env, "Could not get the current gamma ramp"); + return NULL; + } + return ramp_buffer; +} + +static void setGamma(JNIEnv *env, Display *disp, int screen, jobject ramp_buffer) { + if (ramp_buffer == NULL) + return; + unsigned short *ramp_ptr = (unsigned short *)(*env)->GetDirectBufferAddress(env, ramp_buffer); + jlong capacity = (*env)->GetDirectBufferCapacity(env, ramp_buffer); + int size = capacity/(sizeof(unsigned short)*3); + if (size == 0) + return; + if (XF86VidModeSetGammaRamp(disp, screen, size, ramp_ptr, ramp_ptr + size, ramp_ptr + size*2) == False) { + throwException(env, "Could not set gamma ramp."); + } +} + +static bool switchDisplayMode(JNIEnv * env, Display *disp, int screen, jint extension, jobject mode) { + if (mode == NULL) { + throwException(env, "mode must be non-null"); + return false; + } + jclass cls_displayMode = (*env)->GetObjectClass(env, mode); + jfieldID fid_width = (*env)->GetFieldID(env, cls_displayMode, "width", "I"); + jfieldID fid_height = (*env)->GetFieldID(env, cls_displayMode, "height", "I"); + jfieldID fid_freq = (*env)->GetFieldID(env, cls_displayMode, "freq", "I"); + int width = (*env)->GetIntField(env, mode, fid_width); + int height = (*env)->GetIntField(env, mode, fid_height); + int freq = (*env)->GetIntField(env, mode, fid_freq); + if (!setMode(env, disp, screen, extension, width, height, freq)) { + throwException(env, "Could not switch mode."); + return false; + } + return true; +} + +static jobjectArray getAvailableDisplayModes(JNIEnv * env, Display *disp, int screen, jint extension) { + int num_modes, i; + mode_info *avail_modes; + int bpp = XDefaultDepth(disp, screen); + avail_modes = getDisplayModes(disp, screen, extension, &num_modes); + if (avail_modes == NULL) { + printfDebugJava(env, "Could not get display modes"); + return NULL; + } + // Allocate an array of DisplayModes big enough + jclass displayModeClass = (*env)->FindClass(env, "org/lwjgl/opengl/DisplayMode"); + jobjectArray ret = (*env)->NewObjectArray(env, num_modes, displayModeClass, NULL); + jmethodID displayModeConstructor = (*env)->GetMethodID(env, displayModeClass, "", "(IIII)V"); + + for (i = 0; i < num_modes; i++) { + jobject displayMode = (*env)->NewObject(env, displayModeClass, displayModeConstructor, avail_modes[i].width, avail_modes[i].height, bpp, avail_modes[i].freq); + (*env)->SetObjectArrayElement(env, ret, i, displayMode); + } + free(avail_modes); + return ret; +} + +static jobject getCurrentXRandrMode(JNIEnv * env, Display *disp, int screen) { + Drawable root_window = RootWindow(disp, screen); + XRRScreenConfiguration *config = XRRGetScreenInfo(disp, root_window); + if (config == NULL) { + throwException(env, "Could not get current screen configuration."); + return NULL; + } + short rate = XRRConfigCurrentRate(config); + Rotation current_rotation; + SizeID size_index = XRRConfigCurrentConfiguration(config, ¤t_rotation); + int n_sizes; + XRRScreenSize *sizes = XRRConfigSizes(config, &n_sizes); + if (size_index >= n_sizes) { + throwFormattedException(env, "Xrandr current index (%d) is larger than or equals to the number of sizes (%d).", size_index, n_sizes); + XRRFreeScreenConfigInfo(config); + return NULL; + } + XRRScreenSize current_size = sizes[size_index]; + XRRFreeScreenConfigInfo(config); + int bpp = XDefaultDepth(disp, screen); + jclass displayModeClass = (*env)->FindClass(env, "org/lwjgl/opengl/DisplayMode"); + jmethodID displayModeConstructor = (*env)->GetMethodID(env, displayModeClass, "", "(IIII)V"); + jobject displayMode = (*env)->NewObject(env, displayModeClass, displayModeConstructor, current_size.width, current_size.height, bpp, rate); + return displayMode; +} + +JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetCurrentXRandrMode(JNIEnv *env, jclass unused, jlong display, jint screen) { + Display *disp = (Display *)(intptr_t)display; + return getCurrentXRandrMode(env, disp, screen); +} + +JNIEXPORT jobjectArray JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetAvailableDisplayModes(JNIEnv *env, jclass clazz, jlong display, jint screen, jint extension) { + Display *disp = (Display *)(intptr_t)display; + return getAvailableDisplayModes(env, disp, screen, extension); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nSwitchDisplayMode(JNIEnv *env, jclass clazz, jlong display, jint screen, jint extension, jobject mode) { + Display *disp = (Display *)(intptr_t)display; + switchDisplayMode(env, disp, screen, extension, mode); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetGammaRampLength(JNIEnv *env, jclass clazz, jlong display_ptr, jint screen) { + Display *disp = (Display *)(intptr_t)display_ptr; + return (jint)getGammaRampLengthOfDisplay(env, disp, screen); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nSetGammaRamp(JNIEnv *env, jclass clazz, jlong display, jint screen, jobject gamma_buffer) { + Display *disp = (Display *)(intptr_t)display; + setGamma(env, disp, screen, gamma_buffer); +} diff --git a/src/native/linux/opengles/extgl_glx.c b/src/native/linux/opengles/extgl_glx.c new file mode 100644 index 00000000..32b2ff7f --- /dev/null +++ b/src/native/linux/opengles/extgl_glx.c @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +#include +#include +#include +#include "extgl.h" + +static void * lib_gl_handle = NULL; + +bool extgl_Open(JNIEnv *env) { + if ( lib_gl_handle != NULL ) + return true; + + lib_gl_handle = dlopen("libGLESv2.so", RTLD_LAZY | RTLD_GLOBAL); + if (lib_gl_handle == NULL) { + throwFormattedException(env, "Error loading libGLESv2.so: %s", dlerror()); + return false; + } + return true; +} + +void extgl_Close(void) { + dlclose(lib_gl_handle); + lib_gl_handle = NULL; +} + +void *extgl_GetProcAddress(const char *name) { + void *t = eglGetProcAddress(name); + + if ( t == NULL ) { + t = dlsym(lib_gl_handle, name); + if ( t == NULL ) + printfDebug("Could not locate symbol %s\n", name); + } + + //if ( t != NULL ) + //printfDebug("Located symbol %s\n", name); + + return t; +} \ No newline at end of file diff --git a/src/native/linux/opengles/org_lwjgl_opengl_Display.c b/src/native/linux/opengles/org_lwjgl_opengl_Display.c new file mode 100644 index 00000000..35d73dbc --- /dev/null +++ b/src/native/linux/opengles/org_lwjgl_opengl_Display.c @@ -0,0 +1,576 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: org_lwjgl_opengl_Display.c 3188 2009-03-19 21:50:30Z elias_naur $ + * + * Linux specific display functions. + * + * @author elias_naur + * @version $Revision: 3188 $ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "common_tools.h" +#include "extgl.h" +#include "context.h" +#include "org_lwjgl_opengl_LinuxDisplay.h" +//#include "org_lwjgl_opengl_LinuxDisplayPeerInfo.h" +#include "org_lwjgl_LinuxSysImplementation.h" + +#define ERR_MSG_SIZE 1024 + +typedef struct { + unsigned long flags; + unsigned long functions; + unsigned long decorations; + long input_mode; + unsigned long status; +} MotifWmHints; + +#define MWM_HINTS_DECORATIONS (1L << 1) + +static Colormap cmap; +static int current_depth; +static Pixmap current_icon_pixmap; +static Pixmap current_icon_mask_pixmap; + +static Visual *current_visual; + +static bool checkXError(JNIEnv *env, Display *disp) { + XSync(disp, False); + return (*env)->ExceptionCheck(env) == JNI_FALSE; +} + +static int global_error_handler(Display *disp, XErrorEvent *error) { + JNIEnv *env = getThreadEnv(); + if (env != NULL) { + jclass org_lwjgl_LinuxDisplay_class = (*env)->FindClass(env, "org/lwjgl/opengl/LinuxDisplay"); + if (org_lwjgl_LinuxDisplay_class == NULL) { + // Don't propagate error + (*env)->ExceptionClear(env); + return 0; + } + jmethodID handler_method = (*env)->GetStaticMethodID(env, org_lwjgl_LinuxDisplay_class, "globalErrorHandler", "(JJJJJJJ)I"); + if (handler_method == NULL) + return 0; + return (*env)->CallStaticIntMethod(env, org_lwjgl_LinuxDisplay_class, handler_method, (jlong)(intptr_t)disp, (jlong)(intptr_t)error, + (jlong)(intptr_t)error->display, (jlong)error->serial, (jlong)error->error_code, (jlong)error->request_code, (jlong)error->minor_code); + } else + return 0; +} + +static jlong openDisplay(JNIEnv *env) { + Display *display_connection = XOpenDisplay(NULL); + if (display_connection == NULL) { + throwException(env, "Could not open X display connection"); + return (intptr_t)NULL; + } + return (intptr_t)display_connection; +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_DefaultSysImplementation_getJNIVersion + (JNIEnv *env, jobject ignored) { + return org_lwjgl_LinuxSysImplementation_JNI_VERSION; +} + +JNIEXPORT jstring JNICALL Java_org_lwjgl_opengl_LinuxDisplay_getErrorText(JNIEnv *env, jclass unused, jlong display_ptr, jlong error_code) { + Display *disp = (Display *)(intptr_t)display_ptr; + char err_msg_buffer[ERR_MSG_SIZE]; + XGetErrorText(disp, error_code, err_msg_buffer, ERR_MSG_SIZE); + err_msg_buffer[ERR_MSG_SIZE - 1] = '\0'; + return NewStringNativeWithLength(env, err_msg_buffer, strlen(err_msg_buffer)); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_callErrorHandler(JNIEnv *env, jclass unused, jlong handler_ptr, jlong display_ptr, jlong event_ptr) { + XErrorHandler handler = (XErrorHandler)(intptr_t)handler_ptr; + Display *disp = (Display *)(intptr_t)display_ptr; + XErrorEvent *event = (XErrorEvent *)(intptr_t)event_ptr; + return (jint)handler(disp, event); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_setErrorHandler(JNIEnv *env, jclass unused) { + return (intptr_t)XSetErrorHandler(global_error_handler); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_resetErrorHandler(JNIEnv *env, jclass unused, jlong handler_ptr) { + XErrorHandler handler = (XErrorHandler)(intptr_t)handler_ptr; + return (intptr_t)XSetErrorHandler(handler); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_sync(JNIEnv *env, jclass unused, jlong display_ptr, jboolean throw_away_events) { + Display *disp = (Display *)(intptr_t)display_ptr; + XSync(disp, throw_away_events ? True : False); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetDefaultScreen(JNIEnv *env, jclass unused, jlong display_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + return XDefaultScreen(disp); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nInternAtom(JNIEnv *env, jclass unused, jlong display_ptr, jstring atom_name_obj, jboolean only_if_exists) { + Display *disp = (Display *)(intptr_t)display_ptr; + char *atom_name = GetStringNativeChars(env, atom_name_obj); + if (atom_name == NULL) + return 0; + Atom atom = XInternAtom(disp, atom_name, only_if_exists ? True : False); + free(atom_name); + return atom; +} + +static void setDecorations(Display *disp, Window window, int dec) { + Atom motif_hints_atom = XInternAtom(disp, "_MOTIF_WM_HINTS", False); + MotifWmHints motif_hints; + motif_hints.flags = MWM_HINTS_DECORATIONS; + motif_hints.decorations = dec; + XChangeProperty(disp, window, motif_hints_atom, motif_hints_atom, 32, PropModeReplace, (unsigned char *)&motif_hints, sizeof(MotifWmHints)/sizeof(long)); +} + +static bool isLegacyFullscreen(jint window_mode) { + return window_mode == org_lwjgl_opengl_LinuxDisplay_FULLSCREEN_LEGACY; +} + +static void setWindowTitle(Display *disp, Window window, const char *title) { + XStoreName(disp, window, title); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_openDisplay(JNIEnv *env, jclass clazz) { + return openDisplay(env); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_closeDisplay(JNIEnv *env, jclass clazz, jlong display) { + Display *disp = (Display *)(intptr_t)display; + XCloseDisplay(disp); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplayPeerInfo_initDrawable(JNIEnv *env, jclass clazz, jlong window, jobject peer_info_handle) { + X11PeerInfo *peer_info = (*env)->GetDirectBufferAddress(env, peer_info_handle); + peer_info->drawable = window; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplayPeerInfo_initDefaultPeerInfo(JNIEnv *env, jclass clazz, jlong display, jint screen, jobject peer_info_handle) { + //Display *disp = (Display *)(intptr_t)display; + //initPeerInfo(env, peer_info_handle, disp, screen); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nSetTitle(JNIEnv * env, jclass clazz, jlong display, jlong window_ptr, jstring title_obj) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + char * title = GetStringNativeChars(env, title_obj); + setWindowTitle(disp, window, title); + free(title); +} + +static void freeIconPixmap(Display *disp) { + if (current_icon_mask_pixmap != 0) { + XFreePixmap(disp, current_icon_mask_pixmap); + current_icon_mask_pixmap = 0; + } + if (current_icon_pixmap != 0) { + XFreePixmap(disp, current_icon_pixmap); + current_icon_pixmap = 0; + } +} + +static void destroyWindow(JNIEnv *env, Display *disp, Window window) { + XDestroyWindow(disp, window); + XFreeColormap(disp, cmap); + freeIconPixmap(disp); +} + +static bool isNetWMFullscreenSupported(JNIEnv *env, Display *disp, int screen) { + unsigned long nitems; + Atom actual_type; + int actual_format; + unsigned long bytes_after; + Atom *supported_list; + Atom netwm_supported_atom = XInternAtom(disp, "_NET_SUPPORTED", False); + int result = XGetWindowProperty(disp, RootWindow(disp, screen), netwm_supported_atom, 0, 10000, False, AnyPropertyType, &actual_type, &actual_format, &nitems, &bytes_after, (void *)&supported_list); + if (result != Success) { + throwException(env, "Unable to query _NET_SUPPORTED window property"); + return false; + } + Atom fullscreen_atom = XInternAtom(disp, "_NET_WM_STATE_FULLSCREEN", False); + bool supported = false; + unsigned long i; + for (i = 0; i < nitems; i++) { + if (fullscreen_atom == supported_list[i]) { + supported = true; + break; + } + } + XFree(supported_list); + return supported; +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nIsNetWMFullscreenSupported(JNIEnv *env, jclass unused, jlong display, jint screen) { + Display *disp = (Display *)(intptr_t)display; + return isNetWMFullscreenSupported(env, disp, screen) ? JNI_TRUE : JNI_FALSE; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nReshape(JNIEnv *env, jclass clazz, jlong display, jlong window_ptr, jint x, jint y, jint width, jint height) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + XMoveWindow(disp, window, x, y); + XResizeWindow(disp, window, width, height); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_synchronize(JNIEnv *env, jclass clazz, jlong display, jboolean synchronize) { + Display *disp = (Display *)(intptr_t)display; + XSynchronize(disp, synchronize ? True : False); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_getRootWindow(JNIEnv *env, jclass clazz, jlong display, jint screen) { + Display *disp = (Display *)(intptr_t)display; + return RootWindow(disp, screen); +} + +static void updateWindowHints(JNIEnv *env, Display *disp, Window window) { + XWMHints* win_hints = XAllocWMHints(); + if (win_hints == NULL) { + throwException(env, "XAllocWMHints failed"); + return; + } + + win_hints->flags = InputHint; + win_hints->input = True; + if (current_icon_pixmap != 0) { + win_hints->flags |= IconPixmapHint; + win_hints->icon_pixmap = current_icon_pixmap; + } + if (current_icon_mask_pixmap != 0) { + win_hints->flags |= IconMaskHint; + win_hints->icon_mask = current_icon_mask_pixmap; + } + + XSetWMHints(disp, window, win_hints); + XFree(win_hints); + XFlush(disp); +} + +static Window createWindow(JNIEnv* env, Display *disp, int screen, jint window_mode, X11PeerInfo *peer_info, int x, int y, int width, int height, jboolean undecorated, long parent_handle) { + Window parent = (Window)parent_handle; + Window win; + XSetWindowAttributes attribs; + unsigned int attribmask; + + XVisualInfo vis_info; + if ( !XMatchVisualInfo(disp, screen, DefaultDepth(disp, screen), TrueColor, &vis_info) ) { + throwException(env, "Failed to acquire X visual."); + return false; + } + + cmap = XCreateColormap(disp, parent, vis_info.visual, AllocNone); + if (!checkXError(env, disp)) { + return false; + } + attribs.colormap = cmap; + attribs.border_pixel = 0; + attribs.event_mask = ExposureMask | FocusChangeMask | VisibilityChangeMask | StructureNotifyMask | KeyPressMask | KeyReleaseMask | ButtonPressMask | ButtonReleaseMask | PointerMotionMask; + attribmask = CWColormap | CWEventMask | CWBorderPixel | CWBackPixel; + if (isLegacyFullscreen(window_mode)) { + attribmask |= CWOverrideRedirect; + attribs.override_redirect = True; + } + win = XCreateWindow(disp, parent, x, y, width, height, 0, vis_info.depth, InputOutput, vis_info.visual, attribmask, &attribs); + + current_depth = vis_info.depth; + current_visual = vis_info.visual; + + if (!checkXError(env, disp)) { + XFreeColormap(disp, cmap); + return false; + } + if (undecorated) { + // Use Motif decoration hint property and hope the window manager respects them + setDecorations(disp, win, 0); + } + XSizeHints * size_hints = XAllocSizeHints(); + size_hints->flags = PMinSize | PMaxSize; + size_hints->min_width = width; + size_hints->max_width = width; + size_hints->min_height = height; + size_hints->max_height = height; + XSetWMNormalHints(disp, win, size_hints); + updateWindowHints(env, disp, win); + XFree(size_hints); +#define NUM_ATOMS 1 + Atom protocol_atoms[NUM_ATOMS] = {XInternAtom(disp, "WM_DELETE_WINDOW", False)/*, XInternAtom(disp, "WM_TAKE_FOCUS", False)*/}; + XSetWMProtocols(disp, win, protocol_atoms, NUM_ATOMS); + if (window_mode == org_lwjgl_opengl_LinuxDisplay_FULLSCREEN_NETWM) { + Atom fullscreen_atom = XInternAtom(disp, "_NET_WM_STATE_FULLSCREEN", False); + XChangeProperty(disp, win, XInternAtom(disp, "_NET_WM_STATE", False), + XInternAtom(disp, "ATOM", False), 32, PropModeReplace, (const unsigned char*)&fullscreen_atom, 1); + } + if (!checkXError(env, disp)) { + destroyWindow(env, disp, win); + return 0; + } + return win; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_reparentWindow(JNIEnv *env, jclass unused, jlong display, jlong window_ptr, jlong parent_ptr, jint x, jint y) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + Window parent = (Window)parent_ptr; + XReparentWindow(disp, window, parent, x, y); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_mapRaised(JNIEnv *env, jclass unused, jlong display, jlong window_ptr) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + XMapRaised(disp, window); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_getParentWindow(JNIEnv *env, jclass unused, jlong display, jlong window_ptr) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + Window root, parent; + Window *children; + unsigned int nchildren; + if (XQueryTree(disp, window, &root, &parent, &children, &nchildren) == 0) { + throwException(env, "XQueryTree failed"); + return None; + } + if (children != NULL) + XFree(children); + return parent; +} + +JNIEXPORT jboolean JNICALL Java_org_lwjgl_opengl_LinuxDisplay_hasProperty(JNIEnv *env, jclass unusued, jlong display, jlong window_ptr, jlong property_ptr) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + Atom property = (Atom)property_ptr; + int num_props; + Atom *properties = XListProperties(disp, window, &num_props); + if (properties == NULL) + return JNI_FALSE; + jboolean result = JNI_FALSE; + for (int i = 0; i < num_props; i++) { + if (properties[i] == property) { + result = JNI_TRUE; + break; + } + } + XFree(properties); + return result; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_setInputFocus(JNIEnv *env, jclass clazz, jlong display, jlong window_ptr, jlong time) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + XSetInputFocus(disp, window, RevertToParent, time); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nCreateWindow(JNIEnv *env, jclass clazz, jlong display, jint screen, jobject peer_info_handle, jobject mode, jint window_mode, jint x, jint y, jboolean undecorated, jlong parent_handle) { + Display *disp = (Display *)(intptr_t)display; + X11PeerInfo *peer_info = (*env)->GetDirectBufferAddress(env, peer_info_handle); + + jclass cls_displayMode = (*env)->GetObjectClass(env, mode); + + jfieldID fid_width = (*env)->GetFieldID(env, cls_displayMode, "width", "I"); + jfieldID fid_height = (*env)->GetFieldID(env, cls_displayMode, "height", "I"); + + int width = (*env)->GetIntField(env, mode, fid_width); + int height = (*env)->GetIntField(env, mode, fid_height); + + Window win = createWindow(env, disp, screen, window_mode, peer_info, x, y, width, height, undecorated, parent_handle); + + if ((*env)->ExceptionOccurred(env)) + return 0; + + if (!checkXError(env, disp)) + destroyWindow(env, disp, win); + + return win; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nDestroyWindow(JNIEnv *env, jclass clazz, jlong display, jlong window_ptr) { + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + destroyWindow(env, disp, window); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nLockAWT(JNIEnv *env, jclass clazz) { + JAWT jawt; + jawt.version = JAWT_VERSION_1_4; + if (JAWT_GetAWT(env, &jawt) != JNI_TRUE) { + throwException(env, "GetAWT failed"); + return; + } + jawt.Lock(env); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nUnlockAWT(JNIEnv *env, jclass clazz) { + JAWT jawt; + jawt.version = JAWT_VERSION_1_4; + if (JAWT_GetAWT(env, &jawt) != JNI_TRUE) { + throwException(env, "GetAWT failed"); + return; + } + jawt.Unlock(env); +} + +static Pixmap createPixmapFromBuffer(JNIEnv *env, Display *disp, Window window, char *data, int data_size, int width, int height, int format, int depth) { + Pixmap pixmap = XCreatePixmap(disp, window, width, height, depth); + // We need to copy the image data since XDestroyImage will also free its data buffer, which can't be allowed + // since the data buffer is managed by the jvm (it's the storage for the direct ByteBuffer) + char *icon_copy = (char *)malloc(sizeof(*icon_copy)*data_size); + + if (icon_copy == NULL) { + XFreePixmap(disp, pixmap); + throwException(env, "malloc failed"); + return None; + } + memcpy(icon_copy, data, data_size); + XImage *image = XCreateImage(disp, current_visual, depth, format, 0, icon_copy, width, height, 32, 0); + if (image == NULL) { + XFreePixmap(disp, pixmap); + free(icon_copy); + throwException(env, "XCreateImage failed"); + return None; + } + + GC gc = XCreateGC(disp, pixmap, 0, NULL); + XPutImage(disp, pixmap, gc, image, 0, 0, 0, 0, width, height); + XFreeGC(disp, gc); + XDestroyImage(image); + // We won't free icon_copy because it is freed by XDestroyImage + return pixmap; +} + +static void setIcon(JNIEnv *env, Display *disp, Window window, char *rgb_data, int rgb_size, char *mask_data, int mask_size, int width, int height) { + freeIconPixmap(disp); + current_icon_pixmap = createPixmapFromBuffer(env, disp, window, rgb_data, rgb_size, width, height, ZPixmap, current_depth); + if ((*env)->ExceptionCheck(env)) + return; + current_icon_mask_pixmap = createPixmapFromBuffer(env, disp, window, mask_data, mask_size, width, height, XYPixmap, 1); + if ((*env)->ExceptionCheck(env)) { + freeIconPixmap(disp); + return; + } + + updateWindowHints(env, disp, window); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nSetWindowIcon + (JNIEnv *env, jclass clazz, jlong display, jlong window_ptr, jobject icon_rgb_buffer, jint rgb_size, jobject icon_mask_buffer, jint mask_size, jint width, jint height) +{ + Display *disp = (Display *)(intptr_t)display; + Window window = (Window)window_ptr; + char *rgb_data= (char *)(*env)->GetDirectBufferAddress(env, icon_rgb_buffer); + char *mask_data= (char *)(*env)->GetDirectBufferAddress(env, icon_mask_buffer); + + setIcon(env, disp, window, rgb_data, rgb_size, mask_data, mask_size, width, height); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nUngrabKeyboard(JNIEnv *env, jclass unused, jlong display_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + return XUngrabKeyboard(disp, CurrentTime); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGrabKeyboard(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + return XGrabKeyboard(disp, win, False, GrabModeAsync, GrabModeAsync, CurrentTime); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGrabPointer(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr, jlong cursor_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + Cursor cursor = (Cursor)cursor_ptr; + int grab_mask = PointerMotionMask | ButtonPressMask | ButtonReleaseMask; + return XGrabPointer(disp, win, False, grab_mask, GrabModeAsync, GrabModeAsync, win, cursor, CurrentTime); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nSetViewPort(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr, jint screen) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + XWindowAttributes win_attribs; + + XGetWindowAttributes(disp, win, &win_attribs); + XF86VidModeSetViewPort(disp, screen, win_attribs.x, win_attribs.y); +} + +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nUngrabPointer(JNIEnv *env, jclass unused, jlong display_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + return XUngrabPointer(disp, CurrentTime); +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nDefineCursor(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr, jlong cursor_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + Cursor cursor = (Cursor)cursor_ptr; + XDefineCursor(disp, win, cursor); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nCreateBlankCursor(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + unsigned int best_width, best_height; + if (XQueryBestCursor(disp, win, 1, 1, &best_width, &best_height) == 0) { + throwException(env, "Could not query best cursor size"); + return false; + } + Pixmap mask = XCreatePixmap(disp, win, best_width, best_height, 1); + XGCValues gc_values; + gc_values.foreground = 0; + GC gc = XCreateGC(disp, mask, GCForeground, &gc_values); + XFillRectangle(disp, mask, gc, 0, 0, best_width, best_height); + XFreeGC(disp, gc); + XColor dummy_color; + Cursor cursor = XCreatePixmapCursor(disp, mask, mask, &dummy_color, &dummy_color, 0, 0); + XFreePixmap(disp, mask); + return cursor; +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nGetInputFocus(JNIEnv *env, jclass unused, jlong display_ptr) { + Display *disp = (Display *)(intptr_t)display_ptr; + int revert_mode; + Window win; + XGetInputFocus(disp, &win, &revert_mode); + return win; +} + +JNIEXPORT void JNICALL Java_org_lwjgl_opengl_LinuxDisplay_nIconifyWindow(JNIEnv *env, jclass unused, jlong display_ptr, jlong window_ptr, jint screen) { + Display *disp = (Display *)(intptr_t)display_ptr; + Window win = (Window)window_ptr; + XIconifyWindow(disp, win, screen); +} diff --git a/src/native/windows/context.c b/src/native/windows/opengl/context.c similarity index 100% rename from src/native/windows/context.c rename to src/native/windows/opengl/context.c diff --git a/src/native/windows/context.h b/src/native/windows/opengl/context.h similarity index 100% rename from src/native/windows/context.h rename to src/native/windows/opengl/context.h diff --git a/src/native/windows/extgl_wgl.c b/src/native/windows/opengl/extgl_wgl.c similarity index 100% rename from src/native/windows/extgl_wgl.c rename to src/native/windows/opengl/extgl_wgl.c diff --git a/src/native/windows/extgl_wgl.h b/src/native/windows/opengl/extgl_wgl.h similarity index 100% rename from src/native/windows/extgl_wgl.h rename to src/native/windows/opengl/extgl_wgl.h diff --git a/src/native/windows/org_lwjgl_opengl_Pbuffer.c b/src/native/windows/opengl/org_lwjgl_opengl_Pbuffer.c similarity index 100% rename from src/native/windows/org_lwjgl_opengl_Pbuffer.c rename to src/native/windows/opengl/org_lwjgl_opengl_Pbuffer.c diff --git a/src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c b/src/native/windows/opengl/org_lwjgl_opengl_WindowsContextImplementation.c similarity index 100% rename from src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c rename to src/native/windows/opengl/org_lwjgl_opengl_WindowsContextImplementation.c diff --git a/src/native/windows/org_lwjgl_opengl_WindowsPeerInfo.c b/src/native/windows/opengl/org_lwjgl_opengl_WindowsPeerInfo.c similarity index 100% rename from src/native/windows/org_lwjgl_opengl_WindowsPeerInfo.c rename to src/native/windows/opengl/org_lwjgl_opengl_WindowsPeerInfo.c diff --git a/src/native/windows/opengles/context.c b/src/native/windows/opengles/context.c new file mode 100644 index 00000000..9d1ca150 --- /dev/null +++ b/src/native/windows/opengles/context.c @@ -0,0 +1,508 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: context.c -1 $ + * + * @author elias_naue + * @version $Revision: -1 $ + */ + +#include +#include +#include "common_tools.h" +#include "extgl.h" +/*#include "extgl_wgl.h"*/ +#include "context.h" + +extern HINSTANCE dll_handle; // Handle to the LWJGL dll + +#define _CONTEXT_PRIVATE_CLASS_NAME "__lwjgl_context_class_name" + +/* + * Register the LWJGL window class. + * Returns true for success, or false for failure + */ +bool registerWindow(WNDPROC win_proc, LPCTSTR class_name) +{ + WNDCLASS windowClass; + memset(&windowClass, 0, sizeof(windowClass)); + windowClass.style = CS_OWNDC; + windowClass.lpfnWndProc = win_proc; + windowClass.cbClsExtra = 0; + windowClass.cbWndExtra = 0; + windowClass.hInstance = dll_handle; + windowClass.hIcon = LoadIcon(NULL, IDI_APPLICATION); + windowClass.hCursor = LoadCursor(NULL, IDC_ARROW); + windowClass.hbrBackground = NULL; + windowClass.lpszMenuName = NULL; + windowClass.lpszClassName = class_name; + + if (RegisterClass(&windowClass) == 0) { + printfDebug("Failed to register window class\n"); + return false; + } + return true; +} + +static LRESULT CALLBACK dummyWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { + return DefWindowProc(hwnd, msg, wParam, lParam); +} + +/* +bool applyPixelFormat(JNIEnv *env, HDC hdc, int iPixelFormat) { + PIXELFORMATDESCRIPTOR desc; + if (DescribePixelFormat(hdc, iPixelFormat, sizeof(PIXELFORMATDESCRIPTOR), &desc) == 0) { + throwFormattedException(env, "DescribePixelFormat failed (%d)", GetLastError()); + return false; + } + + // make that the pixel format of the device context + if (SetPixelFormat(hdc, iPixelFormat, &desc) == FALSE) { + throwFormattedException(env, "SetPixelFormat failed (%d)", GetLastError()); + return false; + } + return true; +} +*/ + +/* + * Close the window + */ +void closeWindow(HWND *hwnd, HDC *hdc) +{ + // Release device context + if (*hdc != NULL && *hwnd != NULL) { + ReleaseDC(*hwnd, *hdc); + *hdc = NULL; + } + + // Close the window + if (*hwnd != NULL) { + ShowWindow(*hwnd, SW_HIDE); + DestroyWindow(*hwnd); + *hwnd = NULL; + } +} + +void getWindowFlags(DWORD *windowflags_return, DWORD *exstyle_return, bool undecorated, bool child_window) { + DWORD exstyle, windowflags; + if (undecorated) { + exstyle = WS_EX_APPWINDOW; + windowflags = WS_POPUP; + } else if (child_window) { + exstyle = 0; + windowflags = WS_CHILDWINDOW; + } else { + exstyle = WS_EX_APPWINDOW; + windowflags = WS_OVERLAPPED | WS_BORDER | WS_CAPTION | WS_MINIMIZEBOX | WS_SYSMENU; + } + windowflags = windowflags | WS_CLIPCHILDREN | WS_CLIPSIBLINGS; + *windowflags_return = windowflags; + *exstyle_return = exstyle; +} + +HWND createWindow(LPCTSTR window_class_name, int x, int y, int width, int height, bool undecorated, bool child_window, HWND parent) +{ + RECT clientSize; + DWORD exstyle, windowflags; + HWND new_hwnd; + + getWindowFlags(&windowflags, &exstyle, undecorated, child_window); + + clientSize.bottom = height; + clientSize.left = 0; + clientSize.right = width; + clientSize.top = 0; + + AdjustWindowRectEx( + &clientSize, // client-rectangle structure + windowflags, // window styles + FALSE, // menu-present option + exstyle // extended window style + ); + // Create the window now, using that class: + new_hwnd = CreateWindowEx ( + exstyle, + window_class_name, + "", + windowflags, + x, y, clientSize.right - clientSize.left, clientSize.bottom - clientSize.top, + parent, + NULL, + dll_handle, + NULL); + + return new_hwnd; +} + +/* +static int convertToBPE(int bpp) { + int bpe; + switch (bpp) { + case 0: + bpe = 0; + break; + case 32: + case 24: + bpe = 8; + break; + case 16: // Fall through + default: + bpe = 4; + break; + } + return bpe; +} +*/ + +/* +static int findPixelFormatARBFromBPP(JNIEnv *env, HDC hdc, WGLExtensions *extensions, jobject pixel_format, jobject pixelFormatCaps, int bpp, bool window, bool pbuffer, bool double_buffer) { + jclass cls_pixel_format = (*env)->GetObjectClass(env, pixel_format); + int alpha = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "alpha", "I")); + int depth = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "depth", "I")); + int stencil = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "stencil", "I")); + int samples = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "samples", "I")); + int colorSamples = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "colorSamples", "I")); + int num_aux_buffers = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "num_aux_buffers", "I")); + int accum_bpp = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "accum_bpp", "I")); + int accum_alpha = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "accum_alpha", "I")); + + jboolean stereo = (*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "stereo", "Z")); + jboolean floating_point = (*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "floating_point", "Z")); + jboolean floating_point_packed = (*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "floating_point_packed", "Z")); + jboolean sRGB = (*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "sRGB", "Z")); + + int pixel_type; + int iPixelFormat; + unsigned int num_formats_returned; + attrib_list_t attrib_list; + GLuint *pixelFormatCaps_ptr; + jlong pixelFormatCapsSize; + BOOL result; + jlong i; + int bpe = convertToBPE(bpp); + + if ( floating_point ) + pixel_type = WGL_TYPE_RGBA_FLOAT_ARB; + else if ( floating_point_packed ) + pixel_type = WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT; + else + pixel_type = WGL_TYPE_RGBA_ARB; + + initAttribList(&attrib_list); + if (window) { + putAttrib(&attrib_list, WGL_DRAW_TO_WINDOW_ARB); putAttrib(&attrib_list, TRUE); + } + if (pbuffer) { + putAttrib(&attrib_list, WGL_DRAW_TO_PBUFFER_ARB); putAttrib(&attrib_list, TRUE); + } + if (!getBooleanProperty(env, "org.lwjgl.opengl.Display.allowSoftwareOpenGL")) { + putAttrib(&attrib_list, WGL_ACCELERATION_ARB); putAttrib(&attrib_list, WGL_FULL_ACCELERATION_ARB); + } + putAttrib(&attrib_list, WGL_PIXEL_TYPE_ARB); putAttrib(&attrib_list, pixel_type); + putAttrib(&attrib_list, WGL_DOUBLE_BUFFER_ARB); putAttrib(&attrib_list, double_buffer ? TRUE : FALSE); + putAttrib(&attrib_list, WGL_SUPPORT_OPENGL_ARB); putAttrib(&attrib_list, TRUE); + putAttrib(&attrib_list, WGL_RED_BITS_ARB); putAttrib(&attrib_list, bpe); + putAttrib(&attrib_list, WGL_GREEN_BITS_ARB); putAttrib(&attrib_list, bpe); + putAttrib(&attrib_list, WGL_BLUE_BITS_ARB); putAttrib(&attrib_list, bpe); + putAttrib(&attrib_list, WGL_ALPHA_BITS_ARB); putAttrib(&attrib_list, alpha); + putAttrib(&attrib_list, WGL_DEPTH_BITS_ARB); putAttrib(&attrib_list, depth); + putAttrib(&attrib_list, WGL_STENCIL_BITS_ARB); putAttrib(&attrib_list, stencil); + // Assume caller checked extension availability + if (samples > 0) { + putAttrib(&attrib_list, WGL_SAMPLE_BUFFERS_ARB); putAttrib(&attrib_list, 1); + putAttrib(&attrib_list, WGL_SAMPLES_ARB); putAttrib(&attrib_list, samples); // WGL_COVERAGE_SAMPLES_NV if colorSamples > 0 + if ( colorSamples > 0 ) { + putAttrib(&attrib_list, WGL_COLOR_SAMPLES_NV); putAttrib(&attrib_list, colorSamples); + } + } + putAttrib(&attrib_list, WGL_ACCUM_BITS_ARB); putAttrib(&attrib_list, accum_bpp); + putAttrib(&attrib_list, WGL_ACCUM_ALPHA_BITS_ARB); putAttrib(&attrib_list, accum_alpha); + putAttrib(&attrib_list, WGL_STEREO_ARB); putAttrib(&attrib_list, stereo ? TRUE : FALSE); + putAttrib(&attrib_list, WGL_AUX_BUFFERS_ARB); putAttrib(&attrib_list, num_aux_buffers); + if (sRGB) { + putAttrib(&attrib_list, WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB); putAttrib(&attrib_list, TRUE); + } + + // Assume caller checked extension availability + if (pixelFormatCaps != NULL) { + pixelFormatCaps_ptr = (GLuint *)(*env)->GetDirectBufferAddress(env, pixelFormatCaps); + pixelFormatCapsSize = (*env)->GetDirectBufferCapacity(env, pixelFormatCaps); + + for (i = 0; i < pixelFormatCapsSize; i++) + putAttrib(&attrib_list, pixelFormatCaps_ptr[i]); + } + putAttrib(&attrib_list, 0); putAttrib(&attrib_list, 0); + result = extensions->wglChoosePixelFormatARB(hdc, attrib_list.attribs, NULL, 1, &iPixelFormat, &num_formats_returned); + + if (result == FALSE || num_formats_returned < 1) { + throwFormattedException(env, "Failed to find ARB pixel format %d %d\n", result, num_formats_returned); + return -1; + } + return iPixelFormat; +} + +static int findPixelFormatARB(JNIEnv *env, HDC hdc, WGLExtensions *extensions, jobject pixel_format, jobject pixelFormatCaps, bool use_hdc_bpp, bool window, bool pbuffer, bool double_buffer) { + int bpp; + int iPixelFormat; + int fallback_bpp = 16; + jclass cls_pixel_format = (*env)->GetObjectClass(env, pixel_format); + if (use_hdc_bpp) { + bpp = GetDeviceCaps(hdc, BITSPIXEL); + iPixelFormat = findPixelFormatARBFromBPP(env, hdc, extensions, pixel_format, pixelFormatCaps, bpp, window, pbuffer, double_buffer); + if ((*env)->ExceptionOccurred(env)) { + (*env)->ExceptionClear(env); + printfDebugJava(env, "Failed to find ARB pixel format with HDC depth %d, falling back to %d\n", bpp, fallback_bpp); + bpp = fallback_bpp; + } else + return iPixelFormat; + } else + bpp = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "bpp", "I")); + return findPixelFormatARBFromBPP(env, hdc, extensions, pixel_format, pixelFormatCaps, bpp, window, pbuffer, double_buffer); +} +*/ + +/* + * Find an appropriate pixel format + */ + /* +static int findPixelFormatFromBPP(JNIEnv *env, HDC hdc, jobject pixel_format, int bpp, bool double_buffer) +{ + jclass cls_pixel_format = (*env)->GetObjectClass(env, pixel_format); + int alpha = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "alpha", "I")); + int depth = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "depth", "I")); + int stencil = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "stencil", "I")); + int num_aux_buffers = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "num_aux_buffers", "I")); + int accum_bpp = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "accum_bpp", "I")); + int accum_alpha = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "accum_alpha", "I")); + jboolean stereo = (*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "stereo", "Z")); + unsigned int flags = PFD_DRAW_TO_WINDOW | // support window + PFD_SUPPORT_OPENGL | + (double_buffer ? PFD_DOUBLEBUFFER : 0) | + (stereo ? PFD_STEREO : 0); + PIXELFORMATDESCRIPTOR desc; + int iPixelFormat; + PIXELFORMATDESCRIPTOR pfd = { + sizeof(PIXELFORMATDESCRIPTOR), // size of this pfd + 1, // version number + flags, // RGBA type + PFD_TYPE_RGBA, + (BYTE)bpp, + 0, 0, 0, 0, 0, 0, // color bits ignored + (BYTE)alpha, + 0, // shift bit ignored + accum_bpp + accum_alpha, // no accumulation buffer + 0, 0, 0, 0, // accum bits ignored + (BYTE)depth, + (BYTE)stencil, + num_aux_buffers, + PFD_MAIN_PLANE, // main layer + 0, // reserved + 0, 0, 0 // layer masks ignored + }; + // get the best available match of pixel format for the device context + iPixelFormat = ChoosePixelFormat(hdc, &pfd); + if (iPixelFormat == 0) { + throwException(env, "Failed to choose pixel format"); + return -1; + } + + if (DescribePixelFormat(hdc, iPixelFormat, sizeof(PIXELFORMATDESCRIPTOR), &desc) == 0) { + throwException(env, "Could not describe pixel format"); + return -1; + } + + if (desc.cColorBits < bpp) { + throwException(env, "Insufficient color precision"); + return -1; + } + + if (desc.cAlphaBits < alpha) { + throwException(env, "Insufficient alpha precision"); + return -1; + } + + if (desc.cStencilBits < stencil) { + throwException(env, "Insufficient stencil precision"); + return -1; + } + + if (desc.cDepthBits < depth) { + throwException(env, "Insufficient depth buffer precision"); + return -1; + } + + if ((desc.dwFlags & PFD_GENERIC_FORMAT) != 0) { + jboolean allowSoftwareOpenGL = getBooleanProperty(env, "org.lwjgl.opengl.Display.allowSoftwareOpenGL"); + // secondary check for software override + if(!allowSoftwareOpenGL) { + throwException(env, "Pixel format not accelerated"); + return -1; + } + } + + if ((desc.dwFlags & flags) != flags) { + throwException(env, "Capabilities not supported"); + return -1; + } + return iPixelFormat; +} + +static int findPixelFormatDefault(JNIEnv *env, HDC hdc, jobject pixel_format, bool use_hdc_bpp, bool double_buffer) { + int bpp; + int iPixelFormat; + int fallback_bpp = 16; + jclass cls_pixel_format = (*env)->GetObjectClass(env, pixel_format); + if (use_hdc_bpp) { + bpp = GetDeviceCaps(hdc, BITSPIXEL); + iPixelFormat = findPixelFormatFromBPP(env, hdc, pixel_format, bpp, double_buffer); + if ((*env)->ExceptionOccurred(env)) { + (*env)->ExceptionClear(env); + printfDebugJava(env, "Failed to find pixel format with HDC depth %d, falling back to %d\n", bpp, fallback_bpp); + bpp = fallback_bpp; + } else + return iPixelFormat; + } else + bpp = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "bpp", "I")); + return findPixelFormatFromBPP(env, hdc, pixel_format, bpp, double_buffer); +} +*/ + +/* +static bool validateAndGetExtensions(JNIEnv *env, WGLExtensions *extensions, HDC dummy_hdc, HGLRC dummy_hglrc, int samples, int colorSamples, bool floating_point, bool floating_point_packed, bool sRGB, jobject pixelFormatCaps) { + if (!wglMakeCurrent(dummy_hdc, dummy_hglrc)) { + throwException(env, "Could not bind context to dummy window"); + return false; + } + extgl_InitWGL(extensions); + + if (!extensions->WGL_ARB_pixel_format) { + throwException(env, "No support for WGL_ARB_pixel_format"); + return false; + } + if (samples > 0 && !extensions->WGL_ARB_multisample) { + throwException(env, "No support for WGL_ARB_multisample"); + return false; + } + if (colorSamples > 0 && !extensions->WGL_NV_multisample_coverage) { + throwException(env, "No support for WGL_NV_multisample_coverage"); + return false; + } + + // Apparently, some drivers don't report WGL_ARB_pixel_format_float + // even though GL_ARB_color_buffer_float and WGL_ATI_color_format_float + // is supported. + if (floating_point && !(extensions->WGL_ARB_pixel_format_float || extensions->WGL_ATI_pixel_format_float)) { + throwException(env, "No support for WGL_ARB_pixel_format_float nor WGL_ATI_pixel_format_float"); + return false; + } + if (floating_point_packed && !(extensions->WGL_EXT_pixel_format_packed_float)) { + throwException(env, "No support for WGL_EXT_pixel_format_packed_float"); + return false; + } + if (sRGB && !(extensions->WGL_ARB_framebuffer_sRGB)) { + throwException(env, "No support for WGL_ARB_framebuffer_sRGB"); + return false; + } + if (pixelFormatCaps != NULL && !extensions->WGL_ARB_render_texture) { + throwException(env, "No support for WGL_ARB_render_texture"); + return false; + } + return true; +} + +int findPixelFormatOnDC(JNIEnv *env, HDC hdc, int origin_x, int origin_y, jobject pixel_format, jobject pixelFormatCaps, bool use_hdc_bpp, bool window, bool pbuffer, bool double_buffer) { + HGLRC dummy_hglrc; + HDC saved_current_hdc; + HGLRC saved_current_hglrc; + WGLExtensions extensions; + HWND dummy_hwnd; + HDC dummy_hdc; + int pixel_format_id; + jclass cls_pixel_format = (*env)->GetObjectClass(env, pixel_format); + + int samples = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "samples", "I")); + int colorSamples = (int)(*env)->GetIntField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "colorSamples", "I")); + bool floating_point = (bool)(*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "floating_point", "Z")); + bool floating_point_packed = (bool)(*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "floating_point_packed", "Z")); + bool sRGB = (bool)(*env)->GetBooleanField(env, pixel_format, (*env)->GetFieldID(env, cls_pixel_format, "sRGB", "Z")); + bool use_arb_selection = samples > 0 || floating_point || floating_point_packed || sRGB || pbuffer || pixelFormatCaps != NULL; + + pixel_format_id = findPixelFormatDefault(env, hdc, pixel_format, use_hdc_bpp, double_buffer); + if (!(*env)->ExceptionOccurred(env) && use_arb_selection) { + dummy_hwnd = createDummyWindow(origin_x, origin_y); + if (dummy_hwnd == NULL) { + throwException(env, "Could not create dummy window"); + return -1; + } + dummy_hdc = GetDC(dummy_hwnd); + if (!applyPixelFormat(env, dummy_hdc, pixel_format_id)) { + closeWindow(&dummy_hwnd, &dummy_hdc); + return -1; + } + dummy_hglrc = wglCreateContext(dummy_hdc); + if (dummy_hglrc == NULL) { + closeWindow(&dummy_hwnd, &dummy_hdc); + throwException(env, "Failed to create OpenGL rendering context"); + return -1; + } + // Save the current HDC and HGLRC to avoid disruption + saved_current_hdc = wglGetCurrentDC(); + saved_current_hglrc = wglGetCurrentContext(); + if (validateAndGetExtensions(env, &extensions, dummy_hdc, dummy_hglrc, samples, colorSamples, floating_point, floating_point_packed, sRGB, pixelFormatCaps)) { + pixel_format_id = findPixelFormatARB(env, hdc, &extensions, pixel_format, pixelFormatCaps, use_hdc_bpp, window, pbuffer, double_buffer); + } + wglMakeCurrent(saved_current_hdc, saved_current_hglrc); + wglDeleteContext(dummy_hglrc); + closeWindow(&dummy_hwnd, &dummy_hdc); + } + return pixel_format_id; +} +*/ + +static bool registerDummyWindow() { + static bool window_registered = false; + if (!window_registered) { + if (!registerWindow(dummyWindowProc, _CONTEXT_PRIVATE_CLASS_NAME)) { + return false; + } + window_registered = true; + } + return true; +} + +HWND createDummyWindow(int origin_x, int origin_y) { + if (!registerDummyWindow()) + return NULL; + return createWindow(_CONTEXT_PRIVATE_CLASS_NAME, origin_x, origin_y, 1, 1, false, false, NULL); +} diff --git a/src/native/windows/opengles/context.h b/src/native/windows/opengles/context.h new file mode 100644 index 00000000..5370bbdf --- /dev/null +++ b/src/native/windows/opengles/context.h @@ -0,0 +1,98 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: context.h -1 $ + * + * @author elias_naur + * @version $Revision: -1 $ + */ + +#ifndef __LWJGL_CONTEXT_H +#define __LWJGL_CONTEXT_H + +#include +#include +#include "common_tools.h" +#include "extgl.h" +/*#include "extgl_wgl.h"*/ + +typedef struct { + union { + HWND hwnd; + /* + struct { + HPBUFFERARB pbuffer; + // Contains the function pointers that + // created the pbuffer + WGLExtensions extensions; + } pbuffer; + */ + } u; + HDC drawable_hdc; +} WindowsPeerInfo; + +/* + * Register the LWJGL window class. + * Returns true for success, or false for failure + */ +extern bool registerWindow(); + +//extern bool applyPixelFormat(JNIEnv *env, HDC hdc, int iPixelFormat); + +/* + * Close the window + */ +extern void closeWindow(HWND *hwnd, HDC *hdc); + +/** + * Create a dummy window suitable to create contexts from + */ +extern HWND createDummyWindow(int x, int y); + +/** + * Return appropriate window and extended style flags from the given fullscreen and undecorated property + */ +extern void getWindowFlags(DWORD *windowflags_return, DWORD *exstyle_return, bool undecorated, bool child_window); + +/* + * Create a window with the specified position, size, and + * fullscreen attribute. The window will have DirectInput associated + * with it. + * + * Returns true for success, or false for failure + */ +extern HWND createWindow(LPCTSTR window_class_name, int x, int y, int width, int height, bool undecorated, bool child_window, HWND parent); + +//extern int findPixelFormatOnDC(JNIEnv *env, HDC hdc, int origin_x, int origin_y, jobject pixel_format, jobject pixelFormatCaps, bool use_hdc_bpp, bool window, bool pbuffer, bool double_buffer); + +#endif diff --git a/src/native/windows/opengles/extgl_wgl.c b/src/native/windows/opengles/extgl_wgl.c new file mode 100644 index 00000000..d1c57e3b --- /dev/null +++ b/src/native/windows/opengles/extgl_wgl.c @@ -0,0 +1,70 @@ +/* ---------------------------------------------------------------------------- +Copyright (c) 2001-2002, Lev Povalahev +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * The name of the author may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, +OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF +THE POSSIBILITY OF SUCH DAMAGE. +------------------------------------------------------------------------------*/ +/* + Lev Povalahev + + levp@gmx.net + + http://www.uni-karlsruhe.de/~uli2/ + +*/ + +#include +#include +#include "extgl.h" + +static HMODULE lib_gl_handle = NULL; + +void *extgl_GetProcAddress(const char *name) { + void *t = eglGetProcAddress(name); + if (t == NULL) + { + t = GetProcAddress(lib_gl_handle, name); + if (t == NULL) + { + printfDebug("Could not locate symbol %s\n", name); + } + } + return t; +} + +bool extgl_Open(JNIEnv *env) { + if (lib_gl_handle != NULL) + return true; + // load the dynamic libraries for OpenGL + lib_gl_handle = LoadLibrary("libGLESv2.dll"); + if (lib_gl_handle == NULL) { + throwException(env, "Could not load OpenGL ES library"); + return false; + } + return true; +} + +void extgl_Close(void) { + FreeLibrary(lib_gl_handle); + lib_gl_handle = NULL; +} diff --git a/src/native/windows/opengles/org_lwjgl_opengl_WindowsPeerInfo.c b/src/native/windows/opengles/org_lwjgl_opengl_WindowsPeerInfo.c new file mode 100644 index 00000000..353cb4fc --- /dev/null +++ b/src/native/windows/opengles/org_lwjgl_opengl_WindowsPeerInfo.c @@ -0,0 +1,57 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * $Id: org_lwjgl_opengl_WindowsPeerInfo.c -1 $ + * + * @author elias_naur + * @version $Revision: -1 $ + */ + +#include +#include "org_lwjgl_opengl_WindowsPeerInfo.h" +#include "context.h" +#include "common_tools.h" + +JNIEXPORT jobject JNICALL Java_org_lwjgl_opengl_WindowsPeerInfo_createHandle(JNIEnv *env, jclass clazz) { + return newJavaManagedByteBuffer(env, sizeof(WindowsPeerInfo)); +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_WindowsPeerInfo_nGetHdc(JNIEnv *env, jclass unused, jobject peer_info_handle) { + WindowsPeerInfo *peer_info = (WindowsPeerInfo *)(*env)->GetDirectBufferAddress(env, peer_info_handle); + return (intptr_t)peer_info->drawable_hdc; +} + +JNIEXPORT jlong JNICALL Java_org_lwjgl_opengl_WindowsPeerInfo_nGetHwnd(JNIEnv *env, jclass unused, jobject peer_info_handle) { + WindowsPeerInfo *peer_info = (WindowsPeerInfo *)(*env)->GetDirectBufferAddress(env, peer_info_handle); + return (intptr_t)peer_info->u.hwnd; +} diff --git a/src/native/windows/org_lwjgl_opengl_Display.c b/src/native/windows/org_lwjgl_opengl_Display.c index 1d0e0237..9352774b 100644 --- a/src/native/windows/org_lwjgl_opengl_Display.c +++ b/src/native/windows/org_lwjgl_opengl_Display.c @@ -1,35 +1,35 @@ -/* +/* * Copyright (c) 2002-2008 LWJGL Project * All rights reserved. - * + * * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are + * modification, are permitted provided that the following conditions are * met: - * - * * Redistributions of source code must retain the above copyright + * + * * Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * * Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * - * * Neither the name of 'LWJGL' nor the names of - * its contributors may be used to endorse or promote products derived + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived * from this software without specific prior written permission. - * + * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - + /** * $Id$ * @@ -43,7 +43,7 @@ #include #include #include "Window.h" -#include "extgl_wgl.h" +/*#include "extgl_wgl.h"*/ #include "common_tools.h" #include "display.h" #include "org_lwjgl_opengl_WindowsDisplay.h" @@ -121,8 +121,8 @@ static void handleMessages(JNIEnv *env) { PM_REMOVE // removal options )) { - if (msg.message == WM_QUIT) - break; + if (msg.message == WM_QUIT) + break; TranslateMessage(&msg); DispatchMessage(&msg); } @@ -303,14 +303,14 @@ JNIEXPORT void JNICALL Java_org_lwjgl_opengl_WindowsDisplay_nReshape(JNIEnv *env RECT clientSize; getWindowFlags(&windowflags, &exstyle, undecorated, child); - + // If we're not a fullscreen window, adjust the height to account for the // height of the title bar: clientSize.bottom = height; clientSize.left = 0; clientSize.right = width; clientSize.top = 0; - + AdjustWindowRectEx( &clientSize, // client-rectangle structure windowflags, // window styles @@ -339,7 +339,7 @@ static HICON createWindowIcon(JNIEnv *env, jint *pixels, jint width, jint height int maskPixelsOff; int scanlineWidth; HBITMAP colorDIB; - + memset(&bitmapInfo, 0, sizeof(BITMAPV5HEADER)); bitmapInfo.bV5Size = sizeof(BITMAPV5HEADER); bitmapInfo.bV5Width = width; @@ -380,7 +380,7 @@ static HICON createWindowIcon(JNIEnv *env, jint *pixels, jint width, jint height DeleteObject(colorDIB); // Convert alpha map to pixel packed mask - + // number of bytes it takes to fit a bit packed scan line. widthInBytes = (width & 0x7) != 0 ? (width >> 3) + 1 : (width >> 3); @@ -392,9 +392,9 @@ static HICON createWindowIcon(JNIEnv *env, jint *pixels, jint width, jint height imageSize = scanlineWidth*height; maskPixels = (unsigned char*)malloc(sizeof(unsigned char)*imageSize); memset(maskPixels, 0xFF, sizeof(unsigned char)*imageSize); - + cursorMask = CreateBitmap(width, height, 1, 1, maskPixels); - + memset(&iconInfo, 0, sizeof(ICONINFO)); iconInfo.hbmMask = cursorMask; iconInfo.hbmColor = colorBitmap; diff --git a/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java b/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java index 0b5a0b33..e6087f10 100644 --- a/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java +++ b/src/templates/org/lwjgl/opengl/EXT_texture_lod_bias.java @@ -31,11 +31,28 @@ */ package org.lwjgl.opengl; -import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.Extension; @Extension(postfix = "EXT", className = "EXTTextureLODBias") public interface EXT_texture_lod_bias { + + /** + * Accepted by the <target> parameters of GetTexEnvfv, GetTexEnviv, + * TexEnvi, TexEnvf, Texenviv, and TexEnvfv: + */ int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; + + /** + * When the <target> parameter of GetTexEnvfv, GetTexEnviv, TexEnvi, + * TexEnvf, TexEnviv, and TexEnvfv is TEXTURE_FILTER_CONTROL_EXT, then + * the value of <pname> may be: + */ int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; + + /** + * Accepted by the <pname> parameters of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; -} + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/AMD_compressed_3DC_texture.java b/src/templates/org/lwjgl/opengles/AMD_compressed_3DC_texture.java new file mode 100644 index 00000000..7de9d731 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/AMD_compressed_3DC_texture.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface AMD_compressed_3DC_texture { + + /** + * Accepted by the <internalFormat> parameter of CompressedTexImage2D and + * CompressedTexImage3DOES: + */ + int GL_3DC_X_AMD = 0x87F9, + GL_3DC_XY_AMD = 0x87FA; + +} diff --git a/src/templates/org/lwjgl/opengles/AMD_compressed_ATC_texture.java b/src/templates/org/lwjgl/opengles/AMD_compressed_ATC_texture.java new file mode 100644 index 00000000..2b2d41ed --- /dev/null +++ b/src/templates/org/lwjgl/opengles/AMD_compressed_ATC_texture.java @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface AMD_compressed_ATC_texture { + + /** + * Accepted by the <internalformat> parameter of CompressedTexImage2D and + * CompressedTexImage3DOES. + */ + int GL_ATC_RGB_AMD = 0x8C92, + GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93, + GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE; + +} diff --git a/src/templates/org/lwjgl/opengles/AMD_performance_monitor.java b/src/templates/org/lwjgl/opengles/AMD_performance_monitor.java new file mode 100644 index 00000000..91629c7c --- /dev/null +++ b/src/templates/org/lwjgl/opengles/AMD_performance_monitor.java @@ -0,0 +1,123 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface AMD_performance_monitor { + + /** Accepted by the <pame> parameter of GetPerfMonitorCounterInfoAMD */ + int GL_COUNTER_TYPE_AMD = 0x8BC0; + int GL_COUNTER_RANGE_AMD = 0x8BC1; + + /** + * Returned as a valid value in <data> parameter of + * GetPerfMonitorCounterInfoAMD if <pname> = COUNTER_TYPE_AMD + */ + int GL_UNSIGNED_INT = 0x1405; + int GL_FLOAT = 0x1406; + int GL_UNSIGNED_INT64_AMD = 0x8BC2; + int GL_PERCENTAGE_AMD = 0x8BC3; + + /** Accepted by the <pname> parameter of GetPerfMonitorCounterDataAMD */ + + int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; + int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; + int GL_PERFMON_RESULT_AMD = 0x8BC6; + + void glGetPerfMonitorGroupsAMD(@OutParameter @Check(value = "1", canBeNull = true) @GLint IntBuffer numGroups, + @AutoSize("groups") @GLsizei int groupsSize, @GLuint IntBuffer groups); + + void glGetPerfMonitorCountersAMD(@GLuint int group, + @OutParameter @Check(value = "1") @GLint IntBuffer numCounters, + @OutParameter @Check(value = "1") @GLint IntBuffer maxActiveCounters, + @AutoSize("counters") @GLsizei int countersSize, + @GLuint IntBuffer counters); + + void glGetPerfMonitorGroupStringAMD(@GLuint int group, + @AutoSize("groupString") @GLsizei int bufSize, + @OutParameter @GLsizei @Check(value = "1", canBeNull = true) IntBuffer length, + @OutParameter @GLchar ByteBuffer groupString); + + @Alternate("glGetPerfMonitorGroupStringAMD") + @GLreturn(value = "groupString", maxLength = "bufSize") + void glGetPerfMonitorGroupStringAMD2(@GLuint int group, @GLsizei int bufSize, + @OutParameter @GLsizei @Constant("groupString_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer groupString); + + void glGetPerfMonitorCounterStringAMD(@GLuint int group, @GLuint int counter, @AutoSize("counterString") @GLsizei int bufSize, + @OutParameter @GLsizei @Check(value = "1", canBeNull = true) IntBuffer length, + @OutParameter @GLchar ByteBuffer counterString); + + @Alternate("glGetPerfMonitorCounterStringAMD") + @GLreturn(value = "counterString", maxLength = "bufSize") + void glGetPerfMonitorCounterStringAMD2(@GLuint int group, @GLuint int counter, @GLsizei int bufSize, + @OutParameter @GLsizei @Constant("counterString_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer counterString); + + void glGetPerfMonitorCounterInfoAMD(@GLuint int group, @GLuint int counter, @GLenum int pname, @Check(value = "16") @GLvoid ByteBuffer data); + + void glGenPerfMonitorsAMD(@AutoSize("monitors") @GLsizei int n, @OutParameter @GLuint IntBuffer monitors); + + @Alternate("glGenPerfMonitorsAMD") + @GLreturn("monitors") + void glGenPerfMonitorsAMD2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer monitors); + + void glDeletePerfMonitorsAMD(@AutoSize("monitors") @GLsizei int n, @GLuint IntBuffer monitors); + + @Alternate("glDeletePerfMonitorsAMD") + void glDeletePerfMonitorsAMD(@Constant("1") @GLsizei int n, @Constant(value = "APIUtil.getBufferInt().put(0, monitor), 0", keepParam = true) int monitor); + + void glSelectPerfMonitorCountersAMD(@GLuint int monitor, boolean enable, @GLuint int group, @AutoSize("counterList") int numCounters, @GLuint IntBuffer counterList); + + @Alternate("glSelectPerfMonitorCountersAMD") + void glSelectPerfMonitorCountersAMD(@GLuint int monitor, boolean enable, @GLuint int group, @Constant("1") int numCounters, @Constant(value = "APIUtil.getBufferInt().put(0, counter), 0", keepParam = true) int counter); + + void glBeginPerfMonitorAMD(@GLuint int monitor); + + void glEndPerfMonitorAMD(@GLuint int monitor); + + void glGetPerfMonitorCounterDataAMD(@GLuint int monitor, @GLenum int pname, @AutoSize("data") @GLsizei int dataSize, + @OutParameter @GLuint IntBuffer data, + @OutParameter @GLint @Check(value = "1", canBeNull = true) IntBuffer bytesWritten); + + @Alternate("glGetPerfMonitorCounterDataAMD") + @GLreturn("data") + void glGetPerfMonitorCounterDataAMD2(@GLuint int monitor, @GLenum int pname, @Constant("4") @GLsizei int dataSize, + @OutParameter @GLuint IntBuffer data, + @OutParameter @GLint @Constant("null, 0") IntBuffer bytesWritten); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/AMD_program_binary_Z400.java b/src/templates/org/lwjgl/opengles/AMD_program_binary_Z400.java new file mode 100644 index 00000000..07522996 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/AMD_program_binary_Z400.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface AMD_program_binary_Z400 { + + /** Accepted by the <binaryFormat> parameter of ProgramBinaryOES: */ + int GL_Z400_BINARY_AMD = 0x8740; + +} diff --git a/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_blit.java b/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_blit.java new file mode 100644 index 00000000..ac6e9bb2 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_blit.java @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLbitfield; +import org.lwjgl.util.generator.opengl.GLenum; + +public interface ANGLE_framebuffer_blit { + + /** + * Accepted by the <target> parameter of BindFramebuffer, + * CheckFramebufferStatus, FramebufferTexture2D, FramebufferTexture3DOES, + * FramebufferRenderbuffer, and + * GetFramebufferAttachmentParameteriv: + */ + int GL_READ_FRAMEBUFFER_ANGLE = 0x8CA8, + GL_DRAW_FRAMEBUFFER_ANGLE = 0x8CA9; + + /** Accepted by the <pname> parameters of GetIntegerv and GetFloatv: */ + int GL_DRAW_FRAMEBUFFER_BINDING_ANGLE = 0x8CA6, // alias FRAMEBUFFER_BINDING + GL_READ_FRAMEBUFFER_BINDING_ANGLE = 0x8CAA; + + void glBlitFramebufferANGLE(int srcX0, int srcY0, int srcX1, int srcY1, + int dstX0, int dstY0, int dstX1, int dstY1, + @GLbitfield int mask, @GLenum int filter); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_multisample.java b/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_multisample.java new file mode 100644 index 00000000..3f52fbf0 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ANGLE_framebuffer_multisample.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; + +public interface ANGLE_framebuffer_multisample { + + /** Accepted by the <pname> parameter of GetRenderbufferParameteriv: */ + int GL_RENDERBUFFER_SAMPLES_ANGLE = 0x8CAB; + + /** Returned by CheckFramebufferStatus: */ + int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8D56; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * and GetFloatv: + */ + int GL_MAX_SAMPLES_ANGLE = 0x8D57; + + void glRenderbufferStorageMultisampleANGLE( + @GLenum int target, @GLsizei int samples, + @GLenum int internalformat, + @GLsizei int width, @GLsizei int height); +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/APPLE_framebuffer_multisample.java b/src/templates/org/lwjgl/opengles/APPLE_framebuffer_multisample.java new file mode 100644 index 00000000..87c53889 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/APPLE_framebuffer_multisample.java @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; + +public interface APPLE_framebuffer_multisample { + + /** Accepted by the <pname> parameter of GetRenderbufferParameteriv: */ + int GL_RENDERBUFFER_SAMPLES_APPLE = 0x8CAB; + + /** Returned by CheckFramebufferStatus: */ + int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8D56; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_MAX_SAMPLES_APPLE = 0x8D57; + + /** + * Accepted by the <target> parameter of BindFramebuffer, + * CheckFramebufferStatus, FramebufferTexture2D, FramebufferRenderbuffer, and + * GetFramebufferAttachmentParameteriv: + */ + int GL_READ_FRAMEBUFFER_APPLE = 0x8CA8, + GL_DRAW_FRAMEBUFFER_APPLE = 0x8CA9; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_DRAW_FRAMEBUFFER_BINDING_APPLE = 0x8CA6, // FRAMEBUFFER_BINDING + GL_READ_FRAMEBUFFER_BINDING_APPLE = 0x8CAA; + + void glRenderbufferStorageMultisampleAPPLE( + @GLenum int target, @GLsizei int samples, + @GLenum int internalformat, + @GLsizei int width, @GLsizei int height); + + void glResolveMultisampleFramebufferAPPLE(); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/APPLE_rgb_422.java b/src/templates/org/lwjgl/opengles/APPLE_rgb_422.java new file mode 100644 index 00000000..ccb0a8e5 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/APPLE_rgb_422.java @@ -0,0 +1,55 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface APPLE_rgb_422 { + + /** + * Accepted by the <format> parameter of DrawPixels, ReadPixels, TexImage1D, + * TexImage2D, GetTexImage, TexImage3D, TexSubImage1D, TexSubImage2D, + * TexSubImage3D, GetHistogram, GetMinmax, ConvolutionFilter1D, + * ConvolutionFilter2D, GetConvolutionFilter, SeparableFilter2D, + * GetSeparableFilter, ColorTable, GetColorTable: + */ + int GL_RGB_422_APPLE = 0x8A1F; + + /** + * Accepted by the <type> parameter of DrawPixels, ReadPixels, TexImage1D, + * TexImage2D, GetTexImage, TexImage3D, TexSubImage1D, TexSubImage2D, + * TexSubImage3D, GetHistogram, GetMinmax, ConvolutionFilter1D, + * ConvolutionFilter2D, GetConvolutionFilter, SeparableFilter2D, + * GetSeparableFilter, ColorTable, GetColorTable: + */ + int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; + int GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/APPLE_texture_format_BGRA8888.java b/src/templates/org/lwjgl/opengles/APPLE_texture_format_BGRA8888.java new file mode 100644 index 00000000..74c143bb --- /dev/null +++ b/src/templates/org/lwjgl/opengles/APPLE_texture_format_BGRA8888.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface APPLE_texture_format_BGRA8888 { + + /** Accepted by the <format> parameters of TexImage2D and TexSubImage2D: */ + int GL_BGRA_EXT = 0x80E1; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/APPLE_texture_max_level.java b/src/templates/org/lwjgl/opengles/APPLE_texture_max_level.java new file mode 100644 index 00000000..e99098af --- /dev/null +++ b/src/templates/org/lwjgl/opengles/APPLE_texture_max_level.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface APPLE_texture_max_level { + + /** + * Accepted by the <pname> parameter of TexParameteri, TexParameterf, + * TexParameteriv, TexParameterfv, GetTexParameteriv, and GetTexParameterfv: + */ + int GL_TEXTURE_MAX_LEVEL_APPLE = 0x813D; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/ARB_draw_buffers.java b/src/templates/org/lwjgl/opengles/ARB_draw_buffers.java new file mode 100644 index 00000000..1e3c864b --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ARB_draw_buffers.java @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Alternate; +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Const; +import org.lwjgl.util.generator.Constant; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; + +import java.nio.IntBuffer; + +public interface ARB_draw_buffers { + + /** Accepted by the <pname> parameters of GetIntegerv, GetFloatv: */ + int GL_MAX_DRAW_BUFFERS_ARB = 0x8824, + GL_DRAW_BUFFER0_ARB = 0x8825, + GL_DRAW_BUFFER1_ARB = 0x8826, + GL_DRAW_BUFFER2_ARB = 0x8827, + GL_DRAW_BUFFER3_ARB = 0x8828, + GL_DRAW_BUFFER4_ARB = 0x8829, + GL_DRAW_BUFFER5_ARB = 0x882A, + GL_DRAW_BUFFER6_ARB = 0x882B, + GL_DRAW_BUFFER7_ARB = 0x882C, + GL_DRAW_BUFFER8_ARB = 0x882D, + GL_DRAW_BUFFER9_ARB = 0x882E, + GL_DRAW_BUFFER10_ARB = 0x882F, + GL_DRAW_BUFFER11_ARB = 0x8830, + GL_DRAW_BUFFER12_ARB = 0x8831, + GL_DRAW_BUFFER13_ARB = 0x8832, + GL_DRAW_BUFFER14_ARB = 0x8833, + GL_DRAW_BUFFER15_ARB = 0x8834; + + void glDrawBuffersARB(@AutoSize("buffers") @GLsizei int size, @Const @GLenum IntBuffer buffers); + + @Alternate("glDrawBuffersARB") + void glDrawBuffersARB(@Constant("1") @GLsizei int size, @Constant(value = "APIUtil.getBufferInt().put(0, buffer), 0", keepParam = true) int buffer); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/ARB_half_float_pixel.java b/src/templates/org/lwjgl/opengles/ARB_half_float_pixel.java new file mode 100644 index 00000000..3ec788d8 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ARB_half_float_pixel.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface ARB_half_float_pixel { + + /** + * Accepted by the <type> parameter of DrawPixels, ReadPixels, + * TexImage1D, TexImage2D, TexImage3D, GetTexImage, TexSubImage1D, + * TexSubImage2D, TexSubImage3D: + */ + int GL_HALF_FLOAT_ARB = 0x140B; + +} diff --git a/src/templates/org/lwjgl/opengles/ARB_texture_rectangle.java b/src/templates/org/lwjgl/opengles/ARB_texture_rectangle.java new file mode 100644 index 00000000..7140d736 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ARB_texture_rectangle.java @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface ARB_texture_rectangle { + + /** + * Accepted by the <cap> parameter of Enable, Disable and IsEnabled; + * by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv + * and GetDoublev; and by the <target> parameter of BindTexture, + * GetTexParameterfv, GetTexParameteriv, TexParameterf, TexParameteri, + * TexParameterfv and TexParameteriv: + * Accepted by the <target> parameter of GetTexImage, + * GetTexLevelParameteriv, GetTexLevelParameterfv, TexImage2D, + * CopyTexImage2D, TexSubImage2D and CopySubTexImage2D: + */ + int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv and GetDoublev: + */ + int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; + + /** + * Accepted by the <target> parameter of GetTexLevelParameteriv, + * GetTexLevelParameterfv, GetTexParameteriv and TexImage2D: + */ + int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, + * GetIntegerv and GetFloatv: + */ + int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; + + /** + * Returned by <type> parameter of GetActiveUniform when the location + * <index> for program object <program> is of type sampler2DRect: + */ + int GL_SAMPLER_2D_RECT_ARB = 0x8B63; + + /** + * Returned by <type> parameter of GetActiveUniform when the location + * <index> for program object <program> is of type sampler2DRectShadow: + */ + int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/ARM_mali_shader_binary.java b/src/templates/org/lwjgl/opengles/ARM_mali_shader_binary.java new file mode 100644 index 00000000..323524bc --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ARM_mali_shader_binary.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface ARM_mali_shader_binary { + + /** Accepted by the <binaryFormat> parameter of ShaderBinary: */ + int GL_MALI_SHADER_BINARY_ARM = 0x8F60; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/ARM_rgba8.java b/src/templates/org/lwjgl/opengles/ARM_rgba8.java new file mode 100644 index 00000000..8b2ab4cb --- /dev/null +++ b/src/templates/org/lwjgl/opengles/ARM_rgba8.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface ARM_rgba8 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorage: */ + int GL_RGBA8_OES = 0x8058; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/DMP_shader_binary.java b/src/templates/org/lwjgl/opengles/DMP_shader_binary.java new file mode 100644 index 00000000..4e887ad3 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/DMP_shader_binary.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface DMP_shader_binary { + + /** Accepted by the <binaryformat> parameter of ShaderBinary: */ + int GL_SHADER_BINARY_DMP = 0x9250; + +} diff --git a/src/templates/org/lwjgl/opengles/EXT_Cg_shader.java b/src/templates/org/lwjgl/opengles/EXT_Cg_shader.java new file mode 100644 index 00000000..bb272296 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_Cg_shader.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_Cg_shader { + + /** + * You can pass GL_CG_VERTEX_SHADER_EXT to glCreateShader instead of GL_VERTEX_SHADER to create a vertex shader + * that will parse and compile its shader source with the Cg compiler front-end rather than the GLSL front-end. Likewise, you + * can pass GL_CG_FRAGMENT_SHADER_EXT to glCreateShader instead of GL_FRAGMENT_SHADER to create a fragment shader object + * that will parse and compile its shader source with the Cg front-end rather than the GLSL front-end. + */ + int GL_CG_VERTEX_SHADER_EXT = 0x890E, + GL_CG_FRAGMENT_SHADER_EXT = 0x890F; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_bgra.java b/src/templates/org/lwjgl/opengles/EXT_bgra.java new file mode 100644 index 00000000..89d35c6e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_bgra.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_bgra { + + /** + * Accepted by the <format> parameter of DrawPixels, GetTexImage, + * ReadPixels, TexImage1D, and TexImage2D: + */ + int GL_BGR_EXT = 0x80E0, + GL_BGRA_EXT = 0x80E1; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_blend_minmax.java b/src/templates/org/lwjgl/opengles/EXT_blend_minmax.java new file mode 100644 index 00000000..6f6b77c7 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_blend_minmax.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface EXT_blend_minmax { + + /** Accepted by the <mode> parameter of BlendEquationEXT: */ + int GL_FUNC_ADD_EXT = 0x8006, + GL_MIN_EXT = 0x8007, + GL_MAX_EXT = 0x8008; + + void glBlendEquationEXT(@GLenum int mode); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_discard_framebuffer.java b/src/templates/org/lwjgl/opengles/EXT_discard_framebuffer.java new file mode 100644 index 00000000..a7aa2d4c --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_discard_framebuffer.java @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Const; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; + +import java.nio.IntBuffer; + +public interface EXT_discard_framebuffer { + + /** + * Accepted in the <attachments> parameter of DiscardFramebufferEXT when the + * default framebuffer is bound to <target>: + */ + int GL_COLOR_EXT = 0x1800, + GL_DEPTH_EXT = 0x1801, + GL_STENCIL_EXT = 0x1802; + + void glDiscardFramebufferEXT(@GLenum int target, @AutoSize("attachments") @GLsizei int numAttachments, @Const @GLenum IntBuffer attachments); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_frag_depth.java b/src/templates/org/lwjgl/opengles/EXT_frag_depth.java new file mode 100644 index 00000000..940aee6f --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_frag_depth.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_frag_depth { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_multi_draw_arrays.java b/src/templates/org/lwjgl/opengles/EXT_multi_draw_arrays.java new file mode 100644 index 00000000..4ebc6cbc --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_multi_draw_arrays.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLint; +import org.lwjgl.util.generator.opengl.GLsizei; + +import java.nio.IntBuffer; + +public interface EXT_multi_draw_arrays { + + void glMultiDrawArraysEXT(@GLenum int mode, @GLint IntBuffer first, @Check("first.remaining()") @GLsizei IntBuffer count, @AutoSize("first") @GLsizei int primcount); + + //void glMultiDrawElementsEXT(GLenum mode, GLsizei*count, GLenum type, const GLvoid**indices, GLsizei primcount) + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_packed_float.java b/src/templates/org/lwjgl/opengles/EXT_packed_float.java new file mode 100644 index 00000000..afd6a7a5 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_packed_float.java @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_packed_float { + + /** + * Accepted by the <internalformat> parameter of TexImage1D, + * TexImage2D, TexImage3D, CopyTexImage1D, CopyTexImage2D, and + * RenderbufferStorage: + */ + int GL_R11F_G11F_B10F_EXT = 0x8C3A; + + /** + * Accepted by the <type> parameter of DrawPixels, ReadPixels, + * TexImage1D, TexImage2D, GetTexImage, TexImage3D, TexSubImage1D, + * TexSubImage2D, TexSubImage3D: + */ + int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; + + /** Accepted by the <pname> parameters of GetIntegerv and GetFloatv: */ + int GL_RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_read_format_bgra.java b/src/templates/org/lwjgl/opengles/EXT_read_format_bgra.java new file mode 100644 index 00000000..bde3f98a --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_read_format_bgra.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_read_format_bgra { + + /** Accepted by the <format> parameter of ReadPixels: */ + int GL_BGRA_EXT = 0x80E1; + + /** Accepted by the <type> parameter of ReadPixels: */ + int GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT = 0x8365, + GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT = 0x8366; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_shader_texture_lod.java b/src/templates/org/lwjgl/opengles/EXT_shader_texture_lod.java new file mode 100644 index 00000000..d67dfe1f --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_shader_texture_lod.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_shader_texture_lod { + +} diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_array.java b/src/templates/org/lwjgl/opengles/EXT_texture_array.java new file mode 100644 index 00000000..9ade6e6d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_array.java @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLuint; + +public interface EXT_texture_array { + + /** + * Accepted by the <target> parameter of TexParameteri, TexParameteriv, + * TexParameterf, TexParameterfv, and BindTexture: + */ + int GL_TEXTURE_1D_ARRAY_EXT = 0x8C18, + GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; + + /** + * Accepted by the <target> parameter of TexImage3D, TexSubImage3D, + * CopyTexSubImage3D, CompressedTexImage3D, and CompressedTexSubImage3D: + */ + int GL_PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B; + + /** + * Accepted by the <target> parameter of TexImage2D, TexSubImage2D, + * CopyTexImage2D, CopyTexSubImage2D, CompressedTexImage2D, and + * CompressedTexSubImage2D: + */ + int GL_PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv + * and GetFloatv: + */ + int GL_TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C, + GL_TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D, + GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF; + + /** + * Accepted by the <pname> parameter of + * GetFramebufferAttachmentParameterivEXT: + */ + int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4; + + /** Returned by the <type> parameter of GetActiveUniform: */ + int GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0, + GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1; + + void glFramebufferTextureLayerEXT(@GLenum int target, @GLenum int attachment, @GLuint int texture, int level, int layer); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_compression_dxt1.java b/src/templates/org/lwjgl/opengles/EXT_texture_compression_dxt1.java new file mode 100644 index 00000000..28ba3025 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_compression_dxt1.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Extension; + +@Extension(postfix = "EXT", className = "EXTTextureCompressionDXT1") +public interface EXT_texture_compression_dxt1 { + + /** + * Accepted by the <internalformat> parameter of CompressedTexImage2D + * and the <format> parameter of CompressedTexSubImage2D: + */ + int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0, + GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_compression_latc.java b/src/templates/org/lwjgl/opengles/EXT_texture_compression_latc.java new file mode 100644 index 00000000..53d8d8d1 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_compression_latc.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Extension; + +@Extension(postfix = "EXT", className = "EXTTextureCompressionLATC") +public interface EXT_texture_compression_latc { + + /** + * Accepted by the <internalformat> parameter of TexImage2D, + * CopyTexImage2D, and CompressedTexImage2D and the <format> parameter + * of CompressedTexSubImage2D: + */ + int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70, + GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71, + GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72, + GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73; + +} diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_compression_s3tc.java b/src/templates/org/lwjgl/opengles/EXT_texture_compression_s3tc.java new file mode 100644 index 00000000..1d8e6922 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_compression_s3tc.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Extension; + +@Extension(postfix = "EXT", className = "EXTTextureCompressionS3TC") +public interface EXT_texture_compression_s3tc { + + /** + * Accepted by the <internalformat> parameter of TexImage2D, CopyTexImage2D, + * and CompressedTexImage2D and the <format> parameter of + * CompressedTexSubImage2D: + */ + int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0, + GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1, + GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2, + GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_filter_anisotropic.java b/src/templates/org/lwjgl/opengles/EXT_texture_filter_anisotropic.java new file mode 100644 index 00000000..86f84ce8 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_filter_anisotropic.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_texture_filter_anisotropic { + + /** + * Accepted by the <pname> parameters of GetTexParameterfv, + * GetTexParameteriv, TexParameterf, TexParameterfv, TexParameteri, + * and TexParameteriv: + */ + int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; + + /** + * Accepted by the <pname> parameters of GetBooleanv, + * GetFloatv, and GetIntegerv: + */ + int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_format_BGRA8888.java b/src/templates/org/lwjgl/opengles/EXT_texture_format_BGRA8888.java new file mode 100644 index 00000000..1bebe846 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_format_BGRA8888.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_texture_format_BGRA8888 { + + /** + * Accepted by the <format> and <internalformat> parameters of TexImage2D + * and the <format> parameter of TexSubImage2D: + */ + int GL_BGRA_EXT = 0x80E1; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_lod_bias.java b/src/templates/org/lwjgl/opengles/EXT_texture_lod_bias.java new file mode 100644 index 00000000..55734842 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_lod_bias.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Extension; + +@Extension(postfix = "EXT", className = "EXTTextureLODBias") +public interface EXT_texture_lod_bias { + + /** + * Accepted by the <target> parameters of GetTexEnvfv, GetTexEnviv, + * TexEnvi, TexEnvf, Texenviv, and TexEnvfv: + */ + int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; + + /** + * When the <target> parameter of GetTexEnvfv, GetTexEnviv, TexEnvi, + * TexEnvf, TexEnviv, and TexEnvfv is TEXTURE_FILTER_CONTROL_EXT, then + * the value of <pname> may be: + */ + int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; + + /** + * Accepted by the <pname> parameters of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/EXT_texture_type_2_10_10_10_REV.java b/src/templates/org/lwjgl/opengles/EXT_texture_type_2_10_10_10_REV.java new file mode 100644 index 00000000..fa384245 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/EXT_texture_type_2_10_10_10_REV.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface EXT_texture_type_2_10_10_10_REV { + + /** Accepted by the <type> parameter of TexImage2D and TexImage3D: */ + int GL_UNSIGNED_INT_2_10_10_10_REV_EXT = 0x8368; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/GLES20.java b/src/templates/org/lwjgl/opengles/GLES20.java new file mode 100644 index 00000000..ae705d2d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/GLES20.java @@ -0,0 +1,1010 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +public interface GLES20 { + + /** ClearBufferMask */ + int GL_DEPTH_BUFFER_BIT = 0x00000100, + GL_STENCIL_BUFFER_BIT = 0x00000400, + GL_COLOR_BUFFER_BIT = 0x00004000; + + /** Boolean */ + int GL_FALSE = 0, + GL_TRUE = 1; + + /** BeginMode */ + int GL_POINTS = 0x0000, + GL_LINES = 0x0001, + GL_LINE_LOOP = 0x0002, + GL_LINE_STRIP = 0x0003, + GL_TRIANGLES = 0x0004, + GL_TRIANGLE_STRIP = 0x0005, + GL_TRIANGLE_FAN = 0x0006; + + /** BlendingFactorDest */ + int GL_ZERO = 0, + GL_ONE = 1, + GL_SRC_COLOR = 0x0300, + GL_ONE_MINUS_SRC_COLOR = 0x0301, + GL_SRC_ALPHA = 0x0302, + GL_ONE_MINUS_SRC_ALPHA = 0x0303, + GL_DST_ALPHA = 0x0304, + GL_ONE_MINUS_DST_ALPHA = 0x0305; + + /** BlendingFactorSrc */ + int +/* GL_ZERO */ +/* GL_ONE */ + GL_DST_COLOR = 0x0306, + GL_ONE_MINUS_DST_COLOR = 0x0307, + GL_SRC_ALPHA_SATURATE = 0x0308; +/* GL_SRC_ALPHA */ +/* GL_ONE_MINUS_SRC_ALPHA */ +/* GL_DST_ALPHA */ +/* GL_ONE_MINUS_DST_ALPHA */ + + /** BlendEquationSeparate */ + int GL_FUNC_ADD = 0x8006, + GL_BLEND_EQUATION = 0x8009, + GL_BLEND_EQUATION_RGB = 0x8009, /* same as BLEND_EQUATION */ + GL_BLEND_EQUATION_ALPHA = 0x883D; + + /** BlendSubtract */ + int GL_FUNC_SUBTRACT = 0x800A, + GL_FUNC_REVERSE_SUBTRACT = 0x800B; + + /** Separate Blend Functions */ + int GL_BLEND_DST_RGB = 0x80C8, + GL_BLEND_SRC_RGB = 0x80C9, + GL_BLEND_DST_ALPHA = 0x80CA, + GL_BLEND_SRC_ALPHA = 0x80CB, + GL_CONSTANT_COLOR = 0x8001, + GL_ONE_MINUS_CONSTANT_COLOR = 0x8002, + GL_CONSTANT_ALPHA = 0x8003, + GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004, + GL_BLEND_COLOR = 0x8005; + + /** Buffer Objects */ + int GL_ARRAY_BUFFER = 0x8892, + GL_ELEMENT_ARRAY_BUFFER = 0x8893, + GL_ARRAY_BUFFER_BINDING = 0x8894, + GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895, + GL_STREAM_DRAW = 0x88E0, + GL_STATIC_DRAW = 0x88E4, + GL_DYNAMIC_DRAW = 0x88E8, + GL_BUFFER_SIZE = 0x8764, + GL_BUFFER_USAGE = 0x8765, + GL_CURRENT_VERTEX_ATTRIB = 0x8626; + + /** CullFaceMode */ + int GL_FRONT = 0x0404, + GL_BACK = 0x0405, + GL_FRONT_AND_BACK = 0x0408; + +/** DepthFunction */ +/* GL_NEVER */ +/* GL_LESS */ +/* GL_EQUAL */ +/* GL_LEQUAL */ +/* GL_GREATER */ +/* GL_NOTEQUAL */ +/* GL_GEQUAL */ +/* GL_ALWAYS */ + + /** EnableCap */ + int GL_TEXTURE_2D = 0x0DE1, + GL_CULL_FACE = 0x0B44, + GL_BLEND = 0x0BE2, + GL_DITHER = 0x0BD0, + GL_STENCIL_TEST = 0x0B90, + GL_DEPTH_TEST = 0x0B71, + GL_SCISSOR_TEST = 0x0C11, + GL_POLYGON_OFFSET_FILL = 0x8037, + GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E, + GL_SAMPLE_COVERAGE = 0x80A0; + + /** ErrorCode */ + int GL_NO_ERROR = 0, + GL_INVALID_ENUM = 0x0500, + GL_INVALID_VALUE = 0x0501, + GL_INVALID_OPERATION = 0x0502, + GL_OUT_OF_MEMORY = 0x0505; + + /** FrontFaceDirection */ + int GL_CW = 0x0900, + GL_CCW = 0x0901; + + /** GetPName */ + int GL_LINE_WIDTH = 0x0B21, + GL_ALIASED_POINT_SIZE_RANGE = 0x846D, + GL_ALIASED_LINE_WIDTH_RANGE = 0x846E, + GL_CULL_FACE_MODE = 0x0B45, + GL_FRONT_FACE = 0x0B46, + GL_DEPTH_RANGE = 0x0B70, + GL_DEPTH_WRITEMASK = 0x0B72, + GL_DEPTH_CLEAR_VALUE = 0x0B73, + GL_DEPTH_FUNC = 0x0B74, + GL_STENCIL_CLEAR_VALUE = 0x0B91, + GL_STENCIL_FUNC = 0x0B92, + GL_STENCIL_FAIL = 0x0B94, + GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95, + GL_STENCIL_PASS_DEPTH_PASS = 0x0B96, + GL_STENCIL_REF = 0x0B97, + GL_STENCIL_VALUE_MASK = 0x0B93, + GL_STENCIL_WRITEMASK = 0x0B98, + GL_STENCIL_BACK_FUNC = 0x8800, + GL_STENCIL_BACK_FAIL = 0x8801, + GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802, + GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803, + GL_STENCIL_BACK_REF = 0x8CA3, + GL_STENCIL_BACK_VALUE_MASK = 0x8CA4, + GL_STENCIL_BACK_WRITEMASK = 0x8CA5, + GL_VIEWPORT = 0x0BA2, + GL_SCISSOR_BOX = 0x0C10, + /* GL_SCISSOR_TEST */ + GL_COLOR_CLEAR_VALUE = 0x0C22, + GL_COLOR_WRITEMASK = 0x0C23, + GL_UNPACK_ALIGNMENT = 0x0CF5, + GL_PACK_ALIGNMENT = 0x0D05, + GL_MAX_TEXTURE_SIZE = 0x0D33, + GL_MAX_VIEWPORT_DIMS = 0x0D3A, + GL_SUBPIXEL_BITS = 0x0D50, + GL_RED_BITS = 0x0D52, + GL_GREEN_BITS = 0x0D53, + GL_BLUE_BITS = 0x0D54, + GL_ALPHA_BITS = 0x0D55, + GL_DEPTH_BITS = 0x0D56, + GL_STENCIL_BITS = 0x0D57, + GL_POLYGON_OFFSET_UNITS = 0x2A00, + /* GL_POLYGON_OFFSET_FILL */ + GL_POLYGON_OFFSET_FACTOR = 0x8038, + GL_TEXTURE_BINDING_2D = 0x8069, + GL_SAMPLE_BUFFERS = 0x80A8, + GL_SAMPLES = 0x80A9, + GL_SAMPLE_COVERAGE_VALUE = 0x80AA, + GL_SAMPLE_COVERAGE_INVERT = 0x80AB; + + /** GetTextureParameter */ + int +/* GL_TEXTURE_MAG_FILTER */ +/* GL_TEXTURE_MIN_FILTER */ +/* GL_TEXTURE_WRAP_S */ +/* GL_TEXTURE_WRAP_T */ + GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2, + GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3; + + /** HintMode */ + int GL_DONT_CARE = 0x1100, + GL_FASTEST = 0x1101, + GL_NICEST = 0x1102; + + /** HintTarget */ + int GL_GENERATE_MIPMAP_HINT = 0x8192; + + /** DataType */ + int GL_BYTE = 0x1400, + GL_UNSIGNED_BYTE = 0x1401, + GL_SHORT = 0x1402, + GL_UNSIGNED_SHORT = 0x1403, + GL_INT = 0x1404, + GL_UNSIGNED_INT = 0x1405, + GL_FLOAT = 0x1406, + GL_FIXED = 0x140C; + + /** PixelFormat */ + int GL_DEPTH_COMPONENT = 0x1902, + GL_ALPHA = 0x1906, + GL_RGB = 0x1907, + GL_RGBA = 0x1908, + GL_LUMINANCE = 0x1909, + GL_LUMINANCE_ALPHA = 0x190A; + + /** PixelType */ + int +/* GL_UNSIGNED_BYTE */ + GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033, + GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034, + GL_UNSIGNED_SHORT_5_6_5 = 0x8363; + + /** Shaders */ + int GL_FRAGMENT_SHADER = 0x8B30, + GL_VERTEX_SHADER = 0x8B31, + GL_MAX_VERTEX_ATTRIBS = 0x8869, + GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB, + GL_MAX_VARYING_VECTORS = 0x8DFC, + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D, + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C, + GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872, + GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD, + GL_SHADER_TYPE = 0x8B4F, + GL_DELETE_STATUS = 0x8B80, + GL_LINK_STATUS = 0x8B82, + GL_VALIDATE_STATUS = 0x8B83, + GL_ATTACHED_SHADERS = 0x8B85, + GL_ACTIVE_UNIFORMS = 0x8B86, + GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87, + GL_ACTIVE_ATTRIBUTES = 0x8B89, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A, + GL_SHADING_LANGUAGE_VERSION = 0x8B8C, + GL_CURRENT_PROGRAM = 0x8B8D; + + /** StencilFunction */ + int GL_NEVER = 0x0200, + GL_LESS = 0x0201, + GL_EQUAL = 0x0202, + GL_LEQUAL = 0x0203, + GL_GREATER = 0x0204, + GL_NOTEQUAL = 0x0205, + GL_GEQUAL = 0x0206, + GL_ALWAYS = 0x0207; + + /** StencilOp */ + int +/* GL_ZERO */ + GL_KEEP = 0x1E00, + GL_REPLACE = 0x1E01, + GL_INCR = 0x1E02, + GL_DECR = 0x1E03, + GL_INVERT = 0x150A, + GL_INCR_WRAP = 0x8507, + GL_DECR_WRAP = 0x8508; + + /** StringName */ + int GL_VENDOR = 0x1F00, + GL_RENDERER = 0x1F01, + GL_VERSION = 0x1F02, + GL_EXTENSIONS = 0x1F03; + + /** TextureMagFilter */ + int GL_NEAREST = 0x2600, + GL_LINEAR = 0x2601; + + /** TextureMinFilter */ + int +/* GL_NEAREST */ +/* GL_LINEAR */ + GL_NEAREST_MIPMAP_NEAREST = 0x2700, + GL_LINEAR_MIPMAP_NEAREST = 0x2701, + GL_NEAREST_MIPMAP_LINEAR = 0x2702, + GL_LINEAR_MIPMAP_LINEAR = 0x2703; + + /** TextureParameterName */ + int GL_TEXTURE_MAG_FILTER = 0x2800, + GL_TEXTURE_MIN_FILTER = 0x2801, + GL_TEXTURE_WRAP_S = 0x2802, + GL_TEXTURE_WRAP_T = 0x2803; + + /** TextureTarget */ + int +/* GL_TEXTURE_2D */ + GL_TEXTURE = 0x1702, + GL_TEXTURE_CUBE_MAP = 0x8513, + GL_TEXTURE_BINDING_CUBE_MAP = 0x8514, + GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A, + GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; + + /** TextureUnit */ + int GL_TEXTURE0 = 0x84C0, + GL_TEXTURE1 = 0x84C1, + GL_TEXTURE2 = 0x84C2, + GL_TEXTURE3 = 0x84C3, + GL_TEXTURE4 = 0x84C4, + GL_TEXTURE5 = 0x84C5, + GL_TEXTURE6 = 0x84C6, + GL_TEXTURE7 = 0x84C7, + GL_TEXTURE8 = 0x84C8, + GL_TEXTURE9 = 0x84C9, + GL_TEXTURE10 = 0x84CA, + GL_TEXTURE11 = 0x84CB, + GL_TEXTURE12 = 0x84CC, + GL_TEXTURE13 = 0x84CD, + GL_TEXTURE14 = 0x84CE, + GL_TEXTURE15 = 0x84CF, + GL_TEXTURE16 = 0x84D0, + GL_TEXTURE17 = 0x84D1, + GL_TEXTURE18 = 0x84D2, + GL_TEXTURE19 = 0x84D3, + GL_TEXTURE20 = 0x84D4, + GL_TEXTURE21 = 0x84D5, + GL_TEXTURE22 = 0x84D6, + GL_TEXTURE23 = 0x84D7, + GL_TEXTURE24 = 0x84D8, + GL_TEXTURE25 = 0x84D9, + GL_TEXTURE26 = 0x84DA, + GL_TEXTURE27 = 0x84DB, + GL_TEXTURE28 = 0x84DC, + GL_TEXTURE29 = 0x84DD, + GL_TEXTURE30 = 0x84DE, + GL_TEXTURE31 = 0x84DF, + GL_ACTIVE_TEXTURE = 0x84E0; + + /** TextureWrapMode */ + int GL_REPEAT = 0x2901, + GL_CLAMP_TO_EDGE = 0x812F, + GL_MIRRORED_REPEAT = 0x8370; + + /** Uniform Types */ + int GL_FLOAT_VEC2 = 0x8B50, + GL_FLOAT_VEC3 = 0x8B51, + GL_FLOAT_VEC4 = 0x8B52, + GL_INT_VEC2 = 0x8B53, + GL_INT_VEC3 = 0x8B54, + GL_INT_VEC4 = 0x8B55, + GL_BOOL = 0x8B56, + GL_BOOL_VEC2 = 0x8B57, + GL_BOOL_VEC3 = 0x8B58, + GL_BOOL_VEC4 = 0x8B59, + GL_FLOAT_MAT2 = 0x8B5A, + GL_FLOAT_MAT3 = 0x8B5B, + GL_FLOAT_MAT4 = 0x8B5C, + GL_SAMPLER_2D = 0x8B5E, + GL_SAMPLER_CUBE = 0x8B60; + + /** Vertex Arrays */ + int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622, + GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623, + GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624, + GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A, + GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645, + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F; + + /** Read Format */ + int GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A, + GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B; + + /** Shader Source */ + int GL_COMPILE_STATUS = 0x8B81, + GL_INFO_LOG_LENGTH = 0x8B84, + GL_SHADER_SOURCE_LENGTH = 0x8B88, + GL_SHADER_COMPILER = 0x8DFA; + + /** Shader Binary */ + int GL_SHADER_BINARY_FORMATS = 0x8DF8, + GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9; + + /** Shader Precision-Specified Types */ + int GL_LOW_FLOAT = 0x8DF0, + GL_MEDIUM_FLOAT = 0x8DF1, + GL_HIGH_FLOAT = 0x8DF2, + GL_LOW_INT = 0x8DF3, + GL_MEDIUM_INT = 0x8DF4, + GL_HIGH_INT = 0x8DF5; + + /** Framebuffer Object. */ + int GL_FRAMEBUFFER = 0x8D40, + GL_RENDERBUFFER = 0x8D41, + GL_RGBA4 = 0x8056, + GL_RGB5_A1 = 0x8057, + GL_RGB565 = 0x8D62, + GL_DEPTH_COMPONENT16 = 0x81A5, + GL_STENCIL_INDEX = 0x1901, + GL_STENCIL_INDEX8 = 0x8D48, + GL_RENDERBUFFER_WIDTH = 0x8D42, + GL_RENDERBUFFER_HEIGHT = 0x8D43, + GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44, + GL_RENDERBUFFER_RED_SIZE = 0x8D50, + GL_RENDERBUFFER_GREEN_SIZE = 0x8D51, + GL_RENDERBUFFER_BLUE_SIZE = 0x8D52, + GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53, + GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54, + GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3, + GL_COLOR_ATTACHMENT0 = 0x8CE0, + GL_DEPTH_ATTACHMENT = 0x8D00, + GL_STENCIL_ATTACHMENT = 0x8D20, + GL_NONE = 0, + GL_FRAMEBUFFER_COMPLETE = 0x8CD5, + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6, + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7, + GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9, + GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD, + GL_FRAMEBUFFER_BINDING = 0x8CA6, + GL_RENDERBUFFER_BINDING = 0x8CA7, + GL_MAX_RENDERBUFFER_SIZE = 0x84E8, + GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506; + + void glActiveTexture(@GLenum int texture); + + void glAttachShader(@GLuint int program, @GLuint int shader); + + void glBindAttribLocation(@GLuint int program, @GLuint int index, @NullTerminated @Const @GLchar ByteBuffer name); + + @Alternate("glBindAttribLocation") + void glBindAttribLocation(@GLuint int program, @GLuint int index, @NullTerminated CharSequence name); + + @Code(" StateTracker.bindBuffer(target, buffer);") + void glBindBuffer(@GLenum int target, @GLuint int buffer); + + void glBindFramebuffer(@GLenum int target, @GLuint int framebuffer); + + void glBindRenderbuffer(@GLenum int target, @GLuint int renderbuffer); + + void glBindTexture(@GLenum int target, @GLuint int texture); + + void glBlendColor(@GLclampf float red, @GLclampf float green, @GLclampf float blue, @GLclampf float alpha); + + void glBlendEquation(@GLenum int mode); + + void glBlendEquationSeparate(@GLenum int modeRGB, @GLenum int modeAlpha); + + void glBlendFunc(@GLenum int sfactor, @GLenum int dfactor); + + void glBlendFuncSeparate(@GLenum int srcRGB, @GLenum int dstRGB, @GLenum int srcAlpha, @GLenum int dstAlpha); + + @GenerateAutos + void glBufferData(@GLenum int target, @AutoSize("data") @GLsizeiptr long size, + @Const @GLbyte @GLshort @GLint @GLfloat Buffer data, @GLenum int usage); + + void glBufferSubData(@GLenum int target, @GLintptr long offset, @AutoSize("data") @GLsizeiptr long size, + @Check @Const @GLbyte @GLshort @GLint @GLfloat Buffer data); + + @GLenum + int glCheckFramebufferStatus(@GLenum int target); + + void glClear(@GLbitfield int mask); + + void glClearColor(@GLclampf float red, @GLclampf float green, @GLclampf float blue, @GLclampf float alpha); + + void glClearDepthf(@GLclampf float depth); + + void glClearStencil(@GLint int s); + + void glColorMask(@GLboolean boolean red, @GLboolean boolean green, @GLboolean boolean blue, @GLboolean boolean alpha); + + void glCompileShader(@GLuint int shader); + + void glCompressedTexImage2D(@GLenum int target, int level, @GLenum int internalformat, @GLsizei int width, @GLsizei int height, int border, @AutoSize("data") @GLsizei int imageSize, + @Check @Const @GLvoid ByteBuffer data); + + void glCompressedTexSubImage2D(@GLenum int target, int level, int xoffset, int yoffset, @GLsizei int width, @GLsizei int height, @GLenum int format, @AutoSize("data") @GLsizei int imageSize, + @Check @Const @GLvoid ByteBuffer data); + + void glCopyTexImage2D(@GLenum int target, @GLint int level, @GLenum int internalformat, @GLint int x, @GLint int y, @GLsizei int width, @GLsizei int height, @GLint int border); + + void glCopyTexSubImage2D(@GLenum int target, @GLint int level, @GLint int xoffset, @GLint int yoffset, @GLint int x, @GLint int y, @GLsizei int width, @GLsizei int height); + + @GLuint + int glCreateProgram(); + + @GLuint + int glCreateShader(@GLenum int type); + + void glCullFace(@GLenum int mode); + + void glDeleteBuffers(@AutoSize("buffers") @GLsizei int n, @Const @GLuint IntBuffer buffers); + + @Alternate("glDeleteBuffers") + void glDeleteBuffers(@Constant("1") @GLsizei int n, @Constant(value = "APIUtil.getBufferInt().put(0, buffer), 0", keepParam = true) int buffer); + + void glDeleteFramebuffers(@AutoSize("framebuffers") int n, @Const @GLuint IntBuffer framebuffers); + + @Alternate("glDeleteFramebuffers") + void glDeleteFramebuffers(@Constant("1") int n, @Constant(value = "APIUtil.getBufferInt().put(0, framebuffer), 0", keepParam = true) int framebuffer); + + void glDeleteProgram(@GLuint int program); + + void glDeleteRenderbuffers(@AutoSize("renderbuffers") int n, @Const @GLuint IntBuffer renderbuffers); + + @Alternate("glDeleteRenderbuffers") + void glDeleteRenderbuffers(@Constant("1") int n, @Constant(value = "APIUtil.getBufferInt().put(0, renderbuffer), 0", keepParam = true) int renderbuffer); + + void glDeleteShader(@GLuint int shader); + + void glDeleteTextures(@AutoSize("textures") @GLsizei int n, @Const @GLuint IntBuffer textures); + + @Alternate("glDeleteTextures") + void glDeleteTextures(@Constant("1") @GLsizei int n, @Constant(value = "APIUtil.getBufferInt().put(0, texture), 0", keepParam = true) int texture); + + void glDepthFunc(@GLenum int func); + + void glDepthMask(@GLboolean boolean flag); + + void glDepthRangef(@GLclampf float zNear, @GLclampf float zFar); + + void glDetachShader(@GLuint int program, @GLuint int shader); + + void glDisable(@GLenum int cap); + + void glDisableVertexAttribArray(@GLuint int index); + + void glDrawArrays(@GLenum int mode, @GLint int first, @GLsizei int count); + + void glDrawElements(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type, + @BufferObject(BufferKind.ElementVBO) @Const @GLubyte @GLushort @GLuint Buffer indices); + + void glEnable(@GLenum int cap); + + void glEnableVertexAttribArray(@GLuint int index); + + void glFinish(); + + void glFlush(); + + void glFramebufferRenderbuffer(@GLenum int target, @GLenum int attachment, @GLenum int renderbuffertarget, @GLuint int renderbuffer); + + void glFramebufferTexture2D(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, @GLint int level); + + void glFrontFace(@GLenum int mode); + + void glGenBuffers(@AutoSize("buffers") @GLsizei int n, @OutParameter @GLuint IntBuffer buffers); + + @Alternate("glGenBuffers") + @GLreturn("buffers") + void glGenBuffers2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer buffers); + + void glGenerateMipmap(@GLenum int target); + + void glGenFramebuffers(@AutoSize("framebuffers") int n, @OutParameter @GLuint IntBuffer framebuffers); + + @Alternate("glGenFramebuffers") + @GLreturn("framebuffers") + void glGenFramebuffers2(@Constant("1") int n, @OutParameter @GLuint IntBuffer framebuffers); + + void glGenRenderbuffers(@AutoSize("renderbuffers") int n, @OutParameter @GLuint IntBuffer renderbuffers); + + @Alternate("glGenRenderbuffers") + @GLreturn("renderbuffers") + void glGenRenderbuffers2(@Constant("1") int n, @OutParameter @GLuint IntBuffer renderbuffers); + + void glGenTextures(@AutoSize("textures") @GLsizei int n, @OutParameter @GLuint IntBuffer textures); + + @Alternate("glGenTextures") + @GLreturn("textures") + void glGenTextures2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer textures); + + void glGetActiveAttrib(@GLuint int program, @GLuint int index, @AutoSize("name") @GLsizei int bufsize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @Check("1") IntBuffer size, + @OutParameter @Check("1") @GLenum IntBuffer type, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveAttrib. This version returns both size and type in the sizeType buffer (at .position() and .position() + 1). */ + @Alternate("glGetActiveAttrib") + @GLreturn(value = "name", maxLength = "bufsize") + void glGetActiveAttrib2(@GLuint int program, @GLuint int index, @GLsizei int bufsize, + @OutParameter @Constant("name_length, 0") @GLsizei IntBuffer length, + @OutParameter @Check("2") IntBuffer sizeType, + @OutParameter @Constant("sizeType, sizeType.position() + 1") @GLenum IntBuffer type, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveAttrib. This version returns only the attrib name. */ + @Alternate(value = "glGetActiveAttrib", javaAlt = true) + @GLreturn(value = "name", maxLength = "bufsize") + void glGetActiveAttrib(@GLuint int program, @GLuint int index, @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("name_length, 0, APIUtil.getBufferInt(), 0, APIUtil.getBufferInt(), 1") IntBuffer length, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveAttrib. This version returns only the attrib size. */ + @Alternate(value = "glGetActiveAttrib", javaAlt = true) + @GLreturn(value = "size") + void glGetActiveAttribSize(@GLuint int program, @GLuint int index, @Constant("0") @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("null, 0") IntBuffer length, + @OutParameter IntBuffer size, + @OutParameter @GLenum @Constant("size, 1") IntBuffer type, // Reuse size buffer and ignore + @OutParameter @GLchar @Constant("APIUtil.getBufferByte(0), 0") ByteBuffer name); + + /** Overloads glGetActiveAttrib. This version returns only the attrib type. */ + @Alternate(value = "glGetActiveAttrib", javaAlt = true) + @GLreturn(value = "type") + void glGetActiveAttribType(@GLuint int program, @GLuint int index, @Constant("0") @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("null, 0") IntBuffer length, + @OutParameter @Constant("type, 1") IntBuffer size, // Reuse type buffer and ignore + @OutParameter @GLenum IntBuffer type, + @OutParameter @GLchar @Constant("APIUtil.getBufferByte(0), 0") ByteBuffer name); + + void glGetActiveUniform(@GLuint int program, @GLuint int index, @AutoSize("name") @GLsizei int bufsize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @Check("1") @GLsizei IntBuffer size, + @OutParameter @Check("1") @GLenum IntBuffer type, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveUniform. This version returns both size and type in the sizeType buffer (at .position() and .position() + 1). */ + @Alternate("glGetActiveUniform") + @GLreturn(value = "name", maxLength = "bufsize") + void glGetActiveUniform2(@GLuint int program, @GLuint int index, @GLsizei int bufsize, + @OutParameter @Constant("name_length, 0") @GLsizei IntBuffer length, + @OutParameter @Check("2") IntBuffer sizeType, + @OutParameter @Constant("sizeType, sizeType.position() + 1") @GLenum IntBuffer type, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveUniformARB. This version returns only the uniform name. */ + @Alternate(value = "glGetActiveUniform", javaAlt = true) + @GLreturn(value = "name", maxLength = "bufsize") + void glGetActiveUniform(@GLuint int program, @GLuint int index, @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("name_length, 0, APIUtil.getBufferInt(), 0, APIUtil.getBufferInt(), 1") IntBuffer length, + @OutParameter @GLchar ByteBuffer name); + + /** Overloads glGetActiveUniform. This version returns only the uniform size. */ + @Alternate(value = "glGetActiveUniform", javaAlt = true) + @GLreturn(value = "size") + void glGetActiveUniformSize(@GLuint int program, @GLuint int index, @Constant("0") @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("null, 0") IntBuffer length, + @OutParameter IntBuffer size, + @OutParameter @GLenum @Constant("size, 1") IntBuffer type, // Reuse size buffer and ignore + @OutParameter @GLchar @Constant("APIUtil.getBufferByte(0), 0") ByteBuffer name); + + /** Overloads glGetActiveUniform. This version returns only the uniform type. */ + @Alternate(value = "glGetActiveUniform", javaAlt = true) + @GLreturn(value = "type") + void glGetActiveUniformType(@GLuint int program, @GLuint int index, @Constant("0") @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("null, 0") IntBuffer length, + @OutParameter @Constant("type, 1") IntBuffer size, // Reuse type buffer and ignore + @OutParameter @GLenum IntBuffer type, + @OutParameter @GLchar @Constant("APIUtil.getBufferByte(0), 0") ByteBuffer name); + + void glGetAttachedShaders(@GLuint int program, @AutoSize("shaders") @GLsizei int maxCount, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer count, + @OutParameter @GLuint IntBuffer shaders); + + int glGetAttribLocation(@GLuint int program, @NullTerminated @Const @GLchar ByteBuffer name); + + @Alternate("glGetAttribLocation") + int glGetAttribLocation(@GLuint int program, @NullTerminated CharSequence name); + + @StripPostfix("params") + void glGetBooleanv(@GLenum int pname, @OutParameter @Check("1") @GLboolean ByteBuffer params); + + @Alternate("glGetBooleanv") + @GLreturn("params") + @StripPostfix("params") + void glGetBooleanv2(@GLenum int pname, @OutParameter @GLboolean ByteBuffer params); + + @StripPostfix("params") + void glGetBufferParameteriv(@GLenum int target, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetBufferParameteriv") + @GLreturn("params") + @StripPostfix("params") + void glGetBufferParameteriv2(@GLenum int target, @GLenum int pname, @OutParameter IntBuffer params); + + @NoErrorCheck + @GLenum + int glGetError(); + + @StripPostfix("params") + void glGetFloatv(@GLenum int pname, @OutParameter @Check("1") FloatBuffer params); + + @Alternate("glGetFloatv") + @GLreturn("params") + @StripPostfix("params") + void glGetFloatv2(@GLenum int pname, @OutParameter FloatBuffer params); + + @StripPostfix("params") + void glGetFramebufferAttachmentParameteriv(@GLenum int target, @GLenum int attachment, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetFramebufferAttachmentParameteriv") + @GLreturn("params") + @StripPostfix("params") + void glGetFramebufferAttachmentParameteriv2(@GLenum int target, @GLenum int attachment, @GLenum int pname, @OutParameter IntBuffer params); + + @StripPostfix("params") + void glGetIntegerv(@GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetIntegerv") + @GLreturn("params") + @StripPostfix("params") + void glGetIntegerv2(@GLenum int pname, @OutParameter IntBuffer params); + + @StripPostfix("params") + void glGetProgramiv(@GLuint int program, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetProgramiv") + @GLreturn("params") + @StripPostfix("params") + void glGetProgramiv2(@GLuint int program, @GLenum int pname, @OutParameter IntBuffer params); + + void glGetProgramInfoLog(@GLuint int program, @AutoSize("infoLog") @GLsizei int bufsize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @GLchar ByteBuffer infoLog); + + @Alternate("glGetProgramInfoLog") + @GLreturn(value = "infoLog", maxLength = "bufsize") + void glGetProgramInfoLog2(@GLuint int program, @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("infoLog_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer infoLog); + + @StripPostfix("params") + void glGetRenderbufferParameteriv(@GLenum int target, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetRenderbufferParameteriv") + @GLreturn("params") + @StripPostfix("params") + void glGetRenderbufferParameteriv2(@GLenum int target, @GLenum int pname, @OutParameter IntBuffer params); + + @StripPostfix("params") + void glGetShaderiv(@GLuint int shader, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetShaderiv") + @GLreturn("params") + @StripPostfix("params") + void glGetShaderiv2(@GLuint int shader, @GLenum int pname, @OutParameter IntBuffer params); + + void glGetShaderInfoLog(@GLuint int shader, @AutoSize("infoLog") @GLsizei int bufsize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @GLchar ByteBuffer infoLog); + + @Alternate("glGetShaderInfoLog") + @GLreturn(value = "infoLog", maxLength = "bufsize") + void glGetShaderInfoLog2(@GLuint int shader, @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("infoLog_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer infoLog); + + void glGetShaderPrecisionFormat(@GLenum int shadertype, @GLenum int precisiontype, @OutParameter @GLint @Check("2") IntBuffer range, @OutParameter @Check("1") @GLint IntBuffer precision); + + void glGetShaderSource(@GLuint int shader, @AutoSize("source") @GLsizei int bufsize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @GLchar ByteBuffer source); + + @Alternate("glGetShaderSource") + @GLreturn(value = "source", maxLength = "bufsize") + void glGetShaderSource2(@GLuint int shader, @GLsizei int bufsize, + @OutParameter @GLsizei @Constant("source_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer source); + + @Const + String glGetString(@GLenum int name); + + @StripPostfix("params") + void glGetTexParameterfv(@GLenum int target, @GLenum int pname, @OutParameter @Check("1") FloatBuffer params); + + @Alternate("glGetTexParameterfv") + @GLreturn("params") + @StripPostfix(value = "params", postfix = "v") + void glGetTexParameterfv2(@GLenum int target, @GLenum int pname, @OutParameter FloatBuffer params); + + @StripPostfix("params") + void glGetTexParameteriv(@GLenum int target, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetTexParameteriv") + @GLreturn("params") + @StripPostfix(value = "params", postfix = "v") + void glGetTexParameteriv2(@GLenum int target, @GLenum int pname, @OutParameter IntBuffer params); + + @StripPostfix("params") + void glGetUniformfv(@GLuint int program, int location, @OutParameter @Check("1") FloatBuffer params); + + @StripPostfix("params") + void glGetUniformiv(@GLuint int program, int location, @OutParameter @Check("1") IntBuffer params); + + /** + * Returns the location of the uniform with the specified name. The ByteBuffer should contain the uniform name as a + * null-terminated string. + * + * @param program + * @param name + */ + int glGetUniformLocation(@GLuint int program, @NullTerminated @Check("1") @Const @GLchar ByteBuffer name); + + @Alternate("glGetUniformLocation") + int glGetUniformLocation(@GLuint int program, @NullTerminated CharSequence name); + + @StripPostfix("params") + void glGetVertexAttribfv(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") FloatBuffer params); + + @StripPostfix("params") + void glGetVertexAttribiv(@GLuint int index, @GLenum int pname, @OutParameter @Check("4") IntBuffer params); + + @StripPostfix("pointer") + void glGetVertexAttribPointerv(@GLuint int index, @GLenum int pname, @Result @GLvoid ByteBuffer pointer); + + void glHint(@GLenum int target, @GLenum int mode); + + @GLboolean + boolean glIsBuffer(@GLuint int buffer); + + @GLboolean + boolean glIsEnabled(@GLenum int cap); + + @GLboolean + boolean glIsFramebuffer(@GLuint int framebuffer); + + @GLboolean + boolean glIsProgram(@GLuint int program); + + @GLboolean + boolean glIsRenderbuffer(@GLuint int renderbuffer); + + @GLboolean + boolean glIsShader(@GLuint int shader); + + @GLboolean + boolean glIsTexture(@GLuint int texture); + + void glLineWidth(@GLfloat float width); + + void glLinkProgram(@GLuint int program); + + void glPixelStorei(@GLenum int pname, @GLint int param); + + void glPolygonOffset(@GLfloat float factor, @GLfloat float units); + + void glReadPixels(int x, int y, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @Check("GLChecks.calculateImageStorage(pixels, format, type, width, height, 1)") + @OutParameter @GLbyte @GLshort @GLint @GLfloat Buffer pixels); + + void glReleaseShaderCompiler(); + + void glRenderbufferStorage(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLsizei int height); + + void glSampleCoverage(@GLclampf float value, @GLboolean boolean invert); + + void glScissor(@GLint int x, @GLint int y, @GLsizei int width, @GLsizei int height); + + void glShaderBinary(@AutoSize("shaders") @GLsizei int n, @Const @GLuint IntBuffer shaders, @GLenum int binaryformat, @Const @GLvoid ByteBuffer binary, @AutoSize("binary") @GLsizei int length); + + /** + * glShaderSource allows multiple, optionally null-terminated, source strings to define a shader program. + *

+ * This method uses just a single string, that should NOT be null-terminated. + * + * @param shader + * @param string + */ + void glShaderSource(@GLuint int shader, @Constant("1") @GLsizei int count, + @Indirect @Const @Check @GLchar ByteBuffer string, + @AutoSize("string") @Indirect @Const @GLint int length); + + @Alternate("glShaderSource") + void glShaderSource2(@GLuint int shader, @Constant("1") @GLsizei int count, CharSequence string, @Constant("string.length()") @Indirect @Const int length); + + @Alternate(value = "glShaderSource", nativeAlt = true) + void glShaderSource3(@GLuint int shader, @Constant("strings.length") @GLsizei int count, + @Const @PointerArray(value = "count", lengths = "length") CharSequence[] strings, + @Constant("APIUtil.getLengths(strings), 0") @Const IntBuffer length); + + void glStencilFunc(@GLenum int func, @GLint int ref, @GLuint int mask); + + void glStencilFuncSeparate(@GLenum int face, @GLenum int func, @GLint int ref, @GLuint int mask); + + void glStencilMask(@GLuint int mask); + + void glStencilMaskSeparate(@GLenum int face, @GLuint int mask); + + void glStencilOp(@GLenum int fail, @GLenum int zfail, @GLenum int zpass); + + void glStencilOpSeparate(@GLenum int face, @GLenum int fail, @GLenum int zfail, @GLenum int zpass); + + void glTexImage2D(@GLenum int target, int level, int internalformat, int width, int height, int border, @GLenum int format, @GLenum int type, + @Check(value = "GLChecks.calculateTexImage2DStorage(pixels, format, type, width, height)", canBeNull = true) + @Const @GLbyte @GLshort @GLint @GLfloat Buffer pixels); + + void glTexParameterf(@GLenum int target, @GLenum int pname, @GLfloat float param); + + @StripPostfix("param") + void glTexParameterfv(@GLenum int target, @GLenum int pname, @Check("4") @Const FloatBuffer param); + + void glTexParameteri(@GLenum int target, @GLenum int pname, @GLint int param); + + @StripPostfix("param") + void glTexParameteriv(@GLenum int target, @GLenum int pname, @Check("4") @Const IntBuffer param); + + void glTexSubImage2D(@GLenum int target, int level, int xoffset, int yoffset, @GLsizei int width, @GLsizei int height, @GLenum int format, @GLenum int type, + @Check("GLChecks.calculateImageStorage(pixels, format, type, width, height, 1)") + @Const @GLbyte @GLshort @GLint @GLfloat Buffer pixels); + + void glUniform1f(@GLint int location, @GLfloat float x); + + @StripPostfix("v") + void glUniform1fv(int location, @AutoSize("v") @GLsizei int count, @Const FloatBuffer v); + + void glUniform1i(@GLint int location, @GLint int x); + + @StripPostfix("v") + void glUniform1iv(int location, @AutoSize("v") @GLsizei int count, @Const IntBuffer v); + + void glUniform2f(@GLint int location, @GLfloat float x, @GLfloat float y); + + @StripPostfix("v") + void glUniform2fv(int location, @AutoSize(value = "v", expression = " >> 1") @GLsizei int count, @Const FloatBuffer v); + + void glUniform2i(@GLint int location, @GLint int x, @GLint int y); + + @StripPostfix("v") + void glUniform2iv(int location, @AutoSize(value = "v", expression = " >> 1") @GLsizei int count, @Const IntBuffer v); + + void glUniform3f(@GLint int location, @GLfloat float x, @GLfloat float y, @GLfloat float z); + + @StripPostfix("v") + void glUniform3fv(int location, @AutoSize(value = "v", expression = " / 3") @GLsizei int count, @Const FloatBuffer v); + + void glUniform3i(@GLint int location, @GLint int x, @GLint int y, @GLint int z); + + @StripPostfix("v") + void glUniform3iv(int location, @AutoSize(value = "v", expression = " / 3") @GLsizei int count, @Const IntBuffer v); + + void glUniform4f(@GLint int location, @GLfloat float x, @GLfloat float y, @GLfloat float z, @GLfloat float w); + + @StripPostfix("v") + void glUniform4fv(int location, @AutoSize(value = "v", expression = " >> 2") @GLsizei int count, @Const FloatBuffer v); + + void glUniform4i(@GLint int location, @GLint int x, @GLint int y, @GLint int z, @GLint int w); + + @StripPostfix("v") + void glUniform4iv(int location, @AutoSize(value = "v", expression = " >> 2") @GLsizei int count, @Const IntBuffer v); + + @StripPostfix("matrices") + void glUniformMatrix2fv(int location, @AutoSize(value = "matrices", expression = " >> 2") @GLsizei int count, @GLboolean boolean transpose, @Const FloatBuffer matrices); + + @StripPostfix("matrices") + void glUniformMatrix3fv(int location, @AutoSize(value = "matrices", expression = " / (3 * 3)") @GLsizei int count, @GLboolean boolean transpose, @Const FloatBuffer matrices); + + @StripPostfix("matrices") + void glUniformMatrix4fv(int location, @AutoSize(value = "matrices", expression = " >> 4") @GLsizei int count, @GLboolean boolean transpose, @Const FloatBuffer matrices); + + void glUseProgram(@GLuint int program); + + void glValidateProgram(@GLuint int program); + + void glVertexAttrib1f(@GLuint int indx, @GLfloat float x); + + @StripPostfix("values") + void glVertexAttrib1fv(@GLuint int indx, @Const @Check("1") FloatBuffer values); + + void glVertexAttrib2f(@GLuint int indx, @GLfloat float x, @GLfloat float y); + + @StripPostfix("values") + void glVertexAttrib2fv(@GLuint int indx, @Const @Check("2") FloatBuffer values); + + void glVertexAttrib3f(@GLuint int indx, @GLfloat float x, @GLfloat float y, @GLfloat float z); + + @StripPostfix("values") + void glVertexAttrib3fv(@GLuint int indx, @Const @Check("3") FloatBuffer values); + + void glVertexAttrib4f(@GLuint int indx, @GLfloat float x, @GLfloat float y, @GLfloat float z, @GLfloat float w); + + @StripPostfix("values") + void glVertexAttrib4fv(@GLuint int indx, @Const @Check("4") FloatBuffer values); + + void glVertexAttribPointer(@GLuint int index, int size, @AutoType("buffer") @GLenum int type, @GLboolean boolean normalized, @GLsizei int stride, + @CachedReference(index = "index", name = "glVertexAttribPointer_buffer") + @BufferObject(BufferKind.ArrayVBO) @Check @Const @GLubyte @GLbyte @GLshort @GLushort @GLint @GLuint @GLfloat Buffer buffer); + + void glViewport(@GLint int x, @GLint int y, @GLsizei int width, @GLsizei int height); +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java b/src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java new file mode 100644 index 00000000..bf9c2594 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; + +public interface IMG_multisamples_render_to_texture { + + /** Accepted by the <pname> parameter of GetRenderbufferParameteriv: */ + int GL_RENDERBUFFER_SAMPLES_IMG = 0x9133; + + /** Returned by CheckFramebufferStatus: */ + int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG = 0x9134; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * GetFloatv, and GetDoublev: + */ + int GL_MAX_SAMPLES_IMG = 0x9135; + + /** Accepted by the <pname> parameter of GetFramebufferAttachmentParameteriv: */ + int GL_TEXTURE_SAMPLES_IMG = 0x9136; + + void glRenderbufferStorageMultisampleIMG( + @GLenum int target, @GLsizei int samples, + @GLenum int internalformat, + @GLsizei int width, @GLsizei int height); + + void glFramebufferTexture2DMultisampleIMG( + @GLenum int target, @GLenum int attachment, + @GLenum int textarget, @GLuint int texture, + int level, @GLsizei int samples); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/IMG_program_binary.java b/src/templates/org/lwjgl/opengles/IMG_program_binary.java new file mode 100644 index 00000000..390f69aa --- /dev/null +++ b/src/templates/org/lwjgl/opengles/IMG_program_binary.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface IMG_program_binary { + + /** Accepted by the <binaryFormat> parameter of ProgramBinaryOES: */ + int GL_SGX_PROGRAM_BINARY_IMG = 0x9130; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/IMG_shader_binary.java b/src/templates/org/lwjgl/opengles/IMG_shader_binary.java new file mode 100644 index 00000000..5b87bc36 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/IMG_shader_binary.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface IMG_shader_binary { + + /** Accepted by the <binaryformat> parameter of ShaderBinary: */ + int GL_SGX_BINARY_IMG = 0x8C0A; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/IMG_texture_compression_pvrtc.java b/src/templates/org/lwjgl/opengles/IMG_texture_compression_pvrtc.java new file mode 100644 index 00000000..b40c5237 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/IMG_texture_compression_pvrtc.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface IMG_texture_compression_pvrtc { + + /** + * Accepted by the <internalformat> parameter of CompressedTexImage2DARB + * and the <format> parameter of CompressedTexSubImage2DARB: + */ + int GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8C00, + GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8C01, + GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8C02, + GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8C03; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_coverage_sample.java b/src/templates/org/lwjgl/opengles/NV_coverage_sample.java new file mode 100644 index 00000000..ab177412 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_coverage_sample.java @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface NV_coverage_sample { + + /** + * Accepted by the <attrib_list> parameter of eglChooseConfig + * and eglCreatePbufferSurface, and by the <attribute> + * parameter of eglGetConfigAttrib: + */ + int EGL_COVERAGE_BUFFERS_NV = 0x30E0, + EGL_COVERAGE_SAMPLES_NV = 0x30E1; + + /** + * Accepted by the <internalformat> parameter of + * RenderbufferStorageEXT and the <format> parameter of ReadPixels: + */ + int GL_COVERAGE_COMPONENT_NV = 0x8522; + + /** + * Accepted by the <internalformat> parameter of + * RenderbufferStorageEXT: + */ + int GL_COVERAGE_COMPONENT4_NV = 0x8523; + + /** Accepted by the <operation> parameter of CoverageOperationNV: */ + int GL_COVERAGE_ALL_FRAGMENTS_NV = 0x8524, + GL_COVERAGE_EDGE_FRAGMENTS_NV = 0x8525, + GL_COVERAGE_AUTOMATIC_NV = 0x8526; + + /** + * Accepted by the <attachment> parameter of + * FramebufferRenderbuffer, and GetFramebufferAttachmentParameteriv: + */ + int GL_COVERAGE_ATTACHMENT_NV = 0x8527; + + /** Accepted by the <buf> parameter of Clear: */ + int GL_COVERAGE_BUFFER_BIT_NV = 0x8000; + + /** Accepted by the <pname> parameter of GetIntegerv: */ + int GL_COVERAGE_BUFFERS_NV = 0x8528, + GL_COVERAGE_SAMPLES_NV = 0x8529; + + void glCoverageMaskNV(boolean mask); + + void glCoverageOperationNV(@GLenum int operation); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_depth_nonlinear.java b/src/templates/org/lwjgl/opengles/NV_depth_nonlinear.java new file mode 100644 index 00000000..8acfa21e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_depth_nonlinear.java @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface NV_depth_nonlinear { + + /** + * Accepted as a valid sized internal format by all functions accepting + * sized internal formats with a base format of DEPTH_COMPONENT: + */ + int GL_DEPTH_COMPONENT16_NONLINEAR_NV = 0x8553; + + /** + * Accepted by the <attrib_list> parameter of eglChooseConfig, + * and by the <attribute> parameter of eglGetConfigAttrib: + */ + int EGL_DEPTH_ENCODING_NV = 0x30E2; + + /** + * Accepted as a value in the <attrib_list> parameter of eglChooseConfig + * and eglCreatePbufferSurface, and returned in the <value> parameter + * of eglGetConfigAttrib: + */ + int EGL_DEPTH_ENCODING_NONE_NV = 0, + EGL_DEPTH_ENCODING_NONLINEAR_NV = 0x30E3; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_draw_path.java b/src/templates/org/lwjgl/opengles/NV_draw_path.java new file mode 100644 index 00000000..369af7c4 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_draw_path.java @@ -0,0 +1,123 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.Const; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; + +public interface NV_draw_path { + + /** Accepted as the <paramType> parameter of PathParameterNV: */ + int GL_PATH_QUALITY_NV = 0x8ED8, + GL_FILL_RULE_NV = 0x8ED9, + GL_STROKE_CAP0_STYLE_NV = 0x8EE0, + GL_STROKE_CAP1_STYLE_NV = 0x8EE1, + GL_STROKE_CAP2_STYLE_NV = 0x8EE2, + GL_STROKE_CAP3_STYLE_NV = 0x8EE3, + GL_STROKE_JOIN_STYLE_NV = 0x8EE8, + GL_STROKE_MITER_LIMIT_NV = 0x8EE9; + + /** Values for the ILL_RULE_NV path parameter: */ + int GL_EVEN_ODD_NV = 0x8EF0, + GL_NON_ZERO_NV = 0x8EF1; + + /** Values for the CAP[0-3]_STYLE_NV path parameter: */ + int GL_CAP_BUTT_NV = 0x8EF4, + GL_CAP_ROUND_NV = 0x8EF5, + GL_CAP_SQUARE_NV = 0x8EF6, + GL_CAP_TRIANGLE_NV = 0x8EF7; + + /** Values for the JOIN_STYLE_NV path parameter: */ + int GL_JOIN_MITER_NV = 0x8EFC, + GL_JOIN_ROUND_NV = 0x8EFD, + GL_JOIN_BEVEL_NV = 0x8EFE, + GL_JOIN_CLIPPED_MITER_NV = 0x8EFF; + + /** Accepted as the <target> parameter of PathMatrixNV: */ + int GL_MATRIX_PATH_TO_CLIP_NV = 0x8F04, + GL_MATRIX_STROKE_TO_PATH_NV = 0x8F05, + GL_MATRIX_PATH_COORD0_NV = 0x8F08, + GL_MATRIX_PATH_COORD1_NV = 0x8F09, + GL_MATRIX_PATH_COORD2_NV = 0x8F0A, + GL_MATRIX_PATH_COORD3_NV = 0x8F0B; + + /** Accepted as the <mode> parameter of DrawPathbufferNV: */ + int GL_FILL_PATH_NV = 0x8F18, + GL_STROKE_PATH_NV = 0x8F19; + + /** Accepted as path commands by CreatePathNV: */ + byte GL_MOVE_TO_NV = 0x00, + GL_LINE_TO_NV = 0x01, + GL_QUADRATIC_BEZIER_TO_NV = 0x02, + GL_CUBIC_BEZIER_TO_NV = 0x03, + GL_START_MARKER_NV = 0x20, + GL_CLOSE_NV = 0x21, + GL_STROKE_CAP0_NV = 0x40, + GL_STROKE_CAP1_NV = 0x41, + GL_STROKE_CAP2_NV = 0x42, + GL_STROKE_CAP3_NV = 0x43; + + @GLuint + int glCreatePathNV(@GLenum int datatype, @AutoSize("commands") @GLsizei int numCommands, @Const @GLubyte ByteBuffer commands); + + void glDeletePathNV(@GLuint int path); + + void glPathVerticesNV(@GLuint int path, @Const @Check @GLvoid ByteBuffer vertices); + + void glPathParameterfNV(@GLuint int path, @GLenum int paramType, float param); + + void glPathParameteriNV(@GLuint int path, @GLenum int paramType, int param); + + @GLuint + int glCreatePathProgramNV(); + + void glPathMatrixNV(@GLenum int target, @Const @Check("16") FloatBuffer value); + + void glDrawPathNV(@GLuint int path, @GLenum int mode); + + @GLuint + int glCreatePathbufferNV(@GLsizei int capacity); + + void glDeletePathbufferNV(@GLuint int buffer); + + void glPathbufferPathNV(@GLuint int buffer, int index, @GLuint int path); + + void glPathbufferPositionNV(@GLuint int buffer, int index, float x, float y); + + void glDrawPathbufferNV(@GLuint int buffer, @GLenum int mode); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_fbo_color_attachments.java b/src/templates/org/lwjgl/opengles/NV_fbo_color_attachments.java new file mode 100644 index 00000000..7e216d25 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_fbo_color_attachments.java @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface NV_fbo_color_attachments { + + int GL_MAX_COLOR_ATTACHMENTS_NV = 0x8CDF, + GL_COLOR_ATTACHMENT0_NV = 0x8CE0, + GL_COLOR_ATTACHMENT1_NV = 0x8CE1, + GL_COLOR_ATTACHMENT2_NV = 0x8CE2, + GL_COLOR_ATTACHMENT3_NV = 0x8CE3, + GL_COLOR_ATTACHMENT4_NV = 0x8CE4, + GL_COLOR_ATTACHMENT5_NV = 0x8CE5, + GL_COLOR_ATTACHMENT6_NV = 0x8CE6, + GL_COLOR_ATTACHMENT7_NV = 0x8CE7, + GL_COLOR_ATTACHMENT8_NV = 0x8CE8, + GL_COLOR_ATTACHMENT9_NV = 0x8CE9, + GL_COLOR_ATTACHMENT10_NV = 0x8CEA, + GL_COLOR_ATTACHMENT11_NV = 0x8CEB, + GL_COLOR_ATTACHMENT12_NV = 0x8CEC, + GL_COLOR_ATTACHMENT13_NV = 0x8CED, + GL_COLOR_ATTACHMENT14_NV = 0x8CEE, + GL_COLOR_ATTACHMENT15_NV = 0x8CEF; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_fence.java b/src/templates/org/lwjgl/opengles/NV_fence.java new file mode 100644 index 00000000..f7f2ad8d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_fence.java @@ -0,0 +1,72 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLreturn; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; + +import java.nio.IntBuffer; + +public interface NV_fence { + + /** Accepted by the <condition> parameter of SetFenceNV: */ + int GL_ALL_COMPLETED_NV = 0x84F2; + + /** Accepted by the <pname> parameter of GetFenceivNV: */ + int GL_FENCE_STATUS_NV = 0x84F3, + GL_FENCE_CONDITION_NV = 0x84F4; + + void glGenFencesNV(@AutoSize("fences") @GLsizei int n, @OutParameter @GLuint IntBuffer fences); + + @Alternate("glGenFencesNV") + @GLreturn("fences") + void glGenFencesNV2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer fences); + + void glDeleteFencesNV(@AutoSize("fences") @GLsizei int n, @Const @GLuint IntBuffer fences); + + @Alternate("glDeleteFencesNV") + void glDeleteFencesNV(@Constant("1") @GLsizei int n, @Const @GLuint @Constant(value = "APIUtil.getBufferInt().put(0, fence), 0", keepParam = true) int fence); + + void glSetFenceNV(@GLuint int fence, @GLenum int condition); + + boolean glTestFenceNV(@GLuint int fence); + + void glFinishFenceNV(@GLuint int fence); + + boolean glIsFenceNV(@GLuint int fence); + + void glGetFenceivNV(@GLuint int fence, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_framebuffer_vertex_attrib_array.java b/src/templates/org/lwjgl/opengles/NV_framebuffer_vertex_attrib_array.java new file mode 100644 index 00000000..7046eda2 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_framebuffer_vertex_attrib_array.java @@ -0,0 +1,53 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.*; + +public interface NV_framebuffer_vertex_attrib_array { + + int GL_FRAMEBUFFER_ATTACHABLE_NV = 0x852A, + GL_VERTEX_ATTRIB_ARRAY_NV = 0x852B, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_SIZE_NV = 0x852C, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_TYPE_NV = 0x852D, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_NORMALIZED_NV = 0x852E, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_OFFSET_NV = 0x852F, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_WIDTH_NV = 0x8530, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_STRIDE_NV = 0x8531, + GL_FRAMEBUFFER_ATTACHMENT_VERTEX_ATTRIB_ARRAY_HEIGHT_NV = 0x8532; + + void glFramebufferVertexAttribArrayNV(@GLenum int target, @GLenum int attachment, + @GLenum int buffertarget, @GLuint int bufferobject, + @GLint int size, @GLenum int type, @GLboolean boolean normalized, @GLintptr long offset, + @GLsizeiptr long width, @GLsizeiptr long height, @GLsizei int stride); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_get_tex_image.java b/src/templates/org/lwjgl/opengles/NV_get_tex_image.java new file mode 100644 index 00000000..60fea0e6 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_get_tex_image.java @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Alternate; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.OutParameter; +import org.lwjgl.util.generator.StripPostfix; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; + +public interface NV_get_tex_image { + + int GL_TEXTURE_WIDTH_NV = 0x1000, + GL_TEXTURE_HEIGHT_NV = 0x1001, + GL_TEXTURE_INTERNAL_FORMAT_NV = 0x1003, + GL_TEXTURE_COMPONENTS_NV = GL_TEXTURE_INTERNAL_FORMAT_NV, + GL_TEXTURE_BORDER_NV = 0x1005, + GL_TEXTURE_RED_SIZE_NV = 0x805C, + GL_TEXTURE_GREEN_SIZE_NV = 0x805D, + GL_TEXTURE_BLUE_SIZE_NV = 0x805E, + GL_TEXTURE_ALPHA_SIZE_NV = 0x805F, + GL_TEXTURE_LUMINANCE_SIZE_NV = 0x8060, + GL_TEXTURE_INTENSITY_SIZE_NV = 0x8061, + GL_TEXTURE_DEPTH_NV = 0x8071, + GL_TEXTURE_COMPRESSED_IMAGE_SIZE_NV = 0x86A0, + GL_TEXTURE_COMPRESSED_NV = 0x86A1, + GL_TEXTURE_DEPTH_SIZE_NV = 0x884A; + + void glGetTexImageNV(@GLenum int target, @GLint int level, @GLenum int format, @GLenum int type, + @OutParameter + @Check("GLChecks.calculateImageStorage(img, format, type, 1, 1, 1)") + @GLbyte + @GLshort + @GLint + @GLfloat Buffer img); + + void glGetCompressedTexImageNV(@GLenum int target, @GLint int level, @OutParameter @Check @GLvoid ByteBuffer img); + + @StripPostfix("params") + void glGetTexLevelParameterfvNV(@GLenum int target, @GLint int level, @GLenum int pname, @OutParameter @Check("1") @GLfloat FloatBuffer params); + + @Alternate("glGetTexLevelParameterfvNV") + @GLreturn("params") + @StripPostfix(value = "params", postfix = "v") + void glGetTexLevelParameterfvNV2(@GLenum int target, @GLint int level, @GLenum int pname, @OutParameter @GLfloat FloatBuffer params); + + @StripPostfix("params") + void glGetTexLevelParameterivNV(@GLenum int target, @GLint int level, @GLenum int pname, @OutParameter @Check("1") @GLint IntBuffer params); + + @Alternate("glGetTexLevelParameterivNV") + @GLreturn("params") + @StripPostfix(value = "params", postfix = "v") + void glGetTexLevelParameterivNV2(@GLenum int target, @GLint int level, @GLenum int pname, @OutParameter @GLint IntBuffer params); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_read_buffer.java b/src/templates/org/lwjgl/opengles/NV_read_buffer.java new file mode 100644 index 00000000..68cdabfc --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_read_buffer.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface NV_read_buffer { + + int GL_READ_BUFFER_NV = 0x0C02, + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_NV = 0x8CDC; + + void glReadBufferNV(@GLenum int mode); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_shader_framebuffer_fetch.java b/src/templates/org/lwjgl/opengles/NV_shader_framebuffer_fetch.java new file mode 100644 index 00000000..962dd46b --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_shader_framebuffer_fetch.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface NV_shader_framebuffer_fetch { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/NV_system_time.java b/src/templates/org/lwjgl/opengles/NV_system_time.java new file mode 100644 index 00000000..e0503343 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/NV_system_time.java @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.EGLuint64NV; + +public interface NV_system_time { + + @EGLuint64NV + long glGetSystemTimeFrequencyNV(); + + @EGLuint64NV + long glGetSystemTimeNV(); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_EGL_image.java b/src/templates/org/lwjgl/opengles/OES_EGL_image.java new file mode 100644 index 00000000..57c9bf1d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_EGL_image.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.PointerWrapper; +import org.lwjgl.util.generator.opengl.GLenum; + +public interface OES_EGL_image { + + void glEGLImageTargetTexture2DOES(@GLenum int target, @PointerWrapper("GLeglImageOES") EGLImageOES image); + + void glEGLImageTargetRenderbufferStorageOES(@GLenum int target, @PointerWrapper("GLeglImageOES") EGLImageOES image); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_EGL_image_external.java b/src/templates/org/lwjgl/opengles/OES_EGL_image_external.java new file mode 100644 index 00000000..cfd00284 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_EGL_image_external.java @@ -0,0 +1,56 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.PointerWrapper; +import org.lwjgl.util.generator.opengl.GLenum; + +public interface OES_EGL_image_external { + + /** + * Accepted as a target in the <target> parameter of BindTexture and + * EGLImageTargetTexture2DOES: + */ + int GL_TEXTURE_EXTERNAL_OES = 0x8D65; + + /** Returned in the <type> parameter of GetActiveUniform: */ + int GL_SAMPLER_EXTERNAL_OES = 0x8D66; + + /** Accepted as <value> in GetIntegerv() and GetFloatv() queries: */ + int GL_TEXTURE_BINDING_EXTERNAL_OES = 0x8D67; + + /** Accepted as <value> in GetTexParameter*() queries: */ + int GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68; + + void glEGLImageTargetTexture2DOES(@GLenum int target, @PointerWrapper("GLeglImageOES") EGLImageOES image); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_EGL_sync.java b/src/templates/org/lwjgl/opengles/OES_EGL_sync.java new file mode 100644 index 00000000..040d65ed --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_EGL_sync.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_EGL_sync { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_blend_equation_separate.java b/src/templates/org/lwjgl/opengles/OES_blend_equation_separate.java new file mode 100644 index 00000000..b69d7817 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_blend_equation_separate.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface OES_blend_equation_separate { + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_BLEND_EQUATION_RGB_OES = 0x8009, + GL_BLEND_EQUATION_ALPHA_OES = 0x883D; + + void glBlendEquationSeparateOES(@GLenum int modeRGB, @GLenum int modeAlpha); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_blend_func_separate.java b/src/templates/org/lwjgl/opengles/OES_blend_func_separate.java new file mode 100644 index 00000000..cd18b3f0 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_blend_func_separate.java @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface OES_blend_func_separate { + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_BLEND_DST_RGB_OES = 0x80C8, + BLEND_SRC_RGB_OES = 0x80C9, + BLEND_DST_ALPHA_OES = 0x80CA, + BLEND_SRC_ALPHA_OES = 0x80CB; + + void glBlendFuncSeparateOES(@GLenum int sfactorRGB, + @GLenum int dfactorRGB, + @GLenum int sfactorAlpha, + @GLenum int dfactorAlpha); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_blend_subtract.java b/src/templates/org/lwjgl/opengles/OES_blend_subtract.java new file mode 100644 index 00000000..ff54675c --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_blend_subtract.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLenum; + +public interface OES_blend_subtract { + + /** Accepted by the <mode> parameter of BlendEquationOES: */ + int GL_FUNC_ADD_OES = 0x8006, + GL_FUNC_SUBTRACT_OES = 0x800A, + GL_FUNC_REVERSE_SUBTRACT_OES = 0x800B; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, + * and GetFloatv: + */ + int GL_BLEND_EQUATION_OES = 0x8009; + + void glBlendEquationOES(@GLenum int mode); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_compressed_ETC1_RGB8_texture.java b/src/templates/org/lwjgl/opengles/OES_compressed_ETC1_RGB8_texture.java new file mode 100644 index 00000000..b965a47d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_compressed_ETC1_RGB8_texture.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_compressed_ETC1_RGB8_texture { + + /** Accepted by the <internalformat> parameter of CompressedTexImage2D: */ + int GL_ETC1_RGB8_OES = 0x8D64; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_compressed_paletted_texture.java b/src/templates/org/lwjgl/opengles/OES_compressed_paletted_texture.java new file mode 100644 index 00000000..44bc8bf9 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_compressed_paletted_texture.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_compressed_paletted_texture { + + /** Accepted by the <internalformat> paramter of CompressedTexImage2D */ + int GL_PALETTE4_RGB8_OES = 0x8B90, + GL_PALETTE4_RGBA8_OES = 0x8B91, + GL_PALETTE4_R5_G6_B5_OES = 0x8B92, + GL_PALETTE4_RGBA4_OES = 0x8B93, + GL_PALETTE4_RGB5_A1_OES = 0x8B94, + GL_PALETTE8_RGB8_OES = 0x8B95, + GL_PALETTE8_RGBA8_OES = 0x8B96, + GL_PALETTE8_R5_G6_B5_OES = 0x8B97, + GL_PALETTE8_RGBA4_OES = 0x8B98, + GL_PALETTE8_RGB5_A1_OES = 0x8B99; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_depth24.java b/src/templates/org/lwjgl/opengles/OES_depth24.java new file mode 100644 index 00000000..e3c9c98b --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_depth24.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_depth24 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_DEPTH_COMPONENT24_OES = 0x81A6; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_depth32.java b/src/templates/org/lwjgl/opengles/OES_depth32.java new file mode 100644 index 00000000..04a8ab0d --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_depth32.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_depth32 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_DEPTH_COMPONENT32_OES = 0x81A7; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_depth_texture.java b/src/templates/org/lwjgl/opengles/OES_depth_texture.java new file mode 100644 index 00000000..384f2f4e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_depth_texture.java @@ -0,0 +1,46 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_depth_texture { + + /** + * Accepted by the <format> parameter of TexImage2D and TexSubImage2D and + * <internalFormat> parameter of TexImage2D: + */ + int GL_DEPTH_COMPONENT = 0x1902; + + /** Accepted by the <type> parameter of TexImage2D, TexSubImage2D: */ + int GL_UNSIGNED_SHORT = 0x1403, + GL_UNSIGNED_INT = 0x1405; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_element_index_uint.java b/src/templates/org/lwjgl/opengles/OES_element_index_uint.java new file mode 100644 index 00000000..5fc81c7e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_element_index_uint.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_element_index_uint { + + /** Accepted by the <type> parameter of DrawElements: */ + int GL_UNSIGNED_INT = 0x1405; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_fbo_render_mipmap.java b/src/templates/org/lwjgl/opengles/OES_fbo_render_mipmap.java new file mode 100644 index 00000000..61c0ab9e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_fbo_render_mipmap.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_fbo_render_mipmap { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_framebuffer_object.java b/src/templates/org/lwjgl/opengles/OES_framebuffer_object.java new file mode 100644 index 00000000..21aaa5ec --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_framebuffer_object.java @@ -0,0 +1,182 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLreturn; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; + +import java.nio.IntBuffer; + +public interface OES_framebuffer_object { + + /** + * Accepted by the <target> parameter of BindFramebufferOES, + * CheckFramebufferStatusOES, FramebufferTexture{2D|3D}OES, + * FramebufferRenderbufferOES, and + * GetFramebufferAttachmentParameterivOES: + */ + int GL_FRAMEBUFFER_OES = 0x8D40; + + /** + * Accepted by the <target> parameter of BindRenderbufferOES, + * RenderbufferStorageOES, and GetRenderbufferParameterivOES, and + * returned by GetFramebufferAttachmentParameterivOES: + */ + int GL_RENDERBUFFER_OES = 0x8D41; + + /** + * Accepted by the <internalformat> parameter of + * RenderbufferStorageOES: + */ + int GL_DEPTH_COMPONENT16_OES = 0x81A5, + GL_RGBA4_OES = 0x8056, + GL_RGB5_A1_OES = 0x8057, + GL_RGB565_OES = 0x8D62, + GL_STENCIL_INDEX1_OES = 0x8D46, + GL_STENCIL_INDEX4_OES = 0x8D47, + GL_STENCIL_INDEX8_OES = 0x8D48; + + /** Accepted by the <pname> parameter of GetRenderbufferParameterivOES: */ + int GL_RENDERBUFFER_WIDTH_OES = 0x8D42, + GL_RENDERBUFFER_HEIGHT_OES = 0x8D43, + GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 0x8D44, + GL_RENDERBUFFER_RED_SIZE_OES = 0x8D50, + GL_RENDERBUFFER_GREEN_SIZE_OES = 0x8D51, + GL_RENDERBUFFER_BLUE_SIZE_OES = 0x8D52, + GL_RENDERBUFFER_ALPHA_SIZE_OES = 0x8D53, + GL_RENDERBUFFER_DEPTH_SIZE_OES = 0x8D54, + GL_RENDERBUFFER_STENCIL_SIZE_OES = 0x8D55; + + /** + * Accepted by the <pname> parameter of + * GetFramebufferAttachmentParameterivOES: + */ + int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 0x8CD0, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 0x8CD1, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 0x8CD2, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 0x8CD3, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8CD4; + + /** + * Accepted by the <attachment> parameter of + * FramebufferTexture{2D|3D}OES, FramebufferRenderbufferOES, and + * GetFramebufferAttachmentParameterivOES + */ + int GL_COLOR_ATTACHMENT0_OES = 0x8CE0, + GL_DEPTH_ATTACHMENT_OES = 0x8D00, + GL_STENCIL_ATTACHMENT_OES = 0x8D20; + + /** + * Returned by GetFramebufferAttachmentParameterivOES when the + * <pname> parameter is FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES: + */ + int GL_NONE_OES = 0; + + /** Returned by CheckFramebufferStatusOES(): */ + int GL_FRAMEBUFFER_COMPLETE_OES = 0x8CD5, + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 0x8CD6, + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 0x8CD7, + GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 0x8CD9, + GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 0x8CDA, + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES = 0x8CDB, + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES = 0x8CDC, + GL_FRAMEBUFFER_UNSUPPORTED_OES = 0x8CDD; + + /** Accepted by GetIntegerv(): */ + int GL_FRAMEBUFFER_BINDING_OES = 0x8CA6, + GL_RENDERBUFFER_BINDING_OES = 0x8CA7, + GL_MAX_RENDERBUFFER_SIZE_OES = 0x84E8; + + /** Returned by GetError(): */ + int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 0x0506; + + boolean glIsRenderbufferOES(@GLuint int renderbuffer); + + void glBindRenderbufferOES(@GLenum int target, @GLuint int renderbuffer); + + void glDeleteRenderbuffersOES(@AutoSize("renderbuffers") int n, @Const @GLuint IntBuffer renderbuffers); + + @Alternate("glDeleteRenderbuffersOES") + void glDeleteRenderbuffersOES(@Constant("1") int n, @Constant(value = "APIUtil.getBufferInt().put(0, renderbuffer), 0", keepParam = true) int renderbuffer); + + void glGenRenderbuffersOES(@AutoSize("renderbuffers") int n, @OutParameter @GLuint IntBuffer renderbuffers); + + @Alternate("glGenRenderbuffersOES") + @GLreturn("renderbuffers") + void glGenRenderbuffersOES2(@Constant("1") int n, @OutParameter @GLuint IntBuffer renderbuffers); + + void glRenderbufferStorageOES(@GLenum int target, @GLenum int internalformat, @GLsizei int width, @GLsizei int height); + + @StripPostfix("params") + void glGetRenderbufferParameterivOES(@GLenum int target, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetRenderbufferParameterivOES") + @GLreturn("params") + @StripPostfix("params") + void glGetRenderbufferParameterivOES2(@GLenum int target, @GLenum int pname, @OutParameter IntBuffer params); + + boolean glIsFramebufferOES(@GLuint int framebuffer); + + void glBindFramebufferOES(@GLenum int target, @GLuint int framebuffer); + + void glDeleteFramebuffersOES(@AutoSize("framebuffers") int n, @Const @GLuint IntBuffer framebuffers); + + @Alternate("glDeleteFramebuffersOES") + void glDeleteFramebuffersOES(@Constant("1") int n, @Constant(value = "APIUtil.getBufferInt().put(0, framebuffer), 0", keepParam = true) int framebuffer); + + void glGenFramebuffersOES(@AutoSize("framebuffers") int n, @OutParameter @GLuint IntBuffer framebuffers); + + @Alternate("glGenFramebuffersOES") + @GLreturn("framebuffers") + void glGenFramebuffersOES2(@Constant("1") int n, @OutParameter @GLuint IntBuffer framebuffers); + + @GLenum + int glCheckFramebufferStatusOES(@GLenum int target); + + void glFramebufferTexture2DOES(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, int level); + + void glFramebufferRenderbufferOES(@GLenum int target, @GLenum int attachment, @GLenum int renderbuffertarget, @GLuint int renderbuffer); + + @StripPostfix("params") + void glGetFramebufferAttachmentParameterivOES(@GLenum int target, @GLenum int attachment, @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + @Alternate("glGetFramebufferAttachmentParameterivOES") + @GLreturn("params") + @StripPostfix("params") + void glGetFramebufferAttachmentParameterivOES2(@GLenum int target, @GLenum int attachment, @GLenum int pname, @OutParameter IntBuffer params); + + void glGenerateMipmapOES(@GLenum int target); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_get_program_binary.java b/src/templates/org/lwjgl/opengles/OES_get_program_binary.java new file mode 100644 index 00000000..ffb6193b --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_get_program_binary.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.Const; +import org.lwjgl.util.generator.OutParameter; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; +import org.lwjgl.util.generator.opengl.GLvoid; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface OES_get_program_binary { + + /** Accepted by the <pname> parameter of GetProgramiv: */ + int GL_PROGRAM_BINARY_LENGTH_OES = 0x8741; + + /** + * Accepted by the <pname< parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_NUM_PROGRAM_BINARY_FORMATS_OES = 0x87FE, + GL_PROGRAM_BINARY_FORMATS_OES = 0x87FF; + + void glGetProgramBinaryOES(@GLuint int program, @AutoSize("binary") @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @Check("1") @GLenum IntBuffer binaryFormat, + @OutParameter @GLvoid ByteBuffer binary); + + void glProgramBinaryOES(@GLuint int program, @GLenum int binaryFormat, @Const @GLvoid ByteBuffer binary, @AutoSize("binary") int length); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_mapbuffer.java b/src/templates/org/lwjgl/opengles/OES_mapbuffer.java new file mode 100644 index 00000000..f25a3428 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_mapbuffer.java @@ -0,0 +1,86 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLvoid; + +import java.nio.ByteBuffer; + +public interface OES_mapbuffer { + + /** Accepted by the <access> parameter of MapBufferOES: */ + int GL_WRITE_ONLY_OES = 0x88B9; + + /** Accepted by the <value> parameter of GetBufferParameteriv: */ + int GL_BUFFER_ACCESS_OES = 0x88BB, + GL_BUFFER_MAPPED_OES = 0x88BC; + + /** Accepted by the <pname> parameter of GetBufferPointervOES: */ + int GL_BUFFER_MAP_POINTER_OES = 0x88BD; + + @StripPostfix("pointer") + @CachedResult + @AutoSize("GLChecks.getBufferObjectSize(target)") + void glGetBufferPointervOES(@GLenum int target, @GLenum int pname, @OutParameter @Result @GLvoid ByteBuffer pointer); + + /** + * glMapBufferOES maps a GL buffer object to a ByteBuffer. The old_buffer argument can be null, + * in which case a new ByteBuffer will be created, pointing to the returned memory. If old_buffer is non-null, + * it will be returned if it points to the same mapped memory and has the same capacity as the buffer object, + * otherwise a new ByteBuffer is created. That way, an application will normally use glMapBuffer like this: + *

+ * ByteBuffer mapped_buffer; mapped_buffer = glMapBufferOES(..., ..., null); ... // Another map on the same buffer mapped_buffer = glMapBufferOES(..., ..., mapped_buffer); + *

+ * Only ByteBuffers returned from this method are to be passed as the old_buffer argument. User-created ByteBuffers cannot be reused. + *

+ * The version of this method without an explicit length argument calls glGetBufferParameter internally to + * retrieve the current buffer object size, which may cause a pipeline flush and reduce application performance. + *

+ * The version of this method with an explicit length argument is a fast alternative to the one without. No GL call + * is made to retrieve the buffer object size, so the user is responsible for tracking and using the appropriate length.
+ * Security warning: The length argument should match the buffer object size. Reading from or writing to outside + * the memory region that corresponds to the mapped buffer object will cause native crashes. + * + * @param old_buffer A ByteBuffer. If this argument points to the same address and has the same capacity as the new mapping, it will be returned and no new buffer will be created. + * + * @return A ByteBuffer representing the mapped buffer memory. + */ + @CachedResult + @GLvoid + @AutoSize("GLChecks.getBufferObjectSize(target)") + ByteBuffer glMapBufferOES(@GLenum int target, @GLenum int access); + + boolean glUnmapBufferOES(@GLenum int target); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_packed_depth_stencil.java b/src/templates/org/lwjgl/opengles/OES_packed_depth_stencil.java new file mode 100644 index 00000000..f13006c8 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_packed_depth_stencil.java @@ -0,0 +1,52 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_packed_depth_stencil { + + /** + * Accepted by the <format> parameter of TexImage2D and TexSubImage2D and by the + * <internalformat> parameter of TexImage2D: + */ + int GL_DEPTH_STENCIL_OES = 0x84F9; + + /** Accepted by the <type> parameter of TexImage2D and TexSubImage2D: */ + int GL_UNSIGNED_INT_24_8_OES = 0x84FA; + + /** + * Accepted by the <internalformat> parameter of RenderbufferStorage, and + * returned in the <params> parameter of GetRenderbufferParameteriv when + * <pname> is RENDERBUFFER_INTERNAL_FORMAT: + */ + int GL_DEPTH24_STENCIL8_OES = 0x88F0; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_rgb8_rgba8.java b/src/templates/org/lwjgl/opengles/OES_rgb8_rgba8.java new file mode 100644 index 00000000..5bc3f755 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_rgb8_rgba8.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Extension; + +@Extension(postfix = "OES", className = "OESRGB8RGBA8") +public interface OES_rgb8_rgba8 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_RGB8_OES = 0x8051, + GL_RGBA8_OES = 0x8058; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_standard_derivatives.java b/src/templates/org/lwjgl/opengles/OES_standard_derivatives.java new file mode 100644 index 00000000..4ff4eed2 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_standard_derivatives.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_standard_derivatives { + + /** + * Accepted by the <target> parameter of Hint and by the <pname> parameter of + * GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: + */ + int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_stencil1.java b/src/templates/org/lwjgl/opengles/OES_stencil1.java new file mode 100644 index 00000000..cdc455d7 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_stencil1.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_stencil1 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_STENCIL_INDEX1_OES = 0x8D46; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_stencil4.java b/src/templates/org/lwjgl/opengles/OES_stencil4.java new file mode 100644 index 00000000..5a49d29f --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_stencil4.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_stencil4 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_STENCIL_INDEX4_OES = 0x8D47; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_stencil8.java b/src/templates/org/lwjgl/opengles/OES_stencil8.java new file mode 100644 index 00000000..4dc33ee2 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_stencil8.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_stencil8 { + + /** Accepted by the <internalformat> parameter of RenderbufferStorageOES: */ + int GL_STENCIL_INDEX8_OES = 0x8D48; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_3D.java b/src/templates/org/lwjgl/opengles/OES_texture_3D.java new file mode 100644 index 00000000..1419bb2f --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_3D.java @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.Const; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.Buffer; +import java.nio.ByteBuffer; + +public interface OES_texture_3D { + + /** + * Accepted by the <target> parameter of TexImage3DOES, TexSubImage3DOES, + * CopyTexSubImage3DOES, CompressedTexImage3DOES and + * CompressedTexSubImage3DOES, GetTexParameteriv, and GetTexParameterfv: + */ + int GL_TEXTURE_3D_OES = 0x806F; + + /** + * Accepted by the <pname> parameter of TexParameteriv, TexParameterfv, + * GetTexParameteriv, and GetTexParameterfv: + */ + int GL_TEXTURE_WRAP_R_OES = 0x8072; + + /** + * Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, and + * GetFloatv: + */ + int GL_MAX_3D_TEXTURE_SIZE_OES = 0x8073, + GL_TEXTURE_BINDING_3D_OES = 0x806A; + + void glTexImage3DOES(@GLenum int target, int level, + @GLenum int internalFormat, @GLsizei int width, @GLsizei int height, @GLsizei int depth, int border, + @GLenum int format, @GLenum int type, + @Check(value = "GLChecks.calculateTexImage3DStorage(pixels, format, type, width, height, depth)", canBeNull = true) + @Const @GLbyte @GLshort @GLint @GLfloat Buffer pixels); + + void glTexSubImage3DOES(@GLenum int target, int level, + int xoffset, int yoffset, int zoffset, + @GLsizei int width, @GLsizei int height, @GLsizei int depth, + @GLenum int format, @GLenum int type, + @Check("GLChecks.calculateImageStorage(pixels, format, type, width, height, depth)") + @Const @GLbyte @GLshort @GLint @GLfloat Buffer pixels); + + void glCopyTexSubImage3DOES(@GLenum int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, @GLsizei int width, @GLsizei int height); + + void glCompressedTexImage3DOES(@GLenum int target, int level, @GLenum int internalformat, + @GLsizei int width, @GLsizei int height, @GLsizei int depth, + int border, @GLsizei int imageSize, + @Check @Const @GLvoid ByteBuffer data); + + void glCompressedTexSubImage3DOES(@GLenum int target, int level, + int xoffset, int yoffset, int zoffset, + @GLsizei int width, @GLsizei int height, @GLsizei int depth, + @GLenum int format, @GLsizei int imageSize, + @Check @Const @GLvoid ByteBuffer data); + + void glFramebufferTexture3DOES(@GLenum int target, @GLenum int attachment, @GLenum int textarget, @GLuint int texture, int level, int zoffset); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_float.java b/src/templates/org/lwjgl/opengles/OES_texture_float.java new file mode 100644 index 00000000..268f120c --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_float.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_texture_float { + + /** + * Accepted by the <type> parameter of TexImage2D, TexSubImage2D, + * TexImage3D, and TexSubImage3D: + */ + int GL_FLOAT = 0x1406; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_float_linear.java b/src/templates/org/lwjgl/opengles/OES_texture_float_linear.java new file mode 100644 index 00000000..0ff106d7 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_float_linear.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_texture_float_linear { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_half_float.java b/src/templates/org/lwjgl/opengles/OES_texture_half_float.java new file mode 100644 index 00000000..756b0fd1 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_half_float.java @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_texture_half_float { + + /** + * Accepted by the <type> parameter of TexImage2D, TexSubImage2D, + * TexImage3D, and TexSubImage3D: + */ + int GL_HALF_FLOAT_OES = 0x8D61; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_half_float_linear.java b/src/templates/org/lwjgl/opengles/OES_texture_half_float_linear.java new file mode 100644 index 00000000..a616514c --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_half_float_linear.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_texture_half_float_linear { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_texture_npot.java b/src/templates/org/lwjgl/opengles/OES_texture_npot.java new file mode 100644 index 00000000..2bc88d03 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_texture_npot.java @@ -0,0 +1,36 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_texture_npot { + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_vertex_array_object.java b/src/templates/org/lwjgl/opengles/OES_vertex_array_object.java new file mode 100644 index 00000000..ec95a456 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_vertex_array_object.java @@ -0,0 +1,61 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.GLreturn; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; + +import java.nio.IntBuffer; + +public interface OES_vertex_array_object { + + /** Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv: */ + int GL_VERTEX_ARRAY_BINDING_OES = 0x85B5; + + void glBindVertexArrayOES(@GLuint int array); + + void glDeleteVertexArraysOES(@AutoSize("arrays") @GLsizei int n, @Const @GLuint IntBuffer arrays); + + @Alternate("glDeleteVertexArraysOES") + void glDeleteVertexArraysOES(@Constant("1") @GLsizei int n, @Constant(value = "APIUtil.getBufferInt().put(0, array), 0", keepParam = true) int array); + + void glGenVertexArraysOES(@AutoSize("arrays") @GLsizei int n, @OutParameter @GLuint IntBuffer arrays); + + @Alternate("glGenVertexArraysOES") + @GLreturn("arrays") + void glGenVertexArraysOES2(@Constant("1") @GLsizei int n, @OutParameter @GLuint IntBuffer arrays); + + boolean glIsVertexArrayOES(@GLuint int array); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_vertex_half_float.java b/src/templates/org/lwjgl/opengles/OES_vertex_half_float.java new file mode 100644 index 00000000..1fe881a6 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_vertex_half_float.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_vertex_half_float { + + /** Accepted by the <type> parameter of VertexAttribPointer: */ + int GL_HALF_FLOAT_OES = 0x8D61; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/OES_vertex_type_10_10_10_2.java b/src/templates/org/lwjgl/opengles/OES_vertex_type_10_10_10_2.java new file mode 100644 index 00000000..e24e822a --- /dev/null +++ b/src/templates/org/lwjgl/opengles/OES_vertex_type_10_10_10_2.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface OES_vertex_type_10_10_10_2 { + + /** Accepted by the <type> parameter of VertexAttribPointer */ + int GL_UNSIGNED_INT_10_10_10_2_OES = 0x8DF6, + GL_INT_10_10_10_2_OES = 0x8DF7; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_driver_control.java b/src/templates/org/lwjgl/opengles/QCOM_driver_control.java new file mode 100644 index 00000000..a44ddbec --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_driver_control.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.*; +import org.lwjgl.util.generator.opengl.GLchar; +import org.lwjgl.util.generator.opengl.GLreturn; +import org.lwjgl.util.generator.opengl.GLsizei; +import org.lwjgl.util.generator.opengl.GLuint; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface QCOM_driver_control { + + void glGetDriverControlsQCOM(@OutParameter @Check(value = "1", canBeNull = true) IntBuffer num, + @AutoSize(value = "driverControls", canBeNull = true) @GLsizei int size, + @OutParameter @Check(canBeNull = true) @GLuint IntBuffer driverControls); + + void glGetDriverControlStringQCOM(@GLuint int driverControl, + @AutoSize(value = "driverControlString", canBeNull = true) @GLsizei int bufSize, + @OutParameter @Check(value = "1", canBeNull = true) @GLsizei IntBuffer length, + @OutParameter @Check(canBeNull = true) @GLchar ByteBuffer driverControlString); + + @Alternate("glGetDriverControlStringQCOM") + @GLreturn(value = "driverControlString", maxLength = "bufSize") + void glGetDriverControlStringQCOM2(@GLuint int driverControl, + @GLsizei int bufSize, + @OutParameter @GLsizei @Constant("driverControlString_length, 0") IntBuffer length, + @OutParameter @GLchar ByteBuffer driverControlString); + + void glEnableDriverControlQCOM(@GLuint int driverControl); + + void glDisableDriverControlQCOM(@GLuint int driverControl); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_extended_get.java b/src/templates/org/lwjgl/opengles/QCOM_extended_get.java new file mode 100644 index 00000000..8b5cad0f --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_extended_get.java @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.OutParameter; +import org.lwjgl.util.generator.Result; +import org.lwjgl.util.generator.opengl.*; + +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface QCOM_extended_get { + + /** Accepted by the <pname> parameter of ExtGetTexLevelParameterivQCOM */ + int GL_TEXTURE_WIDTH_QCOM = 0x8BD2, + GL_TEXTURE_HEIGHT_QCOM = 0x8BD3, + GL_TEXTURE_DEPTH_QCOM = 0x8BD4, + GL_TEXTURE_INTERNAL_FORMAT_QCOM = 0x8BD5, + GL_TEXTURE_FORMAT_QCOM = 0x8BD6, + GL_TEXTURE_TYPE_QCOM = 0x8BD7, + GL_TEXTURE_IMAGE_VALID_QCOM = 0x8BD8, + GL_TEXTURE_NUM_LEVELS_QCOM = 0x8BD9, + GL_TEXTURE_TARGET_QCOM = 0x8BDA, + GL_TEXTURE_OBJECT_VALID_QCOM = 0x8BDB; + + /** Accepted by the <pname> parameter of ExtTexObjectStateOverrideiQCOM */ + int GL_STATE_RESTORE = 0x8BDC; + + void glExtGetTexturesQCOM(@OutParameter @Check("1") @GLuint IntBuffer textures, + @AutoSize("textures") int maxTextures, + @OutParameter @Check("1") IntBuffer numTextures); + + void glExtGetBuffersQCOM(@OutParameter @Check("1") @GLuint IntBuffer buffers, + @AutoSize("buffers") int maxBuffers, + @OutParameter @Check("1") IntBuffer numBuffers); + + void glExtGetRenderbuffersQCOM(@OutParameter @Check("1") @GLuint IntBuffer renderbuffers, + @AutoSize("renderbuffers") int maxRenderbuffers, + @OutParameter @Check("1") IntBuffer numRenderbuffers); + + void glExtGetFramebuffersQCOM(@OutParameter @Check("1") @GLuint IntBuffer framebuffers, + @AutoSize("framebuffers") int maxFramebuffers, + @OutParameter @Check("1") IntBuffer numFramebuffers); + + void glExtGetTexLevelParameterivQCOM(@GLuint int texture, @GLenum int face, int level, + @GLenum int pname, @OutParameter @Check("1") IntBuffer params); + + void glExtTexObjectStateOverrideiQCOM(@GLenum int target, @GLenum int pname, int param); + + void glExtGetTexSubImageQCOM(@GLenum int target, int level, + int xoffset, int yoffset, int zoffset, + @GLsizei int width, @GLsizei int height, @GLsizei int depth, + @GLenum int format, @GLenum int type, + @OutParameter + @Check("GLChecks.calculateImageStorage(texels, format, type, width, height, depth)") + @GLbyte + @GLshort + @GLint + @GLfloat Buffer texels); + + void glExtGetBufferPointervQCOM(@GLenum int target, @Result @GLvoid ByteBuffer params); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_extended_get2.java b/src/templates/org/lwjgl/opengles/QCOM_extended_get2.java new file mode 100644 index 00000000..63de0fbe --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_extended_get2.java @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.AutoSize; +import org.lwjgl.util.generator.Check; +import org.lwjgl.util.generator.OutParameter; +import org.lwjgl.util.generator.opengl.GLchar; +import org.lwjgl.util.generator.opengl.GLenum; +import org.lwjgl.util.generator.opengl.GLuint; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; + +public interface QCOM_extended_get2 { + + void glExtGetShadersQCOM(@OutParameter @Check("1") @GLuint IntBuffer shaders, + @AutoSize("shaders") int maxShaders, + @OutParameter @Check("1") IntBuffer numShaders); + + void glExtGetProgramsQCOM(@OutParameter @Check("1") @GLuint IntBuffer programs, + @AutoSize("programs") int maxPrograms, + @OutParameter @Check("1") IntBuffer numPrograms); + + boolean glExtIsProgramBinaryQCOM(@GLuint int program); + + void glExtGetProgramBinarySourceQCOM(@GLuint int program, @GLenum int shadertype, + @OutParameter @Check @GLchar ByteBuffer source, @OutParameter @Check("1") IntBuffer length); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_performance_monitor_global_mode.java b/src/templates/org/lwjgl/opengles/QCOM_performance_monitor_global_mode.java new file mode 100644 index 00000000..d3b868bf --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_performance_monitor_global_mode.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface QCOM_performance_monitor_global_mode { + + /** + * Accepted by the <cap> parameter of Enable and Disable, and + * IsEnabled, and by the <pname> parameter of GetBooleanv, GetIntegerv, + * and GetFloatv: + */ + int GL_PERFMON_GLOBAL_MODE_QCOM = 0x8FA0; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_tiled_rendering.java b/src/templates/org/lwjgl/opengles/QCOM_tiled_rendering.java new file mode 100644 index 00000000..6b107274 --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_tiled_rendering.java @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +import org.lwjgl.util.generator.opengl.GLbitfield; +import org.lwjgl.util.generator.opengl.GLuint; + +public interface QCOM_tiled_rendering { + + /** + * Accepted by the <preserveMask> parameter of StartTilingQCOM and + * EndTilingQCOM + */ + int GL_COLOR_BUFFER_BIT0_QCOM = 0x00000001, + GL_COLOR_BUFFER_BIT1_QCOM = 0x00000002, + GL_COLOR_BUFFER_BIT2_QCOM = 0x00000004, + GL_COLOR_BUFFER_BIT3_QCOM = 0x00000008, + GL_COLOR_BUFFER_BIT4_QCOM = 0x00000010, + GL_COLOR_BUFFER_BIT5_QCOM = 0x00000020, + GL_COLOR_BUFFER_BIT6_QCOM = 0x00000040, + GL_COLOR_BUFFER_BIT7_QCOM = 0x00000080, + GL_DEPTH_BUFFER_BIT0_QCOM = 0x00000100, + GL_DEPTH_BUFFER_BIT1_QCOM = 0x00000200, + GL_DEPTH_BUFFER_BIT2_QCOM = 0x00000400, + GL_DEPTH_BUFFER_BIT3_QCOM = 0x00000800, + GL_DEPTH_BUFFER_BIT4_QCOM = 0x00001000, + GL_DEPTH_BUFFER_BIT5_QCOM = 0x00002000, + GL_DEPTH_BUFFER_BIT6_QCOM = 0x00004000, + GL_DEPTH_BUFFER_BIT7_QCOM = 0x00008000, + GL_STENCIL_BUFFER_BIT0_QCOM = 0x00010000, + GL_STENCIL_BUFFER_BIT1_QCOM = 0x00020000, + GL_STENCIL_BUFFER_BIT2_QCOM = 0x00040000, + GL_STENCIL_BUFFER_BIT3_QCOM = 0x00080000, + GL_STENCIL_BUFFER_BIT4_QCOM = 0x00100000, + GL_STENCIL_BUFFER_BIT5_QCOM = 0x00200000, + GL_STENCIL_BUFFER_BIT6_QCOM = 0x00400000, + GL_STENCIL_BUFFER_BIT7_QCOM = 0x00800000, + GL_MULTISAMPLE_BUFFER_BIT0_QCOM = 0x01000000, + GL_MULTISAMPLE_BUFFER_BIT1_QCOM = 0x02000000, + GL_MULTISAMPLE_BUFFER_BIT2_QCOM = 0x04000000, + GL_MULTISAMPLE_BUFFER_BIT3_QCOM = 0x08000000, + GL_MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000, + GL_MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000, + GL_MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000, + GL_MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000; + + void glStartTilingQCOM(@GLuint int x, @GLuint int y, @GLuint int width, @GLuint int height, + @GLbitfield int preserveMask); + + void glEndTilingQCOM(@GLbitfield int preserveMask); + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/QCOM_writeonly_rendering.java b/src/templates/org/lwjgl/opengles/QCOM_writeonly_rendering.java new file mode 100644 index 00000000..d1fb684e --- /dev/null +++ b/src/templates/org/lwjgl/opengles/QCOM_writeonly_rendering.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface QCOM_writeonly_rendering { + + /** Accepted by the <cap> parameter of Enable, Disable. */ + int GL_WRITEONLY_RENDERING_QCOM = 0x8823; + +} \ No newline at end of file diff --git a/src/templates/org/lwjgl/opengles/VIV_shader_binary.java b/src/templates/org/lwjgl/opengles/VIV_shader_binary.java new file mode 100644 index 00000000..249cd1ee --- /dev/null +++ b/src/templates/org/lwjgl/opengles/VIV_shader_binary.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2002-2011 LWJGL Project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'LWJGL' nor the names of + * its contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.lwjgl.opengles; + +public interface VIV_shader_binary { + + /** Accepted by the <binaryformat> parameter of ShaderBinary: */ + int GL_SHADER_BINARY_VIV = 0x8FC4; + +}

3@NBND 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 z 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¥axr*lK=AMINcJ&;r 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