equal
deleted
inserted
replaced
111 }; |
111 }; |
112 } |
112 } |
113 } |
113 } |
114 |
114 |
115 #[no_mangle] |
115 #[no_mangle] |
116 pub extern "C" fn dispose_preview(engine_state: &mut EngineInstance, preview: &mut PreviewInfo) { |
116 pub extern "C" fn dispose_preview(engine_state: &mut EngineInstance) { |
117 (*engine_state).world.dispose_preview(); |
117 (*engine_state).world.dispose_preview(); |
118 } |
118 } |
119 |
119 |
120 #[no_mangle] |
120 #[no_mangle] |
121 pub extern "C" fn send_ipc(engine_state: &mut EngineInstance, buf: *const u8, size: usize) { |
121 pub extern "C" fn send_ipc(engine_state: &mut EngineInstance, buf: *const u8, size: usize) { |
140 #[no_mangle] |
140 #[no_mangle] |
141 pub extern "C" fn setup_current_gl_context( |
141 pub extern "C" fn setup_current_gl_context( |
142 engine_state: &mut EngineInstance, |
142 engine_state: &mut EngineInstance, |
143 width: u16, |
143 width: u16, |
144 height: u16, |
144 height: u16, |
145 gl_loader: extern "C" fn(*const c_char) -> *const c_void, |
145 gl_loader: extern "C" fn(*const c_char) -> *mut c_void, |
146 ) { |
146 ) { |
147 gl::load_with(|name| { |
147 gl::load_with(|name| { |
148 let c_name = CString::new(name).unwrap(); |
148 let c_name = CString::new(name).unwrap(); |
149 gl_loader(c_name.as_ptr()) |
149 gl_loader(c_name.as_ptr()) |
150 }); |
150 }); |
173 } |
173 } |
174 |
174 |
175 #[no_mangle] |
175 #[no_mangle] |
176 pub extern "C" fn cleanup(engine_state: *mut EngineInstance) { |
176 pub extern "C" fn cleanup(engine_state: *mut EngineInstance) { |
177 unsafe { |
177 unsafe { |
178 Box::from_raw(engine_state); |
178 drop(Box::from_raw(engine_state)); |
179 } |
179 } |
180 } |
180 } |