mirror of
https://github.com/ruby-opencv/ruby-opencv
synced 2023-03-27 23:22:12 -04:00
modified to use GUI functions (except for Window#set_trackbar) without ffcall
This commit is contained in:
parent
eea97c692b
commit
206ae1ba97
10 changed files with 21 additions and 41 deletions
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005-2006 Masakazu Yonekura
|
Copyright (C) 2005-2006 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#include "gui.h"
|
#include "gui.h"
|
||||||
/*
|
/*
|
||||||
* Document-module: OpenCV::GUI
|
* Document-module: OpenCV::GUI
|
||||||
|
@ -62,4 +60,3 @@ rb_wait_key(int argc, VALUE *argv, VALUE self)
|
||||||
__NAMESPACE_END_GUI
|
__NAMESPACE_END_GUI
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,14 +7,12 @@
|
||||||
Copyright (C) 2005-2006 Masakazu Yonekura
|
Copyright (C) 2005-2006 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
#ifndef RUBY_OPENCV_GUI_H
|
||||||
|
#define RUBY_OPENCV_GUI_H
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_GUI namespace mGUI{
|
#define __NAMESPACE_BEGIN_GUI namespace mGUI{
|
||||||
#define __NAMESPACE_END_GUI }
|
#define __NAMESPACE_END_GUI }
|
||||||
|
|
||||||
#ifndef RUBY_OPENCV_GUI_H
|
|
||||||
#define RUBY_OPENCV_GUI_H
|
|
||||||
|
|
||||||
#include "opencv.h"
|
#include "opencv.h"
|
||||||
|
|
||||||
__NAMESPACE_BEGIN_OPENCV
|
__NAMESPACE_BEGIN_OPENCV
|
||||||
|
@ -30,4 +28,3 @@ __NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // RUBY_OPENCV_GUI_H
|
#endif // RUBY_OPENCV_GUI_H
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005-2007 Masakazu Yonekura
|
Copyright (C) 2005-2007 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#include "mouseevent.h"
|
#include "mouseevent.h"
|
||||||
/*
|
/*
|
||||||
* Document-module: OpenCV::GUI::MouseEvent
|
* Document-module: OpenCV::GUI::MouseEvent
|
||||||
|
@ -181,4 +179,3 @@ __NAMESPACE_END_MOUSEEVENT
|
||||||
__NAMESPACE_END_GUI
|
__NAMESPACE_END_GUI
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005-2006 Masakazu Yonekura
|
Copyright (C) 2005-2006 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#define __NAMESPACE_BEGIN_MOUSEEVENT namespace cMouseEvent{
|
#define __NAMESPACE_BEGIN_MOUSEEVENT namespace cMouseEvent{
|
||||||
#define __NAMESPACE_END_MOUSEEVENT }
|
#define __NAMESPACE_END_MOUSEEVENT }
|
||||||
|
|
||||||
|
@ -56,4 +54,3 @@ __NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // RUBY_OPENCV_GUI_MOUSEEVENT_H
|
#endif // RUBY_OPENCV_GUI_MOUSEEVENT_H
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -773,12 +773,10 @@ extern "C"{
|
||||||
mOpenCV::cCvConnectedComp::define_ruby_class();
|
mOpenCV::cCvConnectedComp::define_ruby_class();
|
||||||
mOpenCV::cCvAvgComp::define_ruby_class();
|
mOpenCV::cCvAvgComp::define_ruby_class();
|
||||||
mOpenCV::cCvHaarClassifierCascade::define_ruby_class();
|
mOpenCV::cCvHaarClassifierCascade::define_ruby_class();
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
mOpenCV::mGUI::define_ruby_module();
|
mOpenCV::mGUI::define_ruby_module();
|
||||||
mOpenCV::mGUI::cWindow::define_ruby_class();
|
mOpenCV::mGUI::cWindow::define_ruby_class();
|
||||||
mOpenCV::mGUI::cTrackbar::define_ruby_class();
|
mOpenCV::mGUI::cTrackbar::define_ruby_class();
|
||||||
mOpenCV::mGUI::cMouseEvent::define_ruby_class();
|
mOpenCV::mGUI::cMouseEvent::define_ruby_class();
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_ML_H
|
#ifdef HAVE_ML_H
|
||||||
/* feature support.
|
/* feature support.
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005 Masakazu Yonekura
|
Copyright (C) 2005 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#include "trackbar.h"
|
#include "trackbar.h"
|
||||||
/*
|
/*
|
||||||
* Document-class: OpenCV::GUI::Trackbar
|
* Document-class: OpenCV::GUI::Trackbar
|
||||||
|
@ -115,4 +113,3 @@ __NAMESPACE_END_TRACKBAR
|
||||||
__NAMESPACE_END_GUI
|
__NAMESPACE_END_GUI
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005 Masakazu Yonekura
|
Copyright (C) 2005 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#ifndef RUBY_OPENCV_GUI_H
|
#ifndef RUBY_OPENCV_GUI_H
|
||||||
#include "gui.h"
|
#include "gui.h"
|
||||||
#endif
|
#endif
|
||||||
|
@ -61,4 +59,3 @@ __NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // RUBY_OPENCV_GUI_TRACKBAR_H
|
#endif // RUBY_OPENCV_GUI_TRACKBAR_H
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005-2006 Masakazu Yonekura
|
Copyright (C) 2005-2006 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#include "window.h"
|
#include "window.h"
|
||||||
/*
|
/*
|
||||||
* Document-class: OpenCV::GUI::Window
|
* Document-class: OpenCV::GUI::Window
|
||||||
|
@ -278,6 +276,15 @@ rb_show_image(int argc, VALUE *argv, VALUE self)
|
||||||
* Create Trackbar on this window. Return new Trackbar.
|
* Create Trackbar on this window. Return new Trackbar.
|
||||||
* see Trackbar.new
|
* see Trackbar.new
|
||||||
*/
|
*/
|
||||||
|
#ifdef HAVE_CALLBACK_H
|
||||||
|
void
|
||||||
|
trackbar_callback(VALUE block, va_alist ap)
|
||||||
|
{
|
||||||
|
va_start_void(ap);
|
||||||
|
rb_funcall(block, rb_intern("call"), 1, INT2FIX(va_arg_int(ap)));
|
||||||
|
va_return_void(ap);
|
||||||
|
}
|
||||||
|
|
||||||
VALUE
|
VALUE
|
||||||
rb_set_trackbar(int argc, VALUE *argv, VALUE self)
|
rb_set_trackbar(int argc, VALUE *argv, VALUE self)
|
||||||
{
|
{
|
||||||
|
@ -297,6 +304,14 @@ rb_set_trackbar(int argc, VALUE *argv, VALUE self)
|
||||||
}
|
}
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
VALUE
|
||||||
|
rb_set_trackbar(int argc, VALUE *argv, VALUE self)
|
||||||
|
{
|
||||||
|
rb_raise(rb_eFatal, "ffcall is required to use Window#set_trackbar");
|
||||||
|
return Qnil;
|
||||||
|
}
|
||||||
|
#endif // HAVE_CALLBACK_H
|
||||||
|
|
||||||
void
|
void
|
||||||
on_mouse(int event, int x, int y, int flags, void* param) {
|
on_mouse(int event, int x, int y, int flags, void* param) {
|
||||||
|
@ -350,16 +365,7 @@ rb_set_mouse_callback(int argc, VALUE* argv, VALUE self)
|
||||||
return block;
|
return block;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
trackbar_callback(VALUE block, va_alist ap)
|
|
||||||
{
|
|
||||||
va_start_void(ap);
|
|
||||||
rb_funcall(block, rb_intern("call"), 1, INT2FIX(va_arg_int(ap)));
|
|
||||||
va_return_void(ap);
|
|
||||||
}
|
|
||||||
|
|
||||||
__NAMESPACE_END_WINDOW
|
__NAMESPACE_END_WINDOW
|
||||||
__NAMESPACE_END_GUI
|
__NAMESPACE_END_GUI
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -7,8 +7,6 @@
|
||||||
Copyright (C) 2005-2006 Masakazu Yonekura
|
Copyright (C) 2005-2006 Masakazu Yonekura
|
||||||
|
|
||||||
************************************************************/
|
************************************************************/
|
||||||
#ifdef HAVE_CALLBACK_H
|
|
||||||
|
|
||||||
#ifndef RUBY_OPENCV_GUI_H
|
#ifndef RUBY_OPENCV_GUI_H
|
||||||
#include "gui.h"
|
#include "gui.h"
|
||||||
#endif
|
#endif
|
||||||
|
@ -44,13 +42,9 @@ VALUE rb_show_image(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_set_trackbar(int argc, VALUE *argv, VALUE self);
|
VALUE rb_set_trackbar(int argc, VALUE *argv, VALUE self);
|
||||||
VALUE rb_set_mouse_callback(int argc, VALUE* argv, VALUE self);
|
VALUE rb_set_mouse_callback(int argc, VALUE* argv, VALUE self);
|
||||||
|
|
||||||
void trackbar_callback(VALUE block, va_alist ap);
|
|
||||||
void mouse_callback(VALUE block, va_alist ap);
|
|
||||||
|
|
||||||
__NAMESPACE_END_WINDOW
|
__NAMESPACE_END_WINDOW
|
||||||
__NAMESPACE_END_GUI
|
__NAMESPACE_END_GUI
|
||||||
__NAMESPACE_END_OPENCV
|
__NAMESPACE_END_OPENCV
|
||||||
|
|
||||||
#endif // RUBY_OPENCV_GUI_WINDOW_H
|
#endif // RUBY_OPENCV_GUI_WINDOW_H
|
||||||
|
|
||||||
#endif // HAVE_CALLBACK_H
|
|
||||||
|
|
|
@ -65,9 +65,9 @@ puts ">> ----- optional -----"
|
||||||
puts ">> check ffcall..."
|
puts ">> check ffcall..."
|
||||||
# check ffcall
|
# check ffcall
|
||||||
if have_library("callback") && have_header("callback.h")
|
if have_library("callback") && have_header("callback.h")
|
||||||
puts ">> support OpenCV::GUI"
|
puts ">> support OpenCV::GUI::Window#set_trackbar"
|
||||||
else
|
else
|
||||||
puts ">> ! unsupport OpenCV::GUI (if need it. install ffcall)"
|
puts ">> ! unsupport OpenCV::GUI::Window#set_trackbar (if need it. install ffcall)"
|
||||||
puts "http://www.haible.de/bruno/packages-ffcall.html"
|
puts "http://www.haible.de/bruno/packages-ffcall.html"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue