java 通过 jna 调用 c++ 函数时的参数映射问题

我在java中使用jna调用c++写的函数,
c++里面定义了这个函数 BOOL Start(BYTE* &pBuf, int& nLen, FuncPtrLogCnvt CallBack);
作用是根据pBuf和nLen开辟一块内存,并填好了要处理的数据块
c++定义的回调函数typedef VOID (_stdcall FuncPtrLogCnvt)(BYTE &pBuf, int& nLen);
在java里面使用回调函数,参数类型要进行映射,如果我定义的回调函数是callback(byte[] pBuf, int nLen)
请问这样定义是否合理,能不能根据pBuf的字节数组取出要处理的数据块?

合理,所有的类型都支持,但是需要在JNI层进行类型转换!