extern "libglfw" { // Opaque types type GLFWwindow handle; type GLFWmonitor handle; // Struct definition type GLFWvidmode struct { int width; int height; int redBits; int greenBits; int blueBits; int refreshRate; }; /// GLFWvidmode* type GLFWvidmodeRef ref GLFWvidmode; /// Create window with specified [width], [height] and [title] fn glfw_mkWindow( int width, int height, str title, GLFWmonitor mon, GLFWwindow shr ) GLFWwindow = "glfwCreateWindow"; /// Get videomode from monitor [mon] fn glfw_getVideoMode( GLFWmonitor mon ) GLFWvidmodeRef = "glfwGetVideoMode"; /// Get framebuffer [width] and [height] fn glfw_getFrameBufferSize( GLFWwindow win, out int width, out int height ) = "glfwGetFramebufferSize"; }