Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
bc9a9b71
O
Opencv
项目概览
Greenplum
/
Opencv
大约 1 年 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
Opencv
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
bc9a9b71
编写于
7月 12, 2011
作者:
A
Andrey Pavlenko
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
adding runtime Android logging in Debug
上级
71598450
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
18 addition
and
13 deletion
+18
-13
modules/java/gen_java.py
modules/java/gen_java.py
+18
-13
未找到文件。
modules/java/gen_java.py
浏览文件 @
bc9a9b71
...
...
@@ -318,11 +318,12 @@ class JavaWrapperGenerator(object):
//
#include <jni.h>
/*
#ifdef DEBUG
#include <android/log.h>
#define MODULE_LOG_TAG "OpenCV.%s"
#define LOGD(...) ((void)__android_log_print(ANDROID_LOG_DEBUG, MODULE_LOG_TAG, __VA_ARGS__))
*/
#endif // DEBUG
"""
%
module
)
self
.
cpp_code
.
write
(
"
\n
"
.
join
([
'#include "opencv2/%s/%s"'
%
(
module
,
os
.
path
.
basename
(
f
))
\
...
...
@@ -503,14 +504,14 @@ class JavaWrapperGenerator(object):
# jni_func(..) { return cv_func(..); }
ret
=
"return "
ext
=
""
default
=
"return 0"
default
=
"return 0
;
"
if
fi
.
ctype
==
"void"
:
ret
=
""
default
=
""
elif
fi
.
ctype
==
"string"
:
ret
=
"return env->NewStringUTF"
ext
=
".c_str()"
default
=
'return env->NewStringUTF("")'
default
=
'return env->NewStringUTF("")
;
'
elif
fi
.
ctype
in
self
.
classes
:
# wrapped class:
ret
=
"return (jlong) new "
+
self
.
classes
[
fi
.
ctype
].
jname
...
...
@@ -541,20 +542,26 @@ JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname
($args)
{
try {
//LOGD("$module::$fname()");
#ifdef DEBUG
LOGD("$module::$fname()");
#endif // DEBUG
$j2cv
$ret( $cvname( $cvargs )$ext );
} catch(cv::Exception e) {
//LOGD("$module::$fname() catched cv::Exception: %s", e.what());
#ifdef DEBUG
LOGD("$module::$fname() catched cv::Exception: %s", e.what());
#endif // DEBUG
jclass je = env->FindClass("org/opencv/CvException");
if(!je) je = env->FindClass("java/lang/Exception");
env->ThrowNew(je, e.what());
$default
;
$default
} catch (...) {
//LOGD("$module::$fname() catched ...");
#ifdef DEBUG
LOGD("$module::$fname() catched unknown exception (...)");
#endif // DEBUG
jclass je = env->FindClass("java/lang/Exception");
env->ThrowNew(je, "Unknown exception in JNI code {$module::$fname()}");
$default
;
$default
}
}
...
...
@@ -564,7 +571,7 @@ JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname
module
=
self
.
module
,
\
fname
=
fi
.
jni_name
+
[
""
,
suffix
][
isoverload
],
\
args
=
", "
.
join
([
"%s %s"
%
(
type_dict
[
a
.
ctype
].
get
(
"jni_type"
),
a
.
name
)
for
a
in
jni_args
]),
\
j2cv
=
"
\n
"
.
join
([
a
for
a
in
j2cvargs
]),
\
j2cv
=
"
\n
"
.
join
([
a
for
a
in
j2cvargs
]),
\
ret
=
ret
,
\
cvname
=
cvname
,
\
cvargs
=
", "
.
join
([
a
for
a
in
cvargs
]),
\
...
...
@@ -601,8 +608,8 @@ JNIEXPORT $rtype JNICALL Java_org_opencv_${module}_$fname
if
name
==
"Mat"
:
continue
self
.
java_code
.
write
(
"
\n\n
"
+
indent
+
"// C++: class %s"
%
(
ci
.
cname
)
+
"
\n
"
)
self
.
java_code
.
write
(
indent
+
"//javadoc: "
+
name
+
"
\n
"
)
#java doc comment
self
.
java_code
.
write
(
indent
+
"public static class %s {
\n\n
"
%
(
ci
.
jname
)
)
# self
self
.
java_code
.
write
(
indent_m
+
"protected final long nativeObj;
\n
"
)
self
.
java_code
.
write
(
indent_m
+
"protected %s(long addr) { nativeObj = addr; }
\n\n
"
\
...
...
@@ -689,5 +696,3 @@ if __name__ == "__main__":
generator
=
JavaWrapperGenerator
()
generator
.
gen
(
srcfiles
,
module
,
dstdir
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录