more c functions
authorBrendan Hansen <brendan.f.hansen@gmail.com>
Tue, 7 Dec 2021 21:51:52 +0000 (15:51 -0600)
committerBrendan Hansen <brendan.f.hansen@gmail.com>
Tue, 7 Dec 2021 21:51:52 +0000 (15:51 -0600)
modules/glfw3/onyx_glfw3.c
modules/glfw3/onyx_glfw3.so
modules/opengles/onyx_opengles.c
modules/opengles/onyx_opengles.so

index 568c9349d3deb8d1e583cb0bd89de6792b93a537..89b8c49cc167f491343695399330c74d30fbf7ad 100644 (file)
@@ -495,6 +495,23 @@ ONYX_LIBRARY {
     ONYX_FUNC(glfwSetWindowTitle)
     ONYX_FUNC(glfwGetWindowPos)
     ONYX_FUNC(glfwSetWindowPos)
+    ONYX_FUNC(glfwGetWindowSize)
+    ONYX_FUNC(glfwSetWindowSize)
+    ONYX_FUNC(glfwSetWindowSizeLimits)
+    ONYX_FUNC(glfwSetWindowAspectRatio)
+    ONYX_FUNC(glfwGetFramebufferSize)
+    ONYX_FUNC(glfwGetWindowFrameSize)
+    ONYX_FUNC(glfwIconifyWindow)
+    ONYX_FUNC(glfwRestoreWindow)
+    ONYX_FUNC(glfwMaximizeWindow)
+    ONYX_FUNC(glfwShowWindow)
+    ONYX_FUNC(glfwHideWindow)
+    ONYX_FUNC(glfwFocusWindow)
+    ONYX_FUNC(glfwGetWindowMonitor)
+    ONYX_FUNC(glfwSetWindowMonitor)
+    ONYX_FUNC(glfwGetWindowAttrib)
+    ONYX_FUNC(glfwSetWindowUserPointer)
+    ONYX_FUNC(glfwGetWindowUserPointer)
     ONYX_FUNC(glfwPollEvents)
     ONYX_FUNC(glfwWaitEvents)
     ONYX_FUNC(glfwWaitEventsTimeout)
index a3f8adc5a07de14ab04c0c1d47e944ded5b702d1..198eca1f7adb25cfacd9935dae29b299b80e214a 100755 (executable)
Binary files a/modules/glfw3/onyx_glfw3.so and b/modules/glfw3/onyx_glfw3.so differ
index c0de24452d06bcc4b1fdddf9229626dbbd9d2d18..38413642ec99a02caea45a05a55f624918572e27 100644 (file)
@@ -506,10 +506,21 @@ ONYX_DEF(glShaderSource, (INT, INT, PTR, PTR), ()) {
     return NULL;
 }
 
+ONYX_DEF(glGetUniformIndices, (INT, INT, PTR, PTR), ()) {
+    GLsizei count = params->data[1].of.i32;
+    int base_ptr = *(int *) ONYX_PTR(params->data[2].of.i32);
+    char** strs = alloca(count * sizeof(char *));
+    for (int i=0; i<count; i++) {
+        strs[i] = (char *) ONYX_PTR(base_ptr + i * 4);
+    }
+    
+    glGetUniformIndices(params->data[0].of.i32, count, (const char *const*) strs, (int *) ONYX_PTR(params->data[3].of.i32));
+    return NULL;
+}
+
 // glGetBufferPointerv :: (target: GLenum, pname: GLenum, params: ^rawptr) -> void ---
 // glGetVertexAttribPointerv :: (index: GLuint, pname: GLenum, pointer: ^rawptr) -> void ---
 // glTransformFeedbackVaryings       :: (program: GLuint, count: GLsizei, varyings: ^^GLchar, bufferMode: GLenum) -> void ---
-// glGetUniformIndices               :: (program: GLuint, uniformCount: GLsizei, uniformNames: ^^GLchar, uniformIndices: ^GLuint) -> void ---
 
 // Hmm...
 // glClientWaitSync                  :: (sync: GLsync, flags: GLbitfield, timeout: GLuint64) -> GLenum ---
@@ -727,7 +738,7 @@ ONYX_LIBRARY {
     // ONYX_FUNC(glClearBufferfi)
     // ONYX_FUNC(glGetStringi)
     ONYX_FUNC(glCopyBufferSubData)
-    // ONYX_FUNC(glGetUniformIndices)
+    ONYX_FUNC(glGetUniformIndices)
     // ONYX_FUNC(glGetActiveUniformsiv)
     ONYX_FUNC(glGetUniformBlockIndex)
     ONYX_FUNC(glGetActiveUniformBlockiv)
index 5253b1f71e874664b202b8d7870b6cc734016744..34c89d6c936b9e037485b7ba09295706088fbe22 100755 (executable)
Binary files a/modules/opengles/onyx_opengles.so and b/modules/opengles/onyx_opengles.so differ