我正在尝试为以下功能创建SWIG类型图:
void mix(int size, float *in1, float *in2, float *out1)
{
for (int i = 0; i < size; ++i)
out1[i] = in1[i] + in2[i];
}
在lua中,我希望此函数采用2个表参数并返回1个表,如下所示:
local t = m.mix({1,2,3}, {4,5,6})
然后,表t
应该是{5,7,9},这是两个表的总和。
我尝试使用内置的类型映射,但是我只能包装一个采用并返回一个如下表的函数:
%apply (float *INOUT, int) {(float *inout, int size)};
如何为需要两个表并返回一个表的函数创建SWIG类型图?
答案 0 :(得分:0)
我找到了一种简单的方法。
%apply (float *INOUT, int) {(float *in1, int n1)};
%apply (float *INPUT, int) {(float *in2, int n2)};
这对我来说似乎很好用。