0
我正在创建JNA映射到OpenMAX C库。一路走来,我也学习C.我遇到了一个结构,我不确定如何映射到,并且我一直无法找到任何资源来帮助。使用函数指针为C结构创建JNA映射
下面是从结构的一个片段
typedef struct OMX_COMPONENTTYPE {
OMX_VERSIONTYPE nVersion;
OMX_ERRORTYPE (*SetParameter)(
OMX_HANDLETYPE hComponent,
OMX_INDEXTYPE nIndex,
OMX_PTR pComponentParameterStructure);
...
“n版本”是一个正常的构件和在Java是容易可映射。
我的问题是功能指针SetParameter。 (我认为就是这样)
在Java中,结构体映射到jna.Structure类的子体。因为这是一个类(不是接口),所以我不能定义一个没有主体的方法头,这是我如何映射方法的方法。
有谁知道这个映射应该是什么样子?
由于
我一直在试图弄清楚这一点对我的使用实例。我遇到了[这个文档](https://jna.java.net/nonav/javadoc/overview-summary.html#callbacks),它看起来像你写了很多个月前。希望你可以在“lib.init(funcs)”这行上说明一些事情。“本文档中没有其他地方定义了“lib”,并且我无法在JNA类中的任何位置找到init(对象)方法。 – Lowell
这只是“调用初始化数据的本地库函数”的一个存根。如果您调用填充结构的本地函数,那么在函数返回时,回调字段将被正确设置。 – technomage