aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIllusionMan1212 <hisham.abourgheba@gmail.com>2024-08-10 10:21:03 +0200
committerIllusionMan1212 <hisham.abourgheba@gmail.com>2024-08-10 10:21:03 +0200
commit7875e4a1ab4ec8fbf8d5884ff49b0ccbbf85a4d1 (patch)
tree6e6efa106b077c2872dc4c74bb2a12effa833ddf
parent7f17d4eb7fa0b95dfed3a42211d9188479bfd820 (diff)
vendor/egl: added a few more egl procedures and constants
-rw-r--r--vendor/egl/egl.odin31
1 files changed, 25 insertions, 6 deletions
diff --git a/vendor/egl/egl.odin b/vendor/egl/egl.odin
index 82181b1c5..e455a3d42 100644
--- a/vendor/egl/egl.odin
+++ b/vendor/egl/egl.odin
@@ -8,25 +8,38 @@ Surface :: distinct rawptr
Config :: distinct rawptr
Context :: distinct rawptr
+Boolean :: b32
+
+FALSE :: false
+TRUE :: true
+
NO_DISPLAY :: Display(uintptr(0))
NO_CONTEXT :: Context(uintptr(0))
NO_SURFACE :: Surface(uintptr(0))
+DEFAULT_DISPLAY :: NativeDisplayType(uintptr(0))
+
CONTEXT_OPENGL_CORE_PROFILE_BIT :: 0x00000001
WINDOW_BIT :: 0x0004
OPENGL_BIT :: 0x0008
+OPENGL_ES2_BIT :: 0x0004
+OPENGL_ES3_BIT :: 0x00000040
+ALPHA_SIZE :: 0x3021
BLUE_SIZE :: 0x3022
GREEN_SIZE :: 0x3023
RED_SIZE :: 0x3024
DEPTH_SIZE :: 0x3025
STENCIL_SIZE :: 0x3026
+NATIVE_VISUAL_ID :: 0x302E
SURFACE_TYPE :: 0x3033
NONE :: 0x3038
COLOR_BUFFER_TYPE :: 0x303F
RENDERABLE_TYPE :: 0x3040
CONFORMANT :: 0x3042
+HEIGHT :: 0x3056
+WIDTH :: 0x3057
BACK_BUFFER :: 0x3084
RENDER_BUFFER :: 0x3086
@@ -35,6 +48,7 @@ GL_COLORSPACE_LINEAR :: 0x308A
RGB_BUFFER :: 0x308E
GL_COLORSPACE :: 0x309D
+CONTEXT_CLIENT_VERSION :: 0x3098
CONTEXT_MAJOR_VERSION :: 0x3098
CONTEXT_MINOR_VERSION :: 0x30FB
CONTEXT_OPENGL_PROFILE_MASK :: 0x30FD
@@ -45,15 +59,20 @@ foreign import egl "system:EGL"
@(default_calling_convention="c", link_prefix="egl")
foreign egl {
GetDisplay :: proc(display: NativeDisplayType) -> Display ---
- Initialize :: proc(display: Display, major: ^i32, minor: ^i32) -> i32 ---
- BindAPI :: proc(api: u32) -> i32 ---
- ChooseConfig :: proc(display: Display, attrib_list: ^i32, configs: ^Config, config_size: i32, num_config: ^i32) -> i32 ---
+ Initialize :: proc(display: Display, major: ^i32, minor: ^i32) -> Boolean ---
+ BindAPI :: proc(api: u32) -> Boolean ---
+ ChooseConfig :: proc(display: Display, attrib_list: ^i32, configs: ^Config, config_size: i32, num_config: ^i32) -> Boolean ---
CreateWindowSurface :: proc(display: Display, config: Config, native_window: NativeWindowType, attrib_list: ^i32) -> Surface ---
CreateContext :: proc(display: Display, config: Config, share_context: Context, attrib_list: ^i32) -> Context ---
- MakeCurrent :: proc(display: Display, draw: Surface, read: Surface, ctx: Context) -> i32 ---
- SwapInterval :: proc(display: Display, interval: i32) -> i32 ---
- SwapBuffers :: proc(display: Display, surface: Surface) -> i32 ---
+ MakeCurrent :: proc(display: Display, draw: Surface, read: Surface, ctx: Context) -> Boolean ---
+ QuerySurface :: proc(display: Display, surface: Surface, attribute: i32, value: ^i32) -> Boolean ---
+ SwapInterval :: proc(display: Display, interval: i32) -> Boolean ---
+ SwapBuffers :: proc(display: Display, surface: Surface) -> Boolean ---
GetProcAddress :: proc(name: cstring) -> rawptr ---
+ GetConfigAttrib :: proc(display: Display, config: Config, attribute: i32, value: ^i32) -> Boolean ---
+ DestroyContext :: proc(display: Display, ctx: Context) -> Boolean ---
+ DestroySurface :: proc(display: Display, surface: Surface) -> Boolean ---
+ Terminate :: proc(display: Display) -> Boolean ---
}
gl_set_proc_address :: proc(p: rawptr, name: cstring) {