※ ChatGPTを利用し、要約された質問です(原文:JNAに関して)
JNAでのプログラミングにおける不明な点
このQ&Aのポイント
javaでのプログラミングに取り組んでおり、JNAを用いてセンサをプログラムで動かそうと試みています。
JNAの簡単な例題からプログラミングを始めていますが、XtsDeviceHandle構造体の引数が不明なためにXtsFindDevices関数を呼び出せません。
XtsDevicesInfoという構造体が関連していると思われます。
現在、javaでのプログラミングに取り組んでおり、JNAを用いてセンサをプログラムで動かそうと試みています。
そこで、JNAの簡単な例題からプログラミングを始めているのですが、そこで不明な点が出てきたためどうかお教え願います。
現在、以下のサンプルプログラムの改良を行っています。(一部分抜粋)
/*! デバイス情報リスト
* 全接続デバイスの情報を保持します
*/
struct _XtsDevicesInfo;
typedef struct _XtsDevicesInfo * XtsDevicesInfo;
/*! デバイスハンドル
* オープンしたデバイスの情報を保持します
*/
struct _XtsDeviceHandle;
typedef struct _XtsDeviceHandle * XtsDeviceHandle;
/*! APIバージョン取得
* APIバージョンを取得する。
* @retval APIバージョンBCD表記(e.g. 0x101 → version 1.01)
*/
XTSAPI_API int WINAPI XtsGetApiVersion();
/*! デバイス検出
* 接続されている全デバイスの情報を取得する。
* @retval ≧0 検出したデバイスの数
* @retval <0 エラー
*/
XTSAPI_API int WINAPI XtsFindDevices(
XtsDevicesInfo* pInfo); /*!< [out] 接続されているデバイスの情報リスト(のハンドル)が返る。
* 使用後 XtsFreeDevicesInfo で解放のこと。
*/
この関数をJNAで呼び出す際に、XtsGetApiVersion();は引数がないために簡単に呼び出すことができますが、XtsFindDevices(XtsDevicesInfo* pInfo);の方が引数のXtsDevicesInfo* pInfoが不明なために呼び出すことができません。
おそらく、
/*! デバイス情報リスト
* 全接続デバイスの情報を保持します
*/
struct _XtsDevicesInfo;
typedef struct _XtsDevicesInfo * XtsDevicesInfo;
辺りが関係してくるのではないかと思うのですがいかがでしょうか?
どうかよろしくお願いいたします。