0
Jiniインターフェイス経由でJava APIからScipソルバを使用します。ファイル参照をScipのJniインターフェイスに渡す
ファイルにLpモデルをダンプします。
このため、ネイティブAPIで以下のC法
extern SCIP_RETCODE SCIPprintOrigProblem(
SCIP* scip, /**< SCIP data structure */
FILE* file, /**< output file (or NULL for standard output) */
const char* extension, /**< file format (or NULL for default CIP format)*/
SCIP_Bool genericnames /**< using generic variable and constraint names? */
);
がある。この方法は、de.zib.jscip.nativ.NativeScip
public abstract void printOrigProblem(long arg0, long arg1, java.lang.String arg2, boolean arg3) throws de.zib.jscip.nativ.NativeScipException;
パブリック抽象インタフェースで、次のJavaメソッドに対応します
2番目の引数にゼロの値を指定すると、メソッドが正常に動作します。線形式が期待どおりに標準出力に返されます。
ここで、線形式がダンプされるファイルを指定します。
私はメソッドの2番目のパラメータで参照を渡したいと思います。
nativeメソッドはFILE *を期待していますが、javaメソッドはlongを期待しています。
質問この2番目のパラメータの値として渡す必要があるのは何ですか。
writeOrigProblemを使用すると、実際にこの問題が回避されます。だから私の問題は解決される。それでもjniインタフェースを介してFILEを渡すことが可能かどうかは疑問です。 –
文字列を受け取ってFILE *を返すSCIP関数がないので、インタフェースを拡張する必要があるかもしれません。 – mueldgog