pub unsafe trait EGL1_5:
EGL1_0
+ EGL1_1
+ EGL1_2
+ EGL1_3
+ EGL1_4 {
// Required methods
unsafe fn eglCreateSync(
&self,
display: EGLDisplay,
type_: Enum,
attrib_list: *const Attrib,
) -> EGLSync;
unsafe fn eglDestroySync(
&self,
display: EGLDisplay,
sync: EGLSync,
) -> Boolean;
unsafe fn eglClientWaitSync(
&self,
display: EGLDisplay,
sync: EGLSync,
flags: Int,
timeout: Time,
) -> Int;
unsafe fn eglGetSyncAttrib(
&self,
display: EGLDisplay,
sync: EGLSync,
attribute: Int,
value: *mut Attrib,
) -> Boolean;
unsafe fn eglCreateImage(
&self,
display: EGLDisplay,
ctx: EGLContext,
target: Enum,
buffer: EGLClientBuffer,
attrib_list: *const Attrib,
) -> EGLImage;
unsafe fn eglDestroyImage(
&self,
display: EGLDisplay,
image: EGLImage,
) -> Boolean;
unsafe fn eglGetPlatformDisplay(
&self,
platform: Enum,
native_display: *mut c_void,
attrib_list: *const Attrib,
) -> EGLDisplay;
unsafe fn eglCreatePlatformWindowSurface(
&self,
display: EGLDisplay,
config: EGLConfig,
native_window: *mut c_void,
attrib_list: *const Attrib,
) -> EGLSurface;
unsafe fn eglCreatePlatformPixmapSurface(
&self,
display: EGLDisplay,
config: EGLConfig,
native_pixmap: *mut c_void,
attrib_list: *const Attrib,
) -> EGLSurface;
unsafe fn eglWaitSync(
&self,
display: EGLDisplay,
sync: EGLSync,
flags: Int,
) -> Boolean;
}
Expand description
EGL API interface.
An implementation of this trait can be used to create an Instance
.
This crate provides two implementation of this trait:
- [
Static
] which is available with thestatic
feature enabled, defined by statically linking to the EGL library at compile time. - [
Dynamic
] which is available with thedynamic
feature enabled, defined by dynamically linking to the EGL library at runtime. In this case, you may prefer to directly use theDynamicInstance
type.