你好,
我正在嘗試在JSL中調用我的c ++函數。 而且我意識到我需要使用以下函數:“ Load DLL()”和“ Declare Function()”。 在我看來,“聲明Function()”只能允許我指定DOUBLE,INT,STRING變量? 我還看到了諸如“結構“ 和 ”對象”,但我不確定如何使用它們。
如果我的C ++函數具有矩陣輸入和輸出,我可以將它們導入到jmp嗎?
PS下面的代碼適用於具有“雙”輸入類型的函數。
If( Host is( "Windows" ),
dll =
Load DLL(
If(
File Exists(
"MYPATH/MathLibrary.dll"
),
"MYPATH/MathLibrary.dll",
Throw()
)
);
dll <<
DeclareFunction(
"TimesTwo",
Convention( STDCALL ),
Alias( "test_x2" ),
Arg( Double, "x" ),
Returns( Double )
);
result = dll << TimesTwo(8.8);
Show( result );
dll << Show Functions;
);
嗨,美辰,
當前,JSL的.DLL函數支持雙精度矩陣,但沒有其他類型。 在處理用於TDM文件的插件時,我注意到了這一限制。 您將需要編寫自己的.dll作為過渡程序,以彌合這一差距。 我正在從事此工作,但仍在充分學習C以完成此工作。 請將此請求添加到內部願望清單中-開發收到的有關擴展JSL當前在這方面的功能的請求越多,在將來的發行版中解決該問題的可能性就越大。
乾杯,
布雷迪
謝謝, @brady_brady ! 我將添加此請求。
是否有示例說明如何在JSL中導入函數支持雙精度矩陣? 我很難找到說明。