aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/egl/ffi.rs150
-rw-r--r--src/egl/mod.rs150
-rw-r--r--src/lib.rs3
3 files changed, 0 insertions, 303 deletions
diff --git a/src/egl/ffi.rs b/src/egl/ffi.rs
deleted file mode 100644
index 4b62e22..0000000
--- a/src/egl/ffi.rs
+++ /dev/null
@@ -1,150 +0,0 @@
-#![allow(dead_code)]
-#![allow(non_snake_case_functions)]
-#![allow(non_camel_case_types)]
-
-use libc;
-
-pub type EGLBoolean = libc::c_int;
-pub type EGLint = i32;
-pub type EGLDisplay = *const libc::c_void;
-pub type EGLConfig = *const libc::c_void;
-pub type EGLSurface = *const libc::c_void;
-pub type EGLContext = *const libc::c_void;
-
-pub static EGL_DEFAULT_DISPLAY: EGLint = 0;
-/*pub static EGL_NO_CONTEXT: EGLContext = { use std::ptr; ptr::null() };
-pub static EGL_NO_DISPLAY: EGLDisplay = { use std::ptr; ptr::null() };
-pub static EGL_NO_SURFACE: EGLSurface = { use std::ptr; ptr::null() };*/
-
-pub static EGL_VERSION_1_0: EGLint = 1;
-pub static EGL_VERSION_1_1: EGLint = 1;
-
-pub static EGL_FALSE: EGLint = 0;
-pub static EGL_TRUE: EGLint = 1;
-
-pub static EGL_SUCCESS: EGLint = 0x3000;
-pub static EGL_NOT_INITIALIZED: EGLint = 0x3001;
-pub static EGL_BAD_ACCESS: EGLint = 0x3002;
-pub static EGL_BAD_ALLOC: EGLint = 0x3003;
-pub static EGL_BAD_ATTRIBUTE: EGLint = 0x3004;
-pub static EGL_BAD_CONFIG: EGLint = 0x3005;
-pub static EGL_BAD_CONTEXT: EGLint = 0x3006;
-pub static EGL_BAD_CURRENT_SURFACE: EGLint = 0x3007;
-pub static EGL_BAD_DISPLAY: EGLint = 0x3008;
-pub static EGL_BAD_MATCH: EGLint = 0x3009;
-pub static EGL_BAD_NATIVE_PIXMAP: EGLint = 0x300A;
-pub static EGL_BAD_NATIVE_WINDOW: EGLint = 0x300B;
-pub static EGL_BAD_PARAMETER: EGLint = 0x300C;
-pub static EGL_BAD_SURFACE: EGLint = 0x300D;
-pub static EGL_CONTEXT_LOST: EGLint = 0x300E;
-
-pub static EGL_BUFFER_SIZE: EGLint = 0x3020;
-pub static EGL_ALPHA_SIZE: EGLint = 0x3021;
-pub static EGL_BLUE_SIZE: EGLint = 0x3022;
-pub static EGL_GREEN_SIZE: EGLint = 0x3023;
-pub static EGL_RED_SIZE: EGLint = 0x3024;
-pub static EGL_DEPTH_SIZE: EGLint = 0x3025;
-pub static EGL_STENCIL_SIZE: EGLint = 0x3026;
-pub static EGL_CONFIG_CAVEAT: EGLint = 0x3027;
-pub static EGL_CONFIG_ID: EGLint = 0x3028;
-pub static EGL_LEVEL: EGLint = 0x3029;
-pub static EGL_MAX_PBUFFER_HEIGHT: EGLint = 0x302A;
-pub static EGL_MAX_PBUFFER_PIXELS: EGLint = 0x302B;
-pub static EGL_MAX_PBUFFER_WIDTH: EGLint = 0x302C;
-pub static EGL_NATIVE_RENDERABLE: EGLint = 0x302D;
-pub static EGL_NATIVE_VISUAL_ID: EGLint = 0x302E;
-pub static EGL_NATIVE_VISUAL_TYPE: EGLint = 0x302F;
-/*pub static EGL_PRESERVED_RESOURCES: EGLint = 0x3030;*/
-pub static EGL_SAMPLES: EGLint = 0x3031;
-pub static EGL_SAMPLE_BUFFERS: EGLint = 0x3032;
-pub static EGL_SURFACE_TYPE: EGLint = 0x3033;
-pub static EGL_TRANSPARENT_TYPE: EGLint = 0x3034;
-pub static EGL_TRANSPARENT_BLUE_VALUE: EGLint = 0x3035;
-pub static EGL_TRANSPARENT_GREEN_VALUE: EGLint = 0x3036;
-pub static EGL_TRANSPARENT_RED_VALUE: EGLint = 0x3037;
-pub static EGL_NONE: EGLint = 0x3038 /* Also a config value */;
-pub static EGL_BIND_TO_TEXTURE_RGB: EGLint = 0x3039;
-pub static EGL_BIND_TO_TEXTURE_RGBA: EGLint = 0x303A;
-pub static EGL_MIN_SWAP_INTERVAL: EGLint = 0x303B;
-pub static EGL_MAX_SWAP_INTERVAL: EGLint = 0x303C;
-
-
-pub static EGL_DONT_CARE: EGLint = -1;
-pub static EGL_SLOW_CONFIG: EGLint = 0x3050 /* EGL_CONFIG_CAVEAT value */;
-pub static EGL_NON_CONFORMANT_CONFIG: EGLint = 0x3051 /* " */;
-pub static EGL_TRANSPARENT_RGB: EGLint = 0x3052 /* EGL_TRANSPARENT_TYPE value */;
-pub static EGL_NO_TEXTURE: EGLint = 0x305C /* EGL_TEXTURE_FORMAT/TARGET value */;
-pub static EGL_TEXTURE_RGB: EGLint = 0x305D /* EGL_TEXTURE_FORMAT value */;
-pub static EGL_TEXTURE_RGBA: EGLint = 0x305E /* " */;
-pub static EGL_TEXTURE_2D: EGLint = 0x305F /* EGL_TEXTURE_TARGET value */;
-
-pub static EGL_PBUFFER_BIT: EGLint = 0x01 /* EGL_SURFACE_TYPE mask bit */;
-pub static EGL_PIXMAP_BIT: EGLint = 0x02 /* " */;
-pub static EGL_WINDOW_BIT: EGLint = 0x04 /* " */;
-
-pub static EGL_VENDOR: EGLint = 0x3053 /* eglQueryString target */;
-pub static EGL_VERSION: EGLint = 0x3054 /* " */;
-pub static EGL_EXTENSIONS: EGLint = 0x3055 /* " */;
-
-pub static EGL_HEIGHT: EGLint = 0x3056;
-pub static EGL_WIDTH: EGLint = 0x3057;
-pub static EGL_LARGEST_PBUFFER: EGLint = 0x3058;
-pub static EGL_TEXTURE_FORMAT: EGLint = 0x3080 /* For pbuffers bound as textures */;
-pub static EGL_TEXTURE_TARGET: EGLint = 0x3081 /* " */;
-pub static EGL_MIPMAP_TEXTURE: EGLint = 0x3082 /* " */;
-pub static EGL_MIPMAP_LEVEL: EGLint = 0x3083 /* " */;
-
-pub static EGL_BACK_BUFFER: EGLint = 0x3084;
-
-pub static EGL_DRAW: EGLint = 0x3059;
-pub static EGL_READ: EGLint = 0x305A;
-
-pub static EGL_CORE_NATIVE_ENGINE: EGLint = 0x305B;
-
-extern {
- pub fn eglGetError() -> EGLint;
-
- pub fn eglGetDisplay(display: *const ()/*NativeDisplayType*/) -> EGLDisplay;
- pub fn eglInitialize(dpy: EGLDisplay, major: *mut EGLint, minor: *mut EGLint) -> EGLBoolean;
- pub fn eglTerminate(dpy: EGLDisplay) -> EGLBoolean;
- pub fn eglQueryString(dpy: EGLDisplay, name: EGLint) -> *const libc::c_char;
- pub fn eglGetProcAddress(procname: *const libc::c_char) -> *const ();
-
- pub fn eglGetConfigs(dpy: EGLDisplay, configs: *mut EGLConfig, config_size: EGLint,
- num_config: *mut EGLint) -> EGLBoolean;
- pub fn eglChooseConfig(dpy: EGLDisplay, attrib_list: *const EGLint, configs: *mut EGLConfig,
- config_size: EGLint, num_config: *mut EGLint) -> EGLBoolean;
- pub fn eglGetConfigAttrib(dpy: EGLDisplay, config: EGLConfig, attribute: EGLint,
- value: *mut EGLint) -> EGLBoolean;
-
- //pub fn eglCreateWindowSurface(dpy: EGLDisplay, EGLConfig config, window: NativeWindowType, attrib_list: *const EGLint) -> EGLSurface;
- //pub fn eglCreatePixmapSurface(dpy: EGLDisplay, EGLConfig config, pixmap: NativePixmapType, attrib_list: *const EGLint) -> EGLSurface;
- pub fn eglCreatePbufferSurface(dpy: EGLDisplay, config: EGLConfig,
- attrib_list: *const EGLint) -> EGLSurface;
- pub fn eglDestroySurface(dpy: EGLDisplay, surface: EGLSurface) -> EGLBoolean;
- pub fn eglQuerySurface(dpy: EGLDisplay, surface: EGLSurface, attribute: EGLint,
- value: *mut EGLint) -> EGLBoolean;
-
- pub fn eglSurfaceAttrib(dpy: EGLDisplay, surface: EGLSurface, attribute: EGLint,
- value: EGLint) -> EGLBoolean;
- pub fn eglBindTexImage(dpy: EGLDisplay, surface: EGLSurface, buffer: EGLint) -> EGLBoolean;
- pub fn eglReleaseTexImage(dpy: EGLDisplay, surface: EGLSurface, buffer: EGLint) -> EGLBoolean;
-
- pub fn eglSwapInterval(dpy: EGLDisplay, interval: EGLint) -> EGLBoolean;
-
- pub fn eglCreateContext(dpy: EGLDisplay, config: EGLConfig, share_list: EGLContext,
- attrib_list: *const EGLint) -> EGLContext;
- pub fn eglDestroyContext(dpy: EGLDisplay, ctx: EGLContext) -> EGLBoolean;
- pub fn eglMakeCurrent(dpy: EGLDisplay, draw: EGLSurface, read: EGLSurface,
- ctx: EGLContext) -> EGLBoolean;
- pub fn eglGetCurrentContext() -> EGLContext;
- pub fn eglGetCurrentSurface(readdraw: EGLint) -> EGLSurface;
- pub fn eglGetCurrentDisplay() -> EGLDisplay;
- pub fn eglQueryContext(dpy: EGLDisplay, ctx: EGLContext, attribute: EGLint,
- value: *mut EGLint) -> EGLBoolean;
-
- pub fn eglWaitGL() -> EGLBoolean;
- pub fn eglWaitNative(engine: EGLint) -> EGLBoolean;
- pub fn eglSwapBuffers(dpy: EGLDisplay, draw: EGLSurface) -> EGLBoolean;
- //pub fn eglCopyBuffers(dpy: EGLDisplay, surface: EGLSurface, target: NativePixmapType) -> EGLBoolean;
-}
diff --git a/src/egl/mod.rs b/src/egl/mod.rs
deleted file mode 100644
index 22ede27..0000000
--- a/src/egl/mod.rs
+++ /dev/null
@@ -1,150 +0,0 @@
-use {Event, Hints, MonitorID};
-
-mod ffi;
-
-pub struct Window {
- display: ffi::EGLDisplay,
- context: ffi::EGLContext,
- //surface: ffi::EGLSurface,
-}
-
-impl Window {
- pub fn new(_dimensions: Option<(uint, uint)>, _title: &str,
- _hints: &Hints, _monitor: Option<MonitorID>)
- -> Result<Window, String>
- {
- use std::{mem, ptr};
-
- let display = unsafe {
- let display = ffi::eglGetDisplay(mem::transmute(ffi::EGL_DEFAULT_DISPLAY));
- if display.is_null() {
- return Err("No EGL display connection available".to_string());
- }
- display
- };
-
- let (_major, _minor) = unsafe {
- let mut major: ffi::EGLint = mem::uninitialized();
- let mut minor: ffi::EGLint = mem::uninitialized();
-
- if ffi::eglInitialize(display, &mut major, &mut minor) != ffi::EGL_TRUE {
- return Err(format!("eglInitialize failed"))
- }
-
- (major, minor)
- };
-
- let config = unsafe {
- let attribute_list = [
- ffi::EGL_RED_SIZE, 1,
- ffi::EGL_GREEN_SIZE, 1,
- ffi::EGL_BLUE_SIZE, 1,
- ffi::EGL_NONE
- ];
-
- let mut num_config: ffi::EGLint = mem::uninitialized();
- let mut config: ffi::EGLConfig = mem::uninitialized();
- if ffi::eglChooseConfig(display, attribute_list.as_ptr(), &mut config, 1,
- &mut num_config) != ffi::EGL_TRUE
- {
- return Err(format!("eglChooseConfig failed"))
- }
-
- if num_config <= 0 {
- return Err(format!("eglChooseConfig returned no available config"))
- }
-
- config
- };
-
- let context = unsafe {
- let context = ffi::eglCreateContext(display, config, ptr::null(), ptr::null());
- if context.is_null() {
- return Err(format!("eglCreateContext failed"))
- }
- context
- };
-
- /*let surface = unsafe {
- let surface = ffi::eglCreateWindowSurface(display, config, native_window, ptr::null());
- if surface.is_null() {
- return Err(format!("eglCreateWindowSurface failed"))
- }
- surface
- };*/
-
- Ok(Window {
- display: display,
- context: context,
- //surface: surface,
- })
- }
-
- pub fn is_closed(&self) -> bool {
- false
- }
-
- pub fn set_title(&self, _: &str) {
- }
-
- pub fn get_position(&self) -> Option<(int, int)> {
- None
- }
-
- pub fn set_position(&self, _x: uint, _y: uint) {
- }
-
- pub fn get_inner_size(&self) -> Option<(uint, uint)> {
- unimplemented!()
- }
-
- pub fn get_outer_size(&self) -> Option<(uint, uint)> {
- unimplemented!()
- }
-
- pub fn set_inner_size(&self, _x: uint, _y: uint) {
- }
-
- pub fn poll_events(&self) -> Vec<Event> {
- Vec::new()
- }
-
- pub fn wait_events(&self) -> Vec<Event> {
- Vec::new()
- }
-
- pub fn make_current(&self) {
- unimplemented!()
- /*unsafe {
- ffi::eglMakeCurrent(self.display, self.surface, self.surface, self.context);
- }*/
- }
-
- pub fn get_proc_address(&self, addr: &str) -> *const () {
- use std::c_str::ToCStr;
-
- unsafe {
- addr.with_c_str(|s| {
- ffi::eglGetProcAddress(s) as *const ()
- })
- }
- }
-
- pub fn swap_buffers(&self) {
- unimplemented!()
- /*unsafe {
- ffi::eglSwapBuffers(self.display, self.surface);
- }*/
- }
-}
-
-#[unsafe_destructor]
-impl Drop for Window {
- fn drop(&mut self) {
- unsafe {
- //ffi::eglDestroySurface(self.display, self.surface);
- ffi::eglDestroyContext(self.display, self.context);
- ffi::eglTerminate(self.display);
- }
- }
-}
diff --git a/src/lib.rs b/src/lib.rs
index cfaf875..97001a8 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -43,9 +43,6 @@ mod osx;
#[cfg(target_os = "android")]
mod android;
-#[allow(dead_code)]
-//mod egl;
-
mod events;
#[cfg(not(target_os = "windows"), not(target_os = "linux"), not(target_os = "macos"), not(target_os = "android"))]