Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Opencv
提交
bf62be7f
O
Opencv
项目概览
Greenplum
/
Opencv
11 个月 前同步成功
通知
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,发现更多精彩内容 >>
提交
bf62be7f
编写于
4月 18, 2017
作者:
V
Vladislav Sovrasov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
java: allow to wrap functions which take cv::Ptr
上级
04573615
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
4 addition
and
3 deletion
+4
-3
modules/java/generator/gen_java.py
modules/java/generator/gen_java.py
+4
-3
未找到文件。
modules/java/generator/gen_java.py
浏览文件 @
bf62be7f
...
...
@@ -649,6 +649,7 @@ public class $jname {
protected final long nativeObj;
protected $jname(long addr) { nativeObj = addr; }
public long getNativeObjAddr() { return nativeObj; }
"""
T_JAVA_START_MODULE
=
"""
...
...
@@ -1004,7 +1005,7 @@ class JavaWrapperGenerator(object):
classinfo
.
addImports
(
classinfo
.
base
)
type_dict
[
"Ptr_"
+
name
]
=
\
{
"j_type"
:
classinfo
.
jname
,
"jn_type"
:
"long"
,
"jn_args"
:
((
"__int64"
,
".
nativeObj
"
),),
"jn_type"
:
"long"
,
"jn_args"
:
((
"__int64"
,
".
getNativeObjAddr()
"
),),
"jni_name"
:
"*((Ptr<"
+
classinfo
.
fullName
(
isCPP
=
True
)
+
">*)%(n)s_nativeObj)"
,
"jni_type"
:
"jlong"
,
"suffix"
:
"J"
}
logging
.
info
(
'ok: class %s, name: %s, base: %s'
,
classinfo
,
name
,
classinfo
.
base
)
...
...
@@ -1228,7 +1229,7 @@ class JavaWrapperGenerator(object):
if
"I"
in
a
.
out
or
not
a
.
out
or
self
.
isWrapped
(
a
.
ctype
):
# input arg, pass by primitive fields
for
f
in
fields
:
jn_args
.
append
(
ArgInfo
([
f
[
0
],
a
.
name
+
f
[
1
],
""
,
[],
""
])
)
jni_args
.
append
(
ArgInfo
([
f
[
0
],
a
.
name
+
f
[
1
].
replace
(
"."
,
"_"
).
replace
(
"["
,
""
).
replace
(
"]"
,
""
),
""
,
[],
""
])
)
jni_args
.
append
(
ArgInfo
([
f
[
0
],
a
.
name
+
f
[
1
].
replace
(
"."
,
"_"
).
replace
(
"["
,
""
).
replace
(
"]"
,
""
)
.
replace
(
"_getNativeObjAddr()"
,
"_nativeObj"
)
,
""
,
[],
""
])
)
if
a
.
out
and
not
self
.
isWrapped
(
a
.
ctype
):
# out arg, pass as double[]
jn_args
.
append
(
ArgInfo
([
"double[]"
,
"%s_out"
%
a
.
name
,
""
,
[],
""
])
)
jni_args
.
append
(
ArgInfo
([
"double[]"
,
"%s_out"
%
a
.
name
,
""
,
[],
""
])
)
...
...
@@ -1276,7 +1277,7 @@ class JavaWrapperGenerator(object):
" private static native $type $name($args);
\n
"
).
substitute
(
\
type
=
type_dict
[
fi
.
ctype
].
get
(
"jn_type"
,
"double[]"
),
\
name
=
fi
.
jname
+
'_'
+
str
(
suffix_counter
),
\
args
=
", "
.
join
([
"%s %s"
%
(
type_dict
[
a
.
ctype
][
"jn_type"
],
a
.
name
.
replace
(
"."
,
"_"
).
replace
(
"["
,
""
).
replace
(
"]"
,
""
))
for
a
in
jn_args
])
args
=
", "
.
join
([
"%s %s"
%
(
type_dict
[
a
.
ctype
][
"jn_type"
],
a
.
name
.
replace
(
"."
,
"_"
).
replace
(
"["
,
""
).
replace
(
"]"
,
""
)
.
replace
(
"_getNativeObjAddr()"
,
"_nativeObj"
)
)
for
a
in
jn_args
])
)
);
# java part:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录