Skip to content

Commit 05fbdcb

Browse files
committed
Update changelog & bindings
1 parent cb26fc1 commit 05fbdcb

File tree

6 files changed

+25
-22
lines changed

6 files changed

+25
-22
lines changed

CHANGES.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
* 0.93.4
2+
* Various documentation, callback handling and other internal improvements.
3+
14
* 0.93.3
25
* Fix issue with using `Option<Ptr>`, now behaves as expected and doesn't segfault.
36
* Introduce `Mat::get_data_dump()` to get the dump of the Mat data, it's also included in the `Debug` output.

docs/core.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -33694,8 +33694,8 @@ pub mod core {
3369433694
/// serialized.
3369533695
#[inline]
3369633696
fn enqueue_host_callback(&mut self, callback: core::Stream_StreamCallback) -> Result<()> {
33697-
callback_arg!(callback_trampoline(status: i32, user_data: *mut c_void) -> () => user_data in callbacks => callback(status: i32) -> ());
33698-
userdata_arg!(user_data in callbacks => callback);
33697+
callback_arg!(callback_trampoline(status: i32, user_data: *mut c_void) -> () => user_data in callback(status: i32) -> ());
33698+
userdata_arg!(user_data: *mut c_void => callback);
3369933699
return_send!(via ocvrs_return);
3370033700
unsafe { sys::cv_cuda_Stream_enqueueHostCallback_StreamCallback_voidX(self.as_raw_mut_Stream(), callback_trampoline, user_data, ocvrs_return.as_mut_ptr()) };
3370133701
return_receive!(unsafe ocvrs_return => ret);

docs/face.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -2817,8 +2817,8 @@ pub mod face {
28172817
/// set the custom face detector
28182818
#[inline]
28192819
fn set_face_detector(&mut self, f: Option<Box<dyn FnMut(*const c_void, *const c_void) -> bool + Send + Sync + 'static>>) -> Result<bool> {
2820-
callback_arg!(f_trampoline(unnamed: *const c_void, unnamed_1: *const c_void, unnamed_2: *mut c_void) -> bool => unnamed_2 in callbacks => f(unnamed: *const c_void, unnamed_1: *const c_void) -> bool);
2821-
userdata_arg!(user_data in callbacks => f);
2820+
callback_arg!(f_trampoline(unnamed: *const c_void, unnamed_1: *const c_void, unnamed_2: *mut c_void) -> bool => unnamed_2 in f(unnamed: *const c_void, unnamed_1: *const c_void) -> bool);
2821+
userdata_arg!(user_data: *mut c_void => f);
28222822
return_send!(via ocvrs_return);
28232823
unsafe { sys::cv_face_FacemarkKazemi_setFaceDetector_bool__X__const_cv__InputArrayR__const_cv__OutputArrayR__voidX__voidX(self.as_raw_mut_FacemarkKazemi(), f_trampoline, user_data, ocvrs_return.as_mut_ptr()) };
28242824
return_receive!(unsafe ocvrs_return => ret);
@@ -3669,8 +3669,8 @@ pub mod face {
36693669
/// * user_data: 0
36703670
#[inline]
36713671
fn set_face_detector(&mut self, detector: crate::face::FN_FaceDetector) -> Result<bool> {
3672-
callback_arg!(detector_trampoline(unnamed: *const c_void, unnamed_1: *const c_void, user_data: *mut c_void) -> bool => user_data in callbacks => detector(unnamed: *const c_void, unnamed_1: *const c_void) -> bool);
3673-
userdata_arg!(user_data in callbacks => detector);
3672+
callback_arg!(detector_trampoline(unnamed: *const c_void, unnamed_1: *const c_void, user_data: *mut c_void) -> bool => user_data in detector(unnamed: *const c_void, unnamed_1: *const c_void) -> bool);
3673+
userdata_arg!(user_data: *mut c_void => detector);
36743674
return_send!(via ocvrs_return);
36753675
unsafe { sys::cv_face_FacemarkTrain_setFaceDetector_FN_FaceDetector_voidX(self.as_raw_mut_FacemarkTrain(), detector_trampoline, user_data, ocvrs_return.as_mut_ptr()) };
36763676
return_receive!(unsafe ocvrs_return => ret);

docs/highgui.rs

+10-10
Original file line numberDiff line numberDiff line change
@@ -580,8 +580,8 @@ pub mod highgui {
580580
#[inline]
581581
pub fn create_button_def(bar_name: &str, on_change: crate::highgui::ButtonCallback) -> Result<i32> {
582582
extern_container_arg!(bar_name);
583-
callback_arg!(on_change_trampoline(state: i32, userdata: *mut c_void) -> () => userdata in callbacks => on_change(state: i32) -> ());
584-
userdata_arg!(userdata in callbacks => on_change);
583+
callback_arg!(on_change_trampoline(state: i32, userdata: *mut c_void) -> () => userdata in on_change(state: i32) -> ());
584+
userdata_arg!(userdata: *mut c_void => on_change);
585585
return_send!(via ocvrs_return);
586586
unsafe { sys::cv_createButton_const_StringR_ButtonCallback_voidX(bar_name.opencv_as_extern(), on_change_trampoline, userdata, ocvrs_return.as_mut_ptr()) };
587587
return_receive!(unsafe ocvrs_return => ret);
@@ -624,8 +624,8 @@ pub mod highgui {
624624
#[inline]
625625
pub fn create_button(bar_name: &str, on_change: crate::highgui::ButtonCallback, typ: i32, initial_button_state: bool) -> Result<i32> {
626626
extern_container_arg!(bar_name);
627-
callback_arg!(on_change_trampoline(state: i32, userdata: *mut c_void) -> () => userdata in callbacks => on_change(state: i32) -> ());
628-
userdata_arg!(userdata in callbacks => on_change);
627+
callback_arg!(on_change_trampoline(state: i32, userdata: *mut c_void) -> () => userdata in on_change(state: i32) -> ());
628+
userdata_arg!(userdata: *mut c_void => on_change);
629629
return_send!(via ocvrs_return);
630630
unsafe { sys::cv_createButton_const_StringR_ButtonCallback_voidX_int_bool(bar_name.opencv_as_extern(), on_change_trampoline, userdata, typ, initial_button_state, ocvrs_return.as_mut_ptr()) };
631631
return_receive!(unsafe ocvrs_return => ret);
@@ -666,8 +666,8 @@ pub mod highgui {
666666
pub fn create_trackbar(trackbarname: &str, winname: &str, value: Option<&mut i32>, count: i32, on_change: crate::highgui::TrackbarCallback) -> Result<i32> {
667667
extern_container_arg!(trackbarname);
668668
extern_container_arg!(winname);
669-
callback_arg!(on_change_trampoline(pos: i32, userdata: *mut c_void) -> () => userdata in callbacks => on_change(pos: i32) -> ());
670-
userdata_arg!(userdata in callbacks => on_change);
669+
callback_arg!(on_change_trampoline(pos: i32, userdata: *mut c_void) -> () => userdata in on_change(pos: i32) -> ());
670+
userdata_arg!(userdata: *mut c_void => on_change);
671671
return_send!(via ocvrs_return);
672672
unsafe { sys::cv_createTrackbar_const_StringR_const_StringR_intX_int_TrackbarCallback_voidX(trackbarname.opencv_as_extern(), winname.opencv_as_extern(), value.map_or(::core::ptr::null_mut(), |value| value), count, on_change_trampoline, userdata, ocvrs_return.as_mut_ptr()) };
673673
return_receive!(unsafe ocvrs_return => ret);
@@ -1447,8 +1447,8 @@ pub mod highgui {
14471447
#[inline]
14481448
pub fn set_mouse_callback(winname: &str, on_mouse: crate::highgui::MouseCallback) -> Result<()> {
14491449
extern_container_arg!(winname);
1450-
callback_arg!(on_mouse_trampoline(event: i32, x: i32, y: i32, flags: i32, userdata: *mut c_void) -> () => userdata in callbacks => on_mouse(event: i32, x: i32, y: i32, flags: i32) -> ());
1451-
userdata_arg!(userdata in callbacks => on_mouse);
1450+
callback_arg!(on_mouse_trampoline(event: i32, x: i32, y: i32, flags: i32, userdata: *mut c_void) -> () => userdata in on_mouse(event: i32, x: i32, y: i32, flags: i32) -> ());
1451+
userdata_arg!(userdata: *mut c_void => on_mouse);
14521452
return_send!(via ocvrs_return);
14531453
unsafe { sys::cv_setMouseCallback_const_StringR_MouseCallback_voidX(winname.opencv_as_extern(), on_mouse_trampoline, userdata, ocvrs_return.as_mut_ptr()) };
14541454
return_receive!(unsafe ocvrs_return => ret);
@@ -1517,8 +1517,8 @@ pub mod highgui {
15171517
#[inline]
15181518
pub fn set_opengl_draw_callback(winname: &str, on_opengl_draw: crate::highgui::OpenGlDrawCallback) -> Result<()> {
15191519
extern_container_arg!(winname);
1520-
callback_arg!(on_opengl_draw_trampoline(userdata: *mut c_void) -> () => userdata in callbacks => on_opengl_draw() -> ());
1521-
userdata_arg!(userdata in callbacks => on_opengl_draw);
1520+
callback_arg!(on_opengl_draw_trampoline(userdata: *mut c_void) -> () => userdata in on_opengl_draw() -> ());
1521+
userdata_arg!(userdata: *mut c_void => on_opengl_draw);
15221522
return_send!(via ocvrs_return);
15231523
unsafe { sys::cv_setOpenGlDrawCallback_const_StringR_OpenGlDrawCallback_voidX(winname.opencv_as_extern(), on_opengl_draw_trampoline, userdata, ocvrs_return.as_mut_ptr()) };
15241524
return_receive!(unsafe ocvrs_return => ret);

docs/hub.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,6 @@ pub mod hub_prelude {
270270

271271
mod ffi_exports {
272272
use crate::mod_prelude_sys::*;
273-
#[no_mangle] unsafe extern "C" fn ocvrs_create_string_0_93_2(s: *const c_char) -> *mut String { crate::templ::ocvrs_create_string(s) }
274-
#[no_mangle] unsafe extern "C" fn ocvrs_create_byte_string_0_93_2(v: *const u8, len: size_t) -> *mut Vec<u8> { crate::templ::ocvrs_create_byte_string(v, len) }
273+
#[no_mangle] unsafe extern "C" fn ocvrs_create_string_0_93_3(s: *const c_char) -> *mut String { crate::templ::ocvrs_create_string(s) }
274+
#[no_mangle] unsafe extern "C" fn ocvrs_create_byte_string_0_93_3(v: *const u8, len: size_t) -> *mut Vec<u8> { crate::templ::ocvrs_create_byte_string(v, len) }
275275
}

docs/viz.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -2423,8 +2423,8 @@ pub mod viz {
24232423
/// * cookie: 0
24242424
#[inline]
24252425
fn register_keyboard_callback(&mut self, callback: crate::viz::Viz3d_KeyboardCallback) -> Result<()> {
2426-
callback_arg!(callback_trampoline(unnamed: *const c_void, unnamed_1: *mut c_void) -> () => unnamed_1 in callbacks => callback(unnamed: *const c_void) -> ());
2427-
userdata_arg!(cookie in callbacks => callback);
2426+
callback_arg!(callback_trampoline(unnamed: *const c_void, unnamed_1: *mut c_void) -> () => unnamed_1 in callback(unnamed: *const c_void) -> ());
2427+
userdata_arg!(cookie: *mut c_void => callback);
24282428
return_send!(via ocvrs_return);
24292429
unsafe { sys::cv_viz_Viz3d_registerKeyboardCallback_KeyboardCallback_voidX(self.as_raw_mut_Viz3d(), callback_trampoline, cookie, ocvrs_return.as_mut_ptr()) };
24302430
return_receive!(unsafe ocvrs_return => ret);
@@ -2442,8 +2442,8 @@ pub mod viz {
24422442
/// * cookie: 0
24432443
#[inline]
24442444
fn register_mouse_callback(&mut self, callback: crate::viz::Viz3d_MouseCallback) -> Result<()> {
2445-
callback_arg!(callback_trampoline(unnamed: *const c_void, unnamed_1: *mut c_void) -> () => unnamed_1 in callbacks => callback(unnamed: *const c_void) -> ());
2446-
userdata_arg!(cookie in callbacks => callback);
2445+
callback_arg!(callback_trampoline(unnamed: *const c_void, unnamed_1: *mut c_void) -> () => unnamed_1 in callback(unnamed: *const c_void) -> ());
2446+
userdata_arg!(cookie: *mut c_void => callback);
24472447
return_send!(via ocvrs_return);
24482448
unsafe { sys::cv_viz_Viz3d_registerMouseCallback_MouseCallback_voidX(self.as_raw_mut_Viz3d(), callback_trampoline, cookie, ocvrs_return.as_mut_ptr()) };
24492449
return_receive!(unsafe ocvrs_return => ret);

0 commit comments

Comments
 (0)